Dynamic Provisioning and Execution of HPC Workflows Using Python - Harris, Chris; O'Leary, Patrick; Grauer, Michael; Chaudhary, Aashish; Kotfila, Chris; O'Bara, Robert (2016 6th Workshop on Python for High-Performance and Scientific Computing (PyHPC), 2016)
High-performance computing (HPC) workflows over the last several decades have proven to assist in the understanding of scientific phenomena and the production of better products, more quickly, and at reduced cost. However, HPC workflows are difficult to implement and use for a variety of reasons. In this paper, we describe the development of the Python-based cumulus, which addresses many of these barriers. cumulus is a platform for the dynamic provisioning and execution of HPC workflows. cumulus provides the infrastructure needed to build applications that leverage traditional or Cloud-based HPC resources in their workflows. Finally, we demonstrate the use of cumulus in both web and desktop simulation applications, as well as in an Apache Spark-based analysis application.