Sada vizuálních instrukcí - Visual Instruction Set
Sada vizuálních instrukcínebo VIS, je SIMD rozšíření instrukční sady pro SPARC V9 mikroprocesory vyvinutý uživatelem Sun Microsystems. Existuje pět verzí VIS: VIS 1, VIS 2, VIS 2+, VIS 3 a VIS 4.[1]
Dějiny
VIS 1 byl představen v roce 1994 a byl poprvé implementován společností Sun v jejich systému UltraSPARC mikroprocesorem (1995) a společností Fujitsu v jejich SPARC64 GP mikroprocesory (2000).
VIS 2 byl poprvé implementován UltraSPARC III. Instrukční sadu implementují všechny následující mikroprocesory UltraSPARC a SPARC64.
VIS 3 byl poprvé implementován v SPARC T4 mikroprocesor.
VIS 4 byl poprvé implementován v SPARC M7 mikroprocesor.
Rozdíly vs x86
![]() | Tento článek je věcná přesnost je sporný.Listopad 2017) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
VIS není instruktážní sada nástrojů Intel MMX a SSE. MMX má pouze 8 registrů sdílených s FPU stack, zatímco procesory SPARC mají 32 registrů, také aliasovaných do registrů s plovoucí desetinnou čárkou s dvojitou přesností (64 bitů).
Stejně jako u rozšíření instrukční sady SIMD na jiných RISC procesory, VIS striktně odpovídá hlavnímu principu RISC: udržujte instrukční sadu stručnou a efektivní.
Tento design se velmi liší od srovnatelných rozšíření na CISC procesory, jako např MMX, SSE, SSE2, SSE3, SSE4, 3DNow!.
Někdy musí programátoři použít několik pokynů VIS k provedení operace, kterou lze provést pouze s jedním MMX nebo SSE instrukce, ale je třeba mít na paměti, že méně instrukcí nevede automaticky k lepšímu výkonu.
Funkčnost
VIS znovu používá existující 64bitové registry s plovoucí desetinnou čárkou SPARC V9 k uložení více 8, 16 nebo 32bitových celočíselných hodnot. V tomto ohledu je VIS více podobný designu MMX než jiné architektury SIMD, jako je SSE /SSE2 /AltiVec.
VIS obsahuje řadu operací primárně pro grafickou podporu, takže většina z nich je pouze pro celá čísla. Patří mezi ně převod 3D na 2D, zpracování hran a vzdálenost pixelů.
Existují čtyři způsoby, jak použít VIS v kódu:
- The GCC -mvis možnost
- Použití inline montáž
- Použijte vloženou šablonu v VSDK, podobný vnitřní kompilátor, které mají funkci C jako rozhraní
- Použijte mediaLib multimediální knihovna, která má funkční rozhraní C. Využívá VIS na platformách SPARC (a MMX / SSE / SSE2 na platformách x86 / x64) k urychlení spuštění multimediální aplikace
Reference
- ^ Liang He; Harlan McGhan (květen 2005). „MT mediaLib pro čipové vícevláknové (CMT) procesory“ (PDF). Sun Microsystems, Inc. Archivovány od originál (PDF) dne 30. prosince 2006. Citováno 2007-12-03.
- Gwennap, Linley (5. prosince 1995). "UltraSparc přidává multimediální pokyny". Zpráva mikroprocesoru.
- Tremblay, Marc et al. (Srpen 1996). "VIS zrychluje zpracování nových médií". IEEE Micro.