SSE2

Revisión del 11:25 22 abr 2011 de Lsuarezmtzjc (discusión | contribuciones) (Página creada con '{{Desarrollo}} {{Ficha Hardware | nombre = SSE2. | imagen = SSE.jpg | pie = SSE2 mejora las capacidades de ambas instrucciones MMX y SSE. | fec...')
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
SSE2.
Información sobre la plantilla
SSE.jpg
SSE2 mejora las capacidades de ambas instrucciones MMX y SSE.

SSE2 se introdujo por primera vez en el Pentium 4 de Intel en el año 2001, y también se conocen a veces como instrucciones "Willamette". Las extensiones Streaming SIMD 2 (SSE2) amplían la tecnología MMX y la tecnología SSE con la adición de 144 instrucciones que brindan un aumento en el desempeño a través de una amplia gama de aplicaciones. Las instrucciones de enteros de SIMD introducidas con la tecnología MMX se han ampliado de 64 a 128 bits, lo cual duplica la velocidad de ejecución efectiva de las operaciones de enteros de SIMD.
AMD no le dio soporte a SSE2 hasta el año 2003 con sus procesadores Opteron y Athlon64.

Ventajas de SSE2

Las instrucciones SIMD de coma flotante de doble precisión permiten la ejecución simultánea de dos operaciones de coma flotante en el formato SIMD, para admitir operaciones de doble precisión que ayudan a acelerar las aplicaciones científicas, de creación de contenido, de finanzas y de ingeniería.
Además de las instrucciones SSE2, las instrucciones SSE originales se han mejorado para admitir una gama flexible y más dinámica de potencia de computación mediante operaciones aritméticas en tipos de datos múltiples (por ejemplo, palabras dobles y palabras cuádruples). Las instrucciones SSE2 permiten que los desarrolladores de software tengan flexibilidad máxima al implementar algoritmos y ofrecer mejoras en el desempeño cuando se ejecuta software, como MPEG-2, MP3, gráficos 3D, etc.

Conjunto de instrucciones

Aritméticas

Algunas de las operaciones aritméticas que soporta esta extensión son:

  • addpd - Adiciona 2 dobles de 64 bits.
  • subpd - Substrae 2 dobles de 64 bits.
  • mulpd – Multiplica 2 dobles de 64 bits.
  • divpd – Divide 2 dobles de 64 bits.
  • maxpd – Obtiene el doble más largo de 2 de 64 bits.
  • sqrtpd – Devuelve la raíz cuadrada de 2 dobles de 64 bits.

Lógicas

Algunas de las operaciones lógicas:

  • andpd – Operador &(AND) lógico entre 2 dobles de 64 bits.
  • por – Operador O(OR) lógico entre 2 registros de 128 bits.

Comparación

Algunas de las operaciones de comparación:

  • cmppd - Compara 2 pares de dobles de 64 bits.
  • pcmpxxd – Compara 4 enteros de 32 bits.

Conversión

Algunos operadores de conversión:

  • cvtdq2pd - Convierte 2 enteros de 32 bits en 2 dobles de 64 bits.
  • cvtdq2ps - Convierte 4 enteros de 32 bits en 4 simples de 32 bits.

Fuentes