Hvad er NUMA?

Hvis penge ikke er et problem, kan du købe alle de dyreste forbruger-pc-dele og bygge en mægtig pc til at tjekke din e-mail og scrolle gennem sociale medier. Det er selvfølgelig ikke sådan, de fleste køber ting; det er ikke engang, hvordan rige mennesker køber ting, da det ikke er en fremragende måde at forblive rig på. I stedet kigger de fleste på, hvad de vil med en computer og finder så en computer, der har passende hardware.

På hjemmemarkedet er der et anstændigt udvalg, men når du først kommer til arbejdsstations- og servermarkedet, er der nogle endnu mere kraftfulde muligheder for endnu flere penge. For eksempel understøtter den bedste pc, du kan bygge derhjemme, 16 kerner ( eller 24, hvis du tæller Intels effektivitetskorner med ). Du kan også få en kraftig GPU. Teknisk kan du få flere kraftfulde GPU'er, men du kan ikke bruge dem sammen, da SLI/NVLINK i det væsentlige er død.

På server- og arbejdsstationsmarkedet kan du få langt flere kerner i en CPU, op til 96 i AMD's EPYC lineup. Du kan også få GPU'er med mere egnede sammenkoblinger og mere VRAM. CPU-kerner er dog, hvor mange penge går, især i HPC ( High-Performance Computing ), Hyperscaler og Supercomputing verdener. Så hvad gør du, hvis du har brug for mere end 96 kerner i én computer? Tilføj flere CPU'er, selvfølgelig.

Multi-Socket bundkort

Selvfølgelig kan du ikke bare smække en anden CPU på et hvilket som helst gammelt bundkort; der ville ikke være nogen steder at tage hen. Du har brug for specifik hardware. AMD understøtter muligheden for, at to af deres EPYC-server-CPU'er kan placeres på det samme bundkort. Det giver i alt 192 kerner eller 384 tråde. Intels seneste server-CPU'er nåede maksimalt ud på 40 kerner, selvom den forrige generation havde en 56-core model. Intel understøtter dog op til 8 CPU'er på et enkelt bundkort. Det er 320 eller 448 kerner og 640 eller 896 tråde. Selvom dette er overdrevent for at tjekke Instagram, kan nogle arbejdsbelastninger bruge alle disse hestekræfter.

Problemet kommer fra hukommelsen. Fire ting begrænser generelt CPU'er. Den første er mangel på ting at gøre; nogle gange er CPU'en bare ikke indlæst. Dernæst har du strøm, der er kun så meget strøm, du kan trække, før du begynder at beskadige CPU'en, og der er begrænsninger på plads for at sikre, at CPU'en ikke risikerer at brænde ud, når den er under fuld belastning. Du har også det tæt beslægtede temperaturtryk, jo mere strøm du bruger, jo mere varme genererer du og skal spredes; overophedning er lige så slemt som for meget strøm, da tingene begynder at smelte. Den anden begrænsning er hukommelsesadgang.

En CPU har typisk brug for mange data for at udføre en masse behandling. Alt dette er gemt i RAM. Desværre er RAM ret langsom sammenlignet med en CPU. Dette kan lade den være inaktiv i "aldre", før den får de data, den skal bruge for at fungere. CPU cache hjælper meget, men den er så lille, at den ikke kan dække alt, og hovedhukommelsen skal tilgås.

Hukommelsesforsinkelse

For at minimere effekten af, at RAM er langsom, placeres den fysisk så tæt på CPU'en som muligt. Derfor er RAM altid placeret direkte ved siden af ​​CPU-stikket på et bundkort. Men hvad sker der, hvis du har flere CPU'er på et enkelt bundkort? Så er der en anden adgangstid for en CPU til at få adgang til sin hukommelse sammenlignet med hukommelsen ved siden af ​​en anden. "Åh nej," siger du måske, "noget hukommelse er lidt langsommere." Men dette er et faktisk problem, der kan have en overraskende dyb effekt på ydeevnen. Dette koncept kaldes Non-Uniform Memory Access eller NUMA.

NUMA involverer at levere en mekanisme til operativsystemet til at forstå, at mens det kan få adgang til hele hukommelsen, foretrækkes nogle dele til visse ting frem for andre. Hvor det er muligt, gemmer operativsystemet derefter data for opgaver, der kører på CPU1 i RAM direkte ved siden af ​​CPU1. På samme måde lagres data, der er nødvendige for en opgave, der kører på CPU2, i RAM direkte ved siden af ​​CPU2. Med begrænset RAM-kapacitet og massive datasæt er det naturligvis ikke altid muligt at holde sig inden for disse rammer. Alligevel gøres den bedste indsats og har en betydelig indflydelse på ydeevnen.

Hukommelsesadgang over en enkelt kanal er også sekventiel. Dette betyder, at når to forskellige CPU'er forsøger at få adgang til data på den samme kanal, den ene direkte forbundet til DIMM'en og den anden NUMA hopper væk, skal den anden anmodning ikke kun vente, inaktiv, på sin anmodning, men også anmodningen fra den anden. processor. Som sådan skal data, hvor det er muligt, gemmes på RAM direkte ved siden af ​​den CPU, der skal bruge dem.

Konklusion

NUMA står for Non-Uniform Memory Access. Det er et udtryk, der bruges i computersystemer med flere fysiske CPU'er. Det refererer til det faktum, at en CPU vil have en anden hukommelsesforsinkelse end den RAM, der direkte omgiver den, sammenlignet med RAM'en, der omgiver en anden CPU. Den ekstra latenstid reducerer systemets ydeevne på flere måder. NUMA er en måde at informere operativsystemet om, at dette er tilfældet.

Det giver den mulighed for at optimere hukommelsesbrug og datalokalitet baseret på den CPU, der har brug for dataene. Hvor det er muligt, gemmes alle data for de processer, der kører på en CPU, i RAM'en, der er direkte forbundet til den pågældende CPU. Når den lokale RAM ikke har nok kapacitet, kan data vælte over i RAM'en omkring andre CPU'er. Igen hvor det er muligt, er antallet af NUMA-hop minimeret for at reducere latens.


Sådan klones en harddisk

Sådan klones en harddisk

I den moderne digitale tidsalder, hvor data er et værdifuldt aktiv, kan kloning af en harddisk på Windows være en afgørende proces for mange. Denne omfattende guide

Sådan repareres driveren WUDFRd kunne ikke indlæses på Windows 10?

Sådan repareres driveren WUDFRd kunne ikke indlæses på Windows 10?

Står du over for fejlmeddelelsen, mens du starter din computer, som siger, at driveren WUDFRd ikke kunne indlæses på din computer?

Sådan rettes NVIDIA GeForce Experience-fejlkode 0x0003

Sådan rettes NVIDIA GeForce Experience-fejlkode 0x0003

Oplever du NVIDIA GeForce-oplevelsesfejlkode 0x0003 på dit skrivebord? Hvis ja, læs bloggen for at finde ud af, hvordan du løser denne fejl hurtigt og nemt.

Hvad er SMPS?

Hvad er SMPS?

Lær, hvad SMPS er og betydningen af ​​forskellige effektivitetsvurderinger, før du vælger en SMPS til din computer.

Hvorfor tænder min Chromebook ikke

Hvorfor tænder min Chromebook ikke

Få svar på spørgsmålet: Hvorfor tænder min Chromebook ikke? I denne nyttige vejledning til Chromebook-brugere.

Sådan rapporteres phishing-svindel til Google

Sådan rapporteres phishing-svindel til Google

Lær, hvordan du rapporterer en svindler til Google for at forhindre dem i at snyde andre med denne vejledning.

Roomba stopper, stikker og drejer rundt – Fix

Roomba stopper, stikker og drejer rundt – Fix

Løs et problem, hvor din Roomba robotstøvsuger stopper, sætter sig fast og bliver ved med at dreje rundt.

Sådan ændres grafikindstillinger på Steam Deck

Sådan ændres grafikindstillinger på Steam Deck

Steam Deck tilbyder en robust og alsidig spiloplevelse lige ved hånden. Dog for at optimere dit spil og sikre det bedst mulige

Hvad er isolationsbaseret sikkerhed?

Hvad er isolationsbaseret sikkerhed?

Ville dykke ned i et emne, der bliver stadig vigtigere i cybersikkerhedens verden: isolationsbaseret sikkerhed. Denne tilgang til

Sådan bruger du Auto Clicker til Chromebook

Sådan bruger du Auto Clicker til Chromebook

I dag skulle du dykke ned i et værktøj, der kan automatisere gentagne klikopgaver på din Chromebook: Auto Clicker. Dette værktøj kan spare dig tid og