Après MMX, SSE (2, 3, 4, etc.) et AVX, voici AVX2. Cette extension du jeu d’instructions x86 sera proposée sur une prochaine génération de processeurs, Haswell. Dans les nouveautés, notons un « retour aux sources » : des instructions SIMD — une seule instruction peut modifier plusieurs données — capables de travailler sur les entiers en 256 bits. Retour aux sources, car le premier jeu d’instructions SIMD en x86 était le MMX, qui permettait justement ce type de manipulation, alors que les suivants se focalisaient essentiellement sur les données en virgule flottante.
On trouve aussi des instructions qui travaillent sur des manipulations de bits, ce qui est utile en cryptographie, surtout quand on n’utilise pas AES, qui dispose déjà de ses instructions dédiées. Le plus intéressant est l’apparition du FMA (Fused Multiply-Add), une technique qui permet d’effectuer une multiplication et une addition en une seule instruction, du type A = A x B + C. C’est AMD qui devrait intégrer le premier ce type d’instructions, avec une technique différente de celle d’Intel, mais c’est sûrement l’implémentation Intel qui sera la plus utilisée, comme c’est le cas habituellement.
Reste le problème classique des jeux d’instructions de ce type : la prise en charge dans le monde réel. En effet, si les démonstrations montrent des gains parfois énormes, les « vrais » logiciels sont rarement optimisés pour les jeux d’instructions récents. La raison est simple : le parc installé est généralement faible et les développeurs utilisent les instructions qui sont disponibles sur la majorité des processeurs. Ce qui explique qu’actuellement la majorité des logiciels sont — au mieux — optimisés pour les instructions SSE2, présentes dans la majorité des processeurs du marché (Atom compris). Bien évidemment, rien n’empêche les développeurs d’intégrer d’autres jeux d’instructions en détectant le type de CPU, mais ça nécessite généralement du travail supplémentaire étant donné qu’il faut coder plusieurs versions des algorithmes à optimiser.