• NEW

Formation CUDA - Prise en main

Compute Unified Device Architecture
Durée 3 jours
Niveau Intermédiaire
Classe à distance
Possible

Vous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...

Référence CUDO
Éligible CPF Non

CUDA (Compute Unified Device Architecture) est une plateforme de calcul parallèle développée par NVIDIA qui permet aux développeurs d'exploiter la puissance des GPU (processeurs graphiques) pour accélérer les calculs intensifs. Contrairement aux CPU classiques, les GPU sont optimisés pour exécuter simultanément des milliers de threads, ce qui les rend particulièrement efficaces pour des tâches comme le machine learning, le rendu 3D, la simulation scientifique et le traitement d’image.

CUDA repose sur une extension du langage C/C++ et fournit une API permettant d’exécuter des programmes directement sur le GPU. Il comprend des outils comme cuBLAS (calcul matriciel optimisé), cuDNN (accélération des réseaux neuronaux) et Thrust (bibliothèque de programmation parallèle).

Grâce à CUDA, les développeurs peuvent écrire du code optimisé pour exploiter pleinement le potentiel des architectures GPU, ce qui est largement utilisé dans des domaines comme l’intelligence artificielle, la finance et la bioinformatique.

Objectif opérationnel :

Savoir approfondir la programmation CUDA et en comprendre son optimisation.

Objectifs pédagogiques :

À l'issue de cette formation CUDA Avancé, vous aurez acquis les connaissances et compétences nécessaires pour :

  • Comprendre l’écosystème nVIDIA et CUDA
  • Savoir coder des kernels CUDA et optimiser des algorithmes pour GPU
  • Être capable de déboguer et analyser les performances d’un programme CUDA
  • Connaître les limites et bonnes pratiques pour écrire du code GPU efficace

Public :

Ce cours s’adresse aux développeurs ou aux chefs de projet pratiquant la programmation procédurale ou orientée objet, nécessitant des ressources de calcul. Le public visé cherche à comprendre l’approche mise en œuvre par nVIDIA avec CUDA pour réaliser des calculs d’ordinaire affectés au CPU. Cette formation intéressera également tout développeur désirant être plus à l’aise dans l’utilisation et/ou la conception d’algorithmes parallèles.

Prérequis :

Les participants doivent avoir une solide maîtrise de la programmation en C++, y compris des connaissances sur les pointeurs, les tableaux, les structures de données et les bases de la gestion mémoire. Une expérience préalable en programmation parallèle serait un plus pour comprendre les concepts avancés de CUDA. Une compréhension de la différence entre CPU et GPU, la gestion de la mémoire est aussi un prérequis important. Les participants doivent également être à l’aise avec les outils de développement tels que les compilateurs et les éditeurs de code.

Jour 1/3 : Introduction et installation

Objectif : Comprendre l’évolution de CUDA, installer CUDA et exécuter un 1er programme simpleIntroduction générale (1h)L’histoire de nVIDIA : de la création sur les banquettes d'un Denny’s au géant de la tech
(valorisé à 1000 milliards de dollars)
Jensen Huang et ses associés
Le succès des cartes graphiques : du gaming au GPGPU
L’avènement de CUDA (Compute Unified Device Architecture) et son impact sur l’industrie
Présentation de CUDA et des GPU modernes (1h)Différences CPU vs GPU
Pourquoi les GPU sont adaptés au calcul massivement parallèle ?
Introduction au GPGPU et aux architectures nVIDIA
Installation et premiers tests (2h - 25% de la journée en TP)Installation des drivers nVIDIA et de CUDA Toolkit
Vérification du support CUDA avec nvidia-smi
Compilation et exécution d’un premier programme simple pour récupérer l’indice CUDA
Concepts fondamentaux de CUDA (2h)API CUDA : présentation et philosophie
Modèle de programmation CUDA : Host vs Device, Grids, Blocks, Threads
Mémoire globale, partagée, locale et registre
Bonnes pratiques pour éviter les goulots d’étranglement

Jour 2/3 : Concepts avancés et exercices pratiques

Objectif : Approfondir la programmation CUDA et comprendre l’optimisationRappels et questions sur la veille (30 min)Résumé des points clés de la première journée
Problèmes rencontrés lors de l’installation et du premier programme
Optimisation d’algorithmes (2h)Pourquoi un bon algo en O(n²) ne devient pas magique avec CUDA ?
Expliquer l’algorithme du calcul des arêtes du bord d’un maillage de triangles
Passage d’une complexité O(n²) à O(n) avec hachage
Démonstration et implémentation sur CPU
Présentation des outils de programmation parallèle (1h)OpenMP vs CUDA : approche simple et indépendante vs architecture GPU
Les concurrents de CUDA : Intel OneAPI et pourquoi Intel peine à rivaliser
Pourquoi le GPU n’a pas les mêmes contraintes qu’un CPU (gestion des threads, ndisk)
Le rôle du mining de l’Ethereum dans le succès de CUDA (PoWork vs PoStake)
Programmation CUDA avancée (2h - 50% de la journée en TP)Lancement d’un kernel et gestion des threads
Synchronisation et impact sur la performance
Réduction parallèle : introduction et implémentation en TP

Jour 3/3 : Exercices avancés et débriefing

Objectif : Mettre en pratique les concepts et explorer des cas réels d’utilisationRappels et questions (30 min)Résumé des points essentiels du jour précédent
Échanges sur les problèmes rencontrés en TP
Exercices pratiques sur l’optimisation (3h - 50% de la journée en TP)Différents exemples de réduction parallèle
Optimisation des accès mémoire (mémoire partagée vs mémoire globale)
TP : implémentation d’un algorithme de tri parallèleDébogage et analyse des performancesDiscussion sur les architectures GPU (1h)Logical model vs Physical model
Impact des nouvelles architectures sur la compatibilité CUDA
Les évolutions annuelles et leurs implications pour les développeurs
Débriefing et conclusion (1h)Questions/réponses sur les concepts abordés
Exemples d’applications industrielles de CUDA
Comment continuer après la formation : ressources, forums et documentations utiles
Date de mise à jour du programme : 07/03/2025

Dates et lieux

Du 13 au 15 octobre 2025
Lieu
Distanciel
Durée
3 jrs
2490 € HT
Du 13 au 15 octobre 2025
Lieu
Paris
Durée
3 jrs
2490 € HT

Ces formations peuvent aussi vous intéresser :

  • Niveau : Intermédiaire
  • Référence : DPRC

  • Niveau : Avancé
  • Référence : DPLC

  • Niveau : Intermédiaire
  • Référence : DPOC

Préparer la certification C++ Associate

  • Niveau : Intermédiaire
  • Certification : C++ Certified Associate Programmer
  • Référence : DCAP


Formations Informatique
et Management
en ligne à ce jour

+
Stagiaires dans nos salles
de cours sur
l'année

%
De participants satisfaits
ou très satisfaits de nos
formations


Formateurs experts
validés par
PLB