Hvad er L0-cachen?

CPU'er er utroligt komplekse dyr. Der er mange sammenkoblede dele, som alle skal arbejde i perfekt forening for at opnå de niveauer af ydeevne, vi ser. En af nøglefunktionerne ved en CPU er cachen. Det er ikke en prangende funktion. Det annoncerer ikke så godt som core count eller peak boost frekvens. Det er dog afgørende for ydeevnen.

Hvorfor cache?

Moderne CPU'er er utrolig hurtige. De udfører mere end fem milliarder operationer hvert sekund. Det er svært at holde CPU'en fodret med data, når den kører så hurtigt. RAM'en har nok kapacitet til at forsyne CPU'en med data. Den kan endda overføre data hvert sekund, takket være meget høje båndbredder. Det er dog ikke problemet. Problemet er latens.

RAM kan reagere meget hurtigt. Problemet er, at "meget hurtigt" er lang tid, når du gør fem milliarder ting hvert sekund. Selv den hurtigste RAM har en latency på over 60 nanosekunder. Igen lyder 60 nanosekunder som ingen tid overhovedet. Problemet er, at hvis CPU'en kørte ved 1GHz, ville det tage 1ns at fuldføre en cyklus. Med avancerede CPU'er, der rammer 5,7 GHz, er det én cyklus hver 175 picosekunder. Hvordan ser de 60 nanosekunders latency ud nu? Det er 342 cyklusser med latens.

Den slags latency ville være en dræber for enhver CPU-ydelse. For at komme uden om det, bruges en cache. Cachen placeres på selve CPU-dysen. Det er også meget mindre end RAM og bruger en anden struktur, SRAM frem for DRAM. Dette gør det meget hurtigere at reagere end hovedsystemets RAM. Cachen er typisk lagdelt, hvor L1, L2 og L3 bruges til at betegne de lag, der kommer længere og længere fra CPU-kernerne. Lavere niveauer er hurtigere, men mindre. L1 kan have en latenstid på fire eller fem clock-cyklusser, meget bedre end 342.

Men nogle CPU'er nævner en L0?

Terminologien for L1, L2 og L3 er ret standard. Den vage forståelse af, hvad de betyder og gør, er relativt almindelig, selv på tværs af CPU-leverandører. Dette er fordi de er styret af materiale og elektrisk fysik; ikke meget kan ændre sig. Du kan have en hurtig cache eller en stor cache, ikke begge dele. Den skal være større, hvis du deler en cache mellem flere kerner. Til det formål har L1 og L2 en tendens til at være kernespecifikke. Den større L3-cache har en tendens til at blive delt mellem nogle eller alle kerner på CPU'en eller chiplet.

Som du sikkert kan gætte, er L0 relateret til caching, men er blevet skubbet ind i navneskemaet bagefter. Det hjælper dog ikke at forstå, hvad det betyder. Du kan dog sikkert gætte nogle ting. Det vil være begrænset til én kerne, det vil være lille, og det vil være hurtigt. Det andet navn det går under kan hjælpe lidt; det er micro-op cache.

I stedet for at cache data fra hukommelsen eller fulde instruktioner, cacher L0 mikrooperationer. Som vi for nylig beskrev , er en mikrooperation en funktion af moderne CPU'er. Instruktioner i x86 og andre ISA'er er store, komplekse og udfordrende for at passe effektivt ind i en pipeline. Du kan pipeline dem meget mere effektivt, hvis du opdeler dem i mikrooperationer. I nogle tilfælde kan du endda gruppere flere mikrooperationer, selv fra forskellige instruktioner, i en enkelt mikrooperation for at opnå både en ydeevneforbedring og effektreduktion.

CPU Architecture ft Micro-Op Cache

For at udføre en instruktion afkoder en moderne CPU den. Dette indebærer at opdele instruktionen i dens bestanddele af mikrooperationer og bestemme de hukommelsesplaceringer, der skal refereres til. Mange software bruger lignende funktionalitet regelmæssigt og kan ofte genbruge den samme kode i en løkke eller fra en kaldt funktion. Det betyder, at de nøjagtige instruktioner kan kaldes igen og igen. Det betyder så, at de samme mikrooperationer bliver kaldt igen og igen. Og hvis de samme mikrooperationer er nødvendige gentagne gange, kan de cachelagres. Caching af mikrooperationer kan reducere belastningen på instruktionsdekoderne, reducere strømforbruget eller hjælpe med at fylde rørledningen op hurtigere.

Cachen skal holdes lille, men når den administreres omhyggeligt, kan den tilgås med en enkelt eller endda ingen cyklusforsinkelse. Dette kan være nok til at forhindre behovet for at overtage 4-cyklus latency til L1 cachen og kommer uden cache-miss straf.

Konklusion

L0 cache er et andet navn for micro-op cachen. Det kan være en del af moderne CPU'er, der bruger mikrooperationer. Det rummer typisk et par tusinde poster og har kapaciteter angivet i antal poster i stedet for bytes. L0 kan tilgås hurtigere end L1, typisk med en 1- eller 0-cyklus latency. Caching af mikrooperationer reducerer belastningen på instruktionsdekoderne, især i kode, der gør god brug af loops eller funktioner.


Leave a Comment

Sådan installer du en SSD på stationære og bærbare computere

Sådan installer du en SSD på stationære og bærbare computere

Har du lige købt en SSD i håbet om at opgradere din computers interne lager, men ved ikke, hvordan du installerer SSD? Læs denne artikel nu!

Canon Pixma MG5220: Scan Uden Blæk

Canon Pixma MG5220: Scan Uden Blæk

Sådan aktiveres scanning på Canon Pixma MG5220, når du er løbet tør for blæk.

10 Bedste NAS Lagringsenheder til Hjem og Professionelt Brug

10 Bedste NAS Lagringsenheder til Hjem og Professionelt Brug

Uanset om du leder efter en NAS til dit hjem eller kontor, så tjek denne liste over de bedste NAS lagringsenheder.

Hvad skal man gøre, hvis Powerbeats Pro ikke oplades i etui

Hvad skal man gøre, hvis Powerbeats Pro ikke oplades i etui

Hvis din Powerbeats Pro ikke oplades, skal du bruge en anden strømkilde og rengøre dine earbuds. Lad etuiet være åbent, mens du oplader dine earbuds.

Sådan Fixer du GeForce Now Fejlkode 0xC272008F

Sådan Fixer du GeForce Now Fejlkode 0xC272008F

Du er klar til en aften med gaming, og det bliver en stor aften - du har lige hentet "Star Wars Outlaws" på GeForce Now streamingtjenesten. Opdag den eneste kendte løsning, der viser dig, hvordan du kan fikse GeForce Now Fejlkode 0xC272008F, så du kan begynde at spille Ubisoft-spil igen.

Sådan forbinder du Windows 11 bærbar computer til projector/TV

Sådan forbinder du Windows 11 bærbar computer til projector/TV

Læs denne artikel for at lære om den enkle trin-for-trin proces for at forbinde en bærbar computer til en projector eller TV på Windows 11 og Windows 10 OS.

Sådan Finder Du IP-adressen til en Printer

Sådan Finder Du IP-adressen til en Printer

Har du problemer med at finde ud af, hvilken IP-adresse din printer bruger? Vi viser dig, hvordan du finder den.

3D Printning Grundlæggende: Vedligeholdelsestips til din 3D-printer

3D Printning Grundlæggende: Vedligeholdelsestips til din 3D-printer

At holde dine 3D-printere er meget vigtigt for at få de bedste resultater. Her er nogle vigtige tips at huske på.

3D Printning Grundlæggende: En Nødvendig Vedligeholdelseskontrolliste

3D Printning Grundlæggende: En Nødvendig Vedligeholdelseskontrolliste

At holde dit udstyr i god stand er et must. Her er nogle nyttige tips til at holde din 3D-printer i topstand.

5 Årsager til, at din bærbare computer overophedes

5 Årsager til, at din bærbare computer overophedes

Find ud af nogle af de mulige årsager til, at din bærbare computer overopheder, sammen med tips og tricks til at undgå dette problem og holde din enhed kølig.