stringtranslate.com

Conjunto de instrucciones visuales

Visual Institution Set , o VIS , es una extensión del conjunto de instrucciones SIMD para microprocesadores SPARC V9 desarrollada por Sun Microsystems . Hay cinco versiones de VIS: VIS 1, VIS 2, VIS 2+, VIS 3 y VIS 4. [1]

Historia

VIS 1 se introdujo en 1994 y fue implementado por primera vez por Sun en su microprocesador UltraSPARC (1995) y por Fujitsu en sus microprocesadores SPARC64 GP (2000).

VIS 2 fue implementado por primera vez por UltraSPARC III . Todos los microprocesadores UltraSPARC y SPARC64 posteriores implementan el conjunto de instrucciones.

VIS 3 se implementó por primera vez en el microprocesador SPARC T4 .

VIS 4 se implementó por primera vez en el microprocesador SPARC M7 .

Diferencias frente a x86

VIS no es un conjunto de herramientas de instrucción como MMX y SSE de Intel . MMX tiene solo 8 registros compartidos con la pila FPU , mientras que los procesadores SPARC tienen 32 registros, también alias de los registros de punto flotante de doble precisión (64 bits).

Al igual que con las extensiones del conjunto de instrucciones SIMD en otros procesadores RISC , VIS se ajusta estrictamente al principio fundamental de RISC: mantener el conjunto de instrucciones conciso y eficiente.

Este diseño es muy diferente de extensiones comparables en procesadores CISC , como MMX , SSE , SSE2 , SSE3 , SSE4 , 3DNow. .

A veces, los programadores deben utilizar varias instrucciones VIS para realizar una operación que se puede realizar con una sola instrucción MMX o SSE , pero se debe tener en cuenta que menos instrucciones no dan como resultado automáticamente un mejor rendimiento.

Funcionalidad

VIS reutiliza registros de punto flotante SPARC V9 de 64 bits existentes para contener múltiples valores enteros de 8, 16 o 32 bits. En este sentido, VIS se parece más al diseño de MMX que otras arquitecturas SIMD como SSE / SSE2 / AltiVec .

VIS incluye una serie de operaciones principalmente para soporte de gráficos, por lo que la mayoría de ellas son sólo para números enteros. Estos incluyen conversión de 3D a 2D, procesamiento de bordes y distancia de píxeles.

Hay cuatro formas de utilizar VIS en código:

Referencias

  1. ^ Liang él; Harlan McGhan (mayo de 2005). "MT mediaLib para procesadores Chip MultiThreaded (CMT)" (PDF) . Sun Microsystems, Inc. Archivado desde el original (PDF) el 30 de diciembre de 2006 . Consultado el 3 de diciembre de 2007 .

enlaces externos