Title: Abstractions for Modern Parallel Computing: A Blessing or a Curse?
Modern parallel or distributed software, from business analytics on data centers to satellite image processing on supercomputers or apps serving millions of IoT devices, is often built on layers of abstractions, such as, higher-level (scripting) languages, SDK, third party libraries, runtime frameworks, and so on. The abstractions give modularity and productivity and other benefits, but at the same time, result in barriers (“abstraction walls”) for code analysis and optimizations. The phenomenon is not new, but is getting increasingly more prominent. This panel will discuss that trend in the backdrop of changes in computing architectures and applications, the effects on parallel and distributed computing, and the challenges and research opportunities.