Hvornår skylles en CPU's cache tilbage til hovedhukommelsen?

Feb 23, 2025
Hardware

Hvis du lige er begyndt at lære, hvordan multi-core CPU'er, cache, cache-sammenhæng og hukommelse fungerer, kan det virke lidt forvirrende i starten. Med dette i tankerne har dagens SuperUser Q&A-indlæg svar på en nysgerrig læsers spørgsmål.

Dagens spørgsmål og svar-session kommer til os med tilladelse fra SuperUser - en underinddeling af Stack Exchange, en community-driven gruppe af Q&A websteder.

Spørgsmålet

SuperUser-læser CarmeloS vil vide, hvornår en CPU's cache skylles tilbage til hovedhukommelsen:

Hvis jeg har en CPU med to kerner, og hver kerne har sin egen L1-cache, er det så muligt, at Core1 og Core2 begge cache den samme del af hukommelsen på samme tid? Hvis det er muligt, hvad vil værdien af ​​hovedhukommelsen være, hvis både Core1 og Core2 har redigeret deres værdier i cache?

Hvornår skylles en CPU's cache tilbage til hovedhukommelsen?

Svaret

SuperUser-bidragsydere David Schwartz, sleske og Kimberly W har svaret til os. Først op, David Schwartz:

Hvis jeg har en CPU med to kerner, og hver kerne har sin egen L1-cache, er det så muligt, at Core1 og Core2 begge cache den samme del af hukommelsen på samme tid?

Ja, ydeevne ville være forfærdeligt, hvis dette ikke var tilfældet. Overvej to tråde, der kører den samme kode. Du vil have den kode i begge L1-cacher.

Hvis det er muligt, hvad vil værdien af ​​hovedhukommelsen være, hvis både Core1 og Core2 har redigeret deres værdier i cache?

Den gamle værdi vil være i hovedhukommelsen, hvilket ikke betyder noget, da ingen af ​​kernerne læser den. Før en ændret værdi skubbes ud fra cachen, skal den skrives til hukommelsen. Typisk er en variant af MESI-protokol anvendes. I den traditionelle implementering af MESI, hvis en værdi ændres i en cache, kan den slet ikke være til stede i nogen anden cache på det samme niveau.

Efterfulgt af svaret fra sleske:

Ja, hvis der er to cache-cache, kan den samme hukommelsesregion ske og er faktisk et problem, der forekommer meget i praksis. Der er forskellige løsninger, for eksempel:

  • De to cacher kan kommunikere for at sikre, at de ikke er uenige
  • Du kan have en slags supervisor, der overvåger alle cacher og opdaterer dem i overensstemmelse hermed
  • Hver processor overvåger de hukommelsesområder, som den har cachelagret, og når den registrerer en skrivning, kaster den sin (nu ugyldige) cache ud

Problemet kaldes cache-sammenhæng og Wikipedia-artikel om emnet har en god oversigt over problemet og mulige løsninger.

Og vores endelige svar fra Kimberly W:

For at besvare spørgsmålet i dit indlægs titel afhænger det af, hvad cacheprotokollen er. Hvis det er tilbagekobling, skylles cachen kun tilbage til hovedhukommelsen, når cache-controlleren ikke har andet valg end at placere en ny cache-blok i allerede optaget rum. Blokken, der tidligere besatte rummet, fjernes, og dens værdi skrives tilbage til hovedhukommelsen.

Den anden protokol er gennemskrivning. I så fald når som helst cache-blokken skrives på niveau n , den tilsvarende blok på niveau n + 1 er opdateret. Det ligner i konceptet at udfylde en formular med carbonpapir nedenunder; hvad du end skriver, kopieres på nedenstående ark. Dette er langsommere, fordi det naturligvis involverer flere skrivefunktioner, men værdierne mellem cacher er mere ensartede. I tilbagekoblingsskemaet vil kun cache på højeste niveau have den mest opdaterede værdi for en bestemt hukommelsesblok.


Har du noget at tilføje til forklaringen? Lyd fra i kommentarerne. Vil du læse flere svar fra andre teknisk kyndige Stack Exchange-brugere? Tjek den fulde diskussionstråd her .

Billedkredit: Lemsipmatt (Flickr)

.indgangsindhold .indgangsfod

When Is A CPU’s Cache Flushed Back To Main Memory?

What Is The Difference Between Memory And SSD Cache In A PC Or NAS?

5 Cache و Virtual Memory

How To Clear Cache On Mac OS - Clear Memory Cache On Mac In 1-Click

Buffer Cache

Caching In: Understand, Measure, And Use Your CPU Cache More Effectively

How To Clear RAM Cache Memory | Fix RAM Cached Memory Too High Windows 10

NetApp WAFL, NVRAM And The System Memory Cache (new Version)


Hardware - Mest populære artikler

Sådan vises batteriprocenten på din Nintendo-switch

Hardware Jun 27, 2025

UCACHED INDHOLD Som standard viser Nintendo Switch-startskærmen dig et grundlæggende batteriikon. Gemt væk i systemindstillingerne er en mulighed for at vise en mere præcis pr..


Sådan tændes dit rede, når du forlader arbejdet med Automatic Pro

Hardware May 5, 2025

UCACHED INDHOLD Reden kan slukke for sig selv, mens du er på arbejde, så det kun varmer eller køler dit hus, når du er hjemme. Hvis det ikke gætter, når du kommer hjem korre..


Har du virkelig brug for en musemåtte?

Hardware Apr 27, 2025

Computermus har eksisteret i en eller anden form i den bedre del af 50 år (eller længere, baseret på din definition af opfindelsen), og i det meste af tiden er de blevet parret m..


Er det bedre at downloade Xbox og PlayStation-spil eller købe dem på en disk?

Hardware Jun 20, 2025

UCACHED INDHOLD Når du køber et konsolspil, har du to muligheder: Du kan købe det som en download via PlayStation Store eller Xbox Games Store afhængigt af din platform eller ..


Skal du købe Googles Nest Learning Thermostat?

Hardware Jul 11, 2025

Termostater er blot en af ​​de mange husholdningsartikler, der får en smart opgradering i det nylige skub mod hjemmeautomatisering og sammenkobling. Er det dog værd at få en ..


Hvorfor dine børn skal bruge volumenbegrænsende hovedtelefoner

Hardware Sep 21, 2025

UCACHED INDHOLD Bærbare enheder som iPads, MP3-afspillere og lignende er alle i stand til at udsende lyd på et niveau, der er højt nok til at beskadige din hørelse. Mens voksn..


Sådan bruges hovedtelefoner med dit tv

Hardware Jul 10, 2025

Så du har et dejligt stort widescreen-tv og en fantastisk hjemmebiografopsætning. Dine højttalere har fremragende lyd - der er kun et problem. Du vil bruge det, mens folk sover e..


Et hurtigt kig på gOS - men kalder det ikke Google

Hardware Jul 7, 2025

UCACHED INDHOLD Jeg troede, jeg ville tage en pause fra Microsoft og dække det meget omtalte gOS. Dette er operativsystemet inkluderet på Wal-Mart's $ 199 pc'er. Selvom der er mange Googl..


Kategorier