ExM: High Level Dataflow Programming for Extreme-Scale Systems
|Title||ExM: High Level Dataflow Programming for Extreme-Scale Systems|
|Publication Type||Conference Paper|
|Year of Publication||2012|
|Conference Name||4th USENIX Workshop on Hot Topics in Parallelism|
|Publisher||Proceedings of HotPar'12|
|Conference Location||4th USENIX Workshop on Hot Topics in Parallelism|
We present here the ExM (extreme-scalemany-task) programming and execution model as a practical solution to the challenges of programing the higher-level logic of complex parallel applications on current petascale and future exascale computing systems. ExM provides an expressive high-level functional programming model that yields massive concurrency through implicit, automated parallelism. It comprises a judicious integration of dataflow constructs, highly parallel function evaluation, and extremely scalable task generation. It directly addresses the intertwined programmability and scalability requirements of systems with massive concurrency with a programming model that may be attractive and feasible for systems of much lower scale. We describe here the benefits of the ExM programming and execution model, its potential applications, and the performance of its current implementation.