logo

Forskellen mellem Uniform Memory Access (UMA) og Non-uniform Memory Access (NUMA)

Multiprocessorer er klassificeret i tre typer af delt hukommelsesmodeller: UMA (Uniform Memory Access), NUMA (Non-uniform Memory Access) og COMA (Cache-only Memory Access) . Modellerne er forskellige baseret på, hvordan hukommelse og hardwareressourcer er allokeret. Den fysiske hukommelse er ensartet delt mellem processorerne i UMA-modellen, som også har identisk latenstid for hvert hukommelsesord. I modsætning hertil giver NUMA variabel adgangstid for CPU'en til at få adgang til hukommelsen.

I denne artikel lærer du om forskellen mellem EN og I . Men før du diskuterer forskellene, skal du kende til UMA og NUMA.

generel beskyttelsesfejl

Hvad er UMA?

EN er en forkortelse for 'Ensartet hukommelsesadgang' . Det er en multiprocessor delt hukommelsesarkitektur. I denne model bruger og får alle processorerne i multiprocessorsystemet adgang til den samme hukommelse ved hjælp af sammenkoblingsnetværket.

Forskellen mellem Uniform Memory Access (UMA) og Non-uniform Memory Access (NUMA)

Latensen og adgangshastigheden for hver CPU er den samme. Den kan gøre brug af en tværstangskontakt, en enkelt buskontakt eller en multibuskontakt . Det kaldes også SMP (symmetrisk multiprocessor) systemet, fordi det giver balanceret adgang til delt hukommelse. Det er velegnet til tidsdeling og generelle formål.

Hvad er NUMA?

I er en forkortelse for 'Ikke-ensartet hukommelsesadgang' . Det er også en multiprocessormodel med dedikeret hukommelse knyttet til hver CPU. Men disse små hukommelseskomponenter samles for at danne et enkelt adresserum. Hukommelsesadgangstiden bestemmes af afstanden mellem CPU'en og hukommelsen, hvilket resulterer i varierede hukommelsesadgangstider. Det giver adgang til ethvert hukommelsessted ved hjælp af den fysiske adresse.

Forskellen mellem Uniform Memory Access (UMA) og Non-uniform Memory Access (NUMA)

Det NUMA arkitektur er designet til at maksimere den tilgængelige hukommelsesbåndbredde ved at bruge flere hukommelsescontrollere. Den integrerer mange maskinkerner i 'knuder' , hvor hver kerne har sin egen hukommelsescontroller. I en I system, modtager kernen den hukommelse, der håndteres af hukommelsescontrolleren af ​​dens node for at få adgang til lokal hukommelse. Kernen transmitterer hukommelsesanmodningen på tværs af sammenkoblingsforbindelserne for at få adgang til den fjerne hukommelse, som den anden hukommelsescontroller behandler. NUMA-arkitekturen anvender hierarkiske netværk og træbusnetværk til at forbinde hukommelsesblokke og CPU'er. Nogle eksempler på NUMA-arkitekturen er BBN, SGI Origin 3000, TC-2000 og Cray .

Nøgleforskelle mellem UMA og NUMA

Forskellen mellem Uniform Memory Access (UMA) og Non-uniform Memory Access (NUMA)

Der er forskellige nøgleforskelle mellem EN og I . Nogle af de vigtigste forskelle mellem UMA og NUMA er som følger:

  1. UMA (Uniform Memory Access) indeholder en enkelt hukommelsescontroller. I modsætning hertil kan NUMA (Non-Uniform Memory Access) bruge flere hukommelsescontrollere til at få adgang til hukommelsen.
  2. Hukommelsesadgangstiden for hver CPU i UMA er den samme. I modsætning hertil varierer hukommelsesadgangstiden i NUMA med hukommelsens afstand fra CPU'en.
  3. UMA bruges i en række generelle formål og tidsdelingsapps. På den anden side bruges NUMA i realtids- og tidskritiske apps.
  4. UMA-arkitektur anvender enkelt-, fler- og tværstangsbusser. På den anden side anvender NUMA hierarkiske og træstrukturerede busser og netværksforbindelser.
  5. Med hensyn til båndbredde har UMA-arkitekturen begrænset båndbredde. På den anden side har NUMA højere båndbredde end UMA.
  6. Hukommelsesadgang i UMA er langsom. På den anden side er NUMA-hukommelsesadgang hurtigere end UMA-hukommelsesadgang.

Head-to-head sammenligning mellem UMA og NUMA

Her lærer du head-to-head sammenligningerne mellem UMA og NUMA. De vigtigste forskelle mellem UMA og NUMA er som følger:

array.sort i java
Funktioner EN I
Fuld formularer UMA er en forkortelse for Uniform Memory Access. NUMA er en forkortelse for Non-Uniform Memory Access.
Hukommelsescontroller Den indeholder en enkelt hukommelsescontroller. Den indeholder flere hukommelsescontrollere.
Hukommelsesadgangstid Den indeholder balanceret eller lige så lang hukommelsesadgangstid. Dens hukommelsesadgangstid ændres i henhold til mikroprocessorens afstand.
Hukommelsesadgang Dens hukommelsesadgang er langsom. Dens hukommelsesadgang er hurtigere.
Egnethed Det bruges hovedsageligt i tidsdeling og generelle applikationer. Det bruges hovedsageligt i tidskritiske og realtidsapps.
Båndbredde Den har begrænset båndbredde. Den har mere båndbredde.
Bustype Den anvender enkelt-, fler- og tværstangsbusser. Den anvender hierarkiske og træstrukturerede busser og netværksforbindelser.

Konklusion

UMA-arkitekturen tilbyder den samme overordnede latenstid for de processorer, der får adgang til hukommelsen, og den er ikke særlig nyttig, når man får adgang til lokal hukommelse, fordi forsinkelsen ville være ensartet. I modsætning hertil har hver processor i NUMA sin egen dedikerede hukommelse, som eliminerer forsinkelse, mens den får adgang til lokal hukommelse. Latensændringerne afhænger af afstanden mellem CPU'en og hukommelsesændringerne. Men sammenlignet med UMA-designet tilbyder NUMA forbedret ydeevne.