14:50
-
15:10
-
15:10
Day 1
GPU Offloading in LLVM: Architecture, API, and Plugins
<p>Over the past two years, the LLVM community has been building a general-purpose GPU offloading library. While still in its early stages, this library aims to provide a unified interface for launching kernels across different GPU vendors. The long-term vision is to enable diverse projects—ranging from OpenMP® to SYCL™ and beyond—to leverage a common GPU offloading infrastructure.</p>
<p>Developing this new library alongside the existing OpenMP® offloading infrastructure has introduced several interesting challenges, as both share the same plugin system. This is particularly evident in the implementation of the OpenMP® Tools Interface (OMPT).</p>
<p>In this talk, we’ll explore the journey so far:
• Project history – how the effort started and evolved.
• Current architecture – the organization of the offloading library today.
• API design – what the interface looks like and how it works.
• Plugins – the lower-level components that make vendor-specific integration possible.
• Challenges – issues encountered in the current OMPT implementation.</p>