SIMD
Autor: Taavi Zeiger A21 03.09.2011
Sissejuhatus
SIMD (Single Instruction Multiple Data-stream Architecture) – ühe käsuvoo ja mitme andmevooga arvutiarhitektuur [1]. Tegemist on arhitektuuriga kus mitu sama tehet sooritatakse üheaegselt. Esmalt võeti SIMD protsessorid kasutusele vektorarvutusi teostavates superarvutites, kuid nende tänapäeva võidukäik sai alguse lauaarvutitest [2]. Kuigi enamik tänapäeva protsessoritest toetab SIMD arhitektuuri, ei ole tegemist ainult nimetatud arhitektuuril põhinevate protsessoritega.
Eelised
SIMD peamiseks eeliseks on kiirus suuremahuliste andmete kiire töötlus. Näiteks 3D graafika puhul, kui mängija liigub läbi kaadrite, siis peab valgusallikas muutuma. Selleks tuleb iga piksli heleduse väärtust muuta. Antud juhul ei töödelda igat üksikut pikslit eraldi vaid laetakse nii mitme piksli väärtused kui võimalik mälusse ja töödeldakse paralleelselt [3]. Seega on liikumine ekraanil mängija jaoks sujuvam.
Kasutusvaldkond
SIMD arhitektuuril põhinevaid protsessoreid kasutatakse audio- ja videoandmete töötlemisel, pilditöötluses, 3D graafika esitamisel, krüptograafias ning suuremahuliste teadusarvustuste juures. Tooted kus SIMD protsessoreid kasutatakse on näiteks graafikakaardid, mängukonsoolid, mobiiltelefonid. Kuigi ainult SIMD arhitektuuril põhinevaid protsessoreid leidub harva on üheks näiteks GAPP (Geometric-Arithmetic Parallel Processor) mida kasutatakse reaalaja videotöötluses nagu NTSC konverteerimisel PAL'i ja vastupidi [4]. Näiteks toetavad SIMD arhitektuuri Intel'i MMX ja iwMMXt, SSE, SSE2, SSE3 ja SSSE3, AMD 3DNow!, Sun'i MAJC, ARM'i NEON protsessorid [5].