Hva er NUMA?

Hvis penger ikke er et problem, kan du kjøpe alle de dyreste forbruker-PC-delene og bygge en mektig PC for å sjekke e-posten din og bla gjennom sosiale medier. Det er selvfølgelig ikke slik folk flest kjøper ting; det er ikke engang hvordan rike folk kjøper ting, siden det ikke er en utmerket måte å forbli rik på. I stedet ser de fleste på hva de vil gjøre med en datamaskin og finner deretter en datamaskin som har passende maskinvare.

På hjemmemarkedet er det en anstendig mengde valgmuligheter, men når du først kommer til arbeidsstasjons- og servermarkedet, er det noen enda kraftigere alternativer for enda mer penger. For eksempel støtter den beste PC-en du kan bygge hjemme 16 kjerner ( eller 24 hvis du regner med Intels effektivitetskjerner ). Du kan også få en kraftig GPU. Teknisk sett kan du få flere kraftige GPUer, men du kan ikke bruke dem sammen da SLI/NVLINK i hovedsak er død.

På server- og arbeidsstasjonsmarkedet kan du få langt flere kjerner i en CPU, opptil 96 i AMDs EPYC-serie. Du kan også få GPUer med mer kapable sammenkoblinger og mer VRAM. CPU-kjerner er det imidlertid mye penger til, spesielt i HPC ( High-Performance Computing ), Hyperscaler og Supercomputing-verdener. Så, hva gjør du hvis du trenger mer enn 96 kjerner i én datamaskin? Legg til flere CPUer, selvsagt.

Multi-Socket hovedkort

Selvfølgelig kan du ikke bare slå en ekstra CPU på et hvilket som helst gammelt hovedkort; det ville ikke være noe sted å gå. Du trenger spesifikk maskinvare. AMD støtter muligheten for at to av deres EPYC-server-CPUer kan plasseres på samme hovedkort. Det gir totalt 192 kjerner eller 384 tråder. Intels siste server-CPUer nådde maksimalt 40 kjerner, selv om forrige generasjon hadde en 56-kjerners modell. Intel støtter imidlertid opptil 8 CPUer på ett enkelt hovedkort. Det er 320 eller 448 kjerner og 640 eller 896 tråder. Selv om dette er overdrevet for å sjekke Instagram, kan noen arbeidsmengder bruke alle disse hestekreftene.

Problemet kommer fra hukommelsen. Fire ting begrenser generelt CPUer. Den første er mangel på ting å gjøre; noen ganger er CPU-en bare ikke lastet. Deretter har du strøm, det er bare så mye strøm du kan trekke før du begynner å skade CPU-en, og grenser er på plass for å sikre at CPU-en ikke risikerer å brenne ut når den er under full belastning. Du har også det nært beslektede temperaturtrykket, jo mer strøm du bruker, jo mer varme genererer du og må spre; overoppheting er like ille som for mye strøm når ting begynner å smelte. Den andre begrensningen er minnetilgang.

En CPU trenger vanligvis mye data for å utføre mye prosessering. Alt dette er lagret i RAM. Dessverre er RAM ganske treg sammenlignet med en CPU. Dette kan la den være inaktiv i "aldre" før den får dataene den trenger for å fungere. CPU-cache hjelper mye, men den er så liten at den ikke kan dekke alt, og hovedminnet må nås.

Minneforsinkelse

For å minimere effekten av at RAM er treg, er den fysisk plassert så nær CPU som mulig. Dette er grunnen til at RAM alltid er plassert rett ved siden av CPU-kontakten på et hovedkort. Men hva skjer hvis du har flere CPUer på et enkelt hovedkort? Da er det en annen tilgangstid for en CPU for å få tilgang til minnet sitt sammenlignet med minnet ved siden av en annen. "Å nei," kan du si, "noen hukommelse er litt tregere." Men dette er et faktisk problem som kan ha en overraskende dyp effekt på ytelsen. Dette konseptet kalles Non-Uniform Memory Access, eller NUMA.

NUMA innebærer å tilby en mekanisme for operativsystemet for å forstå at selv om det kan få tilgang til alt minnet, er noen deler foretrukket for visse ting fremfor andre. Der det er mulig, lagrer operativsystemet data for oppgaver som kjører på CPU1 i RAM-en rett ved siden av CPU1. På samme måte lagres data som er nødvendig for en oppgave som kjører på CPU2 i RAM-en rett ved siden av CPU2. Selvfølgelig, med begrenset RAM-kapasitet og massive datasett, er det ikke alltid mulig å holde seg innenfor disse rammene. Likevel gjøres det beste og har en betydelig innvirkning på ytelsen.

Minnetilgang over en enkelt kanal er også sekvensiell. Dette betyr at når to forskjellige prosessorer prøver å få tilgang til data på samme kanal, den ene direkte koblet til DIMM-en og den andre NUMA hopper unna, må den andre forespørselen ikke bare vente, inaktiv, på forespørselen, men også forespørselen fra den andre prosessor. Som sådan, der det er mulig, bør data lagres på RAM-en rett ved siden av CPU-en som trenger det.

Konklusjon

NUMA står for Non-Uniform Memory Access. Det er et begrep som brukes i datasystemer med flere fysiske CPUer. Det refererer til det faktum at en CPU vil ha en annen minnelatens enn RAM-en som omgir den, sammenlignet med RAM-en som omgir en annen CPU. Den ekstra ventetiden reduserer systemytelsen på flere måter. NUMA er en måte å informere operativsystemet om at dette er tilfelle.

Den lar den optimalisere minnebruk og datalokalitet basert på CPUen som trenger dataene. Der det er mulig, lagres alle data for prosessene som kjører på en CPU i RAM-en som er direkte koblet til den CPUen. Når den lokale RAM-en ikke har nok kapasitet, kan data gå over til RAM-en rundt andre CPUer. Igjen hvor det er mulig, er antall NUMA-hopp minimert for å redusere ventetiden.


Hvordan klone en harddisk

Hvordan klone en harddisk

I den moderne digitale tidsalder, hvor data er en verdifull ressurs, kan kloning av en harddisk på Windows være en avgjørende prosess for mange. Denne omfattende guiden

Hvordan fikse driveren WUDFRd kunne ikke lastes inn på Windows 10?

Hvordan fikse driveren WUDFRd kunne ikke lastes inn på Windows 10?

Står du overfor feilmeldingen mens du starter datamaskinen som sier at driveren WUDFRd ikke kunne lastes inn på datamaskinen?

Slik fikser du NVIDIA GeForce Experience-feilkode 0x0003

Slik fikser du NVIDIA GeForce Experience-feilkode 0x0003

Opplever du NVIDIA GeForce-opplevelsesfeilkode 0x0003 på skrivebordet ditt? Hvis ja, les bloggen for å finne ut hvordan du løser denne feilen raskt og enkelt.

Hva er SMPS?

Hva er SMPS?

Lær hva som er SMPS og betydningen av ulike effektivitetsvurderinger før du velger en SMPS for datamaskinen din.

Hvorfor slås ikke Chromebooken på

Hvorfor slås ikke Chromebooken på

Få svar på spørsmålet Hvorfor slås ikke Chromebooken min på? I denne nyttige veiledningen for Chromebook-brukere.

Slik rapporterer du phishing-svindel til Google

Slik rapporterer du phishing-svindel til Google

Lær hvordan du rapporterer en svindler til Google for å forhindre at de svindler andre med denne veiledningen.

Roomba stopper, stikker og snur – fiks

Roomba stopper, stikker og snur – fiks

Løs et problem der Roomba-robotstøvsugeren stopper, fester seg og fortsetter å snu.

Hvordan endre grafikkinnstillinger på Steam Deck

Hvordan endre grafikkinnstillinger på Steam Deck

Steam Deck tilbyr en robust og allsidig spillopplevelse rett ved fingertuppene. Men for å optimere spillingen din og sikre best mulig

Hva er isolasjonsbasert sikkerhet?

Hva er isolasjonsbasert sikkerhet?

Skulle fordype seg i et emne som blir stadig viktigere i verden av cybersikkerhet: isolasjonsbasert sikkerhet. Denne tilnærmingen til

Slik bruker du Auto Clicker for Chromebook

Slik bruker du Auto Clicker for Chromebook

I dag skulle du fordype deg i et verktøy som kan automatisere repeterende klikkeoppgaver på Chromebooken din: Auto Clicker. Dette verktøyet kan spare deg for tid og