Kot lahko vidite, cache predpomnilnika L1 L2 predpomnilnika, ki shranjuje v glavni pomnilnik, ki se lahko uporablja za cache disk podsistemov, in tako naprej
Cache tehnologija
Eno skupno vprašanje je bilo na tej točki je, ". Zakaj ne bi vsi za spominsko vožnjo z enako hitrostjo kot predpomnilnika L1, zato bi bilo potrebno nobeno predpomnjenje? " Da bi delo, vendar pa bi bilo zelo drago. Ideja predpomnjenja je, da uporabite majhno količino dragih pomnilnika za pospešitev veliko počasnejši, manj drag spomin.
Pri oblikovanju računalnik, cilj je, da bi mikroprocesor teči na njegovo polno Hitrost kot poceni, kot je mogoče. 500-MHz čip gre skozi 500 milijonov ciklov v eni sekundi (en cikel vsake dve nanosekund). Brez L1 in L2 predpomnilnik, preko dostopa do glavnega pomnilnika je 60 nanosekund, ali približno 30 zapravili ciklov pri dostopu do pomnilnika.
Ko pomislim, da je nekako neverjetno, da lahko takšne relativno majhne količine pomnilnika maksimiranje uporaba veliko večje količine pomnilnika. Pomisli 256 kilobyte L2 predpomnilnika, a da Caches 64 MB RAM-a. V tem primeru je 256.000 bajtov učinkovito shranjuje 64,000,000 bajtov. Zakaj to delo?
V računalništvu, imamo teoretični koncept, imenovan lokalnost reference. To pomeni, da v dokaj velikem programu so le majhne porcije kdaj uporabiti naenkrat. Kot je čudno, kot se zdi, lokalnost reference dela za veliko večino programov. Tudi, če je izvedljivo, je 10 megabajtov na velikost, le peščica bajtov iz tega programa so v uporabi v vsakem trenutku, in njihova stopnja ponavljanja je zelo visoka. Na naslednji strani, boste izvedeli več o kraju referenco.
Nahajališče Reference
Oglejmo oglejte naslednji psevdo-kodo, da vidim, zakaj nahajališče referenčnih delih (glejte Kako Programiranje Works C da bo res dobil vanjo):
Izhod na zaslon «vnesite številko med 1 in 100» Preberi prispevek userPut vrednosti od uporabnika v spremenljivem XPut vrednosti 100 v spremenljivem YPut vrednosti 1 v spremenljivem ZLoop Y števila časovnih Divide Z z X Če je preostanek divizije = 0, potem output «Z je večkratnik X» Dodaj 1 do ZReturn za LoopEndTa majhen program od uporabnika zahteva, da vnesete številko med 1 in 100. To prebere vrednost vnešen