From 21 to 23 August StreamHPC will give a 3-day training in OpenCL. Here you will learn how to develop OpenCL-programs.
A separate ticket for only the first day can be bought, as then will be a crash-course into OpenCL. Module basics.
The second and third day will all about parallel-algorithm design, optimisation and error-handling. Module optimisation with several new subjects added.
The last part of the third day is reserved for special subjects, as requested by the attendees.
Schedule
Day 1: Basics of OpenCL
We will work on samples in C/C++ and translate them to GPU-OpenCL. This will include subjects like kernels and hosts. Throughout the training there will be various comparisons with other technologies.
The afternoon is scheduled for guided lab-sessions to bring the theories into practice. The goal is to make a first simple OpenCL-program which uses vectors and runs on both CPU and GPU.
Day 2: Parallelization and GPU-architecture Optimisation
We then go into various examples of code and how they could be rewritten into parallel code.
We will then go into the details of the architectures of GPUs and learning its advantages/disadvantages. This includes the various types of memory, memory-alignment, PCI-transfers and asynchronous operations.
The afternoon lab-session will let you bring the theory to practise.
Day 3: Tools, Optimizations and software-integration
Introduction to debuggers, profilers and other tools. For GPUs it is slightly different than CPUs. After that we will fix broken OpenCL code.
Finally, we will go into advanced topics, such as atomics vs barriers, OpenGL interoperability, multi-queues, and PCI-transfer handling. Exact subjects of the afternoon depend on what you have requested.
Make a reservation
Send an email to training@streamhpc.com. You will receive further information.
If you are with at least 6 people, you can request an on-site training.