AMD ha hecho un anuncio bastante interesante desde el punto de vista técnico en cuanto a las tecnologías que incorporará en sus futuros procesadores, ya que Dave Christie, Ingeniero de arquitecturas en AMD ha anunciado en el blog para desarroladores de AMD, que soportaran el conjunto de instrucciones Intel AVX en sus futuros procesadores. Más detalles luego del corte.
En abril del 2007, Intel anuncio que en sus futuras arquitecturas de procesadores introduciría un nuevo set de instrucciones para arquitecturas x64 denominado Intel AVX (Advanced Vector Extensions o Extensiones de Vector Avanzadas), estas nuevas instrucciones están tendientes a reemplazar a las viejas instrucciones SSE (Streaming SIMD – Single Instruction, Multiple Data- Extensions), desarrolladas por Intel a finales de los 90s (1999) e introducidas en los Pentium III, los cuales mejoraron notablemente las capacidades multimedia y rendimiento en juegos gracias a estas instrucciones, algo que sin duda no dejo contento a AMD que introdujo más tarde su tecnología 3DNow.
Intel, sin embargo, ha seguido incorporando y mejorando sus instrucciones SSE a lo largo de los años, las más reciente fue con las instrucciones SSE 4.1 introducidas en los Core 2 Duo basados en el núcleo Penryn (45nm) y las SSE 4.2 introducidas en los Core i7 y los Xeon 5500 (Ambos basados en Nehalem).
Pero como ya anunciamos Intel tiene programado renovar este juego de instrucciones que ya lleva casi 10 años, con las futuras instrucciones AVX que están enfocadas básicamente mejorar operaciones de cálculo de propósito general y entre sus beneficios podemos mencionar el incremento x2 de operaciones de coma flotante por segundo (FLOPs), mejorar y organizar el acceso a la información, usar arquitectura de 256-bit en lugar de 128-bit de las instrucciones SSE, entre otros beneficios que se pueden apreciar en esta presentación:
Por otro lado, AMD en agosto del 2007, anunciaba que las instrucciones SSE5, se podrían materializar como parte de su arquitectura Bulldozer y en marzo del 2008 Intel anunciaba que su arquitectura Sandy Bridge (su próximo mayor refresco de arquitectura a 32nm luego de Nehalem) incluiría el soporte de este nuevo set de instrucciones denominado AVX, posteriormente en noviembre del año pasado, AMD sabiendo esto, pospuso el lanzamiento de su arquitectura Bulldozer programada para finales de este año, para el 2011.
Ahora se puede entender el por que de esta postergación, ya que como como comentamos en el párrafo introductorio, AMD ha anunciado que se decantará por las instrucciones Intel AVX en lugar de las instrucciones SSE5 anunciadas previamente, de esta forma AMD busca balancear dos conceptos que son la innovación y estandarización según Christie.
Respecto a esto ultimo, las ventajas de que AMD e Intel puedan soportar el mismo juego de instrucciones, también es una pequeña ayuda a los desarrolladores de software y sistemas operativos, por cuanto ya no tienen que optimizar sus aplicaciones para uno (SSE5) y otro (AVX) set de instrucciones embebido en dos diferentes arquitecturas (Intel-AMD), ya que con un set de instrucciones de computo en común (AVX), es mças fácil la tarea de programar y optimizar código que saquen máximo provecho de estos sets de instrucciones de computo.
Por otra parte las instrucciones AVX, ya incluyen algunas características del juego de instrucciones SSE5, pero agregan otras nuevas como «Advanced Vector Extensions (AVX), que incluye XOP (para eXtended Operations), CVT16 (half-precision floating point converts), y FMA4 (four-operand Fused Multiply/Add) más otras características y ventajas.
Christie no dijo que procesadores AMD soportarían instrucciones AVX, pero es probable que estas se incluyan en los primeros CPU basados en Bulldozer (32nm) en el 20011. Por su parte Intel planea incluir sus instrucciones AVX en los procesadores a 32nm basados en Sandy Bridge en el 2010.