Vad är CPU-cache och är det viktigt?

Med produkter som Ryzen 7 5800X3D tjänar kronan som bästa CPU för spel, du undrar förmodligen vad CPU-cache är och varför det är en så stor sak i första hand. Vi vet redan att AMD: s kommande Ryzen 7000-processorer och Intels 13:e generationens Raptor Lake-processorer kommer att fokusera på mer cache, vilket signalerar att detta kommer att vara en kritisk spec i framtiden.

Innehåll

  • Vad är CPU-cache?
  • Hur fungerar cachen?
  • Spelar CPU-cache någon roll för spel?

Men bör du bry dig om CPU-cache? Vi kommer att bryta ner vad CPU-cache är, varför det är så viktigt och hur det kan göra en enorm skillnad om du spelar.

Rekommenderade videor

Vad är CPU-cache?

AMD Ryzen 7 5800X3D-chip.

Cache är mängden minne som finns inom själva processorn, antingen integrerad i enskilda kärnor eller delad mellan några eller alla kärnor. Det är en liten bit dedikerat minne som bor direkt på processorn så att din CPU inte behöver hämta information från ditt systemminne varje gång du vill göra något på din PC. Varje processor har en liten mängd cache, med mindre processorer som kanske bara får några kilobyte medan stora processorer kan ha många megabyte värda cache.

Relaterad

  • Hur Intel kunde använda AI för att ta itu med ett stort problem inom PC-spel
  • AMD: s kommande Ryzen 5 5600X3D kan helt avsätta Intel i budgetbyggen
  • Intel tror att din nästa CPU behöver en AI-processor - här är anledningen

Men du kanske undrar varför cache överhuvudtaget är nödvändigt när vi har RAM, särskilt när en enda minnesminne kan ha flera gigabyte minne. Allt handlar om prestanda. På 1990-talet började takten med prestandaförbättringar mellan processorer och RAM-minne att bli uppenbar. När allt kommer omkring var CPU-designers fokuserade på att öka hastigheten, medan RAM-designers ville öka kapaciteten och försummade hastigheten. För CPU-designerna var detta ett problem eftersom RAM-hastigheten är en avgörande faktor för CPU-prestanda för många applikationer, och ju större gapet mellan CPU och RAM blev, desto svårare skulle det vara att förbättra prestanda.

Cache var lösningen. Även om cachen har liten kapacitet jämfört med RAM, kompenserar dess höga hastighet för det i de flesta fall. Cache är dock inte perfekt. Dess främsta svaghet är storleken; cachen är fysiskt stor för hur lite den kan lagra. Cache är också motståndskraftig mot nodkrympningar, så medan kärnorna och andra komponenter i en CPU kan krympa ganska lätt från en generation till en annan, krymper cachen mycket mindre. Detta gör cache till en mycket dyr komponent i en CPU, vilket är en av huvudorsakerna till att cache vanligtvis har så liten mängd lagringsutrymme.

Hur fungerar cachen?

Det vanliga antagandet av cache resulterade i mer nyanserade implementeringar av cache och RAM tills vi hamnade i minneshierarkin, med cache överst, RAM i mitten och lagring vid botten. Detta skiktade tillvägagångssätt gör att kritiska data för processorn kan vara fysiskt närmare processorn, vilket minskar latensen och hjälper din dator att kännas snabb.

Den moderna minneshierarkin.
Carlos Carvalho

Cache har sin egen hierarki, eller cachenivåer, som är uppdelade i L1, L2 och L3 cache. Dessa är alla typer av cache, men de utför lite olika funktioner.

L1-cache är den första nivån av cache och även den minsta, vanligtvis uppdelad i L1-instruktion eller L1i- och L1-data eller L1d. Varje kärna i en CPU har sin exklusiva del av L1-cache, som vanligtvis bara är några kilobyte stor. Den typ av data som lagras i L1-cache är sådant som CPU: n precis använde eller förväntar sig att använda inom kort. Om processorn behöver data som inte finns i L1-cachen går den till nästa nivå: L2.

Liksom L1-cache är L2-cache ofta exklusivt för en enda CPU-kärna, men i vissa CPU: er delas den mellan flera kärnor. Det är också mycket, mycket större; till exempel har varje P-kärna i Core i9-12900K 80 kilobyte L1-cache, samt 1,25 megabyte L2-cache, nästan 16 gånger så mycket. Men större cachar har högre latens, vilket innebär att det tar längre tid för kommunikation att ske mellan CPU-kärnan och cachen. När processorer vill åstadkomma saker på några mikrosekunder eller till och med nanosekunder, spelar den något högre latensen för L2-cache roll. Om en CPU inte kan hitta begärd data i L2-cache, frågar den nästa nivå: L3.

L3-cache är en stor sak: den delas mellan några eller alla kärnor inom en CPU, och den är stor. 12900K har 30 MB L3-cache, till exempel 24 gånger mängden L2-cache. Latensen för L3-cache är ännu värre än L2, men att ha en stor L3-cache är verkligen viktigt för att förhindra att CPU: n behöver be RAM-minnet om nödvändiga data. Förutom lagring har RAM den sämsta hastigheten och latensen i minneshierarkin, och närhelst processorn behöver komma åt RAM-minnet för nödvändig data stannar saker och ting upp. Helst kommer allt viktigt att lagras åtminstone i L3-cachen för att förhindra en massiv avmattning.

Vissa CPU: er har till och med L4-cache, men det fungerar vanligtvis som RAM-minne som finns på CPU-paketet. Några av Intels första 14nm-processorer baserade på Broadwell-arkitekturen inkluderade 128 MB inbyggt DRAM, och företagets kommande Sapphire Rapids-server-CPU: er kan komma med HBM2, som ungefär används som en extra nivå av cache.

Spelar CPU-cache någon roll för spel?

AMD VD håller 3D V-Cache CPU.

CPU-cache gör stor skillnad för spel. Även om enkeltrådig prestanda, instruktioner per klocka (IPC) och klockhastighet traditionellt har sagts vara de mest viktiga faktorer i spelprestanda, har det blivit mycket tydligt att cache förmodligen är den viktigaste faktorn av alla i rivaliteten mellan AMD och Intel.

Cache är så viktigt för spel på grund av hur spel är designade idag. Moderna spel har mycket slumpmässighet, vilket gör att CPU: n hela tiden behöver utföra enkla instruktioner. Utan tillräckligt med cache, tvingas ditt grafikkort att vänta på din CPU när instruktionerna hopar sig och orsaka en flaskhals. Du kan se ett exempel på hur stor skillnad det gör med AMD: s 3D V-cache teknik i Far Cry 6 Nedan.

Ryzen 7 5800X3D-prestanda i Far Cry 6.

Vi har sett en trend mot mer cache för spel de senaste åren. AMD: s Ryzen 3000-processorer hade dubbelt så mycket L3-cache som föregående generation och var mycket snabbare för spel, nästan ikapp Intel. När Ryzen 5000 lanserades lade AMD inte till mer cache, men det förenade de två blocken av L3-cache i processorn, vilket kraftigt minskade latensen och satte AMD i täten för spelprestanda. AMD fördubblades med sin 3D V-Cache-teknik på Ryzen 7 5800X3D, som staplar ett 64MB-chip med L3-cache ovanpå CPU: n för totalt 96MB, mer än till och med flaggskeppet Ryzen 9 5950X.

Intel har spelat ikapp med AMD, och dess nuvarande generation Alder Lake-processorer har upp till 30 MB L3-cache, vilket är betydligt mindre än de flesta Ryzen-processorer, men de har också mycket mer L1 och L2 cache. Intels nackdel i L3-kapacitet betyder dock inte att Ryzen 5000-processorer är mycket snabbare för spel. I vår Core i9-12900K recension, fann vi att 12900K var knuten till Ryzen 9 5950X för spelprestanda.

Kapplöpningen om cache kommer nästan säkert att fortsätta med det kommande Ryzen 7000 och Raptor Lake processorer. Ryzen 7000 har bekräftats ha dubbelt så mycket L2-cache som Ryzen 5000, och vi kommer förmodligen att se fler processorer som använder V-Cache. Samtidigt har Intel inte sin egen version av V-Cache, men Raptor Lake ryktas ha mycket mer L3-cache än Alder Lake, bara i själva processorn.

Redaktörens rekommendationer

  • AMD: s senaste V-Cache-chip visar sig vara billigt, snabbt och perfekt för spel
  • Hur vi testar PC-komponenter och hårdvara
  • Här är varför folk är så upprörda över dagens Starfield PC-nyheter
  • De bästa PC-byggena: budget, spel, videoredigering och mer
  • AMD kanske precis har aktiverat MacBook-liknande spelbärbara datorer, men jag är fortfarande skeptisk