6. Évolutions du parallélisme
CUDA permet de mettre en adéquation la nécessaire hiérarchisation matérielle du calcul et l’exploitation du parallélisme au niveau logiciel. Au niveau logiciel, un noyau de calcul est défini pour s’exécuter sur un ensemble de données selon le modèle SPMD
(Single Program Multiple Data).
Dans ce modèle, les threads sont structurés en une grille de blocs de threads. La grille est lancée sur un ou plusieurs GPU, chaque bloc est pris en charge par un
Streaming Multiprocessor
(SM), et les threads sont pris en charge par les cœurs de calcul qui composent les SM. Plusieurs types d’ordonnanceurs sont nécessaires, ce qui impacte les mécanismes de communication et de synchronisation entre les threads. Dans cette section, nous détaillons les évolutions relatives à ces deux éléments.
Cet article est réservé aux abonnés
Cet article est réservé aux abonnés. Il vous reste 92 % à découvrir.
Déjà abonné ?
Se connecter
Lecture en cours
Évolutions du parallélisme