Moniprosessorit luokitellaan kolme jaetun muistin mallityypit: UMA (yhtenäinen muistin käyttö), NUMA (epätasainen muistin käyttö) ja COMA (vain välimuistin käyttö) . Mallit vaihtelevat sen mukaan, kuinka muisti- ja laitteistoresurssit on allokoitu. Fyysinen muisti on jaettu tasaisesti prosessorien kesken UMA-mallissa, jossa on myös sama latenssi jokaiselle muistisanalle. Sitä vastoin NUMA antaa prosessorille vaihtelevan käyttöajan, jotta se voi käyttää muistia.
Tässä artikkelissa opit eroista YKSI ja SISÄÄN . Mutta ennen kuin keskustelet eroista, sinun on tiedettävä UMA:sta ja NUMA:sta.
esimerkki binaarihakupuusta
Mikä on UMA?
YKSI on lyhenne sanasta 'Yhtenäinen muistin käyttö' . Se on moniprosessorinen jaetun muistin arkkitehtuuri. Tässä mallissa kaikki moniprosessorijärjestelmän prosessorit käyttävät ja käyttävät samaa muistia liitäntäverkon avulla.
Jokaisen viive ja pääsynopeus prosessori on sama. Se voi käyttää a poikkipalkkikytkin, yksi väyläkytkin tai moniväyläkytkin . Siihen viitataan myös nimellä SMP (Symmetric Multiprocessor) järjestelmä, koska se tarjoaa tasapainoisen jaetun muistin käytön. Se soveltuu aikajakokäyttöön ja yleiskäyttöisiin sovelluksiin.
Mikä on NUMA?
SISÄÄN on lyhenne sanasta 'Epätasainen muistin käyttö' . Se on myös moniprosessorimalli, jossa jokaiseen suorittimeen on liitetty oma muisti. Mutta nämä pienet muistikomponentit muodostavat yhden osoitetilan. Muistin käyttöaika määräytyy suorittimen ja muistin välisen etäisyyden mukaan, mikä johtaa vaihteleviin muistin käyttöaikoihin. Se tarjoaa pääsyn mihin tahansa muistipaikkaan fyysistä osoitetta käyttämällä.
The NUMA-arkkitehtuuri on suunniteltu maksimoimaan käytettävissä oleva muistin kaistanleveys käyttämällä useita muistiohjaimia. Se integroi monia koneen ytimiä 'solmut' , jossa jokaisella ytimellä on oma muistiohjain. Jonkin sisällä SISÄÄN Järjestelmässä ydin vastaanottaa muistiohjaimen käsittelemän muistin solmussaan päästäkseen paikalliseen muistiin. Ydin lähettää muistipyynnön liitäntälinkkien kautta päästäkseen etämuistiin, jonka toinen muistiohjain käsittelee. NUMA-arkkitehtuuri käyttää hierarkkisia ja puuväyläverkkoja yhdistämään muistilohkot ja prosessorit. Joitakin esimerkkejä NUMA-arkkitehtuurista ovat BBN, SGI Origin 3000, TC-2000 ja Cray .
Tärkeimmät erot UMA:n ja NUMA:n välillä
Niiden välillä on useita keskeisiä eroja YKSI ja SISÄÄN . Jotkut tärkeimmistä eroista UMA:n ja NUMA:n välillä ovat seuraavat:
- UMA (Uniform Memory Access) sisältää yhden muistiohjaimen. Sitä vastoin NUMA (Non-Uniform Memory Access) voi käyttää useita muistiohjaimia päästäkseen muistiin.
- Jokaisen UMA:n CPU:n muistin käyttöaika on sama. Sitä vastoin muistin käyttöaika NUMA:ssa vaihtelee muistin etäisyyden CPU:sta mukaan.
- UMA:ta käytetään useissa yleiskäyttöisissä ja aikajakosovelluksissa. Toisaalta NUMA:ta käytetään reaaliaikaisissa ja aikakriittisissä sovelluksissa.
- UMA-arkkitehtuuri käyttää yksittäisiä, useita ja poikkipalkkiväyliä. Toisaalta NUMA käyttää hierarkkisia ja puurakenteisia väyliä ja verkkoyhteyksiä.
- Kaistanleveyden suhteen UMA-arkkitehtuurilla on rajoitettu kaistanleveys. Toisaalta NUMA:lla on suurempi kaistanleveys kuin UMA:lla.
- Muistin käyttö UMA:ssa on hidasta. Toisaalta NUMA-muistin käyttö on nopeampaa kuin UMA-muistin käyttö.
Vertailu UMA:n ja NUMA:n välillä
Täällä opit UMA:n ja NUMA:n väliset suorat vertailut. Tärkeimmät erot UMA:n ja NUMA:n välillä ovat seuraavat:
lisääminen array javaan
ominaisuudet | YKSI | SISÄÄN |
---|---|---|
Täydelliset lomakkeet | UMA on lyhenne sanoista Uniform Memory Access. | NUMA on lyhenne sanoista Non-Uniform Memory Access. |
Muistin ohjain | Se sisältää yhden muistiohjaimen. | Se sisältää useita muistiohjaimia. |
Muistin käyttöaika | Se sisältää tasapainoisen tai yhtä suuren muistin käyttöajan. | Sen muistin käyttöaika muuttuu mikroprosessorin etäisyyden mukaan. |
Muistin käyttö | Sen muistin käyttö on hidasta. | Sen muistin käyttö on nopeampaa. |
Sopivuus | Sitä käytetään pääasiassa aikajako- ja yleiskäyttösovelluksissa. | Sitä käytetään pääasiassa aikakriittisissä ja reaaliaikaisissa sovelluksissa. |
Kaistanleveys | Sillä on rajoitettu kaistanleveys. | Sillä on enemmän kaistanleveyttä. |
Bussi tyyppi | Se käyttää yksi-, moni- ja poikkipalkkiväyliä. | Se käyttää hierarkkisia ja puurakenteisia väyliä ja verkkoyhteyksiä. |
Johtopäätös
UMA-arkkitehtuuri tarjoaa saman kokonaisviiveen prosessoreille, jotka käyttävät muistia, eikä se ole erityisen hyödyllinen paikallista muistia käytettäessä, koska viive olisi tasainen. Sitä vastoin NUMA:ssa jokaisella prosessorilla on oma muistinsa, mikä eliminoi viiveet paikallismuistin käytössä. Latenssimuutokset riippuvat suorittimen ja muistin muutosten välisestä etäisyydestä. UMA-suunnitteluun verrattuna NUMA tarjoaa kuitenkin paremman suorituskyvyn.