“Towards Heterogeneous Programming in C++"
summary
SG14 mandates adding heterogeneous support to C++ and the practical proposal centers on SYCL: a single-source C++ model that compiles device lambdas into SPIR or vendor binaries and embeds them in one executable. It uses buffers and accessors so the runtime builds automatic data-dependency graphs and only copies when needed; kernels use parallel_for with explicit ranges. Codeplay ships ComputeCpp (community edition) as a SYCL implementation targeting OpenCL devices and SPIR, demonstrating portability across Intel/AMD hardware while noting that full performance portability still requires device-specific tuning.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 1:37Heterogeneous computing
- 3:33Historical evolution
- 7:11Language popularity
- 8:57Challenges
- 13:00Offloading techniques
- 15:26Describing parallelism
- 17:19Data management
- 22:29Sycl standard
- 27:04Sycl features
- 30:36Sycl code example
- 34:02Future of C++
- 40:11Executors and simd
- 43:01Standardization path
- 45:55Conclusion and q&a
related talks
01h 32mHeterogeneous Programming in C++ today
01h 07mHeterogeneous Modern C++ with SYCL
41mSYCL building blocks for C++ libraries
01h 01mA Modern C++ Programming Model for GPUs using Khronos SYCL
01h 01mTake Advantage of All the MIPS - SYCL & C++
01h 33mGPU programming with modern C++
01h 00mSYCL: Open Your Code to More Hardware Choices
24mOpen Acceleration for RISC-V – Portability, Performance and Partners...
