CUDA is the standard API for code development targeting the GPU and a number of impressive examples have already been given in diverse areas from particle physics to computational biology. CUDA allows simple extensions of standard C/C++/Fortran code with GPU-specific functions. In this way thousands of cores available on the GPU can be leveraged to work in parallel and thus carry out significant fractions of the computational workload on the device rather than the CPU. There is also a vast set of auxiliary tools available to the developer including libraries, code templates, building blocks, analysis tools, developmental frameworks and in general a vivid community making up the CUDA Developer Zone. It is often for this multifaceted support environment that the interested beginner is feeling overwhelmed and unsettled about which particular first steps should best be taken to gain a straightforward introduction into the subject. For exactly this reason the present course is offering a systematic step-by-step introduction into GPU computing from the perspective of the newcomer. Basic design principles will be established, central programming techniques acquired and a number of state-of-the-art workflows examined that efficiently employ the GPU and are frequently used in scientific computing.
This course is a PRACE training event.
Content Levels: Beginners = 0:00h (0%) + Intermediate = 13:00h (100%) + Advanced = 0:00h (0%)