We live exciting times in the field of parallel architectures. The diminishing IPC returns caused by power and frequency walls have forced a radical change in CPU design. Multicore is here to stay and has become pervasive throughout the computer industry. In high-performance computing, three out of four "TOP 500" systems are clusters of industry-standard multicore nodes. In embedded computing, heterogeneous multicore System-on-Chips have become the dominant standard for high-volume parts.
There is no silver bullet in multicore programming, and formidable computer science problems underlie the programming of this new breed of parallel architectures. Traditional parallel programming paradigms and tools need to be put to the test and questioned. The heterogeneity of cores and accelerators is creating new challenges to the programming models. Locks and multithreading memory semantics are being redefined and transactional programming is on the horizon. With new programming paradigms and a shifting architecture target, new tools and analysis methodologies are also granted.
The goal of this workshop is to bring together researchers from academia and industry to discuss tools and methodologies for analysis, compilation, debugging, verification and simulation of parallel programs.
Getting C++ threads right, Hans Boehm, HP Labs.
For many application domains, threads and locks, particularly in the form of C or C++ with a threads library, remain the standard approach for writing parallel programs. Somewhat surprisingly, there are a number of often subtle, but generally fixable, industry-wide problems associated with this approach. Problems span the spectrum from system libraries through language implementations through the underlying architectures. They get in the way both in that they often make it difficult to write 100% reliable multithreaded software, and in that they confuse even the basics of the programming model, thus making it hard to teach. A surprising number of "experts" do not understand the basic rules. These problems largely carry over to transactional memory systems.
Since solutions to these problems generally require a coordinated industry effort, we helped to persuade the C++ standards committee to address them in the working paper for the next C++ standard. We outline the problems and proposed solutions.
Hans Boehm is the primary author of a widely used multithreaded garbage collector library. He is leading an ongoing effort to extend the C++ standard with clean semantics for threads, and particularly shared variable accesses. He holds a Ph.D. from Cornell University, has published a number of influential papers on garbage collection, and a few on threads and synchronization. He is a past Chair of ACM SIGPLAN, and of the POPL, ISMM and VEE research symposia. He was awarded the 2003 PLDI most influential paper award, and the 2006 SIGPLAN Distinguished Service Award, and is an ACM Distinguished Scientist. He works for HP Laboratories.
Session 1 - Compilation and Code Generation
Session 2 - Tools
Session 3 - Methodology
|Submission deadline||April 25th, 2008|
|Notification of acceptance||May 2nd, 2008|
|Workshop||June 4th, 2008|
Authors should submit their contributions electronically to Daniel Ortega. Submissions must include a 2-page extended abstract describing the work that is going to be presented. Authors should feel free to present work in progress as well as already published material, and can include related documents with additional details on their research work. Authors should commit to present their research at the workshop in the case it gets selected. Abstract and other workshop material will be made available online at http://www.hipeac.net/. The workshop will not publish proceedings. While this workshop is organized by HiPEAC, the host (HP Labs) is solely responsible for the selection process.
You can get a pdf version of the Call for Papers here
You can get a pdf instructions of how to get to HP site in Barcelona here