A one day workshop on "Research Directions in the Principles of Parallel Computing" is scheduled on June 28, 2012 at Carnegie Mellon University (CMU) in Pittsburgh, PA. The workshop will bring together researchers from academia and industry to inform, discuss, and initiate collaborations on understanding the key research challenges in the foundations of parallel computing, and directions to possibly address these challenges. The emphasis of the workshop is on theoretical approaches to parallel computation and how to bridge these approaches with practice. It will be held the day after the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), which is to be held June 25-27, 2012 also at CMU.
The workshop will address several issues described in NSF's Advanced Computing Infrastructure Strategic Plan including, but not limited to, computational models, programming languages, rethinking the canonical computing "stack" and new algorithmic paradigms. The workshop will consist of approximately 20 invited speakers who will be asked to present their thoughts on "what are three big research challenges in the principles of parallel computing". Attendance to the workshop is open to all students, faculty and industry researchers at no charge (as space permits). The output of the workshop will be a public report documenting the discussions. It is hoped this report and other interactions at the workshop will have broad impact on future directions of research in the theory and practice of parallel computation.
Parallelism has become ubiquitous in computing from the underlying circuits, to pipelining and instruction level parallelism on cores, multiple cores on a chip, multiple chips in a machine, multiple machines on a rack, many racks in a data center, and of course the globally shared infrastructure of the Internet. This ubiquitous parallelism has lead to a major shift in recent years in the systems and experimental sides of computer science research. In the 2011 proceedings of ISCA and PLDI, for example, more than 30% of the papers mention either parallelism or concurrency in the abstract, and many more that discuss parallelism in a substantial way in their body. However, on the more theoretical side, especially in the algorithms community, there has been significantly less recent activity in parallelism and concurrency: in STOC and SODA less than 5% of the papers mentioned parallelism or concurrency. Yet, having a strong theoretical foundation for parallel computing is very important for the long term longevity of the field. Theory supplies abstractions that allow programmers to analyze algorithms without needing to understand the low-level details of machines. It gives guidance to which approach to take without first needing to do extensive set of experimenta- tion. It gives us more confidence that the approaches we take today will be useful in ten, twenty or thirty years from now. And, it gives direction on future technologies and approaches to explore. With this context, on June 28, 2012 NSF sponsored a workshop with the purpose of enumerating key research directions and challenges in the theory/principles of parallel computation. The workshop brought together researchers from multiple communities including algorithms, programming languages and architecture. The major outcome of the workshop was a report suggesting research directions in the foundations of parallel computing.