logo

Diferența dintre accesul uniform la memorie (UMA) și accesul neuniform la memorie (NUMA)

Multiprocesoare sunt clasificate în Trei tipuri de modele de memorie partajată: UMA (Acces uniform la memorie), NUMA (Acces neuniform la memorie) și COMA (Acces la memorie doar pentru cache) . Modelele diferă în funcție de modul în care sunt alocate resursele de memorie și hardware. Memoria fizică este partajată uniform între procesoarele din modelul UMA, care are, de asemenea, o latență identică pentru fiecare cuvânt de memorie. În schimb, NUMA oferă timp variabil de acces pentru CPU pentru a accesa memorie.

În acest articol, veți afla despre diferența dintre UNU și ÎN . Dar înainte de a discuta diferențele, trebuie să știți despre UMA și NUMA.

căutarea contradictorie

Ce este UMA?

UNU este o abreviere pentru „Acces uniform la memorie” . Este o arhitectură de memorie partajată cu multiprocesor. În acest model, toate procesoarele din sistemul multiprocesor folosesc și accesează aceeași memorie cu ajutorul rețelei de interconectare.

Diferența dintre accesul uniform la memorie (UMA) și accesul neuniform la memorie (NUMA)

Latența și viteza de acces ale fiecăruia CPU e aceeasi. Se poate folosi a comutator cu bară transversală, un comutator de magistrală unică sau un comutator de magistrală multiplă . Este denumit și ca SMP (Multiprocesor simetric) sistem deoarece oferă acces echilibrat la memorie partajată. Este potrivit pentru utilizarea timpului în comun și aplicații de uz general.

Ce este NUMA?

ÎN este o abreviere pentru „Acces neuniform la memorie” . Este, de asemenea, un model multiprocesor cu memorie dedicată atașată fiecărui procesor. Dar aceste componente de memorie mici se reunesc pentru a forma un singur spațiu de adrese. Timpul de acces la memorie este determinat de distanța dintre CPU și memorie, rezultând timpi variați de acces la memorie. Oferă acces la orice loc de memorie folosind adresa fizică.

Diferența dintre accesul uniform la memorie (UMA) și accesul neuniform la memorie (NUMA)

The Arhitectura NUMA este conceput pentru a maximiza lățimea de bandă de memorie disponibilă prin utilizarea mai multor controlere de memorie. Acesta integrează multe nuclee de mașină în „noduri” , fiecare nucleu având propriul său controler de memorie. Într-o ÎN sistem, nucleul primește memoria gestionată de controlerul de memorie de către nodul său pentru a accesa memoria locală. Nucleul transmite cererea de memorie prin legăturile de interconectare pentru a accesa memoria îndepărtată, pe care o procesează celălalt controler de memorie. Arhitectura NUMA folosește rețele ierarhice și arbore de magistrală pentru a conecta blocurile de memorie și CPU-urile. Câteva exemple de arhitectură NUMA sunt BBN, SGI Origin 3000, TC-2000 și Cray .

Diferențele cheie între UMA și NUMA

Diferența dintre accesul uniform la memorie (UMA) și accesul neuniform la memorie (NUMA)

Există diverse diferențe cheie între UNU și ÎN . Unele dintre diferențele cheie dintre UMA și NUMA sunt următoarele:

  1. UMA (Acces uniform la memorie) conține un singur controler de memorie. În contrast, NUMA (Acces la memorie neuniformă) poate utiliza mai multe controlere de memorie pentru a accesa memoria.
  2. Timpul de acces la memorie pentru fiecare CPU din UMA este același. În schimb, timpul de accesare a memoriei în NUMA variază în funcție de distanța memoriei de la CPU.
  3. UMA este utilizat într-o varietate de aplicații de uz general și de partajare a timpului. Pe de altă parte, NUMA este folosit în aplicații în timp real și critice.
  4. Arhitectura UMA folosește autobuze simple, multiple și cu bare transversale. Pe de altă parte, NUMA folosește autobuze și conexiuni de rețea ierarhice și structurate în arbore.
  5. În ceea ce privește lățimea de bandă, arhitectura UMA are o lățime de bandă limitată. Pe de altă parte, NUMA are o lățime de bandă mai mare decât UMA.
  6. Accesul la memorie în UMA este lent. Pe de altă parte, accesul la memoria NUMA este mai rapid decât accesul la memoria UMA.

Comparație directă între UMA și NUMA

Aici veți afla comparațiile directe dintre UMA și NUMA. Principalele diferențe dintre UMA și NUMA sunt următoarele:

inttostr java
Caracteristici UNU ÎN
Formulare complete UMA este o abreviere pentru Uniform Memory Access. NUMA este o abreviere pentru Non-Uniform Memory Access.
Controler de memorie Conține un singur controler de memorie. Conține mai multe controlere de memorie.
Timp de acces la memorie Conține timp de acces la memorie echilibrat sau egal. Timpul său de acces la memorie se modifică în funcție de distanța microprocesorului.
Acces la memorie Accesul la memorie este lent. Accesul la memorie este mai rapid.
Adecvare Este utilizat în principal în aplicații de utilizare generală și de partajare a timpului. Este utilizat în principal în aplicații critice și în timp real.
Lățimea de bandă Are o lățime de bandă limitată. Are mai multă lățime de bandă.
Tip autobuz Utilizează autobuze simple, multiple și cu bare transversale. Utilizează autobuze ierarhice și structurate în arbore și conexiuni la rețea.

Concluzie

Arhitectura UMA oferă aceeași latență generală pentru procesoarele care accesează memorie și nu este deosebit de utilă atunci când se accesează memoria locală deoarece întârzierea ar fi uniformă. În schimb, în ​​NUMA, fiecare procesor are propria sa memorie dedicată, ceea ce elimină întârzierea în timpul accesării memoriei locale. Modificările latenței depind de distanța dintre CPU și modificările memoriei. Cu toate acestea, în comparație cu designul UMA, NUMA oferă performanțe îmbunătățite.