Digital Design & Comp. Arch: L20b: GPU Programming (Spring 2026)

Digital Design & Comp. Arch: L20b: GPU Programming (Spring 2026)

🎙 Dr. Juan Gómez Luna et Prof. Onur Mutlu 👥 64K 📅 8 mai 2026 ⏱ 152 min 👁 902 📄 cours magistral 🧭 2026-08-15
Disponible en : Français (actuel) English

Mots-clés

GPUCUDASIMTwarpmémoireoptimisationtensor coreprogrammation parallèlearchitecturehétérogène

Résumé

Ce cours magistral de l’ETH Zürich, donné par Dr. Juan Gómez Luna et Prof. Onur Mutlu, présente les fondamentaux de la programmation GPU pour le calcul généraliste. Il débute par une introduction aux architectures GPU, en comparant les générations successives (Tesla, Volta) et en détaillant l’organisation des cœurs, des warps et des unités de calcul. Le modèle de programmation bulk synchronous parallel (BSP) est expliqué, avec ses avantages et limites. La hiérarchie mémoire (registres, caches L1/L2, mémoire globale) et les stratégies de gestion de la mémoire sont abordées. Ensuite, le cours se concentre sur les considérations de performance, notamment l’optimisation de l’utilisation des ressources, la gestion de la divergence de contrôle, et l’importance de la localité des données. Des exemples concrets illustrent l’utilisation des tensor cores pour l’accélération des réseaux de neurones. Enfin, le cours évoque brièvement le calcul collaboratif entre CPU et GPU. Les références recommandées incluent des articles de recherche sur le calcul centré mémoire et l’accélération de l’analyse génomique.

162 mots

Évaluation critique

Valeur des informations & solidité de l’argumentation

La valeur des informations est élevée : le cours fournit une base solide pour comprendre la programmation GPU, avec des explications claires sur des concepts complexes comme le SIMT, les warps, et la hiérarchie mémoire. L’argumentation est solide, appuyée par des exemples concrets et des comparaisons entre architectures. Les intervenants, experts reconnus, présentent les concepts de manière structurée, en soulignant les compromis et les défis de la programmation GPU. La discussion sur les goulots d’étranglement (bande passante mémoire, transferts PCIe) est particulièrement pertinente et bien argumentée.

Rigueur scientifique, qualité des sources, adéquation du titre

La rigueur scientifique est excellente : le cours est basé sur des références académiques solides, notamment des articles de recherche récents sur le calcul centré mémoire et l’accélération de l’analyse génomique. Les sources citées dans la description (articles arXiv, publications de l’ETH) sont fiables et pertinentes. Le titre est parfaitement adéquat au contenu, qui traite spécifiquement de la programmation GPU dans le cadre d’un cours d’architecture des ordinateurs. Aucune publicité n’est présente dans la vidéo.

176 mots

Adéquation titre / contenu

Le titre reflète exactement le contenu : une leçon sur la programmation GPU dans le cadre d'un cours d'architecture des ordinateurs.

Qualité & fiabilité

9/10

Cours universitaire de niveau master, dispensé par des experts reconnus en architecture des ordinateurs, avec des supports de cours détaillés et des références académiques solides. Le contenu est structuré, précis et à jour, avec une approche pédagogique rigoureuse.

Moments clés

Sources citées

Sources concordantes

  • CUDA C Programming Guide — Guide officiel de NVIDIA pour la programmation CUDA, cohérent avec les concepts présentés.
  • OpenCL Specification — Spécification du standard OpenCL, cohérente avec les concepts de programmation GPU.

Références externes

Apport & nouveautés

Ce cours apporte une vue d’ensemble complète et pédagogique de la programmation GPU, en mettant l’accent sur les concepts fondamentaux et les défis pratiques. Il se distingue par la clarté des explications et l’utilisation d’exemples concrets, notamment l’utilisation des tensor cores pour l’apprentissage profond. La discussion sur les goulots d’étranglement et les stratégies d’optimisation est particulièrement utile pour les développeurs.

Pour aller plus loin :

116 mots

Profil radar

Le profil radar montre une excellente qualité et fiabilité des informations, avec un niveau technique élevé. La quantité d'informations est importante, mais la qualité et la fiabilité sont les points forts. Le niveau technique est soutenu, ce qui peut nécessiter des prérequis en architecture des ordinateurs.

Fiabilité 9/10