Partie 6 · Domaines d'application¶
Le GPU ailleurs que dans l'intelligence artificielle. Cette partie est plus courte et plus large : elle donne pour chaque domaine la structure du problème, les bibliothèques de référence, et ce qui marche ou non.
Pourquoi cette partie existe¶
Ce document consacre son cœur à l'IA parce que c'est là que se fait l'innovation en programmation GPU en 2026. Mais le GPU a vingt ans d'histoire dans d'autres domaines, et trois raisons rendent cette partie utile :
- Les motifs se transfèrent. Le pavage en tuiles vient du rendu, les réductions du calcul scientifique, les scans du tri parallèle.
- Vous travaillerez peut-être dans ces domaines. L'IA n'est pas le seul employeur.
- Les limites du GPU s'y voient mieux. Le chapitre 6 est probablement le plus utile de la partie : savoir ce qui ne va pas sur GPU évite des mois perdus.
Ordre de lecture¶
Cette partie se lit à la carte. Le chapitre 6 est recommandé à tous.
1 · Graphique temps réel¶
D'où vient le GPU. Pipeline de rasterisation, ray tracing et RT cores, compute shaders, et le Gaussian splatting comme exemple moderne de convergence graphique/calcul.
2 · Calcul scientifique¶
Dynamique moléculaire, mécanique des fluides, climat, méthodes de Monte-Carlo. Ce qui s'accélère bien, ce qui résiste, et la question du FP64.
3 · Données et bases de données¶
RAPIDS, jointures et agrégations sur GPU, tri, recherche vectorielle. Et la contrainte qui domine tout : la capacité mémoire.
4 · Signal et image¶
FFT, convolutions, filtres, encodage vidéo, vision par ordinateur. Le domaine où les unités à fonction fixe comptent autant que les unités programmables.
5 · Finance et cryptographie¶
Monte-Carlo pour la valorisation d'options, calcul de risque, et le cas particulier des primitives cryptographiques.
6 · Ce qui ne va pas sur GPU¶
Le chapitre le plus utile. Sept classes de problèmes qui résistent, pourquoi, et ce qu'on peut en faire malgré tout.
Le tableau de synthèse¶
| Domaine | Accélération typique | Facteur limitant |
|---|---|---|
| Rendu 3D temps réel | conçu pour | — |
| Dynamique moléculaire | 10× à 100× | interactions à longue portée |
| Mécanique des fluides | 5× à 50× | solveurs implicites, communication |
| Algèbre dense | 20× à 100× | rien, c'est le cas idéal |
| Algèbre creuse | 2× à 10× | accès irréguliers |
| FFT | 10× à 50× | bande passante |
| Tri, scan | 10× à 30× | bande passante |
| Jointures de bases de données | 10× à 50× | capacité mémoire |
| Traitement d'image | 20× à 200× | transferts |
| Monte-Carlo financier | 20× à 100× | génération de nombres aléatoires |
| Compilation, parsing | ~1× ou moins | contrôle irrégulier |
| Recherche en graphe | 1× à 10× | irrégularité, dépendances |
Comment lire ces chiffres
Ces accélérations comparent une implémentation GPU raisonnable à une implémentation CPU raisonnable, sur du matériel de gamme comparable. Elles varient énormément selon :
- la qualité de la ligne de base CPU (un CPU bien vectorisé et multithreadé est très rapide) ;
- la taille du problème ;
- le coût des transferts.
Les « 100× » annoncés dans les publications comparent souvent du GPU optimisé à du CPU mono-thread non vectorisé. Le facteur honnête est généralement 5 à 20× sur les problèmes réguliers, et proche de 1 sur les problèmes irréguliers.