Performance Portability Strategies for Grid C++ Expression Templates

Peter A. Boyle,M. A. Clark,Carleton DeTar,Meifeng Lin,Verinder Rana,Alejandro Vaquero Avilés-Casco
DOI: https://doi.org/10.1051/epjconf/201817509006
2017-10-26
Abstract:One of the key requirements for the Lattice QCD Application Development as part of the US Exascale Computing Project is performance portability across multiple architectures. Using the Grid C++ expression template as a starting point, we report on the progress made with regards to the Grid GPU offloading strategies. We present both the successes and issues encountered in using CUDA, OpenACC and Just-In-Time compilation. Experimentation and performance on GPUs with a SU(3)$\times$SU(3) streaming test will be reported. We will also report on the challenges of using current OpenMP 4.x for GPU offloading in the same code.
High Energy Physics - Lattice,Mathematical Software
What problem does this paper attempt to address?