This is a recording of the Chapel Tutorial presented at ChapelCon '24. Slides are available at https://chapel-lang.org/ChapelCon/202...
00:00 - What is Chapel?
03:40 - The Heat Diffusion Problem
08:00 - Chapel code to Simulate Heat Diffusion
12:45 - Hands-on #1 (getting the code)
15:58 - Hands-on #2 (varying problem size)
16:52 - Hands-on #3 (the --fast flag)
19:26 - Language Features in Chapel Solution
25:30 - Using Parallelism to Improve Performance
27:21 - Hands-on #4 (Comparing serial and parallel performance)
30:02 - More on forall loops
34:40 - A note on race conditions
36:24 - GPUS, Supercomputers, and Locales
38:12 - Intro to Locales
44:19 - Locales in the Code so Far
45:24 - Using GPUs using the Locales model
49:02 - Introducing Domains for Multi-Node Execution
51:24 - Distributing the Heat Diffusion Computation
54:21 - More on Distributions
56:47 - Heat Diffusion in Two Dimensions
59:54 - Distributing the Two-Dimensional Heat Diffusion Computation
1:01:21 - Measuring Communication
1:03:42 - Hands-on #5 (Measuring communication in two-dimensional heat diffusion)
1:08:03 - Using the Stencil Distribution to Reduce Communication
1:10:33 - Hands-on #6 (Comparing communication between block and stencil distributions)
1:13:00 - Conclusion and Summary