Cela est dû à une combinaison de fonctionnalités des processeurs modernes.
La première chose qui contribue à un IPS élevé est le fait que les processeurs modernes disposent de plusieurs unités d'exécution qui peuvent fonctionner indépendamment. Dans l'image ci-dessous (empruntée à Wikipedia: Intel Core Microarchitecture ), vous pouvez voir en bas qu'il y a huit unités d'exécution (affichées en jaune) qui peuvent toutes exécuter des instructions simultanément. Toutes ces unités ne peuvent pas sécuriser les mêmes types d'instruction, mais au moins 5 d'entre elles peuvent effectuer une opération ALU et il y a trois unités capables SSE.
Combiner cela avec un long pipeline d'instructions qui peut efficacement empiler des instructions prêtes pour que ces unités exécutent des instructions ( hors service , si nécessaire) signifie qu'un processeur moderne peut avoir un grand nombre d'instructions à la volée à tout moment donné.
Chaque instruction peut prendre quelques cycles d'horloge à exécuter, mais si vous pouvez efficacement paralléliser leur exécution, vous pouvez vous donner un coup de pouce massif à IPS au détriment de la complexité du processeur et de la sortie thermique.
Garder ces gros pipelines pleins d'instructions nécessite également un grand cache qui peut être pré-rempli d'instructions et de données. Cela contribue à la taille de la matrice et à la quantité de chaleur produite par le processeur.
La raison pour laquelle cela n'est pas fait sur des processeurs plus petits est qu'elle augmente considérablement la quantité de logique de contrôle requise autour des cœurs de traitement, ainsi que la quantité d'espace requis et également la chaleur générée. Si vous voulez un petit processeur à faible puissance et très réactif, vous voulez un pipeline court sans trop de choses "supplémentaires" entourant les cœurs fonctionnels réels. Donc, généralement, ils minimisent le cache, le limitent à un seul de chaque type d'unité requis pour traiter les instructions et réduisent la complexité de chaque partie.
Ils pourraient rendre un petit processeur aussi complexe que un processeur plus grand et atteindre des performances similaires, mais les besoins en puissance et en refroidissement seraient alors augmentés de façon exponentielle.