
LLVM contributor Johannes Doerfert at the Lawrence Livermore National Laboratory (LLNL) is seeking comments from other LLVM stakeholders around working toward a more common/shared LLVM offload runtime for accelerators / GPUs / FPGAs. He explains of the "llvm/offload" plans:
"The idea is to provide a space for all of us to work together on the offloading infrastructure. Overall, the goal is a unified user experience, less and better code, interoperability between offloading models, and portability for the models that are currently not as portable as we would like them to be. I believe a subproject is adequate for this, given the wide scope and the way it couples with other (sub)projects."
The llvm/offload sub-project would be initially brought up by basing it off the existing LLVM libomptarget already in the source tree albeit moved and renamed to llvm/offload . That OpenMP target will provide the initial basis for this offloading back-end. Currently libomptarget supports offloading to CPUs as well as AMD and NVIDIA GPUs. Plus libomptarget extensions allow other features like offloading to remote machines and more.
So far those that have commented on the llvm/offload proposal have been in favor of this idea to work on greater collaboration and sharing around common LLVM offloading.