Главная
Study mode:
on
1
Welcome!
2
Welcome
3
Outline
4
JuliaGPU packages
5
JuliaGPU back-ends
6
GPU Architecture
7
Parallel programming models
8
Follow along and links to notebooks, JuliaHub
9
Start of tuturial with notebook
10
Array programming
11
Kernel programming
12
Parallel programming + questions
13
Profiling
14
Profiling: NVIDIA Nsight Systems: live example
15
Profiling: NVIDIA Nsight Compute: live example → optimize single kernel invocation
16
Common issues: unsupported array operations
17
Common issues: unsuppored kernel operations
18
Parallel programming issues
19
Tour of accompanying Github repo
20
Case Study I: Image processing using AMDGPU
21
Break
22
Case Study II: Fun with arrays, Machine Learning
23
Case Study III: Random number generators
24
Kernel abstractions
25
Example: Solving heat equation with GPU
26
Sneak peek of Enzyme (automatic differentiation framework)
27
Questions and Future plans
Description:
Dive into GPU programming with Julia in this comprehensive 3-hour workshop from JuliaCon 2021. Explore three major GPU programming packages: CUDA.jl for NVIDIA GPUs, AMDGPU.jl for AMD GPUs, and oneAPI.jl for Intel GPUs. Learn various approaches for GPU programming, from user-friendly generic array operations to performance-focused hardware-specific kernels. Cover topics including GPU architecture, parallel programming models, array and kernel programming, profiling techniques, and common issues. Engage with practical case studies on image processing, machine learning, and random number generation. Gain hands-on experience solving real-world problems like the heat equation using GPUs. Conclude with a sneak peek at the Enzyme automatic differentiation framework and a Q&A session on future developments in Julia GPU programming.

GPU Programming in Julia - Workshop

The Julia Programming Language
Add to list
0:00 / 0:00