J'ai réalisé un petit récapitulatif, faute d'en avoir trouvé un tout fait sur Internet :
1997 (1er CPU: Pentium MMX P55C) => Ajout du jeu de 57 instructions : MMX Ces 57 instructions ont la particularité de manipuler plusieurs valeurs simultanèment. On les qualifie de SIMD (Single Instruction Multiple Data). Par exemple, on peut additionner en une seule opération quatre paires d'entiers à seize octets. Ceci permet d'accélérer certains algorithmes tels que ceux utilisés en traitement du son et de l'image.
1999 (1er CPU: Pentium III) => Ajout du jeu de 70 instructions : SSE (en plus de MMX)
En plus des 70 instructions, le SSE a originellement ajouté huit nouveaux registres 128 bits nommés XMM0 à XMM7.
2001 (1er CPU: Pentium 4 Willamette) => Ajout du jeu de 144 instructions : SSE2 (en plus de MMX / SSE)
SSE2 apporte 144 nouvelles instructions en tous genres. Certaines sont orientées vers la gestion mémoire, d’autres vers la 3D ou encore la Vidéo. De plus SSE2 permet de traiter des entiers en 128bits et 2 flottants en double précision à chaque cycle.
2004 (1er CPU: Pentium 4 Prescott) => Ajout du jeu de 13 instructions : SSE3 (en plus de MMX / SSE / SSE2)
Elles portent sur la conversion FP en Integer (FISTTP), l'encodage vidéo (LDDQU), le traitement de complexes (MOVSUBPD, ADDSUBPS, MOVDDUP, MOVSHDUP et MOVSLDUP), le traitement des matrices (ADDPD, HSUBPD, HADDPS et HSUBPS) et enfin les threads (MONITOR et MWAIT).
2004 (1er CPU: Pentium 4 Prescott) => Intel 64 : une extension 64-bit de l'architecture IA-32
2006 (1er CPU: Pentium 4 Prescott Hyper-Threading) => Intel VT technologie de partition processeur permettant d'exécuter plusieurs systèmes d'exploitation en même temps sur la même puce. (virtualisation). Présent sur certains processeurs haut de gamme uniquement les premières années.
2006 (1er CPU: micro-architecture Core famille de processeurs Merom comme le Core 2 Solo) => Ajout du jeu de 32 instructions : SSSE3 (en plus de MMX / SSE / SSE2 / SSE3)
=> Intel Wide Dynamic Execution : pipeline de 14 étages, 4 instructions par cycle, micro et macro fusion et ALU optimisée
=> Intel Advanced Smart Cache : accès simultané des cores aux cache L2 commun.
=> Intel Smart Memory Access : optimisation et possibilité d’intervertir load and store, latences mémoire réduites voire masquées grâce aux Prefetchers
=> Intel Advanced Digital Media Boost : une opération SSE 128 bits par cycle
=> Intel Intelligent Power Capability : Ajustement dynamique et continu des fréquences et tensions.
2008 (1er CPU: famille de processeurs Penryn) => Ajout du jeu de 47 instructions SSE4.1 (en plus de MMX / SSE / SSE2 / SSE3 / SSSE3)
SSE4.1 apporte 47 nouvelles instructions qui visent les « compiler vectorization primitives », des opérations fondamentales utilisées par d’autres instructions plus complexes. Il s’agit d’opérations portant sur les entiers mais aussi sur les nombres en virgule flottante qui serviront notamment dans le traitement de données multimédia dont les vidéos H.264 et l’édition photo , dans la 3D (HLSL) mais aussi dans les langages de programmation de haut niveau comme C et Fortran.
2009 (1er CPU: famille de processeurs Nehalem) => Ajout du jeu de 7 instructions SSE 4.2 (en plus de MMX / SSE / SSE2 / SSE3 / SSSE3 / SSE 4.1)
Ce second lot d’instructions SSE 4.2, porte sur le traitement des chaînes de caractères. Ces instructions seront particulièrement utiles dans la compression, la recherche de virus ou de données, le traitement de bases de données, etc.
2010 (1er CPU: famille de processeurs Westmere) => Ajout de EPT (Intel VT-x with Extended Page Tables), Une technologie de virtualisation de seconde génération. Nécessaire pour l'Hyperviseurs bhyve
2010 (1er CPU: famille de processeurs Westmere) => Ajout du jeu de 7 instructions dédiées au chiffrement matériel AES sur certains processeurs : AES-NI (Advanced Encryption Standard New Instructions) Présent sur Core i5 / Core i7 / Xeon uniquement, puis Core i3 en 2013 puis sur sur tous les processeurs à partir de 2016.
2011 (1er CPU: famille de processeurs Sandy Bridge - 2ème génération) => Ajout du jeu de 12 instructions AVX (en plus de MMX / SSE / SSE2 / SSE3 / SSSE3 / SSE 4.1 / SSE 4.2)
2013 =>(1er CPU: famille de processeurs Haswell - 4ème génération) => Ajout du jeu d'instructions AVX 2.0 : Extension de la plupart des instructions AVX sur 128 bits sur les entiers à 256 bits, récupération de données 32 ou 64 bits en mémoire non contiguës, diffusion ou la permutation de données entre plusieurs mots de 128 bits, décalage à gauche ou à droite d'éléments avec une valeur de décalage par élèment.
- DDR3 (DDR4 sur certains Xeons)
2017 (1er CPU: famille de processeurs Kaby Lake - 7émé génération) AVX-512 étend le nombre de registres SIMD à 32 et les élargit à 512 bits. Il utilise un nouveau codage utilisant le EVEX prefix proposé par Intel en juillet 2013.