CUDA Programming Training

Course/Event Essentials

Event/Course Start
Event/Course End
Event/Course Format
Online
Live (synchronous)

Venue Information

Country: Turkey
Venue Details: Click here

Training Content and Scope

Technical Domain
Level of Instruction
Beginner
Intermediate
Sector of the Target Audience
Research and Academia
Industry
HPC Profile of Target Audience
Application Users
Language of Instruction

Other Information

Organiser
Supporting Project(s)
EuroCC/CASTIEL
Event/Course Description

Overview:

This training course will focus on the fundamentals of CUDA Programming Language. The aim is to show how coding and running an algorithm on the graphics processing unit (GPU) differs than coding and running an algorithm on the central processing unit (CPU). And we will discuss what kind of algorithms are suitable for running them on the GPU and which approaches should be followed in order to run them on the GPU efficiently.

Description:

This training event will consist of 4 lecture hours in one day. The important concepts of writing a computer program with CUDA Programming Language will be taught. In the beginning, we will show how we run the applications on the CPU by using OpenMP (Open Multi-Processing) API. Then we will show how we run the applications on the GPU by using CUDA Programming Language. And then, we will compare the behaviors of the threads run on the CPU and the threads run on the GPU. Finally, we will focus to “warp”, one of the important physical concepts of the GPU, and will present some examples that show the effects of warps on the performance of the applications run on the GPU.

Content:

  • CPU Architecture and OpenMP Threads
  • GPU Architecture
  • Reasons to Choose GPU
  • CUDA Programming Language Concepts
  • Example CUDA Codes

Learning Outcomes:

The participants will learn:

  • The main differences between the architecture of the CPU and the architecture of the GPU
  • The differences between the threads in OpenMP and the threads in CUDA
  • Some important concepts of CUDA Programming Language
  • The effects of warp on the performance of the application in CUDA

Prerequisite:

  • Basic knowledge of OpenMP
  • Basic knowledge of CUDA