Jaký je rozdíl mezi vektorovými a skalárními procesory?
Součástí počítače, která mu umožňuje fungovat, vykonávat pokyny různých programů, je centrální procesorová jednotka (CPU). CPU, také nazývané procesor, přijímá programové instrukce; dekóduje tyto pokyny a rozdělí je na jednotlivé části; vykonává tyto pokyny; a ohlásí výsledky a zapíše je zpět do paměti. Formát pro tento procesor přichází v jednom ze dvou primárních typů: vektorový a skalární. Rozdíl mezi těmito dvěma je, že skalární procesory pracují současně pouze s jedním datovým bodem, zatímco vektorové procesory pracují s řadou dat.
Skalární procesory jsou nejzákladnějším typem procesoru. Tyto procesy zpracovávají vždy jednu položku, obvykle celá čísla nebo čísla s pohyblivou řádovou čárkou, což jsou čísla příliš velká nebo malá na to, aby byla reprezentována celými čísly. Protože každá instrukce je zpracovávána postupně, základní skalární zpracování může nějakou dobu trvat. Většina moderních počítačů používá typ skalárního procesoru.
Naproti tomu vektorové procesory pracují na řadě datových bodů. To znamená, že namísto manipulace s každou položkou jednotlivě lze s více položkami, které všechny mají stejnou instrukci, pracovat naráz. To může ušetřit čas při skalárním zpracování, ale také zvyšuje složitost systému, což může zpomalit další funkce. Zpracování vektorů funguje nejlépe, když existuje velké množství dat, která mají být zpracována, přičemž skupiny mohou být zpracovány jednou instrukcí.
Vektorové a skalární procesory se liší také v době jejich spuštění. Vektorový procesor často vyžaduje prodloužené spuštění počítače z důvodu provádění více úkolů. Skalární procesory spouští počítač za mnohem kratší dobu, protože se provádějí pouze jednotlivé úkoly.
Superskalární procesor bere prvky každého typu a kombinuje je pro ještě rychlejší zpracování. Pomocí paralelismu na úrovni instrukcí může superskalární zpracování provádět více operací současně. To umožňuje, aby CPU pracoval mnohem rychleji než základní skalární procesor, aniž by došlo ke složitosti a dalším omezením vektorového procesoru. S tímto typem procesoru však mohou existovat problémy, protože musí určit, které úkoly lze provádět paralelně a které závisí na tom, zda budou nejprve dokončeny další úkoly.
Vektorové a skalární procesory se stále používají denně. Některé konzole pro videohry například používají kombinaci vektorových i skalárních procesorů. Při zpracování multimediálních úkolů, v nichž jedna instrukce může řešit velké množství dat potřebných pro video a audio, je patrné, že zpracování vektoru má slibné.