Unstructured Parallelism Considered Harmful - Improving Software Reliability and Performance through Structured Parallelism

Tuesday, 5.12.2017, 14:30
Room 337 Taub Bld.
Stephen Fleming Chair for Telecommunications, Georgia Institute of Technology
Eran Yahav

It is widely recognized that a major disruption is under way in computer hardware as processors strive to extend, and go beyond, the end-game of Moore's Law. This disruption will further extend current software trends towards increasing scales and ubiquity of parallelism, to include new levels of "extreme heterogeneity" motivated by heterogenous processor and memory hierarchies, near-memory computation structures, and even Non-von Neumann computing elements.. Since all software is now parallel or concurrent by default, it is increasingly important to examine the foundations of parallelism underlying current software. In most cases, this foundation is based on "unstructured parallelism", typically using threads or locks. In this talk, we summarize experiences gained in the Habanero Extreme Scale Software Research Laboratory (first at Rice University, and now at Georgia Tech) in developing a foundation for parallel and concurrent software based on a collection of structured parallel execution model primitives that enable programmability, portability, performance, and debuggability for extreme scale software. We show that these primitives can enable fundamental new advances in programming models, compilers, debuggers and runtime systems for future hardware platforms, while also providing a clear semantics that has been taught to hundreds of students in undergraduate-level courses and a Coursera specialization. Some of these primitives have also already influenced industry standards for parallelism, including the doacross construct in OpenMP 4.5, the task blocks library for C++, and Java's Phaser library. SHORT BIO: ========== Vivek Sarkar is a Professor in the School of Computer Science, and the Stephen Fleming Chair for Telecommunications in the College of Computing at at Georgia Institute of Technology, since August 2017. Prior to joining Georgia Tech, Sarkar was a Professor of Computer Science at Rice University, and the E.D. Butcher Chair in Engineering. During 2007 - 2017, Sarkar built Rice's Habanero Extreme Scale Software Research Group with the goal of unifying parallelism and concurrency elements of high-end computing, multicore, and embedded software stacks (http://habanero.rice.edu). He also served as Chair of the Department of Computer Science at Rice during 2013 - 2016. Prior to joining Rice in 2007, Sarkar was Senior Manager of Programming Technologies at IBM Research. His research projects at IBM included the X10 programming language, the Jikes Research Virtual Machine for the Java language, the ASTI optimizer used in IBM's XL Fortran product compilers, and the PTRAN automatic parallelization system. Sarkar became a member of the IBM Academy of Technology in 1995, and was inducted as an ACM Fellow in 2008. He has been serving as a member of the US Department of Energy's Advanced Scientific Computing Advisory Committee (ASCAC) since 2009, and on CRA's Board of Directors since 2015. ========================================= Refreshments will be served from 14:15 Lecture starts at 14:30

Back to the index of events