Abstract
Task-based runtime systems typically exploit asynchronicity inherent in applications to reduce overall execution time. In the past decade, focus shifted to supporting the heterogeneity that is increasingly prevalent in high-performance computing systems. Existing task-based runtime systems are designed to be general; thus, they come with challenges such as overheads and the complexity of abstractions. Much of the burden of exposing heterogeneous parallelism is placed on application developers, who must fit domain-specific code to general-purpose interfaces. This paper presents a different approach that targets heterogeneous systems through domain-specific runtimes. Our pipeline-based design presented here leverages the domain-specific knowledge of a focused class of scientific simulations to pragmatically orchestrate their computations. Promising, multi-GPU performance results obtained with the Oak Ridge Leadership Computing Facility’s Summit are presented.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Augonnet, C., Thibault, S., Namyst, R., Wacrenier, P.A.: StarPU: a unified platform for task scheduling on heterogeneous multicore architectures. Concurr. Comput.: Pract. Exp. 23, 187–198 (2011). Special Issue: Euro-Par 2009
Bauer, M., Treichler, S., Slaughter, E., Aiken, A.: Legion: expressing locality and independence with logical regions. In: Proceedings of SC12, pp. 1–11. IEEE (2012)
Clement, V., et al.: The CLAW DSL: abstractions for performance portable weather and climate models. In: Proceedings of PASC, pp. 1–10 (2018)
Dubey, A., et al.: Extensible component based architecture for FLASH, a massively parallel, multiphysics simulation code. Parallel Comput. 35, 512–522 (2009)
Dubey, A., et al.: Pragmatic optimizations for better scientific utilization of large supercomputers. IJHPCA 27(3), 360–373 (2013)
Dubey, A., Chawdhary, S., Harris, J.A., Messer, B.: Simulation planning using component based cost model. In: 2019 IEEE IPDPSW, pp. 683–688 (2019)
Earl, C., Might, M., Bagusetty, A., Sutherland, J.C.: Nebo: an efficient, parallel, and portable domain-specific language for numerically solving partial differential equations. J. Syst. Softw. 125, 389–400 (2017)
Edwards, H.C., Trott, C.R., Sunderland, D.: Kokkos: enabling manycore performance portability through polymorphic memory access patterns. J. Parallel Distrib. Comput. 74(12), 3202–3216 (2014)
Gysi, T., Osuna, C., Fuhrer, O., Bianco, M., Schulthess, T.C.: STELLA: a domain-specific tool for structured grid methods in weather and climate models. In: Proceedings of SC15, pp. 1–12 (2015)
Hornung, R., Keasler, J., et al.: RAJA: performance portability layer (2020). https://github.com/LLNL/RAJA
Kaiser, H., Diehl, P., et al.: HPX - the C++ standard library for parallelism and concurrency. JOSS 5(53), 2352 (2020)
Kale, L.V., Bohm, E., Mendes, C.L., Wilmarth, T., Zheng, G.: Programming petascale applications with Charm++ and AMPI. Petascale Comput.: Algorithms Appl. 1, 421–441 (2007)
Mittal, S., Vetter, J.S.: A survey of CPU-GPU heterogeneous computing techniques. ACM Comput. Surv. 47(4), 1–35 (2015)
Parker, S.G.: A component-based architecture for parallel multi-physics PDE simulation. Future Gener. Comput. Syst. 22(1–2), 204–216 (2006)
Ragan-Kelley, J., Barnes, C., Adams, A., Paris, S., Durand, F., Amarasinghe, S.: Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines. ACM Sigplan Not. 48(6), 519–530 (2013)
Sedov, L.I.: Similarity and Dimensional Methods in Mechanics. AP (1959)
Tate, A., et al.: Programming abstractions for data locality. Technical report, PADAL Workshop (2014)
Zhang, W., et al.: AMReX: a framework for block-structured adaptive mesh refinement. JOSS 4(37), 1370 (2019)
Acknowledgments
This work was supported by the U.S. Department of Energy Office of Science Office of Advanced Scientific Computing Research under contract number DE-AC02-06CH1137.
This research was supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) that are responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering, and early testbed platforms, in support of the nation’s exascale computing imperative.
This research used resources of the Oak Ridge Leadership Computing Facility at the Oak Ridge National Laboratory, which is supported by the Office of Science of the U.S. Department of Energy under Contract No. DE-AC05-00OR22725.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
O’Neal, J., Wahib, M., Dubey, A., Weide, K., Klosterman, T., Rudi, J. (2022). Domain-Specific Runtime to Orchestrate Computation on Heterogeneous Platforms. In: Chaves, R., et al. Euro-Par 2021: Parallel Processing Workshops. Euro-Par 2021. Lecture Notes in Computer Science, vol 13098. Springer, Cham. https://doi.org/10.1007/978-3-031-06156-1_13
Download citation
DOI: https://doi.org/10.1007/978-3-031-06156-1_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-06155-4
Online ISBN: 978-3-031-06156-1
eBook Packages: Computer ScienceComputer Science (R0)