A data flow language to develop high performance computing DSLs
Document typeConference report
PublisherAssociation for Computing Machinery (ACM)
Rights accessRestricted access - publisher's policy
Developing complex scientific applications on high performance systems requires both domain knowledge and expertise in parallel and distributed programming models. In addition, modern high performance systems are heterogeneous, thus composed of multicores and accelerators, which despite being efficient and powerful, are harder to program. Domain-Specific Languages (DSLs) are a promising approach to hide the complexity of HPC systems and boost programmer's productivity. However, the huge cost and complexity of implementing efficient and scalable DSLs on HPC systems is hindering its adoption for most domains. Addressing such problems, we present Data Flow Language (DFL), a DSL designed to exploit distributed and heterogeneous HPC systems. DFL abstracts the key concepts such systems as SMP tasks for multicores, kernels for accelerators and high-level operations for distributed computing. In addition, DFL leverages the hybrid MPI/OmpSs data-flow programming model to efficiently implement the previous concepts. All of these features make DFL suitable as the target language for other DSLs. However, it is also suitable as a fast prototyping language to develop distributed applications on heterogeneous systems.
CitationFernandez, A. [et al.]. A data flow language to develop high performance computing DSLs. A: International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing. "Proceedings of WOLFHPC 2014: 4th International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing: held in conjunction with SC14: the International Conference for High Performance Computing, Networking, Storage and Analysis: New Orleans, Louisiana: November 16-21, 2014". New Orleans, Louisiana: Association for Computing Machinery (ACM), 2014, p. 11-20.
|WOLFHPC_2014_submission_9.pdf||A Data Flow Language to Develop High Performance Computing DSLs||403.8Kb||Restricted access|