Exécution spéculative
From Wikipedia, the free encyclopedia
En informatique, l'exécution spéculative correspond au lancement anticipé d'une instruction, c'est-à-dire sans être certain que celle-ci ait réellement besoin d'être exécutée.
Généralement, on peut distinguer trois types d'instructions et de déclarations dans un programme :
- celles qui doivent être exécutées de manière obligatoire.
- celles qui n'ont pas besoin d'être exécutées car elles ne sont pas pertinentes.
- celles qui ne sont de manière certaine dans aucun des deux groupes précédents.
Le premier groupe ne peut pas bénéficier de l'exécution spéculative car ses membres doivent dans tous les cas être exécutés.
Le second groupe peut être facilement écarté, comme le ferait l'évaluation paresseuse.
Le troisième groupe quant à lui est bien la cible de l'exécution spéculative, ses membres peuvent en effet être exécutés en concurrence avec les instructions du premier groupe jusqu'à ce qu'on puisse juger si elles sont utiles, ou si l'on doit les ranger dans le deuxième groupe. Cette concurrence signifie que l'exécution spéculative peut être parallélisée.
