- Cours pratique
- Informatique
Formation CUDA - Initiation
Compute Unified Device Architecture

- Durée
- 1 jour
- Niveau
- Fondamental
- Modalités
- Distanciel
Description de la formation CUDA
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.
Pour une formation plus avancée, vous pouvez suivre la formation CUDA - Prise en main (CUDO).

Objectifs pédagogiques
Objectifs pédagogiques :
À l'issue de cette formation CUDA, vous aurez acquis les connaissances et compétences nécessaires pour :
- Connaître le contexte historique de nVIDIA et de CUDA
- Connaître l'architecture GPU et le modèle de programmation CUDA
- Être capable de programmer simplement sur CUDA
- Savoir optimiser les performances sur CUDA
Objectifs opérationnels
Objectif opérationnel :
Connaître les fonctionnalités essentielles de CUDA.
Programme
Contenu du cours, module par module
2 modules
9h00 - 10h00 - Introduction : Histoire de nVIDIA et de CUDA
- L’histoire de nVIDIA (1993) et évolution des GPU
- Origine de CUDA (2006) : pourquoi et comment ?
- Différence CPU vs GPU et besoin de parallélisme
- Exemples d’applications utilisant CUDA (IA, calcul scientifique, jeux vidéo)
10h00 - 11h00 - Architecture GPU et modèle de programmation CUDA
- Unité de calcul GPU : multiprocesseurs, threads, warps
- Comparaison SMP (CPU) vs SIMT (GPU)
- Modèle CUDA : grille, blocs, threads
- Gestion de la mémoire GPU : global, shared, local, registers
11h00 - 12h30 - Programmation CUDA : principes de base
- Notion de kernel et exécution sur le GPU
- Lancement d’un kernel (mots-clés __global__ et <<< >>>)
- Synchronisation et optimisation mémoire
- Introduction aux profils de performances
Démonstration
Visualisation du découpage en grille/blocs/threads
Démonstration
Analyse du speed-up GPU
14h00 - 15h30 - Optimisation des performances
- Réduction des latences mémoire : coalescence mémoire
- Utilisation de la mémoire partagée (mots-clé __shared__)
- Réduction et atomic operations
- Impact de la taille des blocs de threads
Démonstration
15h30 - 16h30 - Cas concrets d’utilisation de CUDA
- IA et Deep Learning : TensorFlow et PyTorch utilisent CUDA
- Graphismes et simulation physique (moteurs 3D, NVIDIA PhysX)
- Calcul scientifique : simulations en astrophysique, chimie, médecine
- Finance et cryptographie : calcul Monte-Carlo, Blockchain
16h30 - 17h00 - Conclusion et perspectives
- Récapitulatif des forces et limites de CUDA
- Évolutions récentes (CUDA 12, Hopper, Tensor Cores)
- Questions / échanges
Travaux pratiques
Impact du choix des blocs et mémoire partagée sur les performances
Démonstration
Simulation d’une transformation d’image GPU
Programme mis à jour le 06/10/2025
Public concerné
Ce cours s’adresse aux développeurs, ingénieurs et chercheurs souhaitant comprendre les bases de la programmation parallèle avec CUDA, mais sans nécessité d'implémenter des exemples pratiques eux-mêmes. Il n’y a aucun prérequis matériel car toutes les démonstrations seront réalisées par le formateur. Le public peut provenir de secteurs comme la finance, l’ingénierie, les jeux vidéo ou la recherche en sciences physiques.

Prérequis
Cette formation CUDA est ouverte à tout personnel de services informatiques ou travaillant en R&D désireux de comprendre les capacités de calcul que CUDA peut offrir. Une expérience préalable en programmation parallèle est recommandée, mais non essentielle. Une compréhension basique de l’architecture des ordinateurs, notamment la différence entre CPU et GPU, sera utile, mais la formation débutera avec une explication accessible de ces concepts.
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.