Courses/IRGPU

From LRDE

Titre

GPU Programming

Sigle

IRGPU

Enseignant

Edwin Carlinet, Chazalon

Période

S4, S5

Public

Majeure, SCIA

Contrôle

Projet

Durée

12h

Optionnel

non

Module
Prérequis
Objectifs

Être capable de repenser les algorithmes pour accélérer les traitements et maîtriser des technologies disponibles pour réduire les temps de traitement. Le cours est divisé en plusieurs tranches et plusieurs aspects et technologies seront abordées (OpenCL, CUDA…).

Ce cours vise à réconcilier le programmeur avec le hardware pour en tirer les meilleures performances. Pour cela, les différences fondamentales entre CPUs et GPUs seront abordées pendant la première séance. La seconde séance explore les solutions software, à la fois en termes de langages de programmation et de bibliothèques logicielles, qui permettront d’exploiter pleinement les capacités du GPU. Enfin, la dernière séance mettra l’accent sur la manière de repenser les algorithmes afin qu’ils s’adaptent aux types de calculs permis par l’architecture. Des exemples issus de la littérature du traitement d’image illustreront ce dernier cours.

Plan

1. Architectures massivement parallèles 2. Programmation des GPUs avec CUDA 3. Patrons de programmation efficace (Part 1: Memory consideration) 4. Patrons de programmation efficace (Part 2: Histogrammes et reductions)

Documentation
Support
Journaux