GPU Computing

TP 0 Overview

E. Carlinet

J. Chazalon

April 2022

Introduction

The first practice session is divided into several exercises which are relatively independent; do not remain stuck on a particular one but move on to the next one if needed.

The first 4 exercises are a “warm up”, and the last on is the first part of the Mandelbrot project that you will continue during the next session.

You should learn how to:

  1. check your CUDA device properties;
  2. run some kernels and manage data allocation;
  3. build your code with compatibility in mind;
  4. code some simple kernels.

Then, moving on to the Mandelbrot project, you will:

  1. implement a computation intensive algorithm using CUDA;
  2. start to think about how to compute an histogram in CUDA.

Contents

Part 1: Warming up

  1. Device query: obtain important information about your CUDA hardware.
  2. Host code for simple kernels: manage memory allocation and kernel launch.
  3. Compilation and Runtime: build and run code for a particular architecture.
  4. Kernel programming: code some simple kernels.

Each exercise set is stored in a dedicated directory with detailed instructions: please check the instructions.html files.

Part 2: Mandelbrot

As soon as you complete the warm-up exercises, you should move on to the “TP1” directory and start the Mandelbrot project. You are expected to complete:

How to proceed

You should now be ready to start:

Good luck!