Atšķirības starp SIMD un MIMD

Paralēlā skaitļošana darbojas, sadalot lielas problēmas mazākās problēmās, kuras pēc tam tiek atrisinātas vienlaikus. SIMD un MIMD ir divas dažādas paralēlas skaitļošanas arhitektūras, kas datu apstrādei izmanto vairākus procesorus un dažreiz vairākus datorus. SIMD apzīmē Single Instruction stream Multiple Data stream, savukārt MIMD apzīmē vairāku instrukciju straumes vairāku datu straumi. SIMD un MIMD arhitektūras veic līdzīgas pamatfunkcijas, taču tās atšķiras gan praktiski, gan tehniski.

SIMD definēts

SIMD arhitektūra veic vienu, identisku darbību vienlaikus ar vairākiem datu gabaliem, tostarp informācijas izgūšanu, aprēķināšanu vai uzglabāšanu. Viens piemērs ir vairāku failu izgūšana vienlaikus. Procesori ar lokālo atmiņu, kurā ir dažādi dati, sinhronizēti izpilda vienu un to pašu instrukciju, izmantojot starpprocesoru saziņu maiņu piešķiršanai.

Dienas video

MIMD definēts

MIMD arhitektūra vienlaikus veic vairākas darbības ar daudziem datu gabaliem. Viens piemērs ir dažādu matemātisku aprēķinu, piemēram, saskaitīšanas un reizināšanas, vienlaicīga veikšana, lai atrisinātu sarežģītu matemātisko problēmu ar daudziem atsevišķiem komponentiem. MIMD skaitļošana var būt vai nav sinhronizēta, un tā ir arvien izplatītāka nekā SIMD skaitļošana.

Praktiskās atšķirības

SIMD parasti izmanto problēmām, kas prasa daudz aprēķinu ar procesoriem, kas veic vienu un to pašu darbību paralēli. MIMD bieži izmanto problēmām, kas sadala algoritmus atsevišķās un neatkarīgās daļās, un katra daļa tiek piešķirta citam procesoram vienlaicīgai risināšanai.

Tehniskās atšķirības

SIMD un MIMD arī tehniski atšķiras. SIMD procesori parasti ir vienkāršāki, mazāki, lētāki un ātrāki nekā MIMD procesori, taču MIMD spēj veikt daudz sarežģītākas darbības. MIMD darbības, ko var veikt arī SIMD, parasti aizņem vairāk laika ar SIMD. SIMD procesoriem sarežģītas darbības jāveic secīgi, savukārt MIMD procesoriem to var veikt vienlaikus.