-
Partager cette page
GPU computing
Titulaire(s) du cours
Daniele Bonatto (Coordonnateur) et Jan LEMEIRECrédits ECTS
5
Langue(s) d'enseignement
anglais
Contenu du cours
La programmation parallèle d'algorithmes de traitement d'images sur GPU (Graphics Processing Unit) utilisant les langages de programmation CUDA (GPU Nvidia) et/ou HIP (GPU AMD), extensions du C/C++, et exploitant intelligemment l'architecture mémoire du GPU dans un système embarqué et/ou de calcul haute performance (HPC).
Objectifs (et/ou acquis d'apprentissages spécifiques)
A la fin du cours, l’étudiant.e aura implémenté des algorithmes de traitement d’images 2D en CUDA, visant des applications en (presque) temps réel.
Pré-requis et Co-requis
Connaissances et compétences pré-requises ou co-requises
Compétences en programmation C/C++ (niveau intermédiaire; pas besoin de maîtriser les concepts orientés objet).
Méthodes d'enseignement et activités d'apprentissages
Le cours suit une approche « apprendre par l’exemple ».
Les travaux pratiques permettront aux étudiant.e.s de se préparer (en groupes de 2) à l’implémentation multi-tâches d’un traitement d’images 2D, décrit dans un rapport scientifique.
Contribution au profil d'enseignement
Programmation multi-tâches massive d'un algorithme d'imagerie 2D sur une unité de traitement graphique (GPU) pour l'ingénieur multimédia.
Références, bibliographie et lectures recommandées
- John Cheng, Max Grossman, Ty McKercher, "Professional CUDA C Programming," John Wiley & Sons, 2014.
- Yifan Sun, Trinayan Baruah, David Kaeli, "Accelerated computing with HIP," Advanced Micro Devices, Inc, December 2022.
Support(s) de cours
- Université virtuelle
Autres renseignements
Contacts
Pr. Gauthier Lafruit, LISA-VR, ULB
Pr. Jan Lemeire, ETRO, VUB
Campus
Solbosch
Evaluation
Méthode(s) d'évaluation
- Projet
- Examen oral
Projet
Examen oral
L'évaluation repose principalement sur un examen oral, présentant un projet d'imagerie avec accélération CUDA (rapport et code source à rendre une semaine avant l'examen). Des questions complémentaires sur la théorie pourront également être posées ponctuellement lors de la présentation du projet CUDA.
Construction de la note (en ce compris, la pondération des notes partielles)
Un mini-projet (mesure des performances GPU de base dans le modèle « roofline ») accompagné d'un rapport écrit doit être remis à mi-parcours, ce qui nous permet de vérifier si les étudiant.e.s sont prêt.e.s pour leur projet CUDA final. Il compte pour 20 % des notes ; les 80 % restants proviennent de l'examen oral lui-même.
Langue(s) d'évaluation
- anglais
- (éventuellement français, Néerlandais )