A krom toho nesouhlasim s tim, ze "moderni procesory nedosahuji takoveho stupne paralelismu jako 30 let stary Cray". Cray mel sice 64-prvkove registry kdy treba secteni dvou takovych registru dokazala udelat jedna instrukce, ale jeji zpracovani trvalo o malo vic nez 64 taktu, protoze scitacka byla jen jedna, ovsem pipelinovana, takze kazdy takt vypadl z jejiho konce nove spocitany prvek --- ten pak mohl primo pokracovat treba do nasobicky ktera nasobila prvky vysledku prvky jineho vektoru, pokud v programu nasledovala instrukce nasobeni, protoze nasobicka byla implementovana na jinych deskach s plosnymi spoji a mohla pracovat zaroven se scitackou. Kdyby ale za sebou byly 2 instrukce scitani, muselo by se pockat tech 64+ taktu na dokonceni prvni, nez by mohla zacit bezet druha.
Dnesni SSE procesory naprotitomu maji pro kazdy prvek vektoru vlastni scitacku, takze paralelismus je vyssi, i kdyz vektory jsou podstatne kratsi (to ovsem zase tolik nevadi, diky L1-cache).
Mozna by se melo rozlisovat mezi SIMD (coz Cray je) a SOMD (single operation, multiple data), coz Cray neni (je SOSD) a MMX je.
Celkove bych Cray urovni paralelizace prirovnal spis nejakemu starsimu superskalarnimu CPU (treba R10000) , i kdyz samozrejme superskalarni CPU dosahuje teto urovne jinymi prostredky (implementacne daleko narocnejsimi).
Myslim ze ve 4. kapitole by se mozna melo opravit jeste SISD na SIMD:
(například u překladače Fortranu určeného pro superpočítače Cray bylo v manuálu explicitně řečeno, které jazykové konstrukce se budou skutečně provádět ve vektorové – ***SISD*** – jednotce)
Jinak podle mne by slo s privrenyma ocima slo povazovat multi procesorove systemy (i kdyby na 1 chipu) se sdilenou pameti za MISD - v kazdem jadre tece/muze tect aktualne jinaci proud instrukci, a pritom mohou zpracovavat stejna sdilena data.
Mozna to neni uplne presne v realizaci, ale tak nejak koncepcne by me to sedlo.
Podobne reseni pameti NUMA pro multiprocesrove systemy (ktere uz ma dnes Intel i AMD ve svych PC architekturach) lze jakozto HW realizaci chapat jako MIMD, i kdyz z pohledu SW je to porad ten MISD.
Vektorové počítače jsou již přežitý název, držel bych se zavedeného SIMD a podobně. Totiž tyto původně sice kdysi dávno zpracovávaly operace s vektory, ale postupem času se práce zobecňovala až do obecných základních operací jako třeba paralelně 4x XOR v jednom čase a to nemá s vektory společného vůbec nic.