Pipeline
Un pipeline, dans le contexte du traitement informatique, est une technique qui permet d’exécuter plusieurs instructions à la fois. Les processeurs peuvent traiter des millions d’instructions par seconde. Chaque instruction passe par plusieurs étapes, chacune étant traitée par une partie différente du processeur. À chaque cycle d’horloge, une instruction passe d’une étape à la suivante et, pendant qu’une instruction traverse une étape, d’autres instructions traversent simultanément différentes étapes.
Un pipeline CPU classique comporte cinq étapes — lecture de l’instruction, décodage de l’instruction, exécution, accès à la mémoire et réécriture bien que cela puisse varier selon l’(architecture). Sans pipeline, un processeur ne pourrait traiter qu’une seule instruction à la fois. Comme chaque instruction nécessite plusieurs cycles d’horloge pour franchir toutes les étapes, la majeure partie du processeur resterait inactive pendant qu’une seule instruction passe d’une étape à l’autre. Le traitement sans pipeline ne fait pas durer plus longtemps le traitement d’une seule instruction, mais il signifie que le processeur peut traiter moins d’instructions par seconde.
Le pipeline d’instructions fonctionne un peu comme une chaîne de montage automobile, où chaque poste a une seule tâche — installer les sièges, monter le moteur, fixer les roues, etc. Si une seule voiture avance sur la chaîne à la fois, la plupart de ces postes restent inactifs et l’usine ne peut pas fabriquer beaucoup de voitures en une journée. En revanche, si des dizaines de véhicules se trouvent simultanément sur la chaîne — suffisamment pour maintenir chaque poste occupé — beaucoup plus de voitures seront terminées en une seule journée, même si chacune nécessite toujours le même temps.
Pipelines graphiques des GPU
En plus des CPU, les GPU informatiques utilisent également le pipeline pour traiter les instructions. Le pipeline graphique d’un GPU est plus complexe et fait intervenir plusieurs composants de traitement spécialisés qui exécutent des fonctions mathématiques pour rendre des scènes et des objets 3D sous forme d’images 2D affichées sur un écran.
Les architectures des GPU varient considérablement d’une génération à l’autre, mais la plupart des pipelines graphiques suivent un modèle similaire. Un pipeline graphique simple commence par convertir les coordonnées 3D des sommets (les coins des triangles qui composent chaque objet 3D) en coordonnées 2D sur le plan plat d’un écran. Il transforme ensuite ces coordonnées en structures filaires, puis remplit la géométrie entre ces sommets pour créer des formes. Ensuite, il rastérise ces formes en pixels en ajoutant des textures, un éclairage et d’autres effets de nuanceur. Les pixels masqués et les autres informations invisibles pour la « caméra » sont supprimés, puis l’image finale est enregistrée dans la mémoire tampon d’image et affichée à l’écran.
Testez vos connaissances