The Current State Of OpenMP Offloading In LLVM's Clang, Try It Today With Clang-YKT
During last month's SuperComputing 2016 conference in Salt Lake City was the LLVM Compiler Infrastructure in HPC workshop being hosted for its third year. The slides from that event were recently made available and one of the talks interesting me the most was about the state of Clang OpenMP offloading, including for GPUs.
Carlo Bertolli of IBM presented on the Clang offloading state for OpenMP as well as technical/background information for those interested in the overall concept.
As of last month, there's a full driver implementation available in the latest development code, libomptarget is available as host agnostic / plugins for ELF and CUDA / NVPTX device library, and the code generation patches are being worked on along with various optimization patches. What isn't yet in mainline LLVM/Clang is the code generation for GPU support and there are some data sharing bits missing.
But for those wanting to play with a full-fledged implementation, their current code-base including work not yet upstreamed can be found via the Clang-YKT on GitHub project.
Those wishing to learn more about the Clang offloading work can see the PDF slide deck by Carlo Bertolli. Those interested in the other presentations from this LLVM HPC workshop from SC'16 can find the other slides via this page.
Carlo Bertolli of IBM presented on the Clang offloading state for OpenMP as well as technical/background information for those interested in the overall concept.
As of last month, there's a full driver implementation available in the latest development code, libomptarget is available as host agnostic / plugins for ELF and CUDA / NVPTX device library, and the code generation patches are being worked on along with various optimization patches. What isn't yet in mainline LLVM/Clang is the code generation for GPU support and there are some data sharing bits missing.
But for those wanting to play with a full-fledged implementation, their current code-base including work not yet upstreamed can be found via the Clang-YKT on GitHub project.
Those wishing to learn more about the Clang offloading work can see the PDF slide deck by Carlo Bertolli. Those interested in the other presentations from this LLVM HPC workshop from SC'16 can find the other slides via this page.
1 Comment