Verschil tussen UMA en NUMA

Schrijver: Laura McKinney
Datum Van Creatie: 2 April 2021
Updatedatum: 5 Kunnen 2024
Anonim
How economic inequality harms societies | Richard Wilkinson
Video: How economic inequality harms societies | Richard Wilkinson

Inhoud


Multiprocessors kunnen worden onderverdeeld in drie categorieën gedeeld geheugen: UMA (Uniform Memory Access), NUMA (Non-uniform Memory Access) en COMA (Cache-only Memory Access). De modellen zijn gedifferentieerd op basis van hoe de geheugen- en hardwarebronnen worden verdeeld. In het UMA-model wordt het fysieke geheugen gelijkmatig gedeeld tussen de processors, die ook een gelijke latentie hebben voor elk geheugenwoord, terwijl NUMA variabele toegangstijd biedt voor de processors om toegang te krijgen tot het geheugen.

De bandbreedte die in de UMA naar het geheugen wordt gebruikt, is beperkt omdat deze een enkele geheugencontroller gebruikt. Het primaire motief van de komst van NUMA-machines is het verbeteren van de beschikbare bandbreedte naar het geheugen door meerdere geheugencontrollers te gebruiken.

    1. Vergelijkingstabel
    2. Definitie
    3. Belangrijkste verschillen
    4. Gevolgtrekking

Vergelijkingstabel

Basis voor vergelijkingUMANUMA
basis-Gebruikt een enkele geheugencontrollerMeerdere geheugencontroller
Gebruikt type bussenEnkele, meerdere en dwarsbalk.Boom en hiërarchisch
Geheugen toegangstijdGelijkVeranderingen volgens de afstand van de microprocessor.
Geschikt voorToepassingen voor algemene doeleinden en voor het delen van tijdRealtime en tijdkritische applicaties
Snelheidlangzamersneller
bandbreedteBeperktMeer dan UMA.


Definitie van UMA

UMA (Uniform Memory Access) systeem is een gedeelde geheugenarchitectuur voor de multiprocessors. In dit model wordt een enkel geheugen gebruikt dat toegankelijk is voor alle processors die het multiprocessorsysteem presenteren met behulp van het interconnectienetwerk. Elke processor heeft dezelfde geheugentoegangstijd (latentie) en toegangssnelheid. Het kan gebruik maken van een enkele bus, meerdere bus of crossbar-schakelaar. Omdat het gebalanceerde gedeelde geheugentoegang biedt, is het ook bekend als SMP (symmetrische multiprocessor) systemen.

Het typische ontwerp van de SMP wordt hierboven weergegeven, waarbij elke processor eerst met de cache wordt verbonden en vervolgens met de bus. Eindelijk is de bus verbonden met het geheugen. Deze UMA-architectuur vermindert de strijd voor de bus door de instructies rechtstreeks uit de afzonderlijke geïsoleerde cache op te halen. Het biedt ook een gelijke waarschijnlijkheid voor lezen en schrijven voor elke processor. De typische voorbeelden van het UMA-model zijn Sun Starfire-servers, Compaq alpha-server en HP v-serie.


Definitie van NUMA

NUMA (niet-uniforme geheugentoegang) is ook een multiprocessormodel waarin elke processor is verbonden met het speciale geheugen. Deze kleine delen van het geheugen vormen echter samen één adresruimte. Het belangrijkste punt om hier over na te denken is dat, anders dan UMA, de toegangstijd van het geheugen afhangt van de afstand waarop de processor is geplaatst, wat betekent dat de toegangstijd voor het geheugen varieert. Het geeft toegang tot elk van de geheugenlocaties met behulp van het fysieke adres.

Zoals hierboven vermeld, is de NUMA-architectuur bedoeld om de beschikbare bandbreedte van het geheugen te vergroten en waarvoor het meerdere geheugencontrollers gebruikt. Het combineert een groot aantal machine-kernen in "nodes”Waarbij elke kern een geheugencontroller heeft. Om toegang te krijgen tot het lokale geheugen in een NUMA-machine haalt de kern het geheugen op dat door de geheugencontroller wordt beheerd door zijn knooppunt. Terwijl voor toegang tot het externe geheugen dat wordt afgehandeld door de andere geheugencontroller, de kern het geheugenverzoek via de interconnectieverbindingen.

De NUMA-architectuur gebruikt de boomstructuur en hiërarchische busnetwerken om de geheugenblokken en de processors met elkaar te verbinden. BBN, TC-2000, SGI Origin 3000, Cray zijn enkele voorbeelden van de NUMA-architectuur.

  1. Het UMA-model (gedeeld geheugen) gebruikt een of twee geheugencontrollers. NUMA kan echter meerdere geheugencontrollers hebben om toegang tot het geheugen te krijgen.
  2. Enkele, meervoudige en dwarsbalkbussen worden gebruikt in UMA-architectuur. NUMA maakt daarentegen gebruik van hiërarchische en boomtype bussen en netwerkverbinding.
  3. In UMA is de geheugentoegangstijd voor elke processor hetzelfde, terwijl in NUMA de geheugentoegangstijd verandert als de afstand van het geheugen tot de processor verandert.
  4. Toepassingen voor algemene doeleinden en voor het delen van tijd zijn geschikt voor de UMA-machines. De juiste applicatie voor NUMA is daarentegen realtime en tijdkritisch centraal.
  5. De op UMA gebaseerde parallelle systemen werken langzamer dan de NUMA-systemen.
  6. Als het gaat om bandbreedte UMA, moet u een beperkte bandbreedte hebben. NUMA heeft integendeel meer bandbreedte dan UMA.

Gevolgtrekking

De UMA-architectuur biedt dezelfde algehele latentie voor de processors die toegang hebben tot het geheugen. Dit is niet erg handig wanneer toegang tot het lokale geheugen wordt verkregen omdat de latentie uniform zou zijn. Aan de andere kant had in NUMA elke processor zijn eigen geheugen dat de latentie elimineert wanneer het lokale geheugen wordt gebruikt. De latentie verandert naarmate de afstand tussen de processor en het geheugen verandert (d.w.z. Niet-uniform). NUMA heeft echter de prestaties verbeterd in vergelijking met UMA-architectuur.