Back

Minisymposium Presentation

The Community-Driven AdaptiveCpp SYCL Compiler Project: From High-Level C++ Programming to the Automatic Synthesis of Specialized Kernels

Tuesday, June 4, 2024
16:00
-
16:30
CEST
Climate, Weather and Earth Sciences
Climate, Weather and Earth Sciences
Climate, Weather and Earth Sciences
Chemistry and Materials
Chemistry and Materials
Chemistry and Materials
Computer Science and Applied Mathematics
Computer Science and Applied Mathematics
Computer Science and Applied Mathematics
Humanities and Social Sciences
Humanities and Social Sciences
Humanities and Social Sciences
Engineering
Engineering
Engineering
Life Sciences
Life Sciences
Life Sciences
Physics
Physics
Physics

Description

The SYCL implementation ecosystem currently consists of two main implementations: The commercial and vendor-driven DPC++ project, led by Intel, and the independent, community-driven AdaptiveCpp project.AdaptiveCpp provides a flexible, portable heterogeneous computing framework with its support for GPUs from Intel, NVIDIA, and AMD as well as any LLVM-supported CPU.

In this presentation, we will discuss how AdaptiveCpp can help users to develop highly performant applications with reasonable effort. This includes its ability to provide a low barrier of entry to heterogeneous computing: Its support for offloading C++ standard parallelism constructs provides a convenient, high-level model, while frequently outperforming vendor compilers.Additionally, we will show how AdaptiveCpp's unique design can automatically synthesize highly-specialized kernels from portable code at runtime. This enables AdaptiveCpp to deliver highly competitive performance while potentially requiring less interaction with users than other SYCL compilers.

We argue that community-driven projects such as AdaptiveCpp are crucial to avoid the dangers of vendor lock-in, and will show how developers and scientists can engage with AdaptiveCpp and participate in its development, and thus help shape it into the tool they want.

Authors