Hvad er CPU-cache, og er det vigtigt?

Med produkter som Ryzen 7 5800X3D, der tjener kronen som bedste CPU til spil, undrer du dig sikkert over, hvad CPU-cache er, og hvorfor det i første omgang er så stort. Vi ved allerede, at AMDs kommende Ryzen 7000 CPU'er og Intels 13. generations Raptor Lake-processorer vil fokusere på mere cache, hvilket signalerer, at dette vil være en kritisk spec i fremtiden.

Indhold

  • Hvad er CPU-cache?
  • Hvordan fungerer cache?
  • Betyder CPU-cache noget for spil?

Men bør du bekymre dig om CPU-cache? Vi skal nedbryde, hvad CPU-cache er, hvorfor det er så vigtigt, og hvordan det kan gøre en enorm forskel, hvis du spiller.

Anbefalede videoer

Hvad er CPU-cache?

AMD Ryzen 7 5800X3D-chip.

Cache er mængden af ​​hukommelse, der er indenfor selve CPU'en, enten integreret i individuelle kerner eller delt mellem nogle eller alle kerner. Det er en lille smule dedikeret hukommelse, der bor direkte på processoren, så din CPU ikke behøver at hente information fra dit system RAM, hver gang du vil gøre noget på din pc. Hver processor har en lille mængde cache, med mindre CPU'er, der måske kun får et par kilobyte, mens store CPU'er kan have mange megabyte værd i cache.

Relaterede

  • Hvordan Intel kunne bruge AI til at tackle et massivt problem inden for pc-spil
  • AMD's kommende Ryzen 5 5600X3D kan fuldstændig detronisere Intel i budgetbygninger
  • Intel mener, at din næste CPU har brug for en AI-processor - her er hvorfor

Men du undrer dig måske over, hvorfor cache overhovedet er nødvendig når vi har RAM, især når en enkelt stick RAM kan have flere gigabyte hukommelse. Det hele handler om ydeevne. I 1990'erne begyndte tempoet med forbedringer af ydeevnen mellem CPU'er og RAM at blive tydeligt. Når alt kommer til alt, var CPU-designere fokuseret på at øge hastigheden, mens RAM-designere ønskede at øge kapaciteten og forsømte hastigheden. For CPU-designerne var dette et problem, fordi RAM-hastigheden er en afgørende faktor i CPU-ydeevnen for mange applikationer, og jo større CPU-RAM-gabet blev, jo sværere ville det være at forbedre ydeevne.

Cache var løsningen. Selvom cachen har ringe kapacitet sammenlignet med RAM, gør dens høje hastighed op for det i de fleste tilfælde. Cache er dog ikke perfekt. Dens største svaghed er størrelsen; cachen er fysisk stor for, hvor lidt den kan gemme. Cache er også modstandsdygtig over for nodekrympninger, så mens kernerne og andre komponenter i en CPU kan krympe ganske let fra en generation til en anden, krymper cachen meget mindre. Dette gør cache til en meget dyr komponent i en CPU, hvilket er en af ​​hovedårsagerne til, at cache normalt har så lille en mængde lagerplads.

Hvordan fungerer cache?

Den almindelige vedtagelse af cache resulterede i mere nuancerede implementeringer af cache og RAM, indtil vi endte med hukommelseshierarkiet, med cache øverst, RAM i midten og lagring ved bund. Denne trindelte tilgang tillader kritiske data for CPU'en at være fysisk tættere på processoren, hvilket reducerer latens og hjælper din pc til at føles hurtig.

Det moderne hukommelseshierarki.
Carlos Carvalho

Cache har sit eget hierarki eller cache-niveauer, som er opdelt i L1, L2 og L3 cache. Disse er alle slags cache, men de udfører lidt forskellige funktioner.

L1 cache er det første niveau af cache og også det mindste, normalt opdelt i L1 instruktion eller L1i og L1 data eller L1d. Hver kerne i en CPU har sin eksklusive del af L1-cache, som normalt kun er et par kilobyte stor. Den slags data, der er gemt i L1-cachen, er ting, som CPU'en lige har brugt eller forventer at bruge umiddelbart. Hvis CPU'en har brug for data, der ikke er i L1-cachen, går den til næste niveau: L2.

Ligesom L1-cache er L2-cache ofte eksklusiv for en enkelt CPU-kerne, men i nogle CPU'er er den delt mellem flere kerner. Det er også meget, meget større; for eksempel har hver P-kerne i Core i9-12900K 80 kilobyte L1-cache samt 1,25 megabyte L2-cache, næsten 16 gange så meget. Større caches har dog højere latency, hvilket betyder, at det tager længere tid for kommunikation at ske mellem CPU-kernen og cachen. Når CPU'er ønsker at udrette ting i løbet af mikrosekunder eller endda nanosekunder, betyder den lidt højere latenstid på L2-cachen. Hvis en CPU ikke kan finde anmodede data i L2-cachen, spørger den det næste niveau: L3.

L3-cache er en stor ting: den deles mellem nogle eller alle kerner i en CPU, og den er stor. 12900K har 30 MB L3-cache, for eksempel 24 gange mængden af ​​L2-cache. Latenstiden for L3-cache er endnu værre end L2, men at have en stor L3-cache er virkelig vigtigt for at forhindre, at CPU'en behøver at bede RAM'en om nødvendige data. Bortset fra lagring har RAM den værste hastighed og latenstid i hukommelseshierarkiet, og når CPU'en skal have adgang til RAM'en for at få nødvendige data, går tingene i stå. Ideelt set vil alt vigtigt blive gemt i det mindste i L3-cachen for at forhindre en massiv opbremsning.

Nogle CPU'er har endda L4-cache, men det fungerer normalt som RAM, der er på CPU-pakken. Nogle af Intels første 14nm CPU'er baseret på Broadwell-arkitekturen inkluderede 128 MB indlejret DRAM, og virksomhedens kommende Sapphire Rapids server-CPU'er kan komme med HBM2, som lidt bruges som et ekstra niveau af cache.

Betyder CPU-cache noget for spil?

AMD CEO holder 3D V-Cache CPU.

CPU cache gør en stor forskel til spil. Selvom enkelttrådet ydeevne, instruktioner per ur (IPC) og clockhastighed traditionelt er blevet sagt at være de mest vigtige faktorer i spilydelsen, er det blevet meget klart, at cache nok er den vigtigste faktor af alt i rivaliseringen mellem AMD og Intel.

Cache er så vigtig for spil på grund af, hvordan spil er designet i dag. Moderne spil har meget tilfældighed, hvilket betyder, at CPU'en konstant skal udføre simple instruktioner. Uden nok cache er dit grafikkort tvunget til at vente på din CPU, da instruktionerne hober sig op og forårsage en flaskehals. Du kan se et eksempel på, hvor stor en forskel det gør med AMDs 3D V-Cache teknologi i Far Cry 6 under.

Ryzen 7 5800X3D ydeevne i Far Cry 6.

Vi har set en tendens til mere cache til spil i de seneste år. AMD's Ryzen 3000 CPU'er havde dobbelt så meget L3-cache som den forrige generation og var meget hurtigere til spil, næsten indhentet til Intel. Da Ryzen 5000 blev lanceret, tilføjede AMD ikke mere cache, men det forenede de to blokke af L3-cache i CPU'en, hvilket i høj grad reducerede latensen og satte AMD i spidsen for spilydelse. AMD fordoblede med sin 3D V-Cache-teknologi på Ryzen 7 5800X3D, som stabler en 64MB chip af L3-cache oven på CPU'en til i alt 96MB, mere end selv flagskibet Ryzen 9 5950X.

Intel har spillet indhentet med AMD, og ​​dens nuværende generation af Alder Lake CPU'er har op til 30 MB L3-cache, hvilket er betydeligt mindre end de fleste Ryzen CPU'er, men de har også meget mere L1 og L2 cache. Intels ulempe i L3-kapacitet betyder dog ikke, at Ryzen 5000 CPU'er er meget hurtigere til spil. I vores Core i9-12900K anmeldelse, fandt vi ud af, at 12900K var knyttet til Ryzen 9 5950X for spilydelse.

Kapløbet om cache vil næsten helt sikkert fortsætte med det kommende Ryzen 7000 og Raptor Lake CPU'er. Det er bekræftet, at Ryzen 7000 har to gange L2-cachen i forhold til Ryzen 5000, og vi vil sandsynligvis se flere CPU'er, der bruger V-Cache. I mellemtiden har Intel ikke sin egen version af V-Cache, men det rygtes, at Raptor Lake har meget mere L3-cache end Alder Lake, kun i selve CPU'en.

Redaktørens anbefalinger

  • AMDs seneste V-Cache-chip viser sig at være billig, hurtig og perfekt til spil
  • Sådan tester vi pc-komponenter og hardware
  • Her er grunden til, at folk er så kede af dagens Starfield PC-nyheder
  • De bedste pc-bygninger: budget, spil, videoredigering og mere
  • AMD har måske lige aktiveret MacBook-lignende gaming-bærbare computere, men jeg er stadig skeptisk