Tablica usporedbe
Osnova za usporedbu | višeobradbeni | višedretvenost |
---|---|---|
Osnovni, temeljni | Višestruko procesiranje dodaje procesore kako bi se povećala računalna snaga. | Multithreading stvara višestruke niti jednog procesa kako bi se povećala računalna snaga. |
Izvršenje | Višestruki procesi izvršavaju se istodobno. | Istodobno se izvršavaju višestruke niti jednog procesa. |
Stvaranje | Stvaranje procesa je dugotrajno i resursno intenzivno. | Stvaranje niti je ekonomično u smislu vremena i resursa. |
Klasifikacija | Višestruko procesiranje može biti simetrično ili asimetrično. | Multifreading nije klasificiran. |
Definicija višestruke obrade
Multiprocesni sustav je onaj koji ima više od dva procesora. CPU-i se dodaju sustavu kako bi se povećala brzina računala. Svaki CPU ima svoj vlastiti skup registara i glavnu memoriju. Samo zato što su CPU-i odvojeni, može se dogoditi da jedan CPU ne mora ništa raditi i može sjediti u stanju mirovanja, a drugi može biti preopterećen procesima. U takvim slučajevima procesi i resursi dijele se dinamički među procesorima.
Multiprocesiranje se može klasificirati kao simetrično višestruko procesiranje i asimetrično višestruko procesiranje . U simetričnom višeprocesiranju, svi procesori mogu slobodno pokretati bilo koji proces u sustavu. U asimetričnoj višestrukoj obradi postoji proces "master-slave" između procesora. Glavni procesor je odgovoran za dodjelu procesa robovskim procesorima.
Ako procesor ima integrirani memorijski kontroler, dodavanje procesora povećalo bi količinu adresne memorije u sustavu. Višestruko procesiranje može promijeniti model pristupa memoriji od jedinstvenog pristupa memoriji do neuniformnog pristupa memoriji . Jedinstveni pristup memoriji iznosi isto vrijeme za pristup bilo kojem RAM-u iz bilo kojeg Procesora. S druge strane, neujednačeni pristup memoriji iznosi duže vrijeme za pristup nekom dijelu memorije od ostalih dijelova.
Definicija Multithreading
Multithreading je izvršavanje višestrukih niti jednog procesa istovremeno u kontekstu tog procesa. Sada ćemo prvo raspraviti što je nit? Nit procesa znači segment koda procesa koji ima svoj vlastiti ID niti, programski brojač, registre i stog i može se izvršiti neovisno. No niti koje pripadaju istom procesu moraju dijeliti stvari tog procesa kao što su kodovi, podaci i resursi sustava. Kreiranje odvojenih procesa za svaki zahtjev za uslugom troši resurse vremena i ispušnih sustava. Umjesto stvaranja ovih troškova, učinkovitije je stvoriti niti procesa.
Stvaranje niti je ekonomično jer dijeli kod i podatke procesa kojem pripadaju. Stoga sustav ne mora zasebno alocirati resurse za svaku niti. Multithreading se može povećati na višeprocesorskom operacijskom sustavu. Kao višedretvenost na više procesora povećava se paralelizam .
Ključne razlike između višestruke obrade i višedretvenosti
- Ključna razlika između višestrukog procesiranja i multithreading-a je da višestruko procesiranje omogućuje sustavu da ima više od dva CPU-a dodana u sustav, dok višestruko procesiranje omogućuje procesu generiranje više niti za povećanje brzine računala.
- Višestruki proces istodobno izvršava više procesa, dok multithreading sustav omogućuje istovremeno izvršavanje više niti procesa.
- Stvaranje procesa može potrošiti vrijeme i čak iscrpiti resurse sustava. Međutim, stvaranje niti je ekonomično jer niti koje pripadaju istom procesu dijele stvari tog procesa.
- Višestruko procesiranje može se svrstati u simetrično višestruko procesiranje i asimetrično višestruko procesiranje, dok se višedretvenost više ne klasificira.
Zaključak:
Prednosti višedretvenosti mogu se postupno povećavati u višeprocesorskom okruženju jer višedretvenost na višeprocesorskom sustavu povećava paralelizam.