Erinevus UMA ja NUMA vahel
Sisu
Multiprotsessorid võib jagada kolme jagatud mälumudelite kategooriasse - UMA (Uniform Memory Access), NUMA (Uniform Memory Access) ja COMA (Ainult vahemälule juurdepääs). Mudelid eristatakse vastavalt mälu ja riistvara ressursside jaotusele. UMA mudelis on füüsiline mälu ühtlaselt jaotatud protsessorite vahel, kellel on ka iga mälusõna jaoks võrdne latentsusaeg, samas kui NUMA pakub protsessoritele muutuvat juurdepääsuaega mälu juurde pääsemiseks.
UMA mälu jaoks kasutatav ribalaius on piiratud, kuna see kasutab ühe mälu kontrollerit. NUMA-masinate tuleku peamiseks motiiviks on mälu saadaoleva ribalaiuse suurendamine mitme mälukontrolleri abil.
-
- Võrdlusdiagramm
- Definitsioon
- Peamised erinevused
- Järeldus
Võrdlusdiagramm
Võrdluse alus | UMA | NUMA |
---|---|---|
Põhiline | Kasutab ühte mälukontrollerit | Mitme mälu kontroller |
Kasutatud busside tüüp | Ühe-, mitme- ja risttala. | Puu ja hierarhiline |
Mälu kasutamise aeg | Võrdne | Muutused vastavalt mikroprotsessori kaugusele. |
Sobilik | Üldotstarbelised ja ajajagamisrakendused | Reaalajas ja ajakriitilised rakendused |
Kiirus | Aeglasemalt | Kiirem |
Ribalaius | Piiratud | Rohkem kui UMA. |
UMA määratlus
UMA (ühtne mälujuurdepääs) süsteem on mitme protsessori jagatud mäluarhitektuur. Selles mudelis kasutavad ühte mälu ja sellele pääsevad juurde kõik protsessorid, mis ühendavad mitme protsessori süsteemi sidumisvõrgu abil. Igal protsessoril on võrdne mälule juurdepääsu aeg (latentsus) ja juurdepääsu kiirus. See võib kasutada kas ühte bussi, mitut siini või risttala lülitit. Kuna see pakub tasakaalustatud juurdepääsu ühiskasutatud mälule, tuntakse seda ka kui SMP (sümmeetriline multiprotsessor) süsteemid.
SMP tüüpiline kujundus on näidatud ülal, kus iga protsessor ühendatakse kõigepealt vahemäluga, seejärel vahemälu on ühendatud siiniga. Lõpuks on siin ühendatud mäluga. See UMA arhitektuur vähendab siini nõudlust, tõmmates juhised otse individuaalsest eraldatud vahemälust. Samuti annab see igale töötlejale võrdse tõenäosuse lugemiseks ja kirjutamiseks. UMA mudeli tüüpilisteks näideteks on Sun Starfire serverid, Compaq alfa server ja HP v seeria.
NUMA määratlus
NUMA (ebaühtlane juurdepääs mälule) on ka mitme protsessoriga mudel, milles iga protsessor on ühendatud spetsiaalse mäluga. Need väikesed mäluosad ühendavad aga ühtse aadressiruumi. Peamine küsimus, mille üle mõtiskleda, on siin see, et erinevalt UMA-st sõltub mälu juurdepääsuaeg protsessori paigutamise kaugusest, mis tähendab erinevat mälu juurdepääsu aega. See võimaldab füüsilise aadressi abil juurde pääseda mis tahes mälukohale.
Nagu eespool mainitud, on NUMA arhitektuuri eesmärk suurendada mäluruumi saadaolevat ribalaiust ja selleks kasutab see mitut mälu kontrollerit. See ühendab arvukad masinasüdamikudsõlmedKus igal südamikul on mälukontroller. Kohaliku mälu juurde pääsemiseks NUMA-masinas hangib tuum mälu, mida mälukontroller haldab oma sõlme kaudu. Teise mälukontrolleri hallatavale kaugmälule juurde pääsemiseks nõuab südamik ühenduslinkide kaudu mälupäringut.
NUMA arhitektuur kasutab mäluplokkide ja protsessorite ühendamiseks puu- ja hierarhilisi siinivõrke. BBN, TC-2000, SGI Origin 3000, Cray on mõned näited NUMA arhitektuurist.
- UMA (jagatud mälu) mudel kasutab ühte või kahte mälukontrollerit. Vastupidiselt sellele võib NUMA-l mälu juurde pääsemiseks olla mitu mälukontrollerit.
- UMA arhitektuuris kasutatakse ühe-, mitme- ja risttalasiine. NUMA, vastupidi, kasutab siinide hierarhilisi ja puutüüpe ning võrguühendust.
- UMA-s on kõigi protsessorite mälule juurdepääsu aeg sama, samas kui NUMA-s muutub mälule juurdepääsu aeg vastavalt mälu kaugusele protsessorist.
- UMA-masinate jaoks sobivad üldotstarbelised ja ajajagamisrakendused. NUMA jaoks on seevastu sobiv rakendus reaalajas ja ajakriitiliselt.
- UMA-põhised paralleelsed süsteemid töötavad aeglasemalt kui NUMA-süsteemid.
- UMA ribalaiuse osas on ribalaius piiratud. NUMA ribalaius on vastupidi suurem kui UMA.
Järeldus
UMA arhitektuur pakub sama üldist latentsusaega mälu pääsevatele protsessoritele. Kohalikule mälule juurdepääsu saamiseks pole see eriti kasulik, kuna latentsusaeg oleks ühtlane. Teisest küljest oli NUMA-l igal protsessoril oma spetsiaalne mälu, mis välistab latentsuse kohaliku mälu kasutamisel. Latentsusaeg muutub, kui protsessori ja mälu vaheline kaugus muutub (st ebaühtlane). NUMA on aga UMA arhitektuuriga võrreldes jõudlust parandanud.