Praktikum General-Purpose Computation on GPUs

  • Typ: Praktikum (P)
  • Lehrstuhl: Fakultät für Informatik
  • Semester: SS 2014
  • Zeit: 16.04.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten


    23.04.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    30.04.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    07.05.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    14.05.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    21.05.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    28.05.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    04.06.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    11.06.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    18.06.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    25.06.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    02.07.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    09.07.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten

    16.07.2014
    15:45 - 17:15 wöchentlich
    50.34 Raum 148 50.34 INFORMATIK, Kollegiengebäude am Fasanengarten


  • Dozent:

    Gabor Liktor
    Hauke Rehfeld
    Christoph Schied
    Prof.Dr.Ing. Carsten Dachsbacher

  • SWS: 2
  • LVNr.: 24911

 Exploiting the vast horse power of contemporary GPUs for general purpose applications has become a must for any realtime or interactive application nowadays. Current computer games use the GPUs not only for rendering graphics, but also for collision detection, physics, or artificial intelligence. General purpose computing on GPUs (GPGPU) has also penetrated the field of scientific computing enabling realtime experience of large scale fluid simulations, medical visualization, or signal processing.

This lecture introduces the concepts of programming graphics cards for non-graphical applications, such as data sorting, image filtering (e.g. denoising, sharpening), or physically based simulations. During the course, students familiarize themselves with the architecture of the current GPUs and develop parallel programming skills using the OpenCL and CUDA language.

The practical assignments will cover the following topics:

  • The architecture of contemporary GPUs (execution model, memory model, etc.)
  • Introduction to the OpenCL programming language
  • Reduction, scanning, and sorting parallel algorithms
  • Image filtering via separable convolution kernels
  • Physics simulation (cloth simulation using particles and springs)
  • Introduction to optimization and profiling on the GPU

Course Materials

    Kick-off Slides
    Materials: 
Assignment 1     Introduction
    Deadline:  April 30th, 2014, 14:00
    Topics:  Introduction into OpenCL, parallel vector summation and matrix transposition.
    Materials: 
Assignment 2     Data-Parallel Algorithms
    Deadline:  May 28th, 2014, 15:45
    Topics:  Parallel programming primitives in GPU computing: reduction, scan
    Materials: 
Assignment 3     Image Convolution
    Deadline:  June 18th, 2014, 15:45
    Topics:  Convolution, separable kernels, bilateral filter
    Materials: 
Assignment 4     Particle Simulation
    Deadline:  July 16th, 2014, 15:45
    Topics:  Particle systems, Verlet-integration, cloth simulation
    Materials: