Vad är NUMA?

Om pengar inte är ett problem kan du köpa alla de dyraste konsumentdatordelarna och bygga en mäktig dator för att kolla din e-post och bläddra igenom sociala medier. Naturligtvis är det inte så de flesta köper saker; det är inte ens hur rika människor köper saker, eftersom det inte är ett utmärkt sätt att förbli rik. De flesta tittar istället på vad de vill göra med en dator och hittar sedan en dator som har lämplig hårdvara.

På hemmamarknaden finns det en anständig mängd val, men när du väl kommer till arbetsstations- och servermarknaden finns det några ännu kraftfullare alternativ för ännu mer pengar. Till exempel stöder den bästa PC du kan bygga hemma 16 kärnor ( eller 24 om du räknar Intels effektivitetskärnor) . Du kan också få en kraftfull GPU. Tekniskt sett kan du få flera kraftfulla grafikprocessorer, men du kan inte använda dem tillsammans eftersom SLI/NVLINK i princip är död.

På server- och arbetsstationsmarknaden kan du få mycket fler kärnor i en CPU, upp till 96 i AMD:s EPYC-sortiment. Du kan också få grafikprocessorer med mer kapabla sammankopplingar och mer VRAM. CPU-kärnor är dock dit mycket pengar går, särskilt i HPC ( High-Performance Computing ), Hyperscaler och Supercomputing världar. Så, vad gör du om du behöver mer än 96 kärnor i en dator? Lägg till fler processorer så klart.

Moderkort med flera uttag

Naturligtvis kan du inte bara slå en andra CPU på vilket gammalt moderkort som helst; det skulle inte finnas någonstans att ta vägen. Du behöver specifik hårdvara. AMD stöder möjligheten för två av deras EPYC-server-CPU:er att placeras på samma moderkort. Det ger totalt 192 kärnor eller 384 trådar. Intels senaste server-CPU:er nådde max 40 kärnor, även om den tidigare generationen hade en 56-kärnig modell. Intel har dock stöd för upp till 8 processorer på ett enda moderkort. Det är 320 eller 448 kärnor och 640 eller 896 trådar. Även om detta är överdrivet för att kolla Instagram, kan vissa arbetsbelastningar använda alla dessa hästkrafter.

Problemet kommer från minnet. Fyra saker begränsar generellt CPU:er. Den första är bristen på saker att göra; ibland är processorn helt enkelt inte laddad. Därefter har du ström, det finns bara så mycket ström du kan dra innan du börjar skada processorn, och gränser finns på plats för att säkerställa att processorn inte riskerar att brinna ut när den är under full belastning. Du har också det närbesläktade temperaturtrycket, ju mer energi du använder, desto mer värme genererar du och måste avleda; överhettning är lika illa som för mycket kraft när saker börjar smälta. Den andra begränsningen är minnesåtkomst.

En CPU behöver vanligtvis mycket data för att utföra mycket bearbetning. Allt detta lagras i RAM. Tyvärr är RAM ganska långsamt jämfört med en CPU. Detta kan lämna den inaktiv i "åldrar" innan den får den data den behöver för att fungera. CPU-cache hjälper mycket, men den är så liten att den inte kan täcka allt, och huvudminnet måste nås.

Minneslatens

För att minimera effekten av att RAM-minnet är långsamt placeras det fysiskt så nära CPU:n som möjligt. Det är därför RAM-minnet alltid finns direkt bredvid CPU-sockeln på ett moderkort. Men vad händer om du har flera processorer på ett enda moderkort? Sedan finns det en annan åtkomsttid för en CPU att komma åt sitt minne jämfört med minnet bredvid en annan. "Åh nej," kan du säga, "en del minne är något långsammare." Men detta är ett verkligt problem som kan ha en förvånansvärt djupgående effekt på prestanda. Detta koncept kallas Non-Uniform Memory Access, eller NUMA.

NUMA innebär att tillhandahålla en mekanism för operativsystemet att förstå att även om det kan komma åt allt minne, föredras vissa delar för vissa saker framför andra. Om möjligt lagrar operativsystemet sedan data för uppgifter som körs på CPU1 i RAM-minnet direkt bredvid CPU1. På samma sätt lagras data som behövs för en uppgift som körs på CPU2 i RAM-minnet direkt bredvid CPU2. Naturligtvis, med begränsad RAM-kapacitet och massiva datamängder, är det inte alltid möjligt att hålla sig inom dessa gränser. Ändå görs bästa ansträngningar och har en betydande inverkan på prestandan.

Minnesåtkomst över en enda kanal är också sekventiell. Detta innebär att när två olika CPU:er försöker komma åt data på samma kanal, den ena direkt ansluten till DIMM:n och den andra NUMA hoppar iväg, måste den andra begäran inte bara vänta på sin begäran utan även den andras begäran. processor. Som sådan bör data, där det är möjligt, lagras på RAM-minnet direkt bredvid processorn som behöver det.

Slutsats

NUMA står för Non-Uniform Memory Access. Det är en term som används i datorsystem med flera fysiska processorer. Det hänvisar till det faktum att en CPU kommer att ha en annan minneslatens än RAM-minnet som omger den jämfört med RAM-minnet som omger en annan CPU. Den extra latensen minskar systemets prestanda på flera sätt. NUMA är ett sätt att informera operativsystemet om att så är fallet.

Det gör att den kan optimera minnesanvändning och datalokalitet baserat på den CPU som behöver data. Där det är möjligt lagras all data för processerna som körs på en CPU i RAM-minnet direkt kopplat till den CPU:n. När det lokala RAM-minnet inte har tillräckligt med kapacitet kan data spilla över till RAM-minnet runt andra processorer. Återigen där det är möjligt minimeras antalet NUMA-hopp för att minska latensen.


Hur man klona en hårddisk

Hur man klona en hårddisk

I den moderna digitala tidsåldern, där data är en värdefull tillgång, kan kloning av en hårddisk på Windows vara en avgörande process för många. Denna omfattande guide

Hur fixar jag drivrutinen WUDFRd kunde inte laddas på Windows 10?

Hur fixar jag drivrutinen WUDFRd kunde inte laddas på Windows 10?

Står du inför felmeddelandet när du startar din dator som säger att drivrutinen WUDFRd inte kunde laddas på din dator?

Så här åtgärdar du NVIDIA GeForce Experience Error Code 0x0003

Så här åtgärdar du NVIDIA GeForce Experience Error Code 0x0003

Upplever du NVIDIA GeForce-felkod 0x0003 på ditt skrivbord? Om ja, läs bloggen för att hitta hur du åtgärdar det här felet snabbt och enkelt.

Vad är SMPS?

Vad är SMPS?

Lär dig vad som är SMPS och innebörden av olika effektivitetsklasser innan du väljer en SMPS för din dator.

Varför slås inte min Chromebook på

Varför slås inte min Chromebook på

Få svar på frågan Varför slås inte min Chromebook på? I den här användbara guiden för Chromebook-användare.

Hur man rapporterar nätfiskebedrägerier till Google

Hur man rapporterar nätfiskebedrägerier till Google

Lär dig hur du rapporterar en bedragare till Google för att hindra dem från att lura andra med den här guiden.

Roomba stannar, sticker och vänder sig om – fixa

Roomba stannar, sticker och vänder sig om – fixa

Åtgärda ett problem där din Roomba robotdammsugare stannar, fastnar och fortsätter att vända sig om.

Hur man ändrar grafikinställningar på Steam Deck

Hur man ändrar grafikinställningar på Steam Deck

Steam Deck erbjuder en robust och mångsidig spelupplevelse precis vid dina fingertoppar. Dock för att optimera ditt spelande och säkerställa bästa möjliga

Vad är isoleringsbaserad säkerhet?

Vad är isoleringsbaserad säkerhet?

Vi skulle fördjupa oss i ett ämne som blir allt viktigare i världen av cybersäkerhet: isoleringsbaserad säkerhet. Detta förhållningssätt till

Hur man använder Auto Clicker för Chromebook

Hur man använder Auto Clicker för Chromebook

Idag skulle jag fördjupa dig i ett verktyg som kan automatisera repetitiva klickuppgifter på din Chromebook: Auto Clicker. Detta verktyg kan spara tid och