Portability: A Necessary Approach for Future Scientific Software
Meghna Bhattacharya,Paolo Calafiura,Taylor Childers,Mark Dewing,Zhihua Dong,Oliver Gutsche,Salman Habib,Xiangyang Ju,Michael Kirby,Kyle Knoepfel,Matti Kortelainen,Martin Kwok,Charles Leggett,Meifeng Lin,Vincent R. Pascuzzi,Alexei Strelchenko,Brett Viren,Beomki Yeo,Haiwang Yu
DOI: https://doi.org/10.48550/arXiv.2203.09945
2022-03-16
Abstract:Today's world of scientific software for High Energy Physics (HEP) is powered by x86 code, while the future will be much more reliant on accelerators like GPUs and FPGAs. The portable parallelization strategies (PPS) project of the High Energy Physics Center for Computational Excellence (HEP/CCE) is investigating solutions for portability techniques that will allow the coding of an algorithm once, and the ability to execute it on a variety of hardware products from many vendors, especially including accelerators. We think without these solutions, the scientific success of our experiments and endeavors is in danger, as software development could be expert driven and costly to be able to run on available hardware infrastructure. We think the best solution for the community would be an extension to the C++ standard with a very low entry bar for users, supporting all hardware forms and vendors. We are very far from that ideal though. We argue that in the future, as a community, we need to request and work on portability solutions and strive to reach this ideal.
Computational Physics,High Energy Physics - Experiment,Data Analysis, Statistics and Probability,Instrumentation and Detectors