[ONLINE] CUDA 4 Dummies @ VSC Vienna

Europe/Vienna
VSC Research Center, TU Wien (ONLINE COURSE)

VSC Research Center, TU Wien

ONLINE COURSE

Description

Overview

CUDA is the standard API for code development targeting NVIDIA GPUs 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 provides lectures, demos, and hands-on labs.

Content Levels: Beginners = 0:00h (0%) + Intermediate = 13:00h (100%) + Advanced = 0:00h (0%)

This course is a PRACE training event. It is organized by the VSC Research Center, TU Wien.

Agenda & Content

1st day – 24 October 2022

  • Basic design principles, getting started with simple CUDA routines, mastering the CUDA environment;
  • Memory hierarchy with a focus on CUDA managed unified memory;
  • Practical exercise: all the pitfalls one can run into when porting a dummy code to CUDA.

08:45 - 09:00    join online
09:00 - 13:00    lectures and hands-on labs (with breaks: 10:45-11:00)
13:00 - 14:00    lunch break
14:00 - 17:00    lectures and hands-on labs (with breaks: 15:20-15:35)

2nd day – 25 October 2022

  • Selected examples to demonstrate CUDA capabilities and GPU operation, e.g., bandwidthTest, simpleAssert, simpleStreams, etc.;
  • CUDA libraries, CUBLAS, CUSolver, considering numerical precision, gaining insight into the runtime;
  • Practical exercise: CUDA in everyday life (of a scientist).

08:45 - 09:00    join online
09:00 - 13:00    lectures and hands-on labs (with breaks: 10:45-11:00)
13:00 - 14:00    lunch break
14:00 - 17:00    lectures and hands-on labs (with breaks: 15:20-15:35)

Surveys
Please provide your feedback!
VSC Training
  • Monday, October 24
    • 9:00 AM 10:00 AM
      Introduction to GPU Computing with CUDA 1h

      Lecture

      Speaker: Siegfried Höfinger
    • 10:00 AM 10:05 AM
      MM Challenge 1 5m
      Speaker: Markus Hickel
    • 10:05 AM 10:45 AM
    • 10:45 AM 11:00 AM
      Coffee Break 15m
    • 11:00 AM 12:00 PM
      Memory Hierarchies in CPU/GPU Architectures 1h
      Speaker: Siegfried Höfinger
    • 12:00 PM 12:05 PM
      MM Challenge 2 5m
      Speaker: Markus Hickel
    • 12:05 PM 12:45 PM
      Hands-On Session 2 40m
    • 12:45 PM 1:00 PM
      Individual Support 15m
    • 1:00 PM 2:00 PM
      Lunch Break 1h
    • 2:00 PM 3:20 PM
      Tutorial 1 - Part 1 1h 20m
    • 3:20 PM 3:35 PM
      Coffee Break 15m
    • 3:35 PM 4:30 PM
      Tutorial 1 - Part 2 55m
    • 4:30 PM 5:00 PM
      Individual Support 30m
  • Tuesday, October 25
    • 9:00 AM 10:00 AM
      CUDA SDK --- Basic Concepts 1h
      Speaker: Siegfried Höfinger
    • 10:00 AM 10:05 AM
      MM Challenge 3 5m
      Speaker: Markus Hickel
    • 10:05 AM 10:45 AM
      Hands-On Session 3 40m
    • 10:45 AM 11:00 AM
      Coffee Break 15m
    • 11:00 AM 12:00 PM
      CUDA SDK --- Libraries, Numerical Accuracy 1h
      Speaker: Siegfried Höfinger
    • 12:00 PM 12:05 PM
      MM Challenge 4 5m
      Speaker: Markus Hickel
    • 12:05 PM 12:45 PM
      Hands-On Session 4 40m
    • 12:45 PM 1:00 PM
      Individual Support 15m
    • 1:00 PM 2:00 PM
      Lunch Break 1h
    • 2:00 PM 3:20 PM
      Tutorial 2 - Part 1 1h 20m
    • 3:20 PM 3:35 PM
      Coffee Break 15m
    • 3:35 PM 4:30 PM
      Tutorial 2 - Part 2 55m
    • 4:30 PM 5:00 PM
      Individual Support 30m