fbpx
Wikipedia

Extensiones Vectoriales Avanzadas

Las extensiones vectoriales avanzadas, del inglés advanced vector extensions y abreviado AVX, es un conjunto de instrucciones de 256 bits desarrollado por Intel Corporation como una extensión al conjunto de instrucciones x86 utilizado en procesadores de Intel y AMD. Provee nuevas características, instrucciones y un nuevo esquema de codificación.

Conjunto de instrucciones AVX

Historia

Fue propuesto por Intel en marzo del año 2008[1]​ pero no fue soportado hasta el primer trimestre del año 2011 con el lanzamiento de su nueva generación de procesadores iX denominada Sandy Bridge y después por AMD con el procesador "Bulldozer" a partir del tercer trimestre del mismo año.

Características

Es un vector de extensión SIMD de 256 bits para operaciones de punto flotante intensivo. Mejora el rendimiento en las nuevas aplicaciones, y algunas existentes, mediante el manejo de paquetes de datos vectoriales más grandes, y el uso de más hilos y núcleos del procesador.

El ancho del registro SIMD es incrementado de 128-bits a 256-bits, y renombrado de XMM0-XMM15 a YMM0-YMM15. En los procesadores que soportan AVX, el conjunto de instrucciones SSE (que anteriormente operaba en los registros XMM) pasa a operar en los primeros 128-bits de los registros YMM. Además, se espera la inclusión de vectores de 512 e incluso 1024 bits.

Son instrucciones no destructivas. AVX introduce un formato SIMD de 3 y 4 operandos, donde el operando de destino es diferente de los operandos fuente. Por ejemplo, una instrucción SSE convencional de 2 operandos a:=a+b puede usar un formato no destructivo de 3 operandos c:=a+b, preservando los operandos fuente. Este formato está limitado al conjunto de instrucciones con operandos SIMD (YMM) y no incluye los registros con propósitos generales (p.e. EAX), sin embargo, se espera el soporte en el futuro.

Debido al mayor poder de procesamiento, las aplicaciones que usen intesivamente estas instrucciones pueden realizar el trabajo más eficientemente, dando un rendimiento por watt más alto que con otro conjunto de instrucciones.

Flexibilidad en el entorno de programación, debido a que el requisito de alineación de los operandos de memoria SIMD es relajado.

Nuevo manejo de operaciones aritméticas y primitivas , incluyendo difusión, permutación, suma y multiplicación fusionado, entre otras.

Procesadores con conjunto de instrucciones AVX

  • Todos los procesadores basados en la arquitectura Sandy Bridge de Intel y posteriores.[2]
  • Los procesadores basados en Bulldozer de AMD.[3]

Conjunto de instrucciones AVX2

Continuando con la tendencia de añadir más funcionalidades vectoriales en sucesivas generaciones de procesadores, Intel ampliará el conjunto AVX con nuevas instrucciones que funcionarán también sobre números naturales, efectivamente ampliando casi la totalidad del conjunto SSE de 128 a 256 bits.[4]

Además esta nueva ampliación permitirá realizar operaciones de recolección (gather), lo que significa que se podrá acceder a la vez a varias posiciones no contiguas en memoria, aumentando considerablemente las capacidades de procesado vectorial de la arquitectura x86-64. Sin embargo la posibilidad de distribución (scatter) no será implementada.[4]

AVX2 se introducirá en la arquitectura inmediatamente posterior a Ivy Bridge, la Intel Haswell prevista para la primavera de 2013, un año después de la salida de los procesadores basados en Ivy Bridge.[4]​ Por lo demás comparten todas las características de las AVX originales.

Software compatible

Además de que las aplicaciones introduzcan el uso explícito de estas nuevas instrucciones, también ha de haber soporte por parte del sistema operativo ya que introducen nuevos registros de estado del procesador. Los sistemas operativos más comunes que permiten el uso de instrucciones AVX y AVX2 son:

  • Apple Mac OS X 10.6.8 (lanzado en junio de 2011) y posteriores.
  • GNU/Linux con núcleo Linux 2.6.30[5]​ (lanzado en junio de 2009) o posterior.
  • Microsoft Windows 7 SP1[6]​ (lanzado en febrero de 2011), Windows Server 2008 R2 SP1 (también lanzado en febrero de 2011) y Windows 8.

Aplicaciones

Estos conjuntos de instrucciones son útiles para cualquier operación que utilice operaciones de punto flotante de forma intensiva, y en el caso de AVX2 serán útiles también para operaciones con enteros:

  • Procesado de imagen (AVX2)
  • Tratamiento de vídeo (AVX2)
  • Procesamiento de audio
  • Modelado 3D
  • Servicios de análisis financieros
  • Software de ingeniería y manufactura

Véase también

Referencias

  1. «Intel(R) AVX - Intel(R) Software Network» (en inglés). 
  2. «Intel’s Roadmap: Ivy Bridge, Panther Point, and SSDs» (en inglés). 6 de mayo de 2011. 
  3. «Striking a Balance» (en inglés). 6 de mayo de 2009. Archivado desde el original el 8 de julio de 2012. 
  4. «Intel Haswell (22nm) soportará instrucciones AVX2». MadBox PC. 13 de junio de 2011. 
  5. «Enable AVX for SandyBridge» (en inglés). 
  6. «Notable Changes in Windows 7 and Windows Server 2008 R2 Service Pack 1» (en inglés). Microsoft. 

Enlaces externos

  • Página oficial (Inglés)
  • Activar soporte en windows 7 para AVX (inglés)
  •   Datos: Q17600

extensiones, vectoriales, avanzadas, extensiones, vectoriales, avanzadas, inglés, advanced, vector, extensions, abreviado, conjunto, instrucciones, bits, desarrollado, intel, corporation, como, extensión, conjunto, instrucciones, utilizado, procesadores, intel. Las extensiones vectoriales avanzadas del ingles advanced vector extensions y abreviado AVX es un conjunto de instrucciones de 256 bits desarrollado por Intel Corporation como una extension al conjunto de instrucciones x86 utilizado en procesadores de Intel y AMD Provee nuevas caracteristicas instrucciones y un nuevo esquema de codificacion Indice 1 Conjunto de instrucciones AVX 1 1 Historia 1 2 Caracteristicas 1 3 Procesadores con conjunto de instrucciones AVX 2 Conjunto de instrucciones AVX2 3 Software compatible 4 Aplicaciones 5 Vease tambien 6 Referencias 7 Enlaces externosConjunto de instrucciones AVX EditarHistoria Editar Fue propuesto por Intel en marzo del ano 2008 1 pero no fue soportado hasta el primer trimestre del ano 2011 con el lanzamiento de su nueva generacion de procesadores iX denominada Sandy Bridge y despues por AMD con el procesador Bulldozer a partir del tercer trimestre del mismo ano Caracteristicas Editar Es un vector de extension SIMD de 256 bits para operaciones de punto flotante intensivo Mejora el rendimiento en las nuevas aplicaciones y algunas existentes mediante el manejo de paquetes de datos vectoriales mas grandes y el uso de mas hilos y nucleos del procesador El ancho del registro SIMD es incrementado de 128 bits a 256 bits y renombrado de XMM0 XMM15 a YMM0 YMM15 En los procesadores que soportan AVX el conjunto de instrucciones SSE que anteriormente operaba en los registros XMM pasa a operar en los primeros 128 bits de los registros YMM Ademas se espera la inclusion de vectores de 512 e incluso 1024 bits Son instrucciones no destructivas AVX introduce un formato SIMD de 3 y 4 operandos donde el operando de destino es diferente de los operandos fuente Por ejemplo una instruccion SSE convencional de 2 operandos a a b puede usar un formato no destructivo de 3 operandos c a b preservando los operandos fuente Este formato esta limitado al conjunto de instrucciones con operandos SIMD YMM y no incluye los registros con propositos generales p e EAX sin embargo se espera el soporte en el futuro Debido al mayor poder de procesamiento las aplicaciones que usen intesivamente estas instrucciones pueden realizar el trabajo mas eficientemente dando un rendimiento por watt mas alto que con otro conjunto de instrucciones Flexibilidad en el entorno de programacion debido a que el requisito de alineacion de los operandos de memoria SIMD es relajado Nuevo manejo de operaciones aritmeticas y primitivas incluyendo difusion permutacion suma y multiplicacion fusionado entre otras Procesadores con conjunto de instrucciones AVX Editar Todos los procesadores basados en la arquitectura Sandy Bridge de Intel y posteriores 2 Los procesadores basados en Bulldozer de AMD 3 Conjunto de instrucciones AVX2 EditarContinuando con la tendencia de anadir mas funcionalidades vectoriales en sucesivas generaciones de procesadores Intel ampliara el conjunto AVX con nuevas instrucciones que funcionaran tambien sobre numeros naturales efectivamente ampliando casi la totalidad del conjunto SSE de 128 a 256 bits 4 Ademas esta nueva ampliacion permitira realizar operaciones de recoleccion gather lo que significa que se podra acceder a la vez a varias posiciones no contiguas en memoria aumentando considerablemente las capacidades de procesado vectorial de la arquitectura x86 64 Sin embargo la posibilidad de distribucion scatter no sera implementada 4 AVX2 se introducira en la arquitectura inmediatamente posterior a Ivy Bridge la Intel Haswell prevista para la primavera de 2013 un ano despues de la salida de los procesadores basados en Ivy Bridge 4 Por lo demas comparten todas las caracteristicas de las AVX originales Software compatible EditarAdemas de que las aplicaciones introduzcan el uso explicito de estas nuevas instrucciones tambien ha de haber soporte por parte del sistema operativo ya que introducen nuevos registros de estado del procesador Los sistemas operativos mas comunes que permiten el uso de instrucciones AVX y AVX2 son Apple Mac OS X 10 6 8 lanzado en junio de 2011 y posteriores GNU Linux con nucleo Linux 2 6 30 5 lanzado en junio de 2009 o posterior Microsoft Windows 7 SP1 6 lanzado en febrero de 2011 Windows Server 2008 R2 SP1 tambien lanzado en febrero de 2011 y Windows 8 Aplicaciones EditarEstos conjuntos de instrucciones son utiles para cualquier operacion que utilice operaciones de punto flotante de forma intensiva y en el caso de AVX2 seran utiles tambien para operaciones con enteros Procesado de imagen AVX2 Tratamiento de video AVX2 Procesamiento de audio Modelado 3D Servicios de analisis financieros Software de ingenieria y manufacturaVease tambien EditarMMX 3DNow SSE SSE2 SSE3 SSE4 Arquitectura x86 Anexo Listados de instrucciones x86Referencias Editar Intel R AVX Intel R Software Network en ingles Intel s Roadmap Ivy Bridge Panther Point and SSDs en ingles 6 de mayo de 2011 Striking a Balance en ingles 6 de mayo de 2009 Archivado desde el original el 8 de julio de 2012 a b c Intel Haswell 22nm soportara instrucciones AVX2 MadBox PC 13 de junio de 2011 Enable AVX for SandyBridge en ingles Notable Changes in Windows 7 and Windows Server 2008 R2 Service Pack 1 en ingles Microsoft Enlaces externos EditarPagina oficial Ingles Activar soporte en windows 7 para AVX ingles Datos Q17600 Obtenido de https es wikipedia org w index php title Extensiones Vectoriales Avanzadas amp oldid 143126043, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos