ABSTRACT:
This decade marks a resurgence for parallel computing with high-end systems
moving to petascale and mainstream systems moving to multi-core processors.
Unlike previous generations of hardware evolution, this shift will have a
major impact on existing software. For petascale, it is widely recognized
by application experts that past approaches based on domain decomposition
will not scale to exploit the parallelism available in future high-end
systems. For multicore, it is acknowledged by hardware vendors that
enablement of mainstream software for execution on multiple cores is the
major open problem that needs to be solved in support of this hardware
trend. These software challenges are further compounded by an increased
adoption of high performance computing in new application domains that may
not fit the patterns of parallelism that have been studied by the community
thus far.
In this talk, we compare and contrast the software stacks that are being
developed for petascale and multicore parallel systems, and the challenges
that they pose to the programmer. We discuss ongoing work on high
productivity languages and tools that can help address these challenges for
petascale applications on high-end systems. We also discuss ongoing work on
concurrency in virtual machines (managed runtimes) to support lightweight
concurrency for mainstream applications on multicore systems. Examples will
be given from research projects under way in these areas including PGAS
languages, Java Concurrency Utilities, and the X10 language. Finally, we
outline the new Habanero research project being initiated at Rice University
that aims to unify elements of the petascale and multicore software stacks
so as to produce portable software that can run unchanged on petascale
systems as well as a range of homogeneous and heterogeneous multicore
systems.
BIO:
Professor Vivek Sarkar conducts research in programming languages, program
analysis, compiler optimizations and virtual machines for parallel and high
performance computer systems. His past projects include the X10 programming
language, the Jikes Research Virtual Machine for the Java language, the ASTI
optimizer used in IBM’s XL Fortran product compilers, the PTRAN automatic
parallelization system, and profile-directed partitioning and scheduling of
Sisal programs. He is in the process of starting up the Habanero Multicore
Software project at Rice University which spans the areas of programming
languages, optimizing and parallelizing compilers, virtual machines, and
concurrency libraries for homogeneous and heterogeneous multicore
processors.
Vivek became a member of the IBM Academy of Technology in 1995, an ACM
Distinguished Scientist in 2006, and the E.D. Butcher Professor of Computer
Science at Rice University in 2007. Prior to joining Rice University in
July 2007, Professor Sarkar was Senior Manager of Programming Technologies
at IBM Research. His responsibilities at IBM included leading IBM's
research efforts in Programming Model, Tools, and Productivity in the PERCS
project during 2002 - 2007 as part of the DARPA High Productivity Computing
System program. Vivek holds a B. Tech. Degree from the Indian Institute of
Technology, Kanpur, an M.S. degree from University of Wisconsin-Madison, and
a Ph.D. from Stanford University. In 1997, he was on sabbatical as a
visiting associate professor at MIT, where he was a founding member of the
MIT RAW multicore project.
# # #