June 16-20, 2013

Leipzig, Germany

Session Details

Name: Tutorial 05
Hands-on with CUDA: C/C++ & Fortran
Time: Sunday, June 16, 2013
9:00 AM - 1:00 PM
Room:   Lecture Room 11 (LR 11)
CCL - Congress Center Leipzig
Breaks:11:00 AM - 11:30 AM Coffee Break
1:00 PM - 2:00 PM Lunch
Presenter(s):   Thomas Bradley, NVIDIA
  Jiri Kraus, NVIDIA
  Peter Messmer, NVIDIA
Abstract:   NVIDIA developer technology engineers present a hands-on tutorial on programming GPUs using CUDA C/C++ and Fortran for scientific and engineering tasks.
CUDA is a general-purpose platform for accelerating applications with parallel workloads. Used by scientists in industry and academia to achieve dramatic speedups over CPU-only codes, CUDA offers three main programming approaches for GPUs: libraries, directives, and programming languages. In this tutorial you will learn the fundamentals of GPU programming, how to develop kernels in CUDA C, C++ and Fortran, and how to integrate these kernels into your application.
After an introduction to GPU programming, you will write your first CUDA program and build and run your program in the cloud on Amazon’s AWS. Building upon this first example, you will learn about the GPU architecture and create parallel programs in CUDA C/C++ and Fortran. We will then have a closer look at the memory model and learn how to manage data transfers. In all these exercises, we will take advantage of the rich toolset of the CUDA platform in order to maximise productivity.
For further performance optimisation you will learn how to overlap of data transfer with computation and how to interoperate with GPU accelerated libraries and OpenACC code.

Content Level
50% Beginner, 50% Intermediate

Attendees should bring a laptop with Ethernet/Wi-Fi and NX/ssh client. Remote access to GPUs will be provided, preparation instructions will be sent to subscribed attendees beforehand (last minute setup is possible).
Program may be subject to changes.