40% Off Career-Building Certificates
AI Engineer - Learn how to integrate AI into software applications
Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore the comprehensive revival and modernization of OpenCL.jl, one of Julia's oldest GPU programming packages, in this 26-minute conference talk from JuliaCon Global 2025. Learn how the package was transformed through integration with the JuliaGPU stack by implementing GPUArrays.jl interfaces, developing a SPIR-V compiler based on GPUCompiler.jl, and adding KernelAbstractions.jl support to enable programming modern OpenCL accelerators using native Julia code similar to CUDA.jl or AMDGPU.jl. Discover the enhanced support for the Portable OpenCL (PoCL) library as a backend for OpenCL.jl, which enables CPU execution of OpenCL kernels while leveraging multithreading and SIMD instructions for acceleration through the pocl_jll package integration. Understand the development of a new CPU backend for KernelAbstractions.jl that combines PoCL's CPU capabilities with GPUCompiler.jl's SPIR-V code generation to address limitations of the current Julia tasks-based implementation and significantly improve both portability and performance. Examine practical examples and benchmarks demonstrating these improvements in GPU computing with Julia.
Syllabus
Reviving OpenCL.jl for CPU glory | Besard | JuliaCon Global 2025
Taught by
The Julia Programming Language