Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Windows 7, XP
  • Najbrža keš memorija u procesoru. Matematički i inženjerski proračuni

Najbrža keš memorija u procesoru. Matematički i inženjerski proračuni

Keš memorija (gotovina, gotovina, tampon- eng.) - koristi se u digitalnim uređajima kao brzi međuspremnik. Keš memorija se može naći na računarskim uređajima kao što su procesori, mrežne kartice, CD-ROM drajvovi i mnogi drugi.

Princip rada i arhitektura keša mogu biti vrlo različiti.

Na primjer, keš može poslužiti kao normalan clipboard ... Uređaj obrađuje podatke i prenosi ih u bafer velike brzine, gdje kontroler prenosi podatke na sučelje. Ovakva keš memorija je namenjena za sprečavanje grešaka, proveru integriteta hardverskih podataka ili za kodiranje signala sa uređaja u čist signal za interfejs, bez odlaganja. Takav sistem se koristi, na primjer, u CD / DVD CD-ROM pogoni.

Inače, keš se može koristiti za pohranjivanje često korištenog koda i time ubrzati obradu podataka. Odnosno, uređaj ne mora ponovo da računa ili traži podatke, što bi potrajalo mnogo duže od čitanja iz keša. U ovom slučaju, veličina i brzina keš memorije igraju vrlo važnu ulogu.

Ova arhitektura se najčešće nalazi na tvrdim diskovima i centralnim procesorskim jedinicama ( Cpu).

Kada uređaji rade, specijalni firmver ili menadžerski programi se mogu učitati u keš memoriju, koji bi radili sporije sa ROM(memorija samo za čitanje).

Većina modernih uređaja koristi mješoviti tip keša , koji može poslužiti kao međuspremnik, kao i za čuvanje često korištenog koda.

Postoji nekoliko vrlo važnih funkcija implementiranih za keš procesora i video čipove.

Kombinacija izvršnih blokova ... CPU i video procesori često koriste brzu dijeljenu keš memoriju između jezgara. Shodno tome, ako je jedno jezgro obradilo informaciju i ona se nalazi u kešu, a dobije se naredba za istu operaciju, odnosno za rad sa ovim podacima, tada podaci neće biti ponovo obrađivani od strane procesora, već će biti uzeti iz keša. za dalju obradu. Kernel će biti istovaren radi obrade drugih podataka. Ovo značajno povećava performanse u sličnim, ali složenim proračunima, posebno ako je keš memorija velika i brza.

Zajednička predmemorija, također omogućava jezgri da rade s njim direktno, zaobilazeći sporu.

Predmemorija za upute. Postoji ili opća, vrlo brza keš memorija prve razine za instrukcije i druge operacije ili namjenska za njih. Što je više ugrađenih instrukcija u procesor, to mu je potrebna veća predmemorija instrukcija. Ovo smanjuje kašnjenje memorije i omogućava da blok instrukcija funkcioniše gotovo nezavisno. Kada je pun, blok instrukcija počinje periodično da miruje, što usporava brzinu računanja.

Ostale funkcije i karakteristike.

Važno je napomenuti da u Cpu(centralne procesne jedinice), primijenjeno ispravljanje hardverske greške (ECC), jer mala greška u kešu može dovesti do jedne kontinuirane greške u daljoj obradi ovih podataka.

V Cpu i GPU postoji hijerarhija keša , koji vam omogućava dijeljenje podataka za pojedinačna jezgra i zajedničke. Iako se skoro svi podaci iz keša drugog nivoa još uvijek kopiraju na treći, opći nivo, ali ne uvijek. Prvi nivo keš memorije je najbrži, a svaki sljedeći je sporiji, ali veće veličine.

Za procesore se to smatra normalnim tri i manje nivoa keša. Ovo balansira brzinu, veličinu keš memorije i rasipanje topline. Teško je pronaći više od dva nivoa keš memorije u video procesorima.

Veličina keš memorije, uticaj na performanse i druge karakteristike.

naravno, što je veći keš, što više podataka može pohraniti i obraditi, ali postoji ozbiljan problem.

Veliki novac- ovo je veliki budžet... U serverskim procesorima ( Cpu), keš memorija može koristiti do 80% tranzistorski budžet. Prvo, to utiče na krajnji trošak, a kao drugo, povećava se potrošnja energije i rasipanje topline, što nije uporedivo sa performansama koje su povećane za nekoliko posto.

Svi korisnici su dobro upoznati sa takvim elementima računara kao što je procesor, koji je odgovoran za obradu podataka, kao i memorija sa slučajnim pristupom (RAM ili RAM) koja je odgovorna za njihovo skladištenje. Ali ne svi vjerovatno znaju da postoji i keš memorija procesora (Cache CPU), odnosno RAM samog procesora (tzv. superoperativna memorija).

Koji je razlog zbog kojeg su kompjuterski dizajneri koristili posebnu memoriju za procesor? Zar RAM nije dovoljan za računar?

Zaista, dugo vremena lični računari su radili bez ikakve keš memorije. Ali, kao što znate, procesor je najbrži uređaj u personalnom računaru i njegova brzina raste sa svakom novom generacijom CPU-a. Trenutno se njegova brzina mjeri u milijardama operacija u sekundi. Istovremeno, standardna memorija sa slučajnim pristupom nije značajno povećala svoje performanse tokom svoje evolucije.

Uopšteno govoreći, postoje dvije glavne tehnologije za memorijske čipove – statička memorija i dinamička memorija. Ne ulazeći u detalje njihove strukture, recimo samo da statička memorija, za razliku od dinamičke, ne zahtijeva regeneraciju; osim toga, u statičkoj memoriji se za jedan bit informacije koristi 4-8 tranzistora, dok se u dinamičkoj memoriji koristi 1-2 tranzistora. Shodno tome, dinamička memorija je mnogo jeftinija od statičke memorije, ali je u isto vrijeme mnogo sporija. Trenutno se RAM čipovi izrađuju na bazi dinamičke memorije.

Približna evolucija omjera brzine procesora i RAM-a:

Dakle, ako je procesor sve vrijeme uzimao informacije iz RAM-a, onda bi morao čekati na sporu dinamičku memoriju i bio bi neaktivan cijelo vrijeme. U istom slučaju, kada bi se statička memorija koristila kao RAM, onda bi se cijena računala povećala nekoliko puta.

Zbog toga je napravljen razuman kompromis. Glavni dio RAM-a ostao je dinamičan, dok procesor ima svoju brzu keš memoriju baziranu na statičkim memorijskim čipovima. Njegov volumen je relativno mali - na primjer, L2 keš memorija je samo nekoliko megabajta. Međutim, vrijedi zapamtiti da je cjelokupna RAM memorija prvih IBM PC-a bila manja od 1 MB.

Osim toga, na izvodljivost uvođenja tehnologije keširanja utječe i faktor da različite aplikacije u RAM-u na različite načine učitavaju procesor, te, kao rezultat, postoji mnogo podataka koji zahtijevaju prioritetnu obradu u odnosu na ostale.

Cache historija

Strogo govoreći, prije nego što je keš memorija premještena na personalne računare, uspješno se koristila u superračunarima nekoliko decenija.

Po prvi put, keš memorija od samo 16 KB pojavila se na računaru baziranom na i80386 procesoru. Danas moderni procesori koriste različite nivoe keš memorije, od prvog (najbrži keš sa najmanjom veličinom - obično 128 KB) do trećeg (najsporiji keš sa najvećom veličinom - do desetina MB).

U početku je eksterna keš memorija procesora bila smještena na zasebnom čipu. Međutim, s vremenom je to dovelo do činjenice da je magistrala koja se nalazi između keša i procesora postala usko grlo, usporavajući razmjenu podataka. U modernim mikroprocesorima, i prvi i drugi nivo keš memorije nalaze se u samom jezgru procesora.

Dugo vremena u procesorima su postojala samo dva nivoa keš memorije, ali po prvi put u Intel Itanium CPU-u se pojavila keš memorija trećeg nivoa, koja je zajednička za sve procesorske jezgre. Postoje i keš procesori na četiri nivoa.

Arhitektura i principi keša

Danas postoje dva glavna tipa organizacije keš memorije, koja potiču iz prvih teorijskih razvoja u oblasti kibernetike - Princeton i Harvard arhitekture. Princeton arhitektura znači jedan memorijski prostor za pohranjivanje podataka i instrukcija, dok je arhitektura Harvarda odvojena. Većina procesora x86 personalnih računara koristi poseban tip keš memorije. Osim toga, u modernim procesorima se pojavio i treći tip keš memorije - takozvani asocijativni translacijski bafer, dizajniran da ubrza konverziju adresa virtualne memorije operativnog sistema u adrese fizičke memorije.

Pojednostavljeno, shema interakcije između keš memorije i procesora može se opisati na sljedeći način. Prvo, postoji provjera prisutnosti informacija potrebnih procesoru u najbržem - kešu prve razine, zatim - u kešu druge razine itd. Ako potrebne informacije nisu pronađene ni na jednom nivou keša, onda govore o grešci ili promašaju keša. Ako u keš memoriji uopće nema informacija, onda ih procesor mora uzeti iz RAM-a ili čak iz vanjske memorije (sa tvrdog diska).

Redoslijed procesorske pretrage informacija u memoriji:

Ovo je način na koji procesor traži informacije.

Za upravljanje radom keš memorije i njenom interakcijom sa računarskim jedinicama procesora, kao i RAM-om, postoji poseban kontroler.

Šema organizacije interakcije procesorske jezgre, keš memorije i RAM-a:

Keš kontroler je ključni element komunikacije između procesora, RAM-a i keš memorije

Treba napomenuti da je keširanje podataka složen proces koji koristi mnoge tehnologije i matematičke algoritme. Osnovni koncepti keširanja uključuju metode pisanja keša i arhitekturu asocijativnosti keša.

Metode pisanja u keš memoriju

Postoje dvije glavne metode upisivanja informacija u keš memoriju:

  1. Metoda povratnog upisivanja - podaci se prvo upisuju u keš memoriju, a zatim, kada se ispune određeni uslovi, u RAM.
  2. Write-through metoda - podaci se istovremeno upisuju u RAM i keš memoriju.

Arhitektura asocijativnosti keša

Arhitektura asocijativnosti keša definira način na koji se podaci iz RAM-a prikazuju u kešu. Postoje sljedeće glavne opcije za arhitekturu asocijativnosti keširanja:

  1. Direktno mapirana keš memorija - određeni dio keša je odgovoran za određeni dio RAM-a
  2. Potpuno asocijativna keš memorija - bilo koji dio keš memorije može biti povezan s bilo kojim dijelom RAM-a
  3. Mješoviti keš (tipsko-asocijativno)

Različite arhitekture asocijativnosti keša obično se mogu koristiti na različitim nivoima keša. Direktno RAM mapirano keširanje je najbrža opcija za keširanje, tako da se ova arhitektura obično koristi za velike keš memorije. Zauzvrat, potpuno asocijativna keš memorija ima manje grešaka u keširanju (promašaja).

Zaključak

U ovom članku ste se upoznali sa konceptom keš memorije, arhitekturom keš memorije i metodama keširanja i naučili kako to utiče na performanse modernog računara. Prisutnost keš memorije omogućava značajno optimizaciju rada procesora, smanjenje njegovog zastoja i, posljedično, povećanje brzine cijelog sistema.

Windows je napravljen da se koristi na što više mašina sa različitim konfiguracijama i kao takav obično nije optimizovan za vaš računar i upotrebu. Takođe vas pozivam da pročitate naše druge članke o optimizaciji vaših računara, ako je to već urađeno. "Ne optimizacije" su na nivou procesora. Naši procesori imaju keš memorije koji im omogućavaju da stave neke podatke u memoriju kako bi ubrzali oporavak podataka u budućnosti: http://fr.wikipedia.org/wiki/M%C3%A9moire_cache Prema procesorima, možete imati 2 ili 3 nivoa ( )) keš memorije. Windows podrazumevano koristi 256KB L2 (Level 2) keš memorije, što znači da ako vaš procesor može da koristi više prostora (što se obično dešava i traje duže s obzirom na stalnu evoluciju procesora), Windows će ograničiti kapacitet vašeg procesora! I čak ne kažem da nema L3 keša, jer ga Windows ne koristi, kao da nemate ovaj treći keš je najveći od 3 nivoa procesora!

Njegove informacije o procesoru:

Prva stvar koju treba uraditi je znati mogućnosti CPU-a (procesora), to je:

  • Preuzmite CPU - Z: -http: //www.cpuid.com/softwares/cpu-z.html
  • Instalirajte ga i otvorite
  • Da vidite različite nivoe keša, imate 2 opcije: 1 donju desnu karticu ili 2

Da povećate L2 keš memoriju na Windows-u:

  1. U start meniju pronađite i otvorite "regedit" (bazu podataka registra) (kao i kod svake manipulacije u bazi podataka registra, preporučuje se da napravite rezervnu kopiju njegovog računara u slučaju problema)
  2. Dvaput kliknite na HKEY_LOCAL_MACHINE> system> CurrentControlSet> control> Session Manager> Memory Management
  3. u desnom prozoru trebali biste pronaći ključ pod nazivom "SecondLevelDataCache", kliknite desnim klikom na njega i kliknite "Promijeni"
  4. Kliknite na dugme "Decimala".
  5. I zamijenite sa true za vaš procesor. U mom slučaju, CPU - Z mi govori 2 x 256, pa stavite 512 u moj slučaj.
  6. Kliknite OK

Da omogućite L3 keš memoriju na Windows-u:

  1. Korak 1-2 je isti kao L2 i stoga dolazite do istog prozora u koraku 3.
  2. U slobodnoj zoni u desnom prozoru kliknite desnim tasterom miša i kliknite na "Novo"> "DWORD 32 bita"
  3. Preimenujte novi ključ u "ThirdLevelDataCache" (bez navodnika)
  4. Desni klik na ovaj novi preimenovani ključ i kliknite na "Promijeni"
  5. Kliknite na dugme "Decimala".
  6. Promijenite vrijednost tako da vaš procesor bude označen sa CPU - Z: u mom slučaju imam 3MB, tako da moram napraviti 3 x 1024, što znači da moram staviti 3072 kao vrijednost.
  7. Kliknite na dugme OK.

Ponovo pokrenite računar. 1 nakon ponovnog pokretanja, vaš računar može biti malo sporiji nego inače, što je zbog činjenice da Windows treba da omogući ove nove podatke, ali kasnije bi vaš računar trebao biti brži i moćniji! Lično nisam spor tokom restartovanja, 1., ali sam primetio poboljšanje u brzini programa, posebno na nivou multi-tasking, uprkos činjenici da WHO već ima SSD na mom računaru! Napomena: Ovaj trik nije overclocking, pa stoga ne postoji rizik od pregrijavanja koji se može naći u overclockanju.

Jedan od važnih faktora koji povećavaju performanse procesora je dostupnost keš memorije, odnosno njen volumen, brzina pristupa i distribucija po nivoima.

Već duže vrijeme gotovo svi procesori su opremljeni ovom vrstom memorije, što još jednom dokazuje korisnost njenog prisustva. U ovom članku ćemo govoriti o strukturi, nivoima i praktičnoj nameni keš memorije, kao veoma važnoj karakteristici procesora.

Šta je keš memorija i njena struktura

Keš memorija je ultra-brza memorija koju procesor koristi za privremeno pohranjivanje podataka koji se najčešće koriste. Ovako, ukratko, možete opisati ovu vrstu memorije.

Keš memorija je izgrađena na flip-flopovima, koji se sastoje od tranzistora. Grupa tranzistora zauzima mnogo više prostora od istih kondenzatora koji čine RAM. To sa sobom nosi mnoge poteškoće u proizvodnji, kao i ograničenja u obimu. Zbog toga je keš memorija veoma skupa memorija, a ima zanemarljiv volumen. Ali iz takve strukture proizlazi glavna prednost takve memorije - brzina. Budući da okidače nije potrebno regenerirati, a vrijeme kašnjenja ventila na kojima su montirani je kratko, vrijeme za prebacivanje okidača iz jednog stanja u drugo nastupa vrlo brzo. Ovo omogućava keš memoriji da radi na istim frekvencijama kao i moderni procesori.

Takođe, lokacija keš memorije je važan faktor. Nalazi se na samom kristalu procesora, što značajno smanjuje vrijeme pristupa njemu. Ranije je keš memorija nekih nivoa bila locirana izvan matične ploče procesora, na posebnom SRAM čipu negdje u prostranstvu matične ploče. Sada, u gotovo svim procesorima, keš memorija se nalazi na procesorskoj pločici.

Čemu služi keš memorija procesora?

Kao što je gore spomenuto, glavna svrha keš memorije je pohranjivanje podataka koje procesor često koristi. Keš memorija je bafer u koji se učitavaju podaci i, uprkos svojoj maloj veličini (oko 4-16 MB) u modernim procesorima, pruža značajno povećanje performansi u bilo kojoj aplikaciji.

Da bismo bolje razumjeli potrebu za keš memorijom, zamislimo organiziranje kompjuterske memorije poput ureda. Glavna memorija će biti ormar fascikli, kojima se računovođa povremeno okreće kako bi dohvatio velike blokove podataka (tj. fascikle). I tabela će biti keš memorija.

Postoje takvi elementi koji se stavljaju na sto računovođe, na koje se on poziva nekoliko puta tokom sata. Na primjer, to mogu biti brojevi telefona, neki primjeri dokumenata. Ove vrste informacija su odmah na stolu, što zauzvrat povećava brzinu pristupa njima.

Na isti način, podaci se mogu dodati iz tih velikih blokova podataka (foldera) u tablicu za brzu upotrebu, na primjer, dokument. Kada ovaj dokument postane nepotreban, vraća se u orman (u RAM), čime se tabela čisti (keš memorija) i ova tabela oslobađa za nove dokumente koji će se koristiti u narednom periodu.

Također sa keš memorijom, ako postoje podaci kojima će se najvjerovatnije ponovo pristupiti, onda se ovi podaci iz RAM-a učitavaju u keš memoriju. Vrlo često se to dešava sa zajedničkim učitavanjem podataka koji će se najvjerovatnije koristiti nakon trenutnih podataka. Odnosno, postoji prisustvo pretpostavki o tome šta će se koristiti "posle". To su složeni principi funkcioniranja.

Nivoi keš memorije procesora

Moderni procesori su opremljeni keš memorijom koja se često sastoji od 2 ili 3 nivoa. Naravno, postoje izuzeci, ali to je često slučaj.

Generalno, mogu postojati takvi nivoi: L1 (prvi nivo), L2 (drugi nivo), L3 (treći nivo). Sada malo detaljnije o svakom od njih:

Prvi nivo keš memorije (L1) je najbrži nivo keš memorije, koji radi direktno sa jezgrom procesora, zbog te uske interakcije, ovaj nivo ima najkraće vreme pristupa i radi na frekvencijama bliskim procesoru. To je bafer između procesora i L2 keša.

Gledaćemo količine na procesoru Intel Core i7-3770K visokih performansi. Ovaj procesor je opremljen sa 4 x 32 KB L1 keš memorije 4 x 32 KB = 128 KB. (za svako jezgro, 32 KB)

Keš memorija drugog nivoa (L2) - drugi nivo je veći od prvog, ali kao rezultat toga ima niže "brzinske karakteristike". Shodno tome, služi kao bafer između L1 i L3. Ako se ponovo okrenemo našem primjeru Core i7-3770 K, ovdje je L2 keš memorija 4x256 KB = 1 MB.

Keš memorija trećeg nivoa (L3) - treći nivo, opet, sporiji od prethodna dva. Ali i dalje je mnogo brži od RAM-a. i7-3770K ima L3 keš memoriju od 8 MB. Ako su dva prethodna nivoa podijeljena na svako jezgro, onda je ovaj nivo zajednički za cijeli procesor. Pokazatelj je prilično solidan, ali nije transcendentan. Budući da, na primjer, procesori serije Extreme poput i7-3960X imaju 15MB, a neki novi Xeon procesori imaju više od 20.

we-it.net

Čemu služi keš memorija i koliko je potrebna?

Ne radi se o gotovini, radi se o keš memoriji procesora i još mnogo toga. Trgovci su napravili još jedan komercijalni fetiš od keš memorije, posebno sa keš memorijom centralnih procesora i tvrdih diskova (imaju ga i video kartice - ali još nisu stigli do njega). Dakle, postoji XXX procesor sa 1MB L2 keš memorije i potpuno isti XYZ procesor sa 2MB keš memorije. Pogodi koji je bolji? Ah - nemojte to odmah!

Keš memorija je bafer u koji se dodaje ono što se može i/ili treba sačuvati za kasnije. Procesor radi i nastaju situacije kada je potrebno negdje pohraniti međupodatke. Naravno u cache! - na kraju krajeva, to je redove veličine brže od RAM-a, tk. nalazi se u samom procesoru i obično radi na istoj frekvenciji. A onda će, nakon nekog vremena, vratiti ove podatke i ponovo ih obraditi. Grubo rečeno, kao sorter krompira na pokretnoj traci, koji svaki put kada naiđe na nešto osim krompira (šargarepe), baca ga u kutiju. A kad se nasiti, ustane i odnese ga u susjednu sobu. U ovom trenutku, transporter je zaustavljen i dolazi do zastoja. Volumen kutije je keš memorija u ovoj analogiji. I koliko vam treba - 1MB ili 12? Jasno je da ako je njegov volumen mali, biće potrebno previše vremena da se izvadi i biće jednostavan, ali od nekog volumena njegovo dalje povećanje neće dati ništa. Pa sortir će imati kutiju za 1000 kg šargarepe - da, neće ih imati toliko za cijelu smjenu i od ovoga NEĆE DUPLO BRŽI! Postoji još jedna suptilnost - velika keš memorija može uzrokovati povećanje latencije pristupa njemu, prvo, a istovremeno se povećava vjerovatnoća grešaka u njemu, na primjer, tijekom overkloka - drugo. (Možete pročitati o tome KAKO u ovom slučaju odrediti stabilnost/nestabilnost procesora i otkriti da se greška javlja u njegovoj keš memoriji, testirajte L1 i L2 ovdje.) Treće, keš memorija troši pristojnu površinu matrice i budžet tranzistora procesorskog kola. Isto vrijedi i za keš memoriju tvrdih diskova. A ako je arhitektura procesora jaka, biće potrebno 1024Kb keš memorije i više u mnogim aplikacijama. Ako imate brz HDD - 16MB ili čak 32MB je prikladno. Ali nijedan 64MB keš memorije neće ga učiniti bržim ako je ovo rez nazvan zelena verzija (Green WD) sa 5900 o/min umjesto 7200 o/min, čak i ako će ova druga imati 8MB. Zatim Intel i AMD procesori koriste ovu keš memoriju na različite načine (općenito govoreći, AMD je efikasniji i njihovi procesori su često zadovoljni nižim vrijednostima). Pored toga, Intel ima zajedničku keš memoriju, dok AMD ima ličnu za svako jezgro. Najbrža L1 keš memorija u AMD procesorima je 64 KB za podatke i instrukcije, što je dvostruko više od Intelovog. L3 keš memorija je obično prisutna u vrhunskim procesorima kao što je AMD Phenom II 1055T X6 Socket AM3 2.8GHz ili konkurent u osobi Intel Core i7-980X. Prije svega, igre vole velike količine keša. A keš memoriju NE vole mnoge profesionalne aplikacije (vidi. Računar za renderiranje, video editovanje i profesionalne aplikacije). Tačnije, najzahtjevniji od njega su uglavnom ravnodušni. Ali ono što svakako ne biste trebali učiniti je odabrati procesor na osnovu veličine keša. Stari Pentium 4 u svojim najnovijim manifestacijama takođe je imao 2MB keš memorije na frekvencijama daleko iznad 3GHz - uporedite njegove performanse sa jeftinim dual-core Celeron E1 *** koji radi na frekvencijama od oko 2GHz. Neće ostaviti kamen na kamenu od starca. Aktuelniji primjer je visokofrekventni dual-core E8600 koji košta skoro 200 dolara (vjerovatno zbog 6MB keš memorije) i Athlon II X4-620 2.6GHz, koji ima samo 2MB. Ovo ne sprečava Athlone da urezuje konkurenta u orah.

Kao što možete vidjeti iz grafikona, ni u složenim programima, niti u igrama koje zahtijevaju procesor, nijedan keš ne može zamijeniti dodatna jezgra. Athlon sa 2MB keš memorije (crveni) lako nadmašuje Cor2Duo sa 6MB keš memorije čak i na nižoj frekvenciji i skoro upola nižoj cijeni. Takođe, mnogi ljudi zaboravljaju da je keš memorija prisutna u video karticama, jer, generalno govoreći, i one imaju procesore. Svježi primjer GTX460 video kartice, gdje uspijevaju ne samo smanjiti magistralu i količinu memorije (koju će kupac pogoditi) - već i keš shadera, respektivno, sa 512Kb na 384Kb (što kupac NEĆE pogoditi ). I to će također dodati svoj negativan doprinos produktivnosti. Također će biti zanimljivo saznati ovisnost performansi o veličini keša. Ispitajmo koliko brzo raste sa povećanjem veličine keša na primjeru istog procesora. Kao što znate, procesori serija E6 ***, E4 *** i E2 *** razlikuju se samo po veličini keš memorije (4, 2 i 1 MB, respektivno). Radeći na istoj frekvenciji od 2400 MHz, pokazuju sljedeće rezultate.

Kao što vidite, rezultati se ne razlikuju previše. Reći ću više - da je uključen procesor sa zapreminom od 6MB, rezultat bi se povećao još malo, tk. procesori dostižu zasićenje. Ali kod modela sa 512Kb pad bi bio primetan. Drugim riječima, 2MB je dovoljno čak i za igre. Sumirajući, možemo donijeti sljedeći zaključak - keš je dobar kada VEĆ ima puno svega ostalog. Naivno je i glupo mijenjati brzinu hard diska ili broj procesorskih jezgara po veličini keš memorije po istoj cijeni jer ni najprometnija kutija za sortiranje neće zamijeniti drugi sorter.Ali ima i dobrih primjera..Za Na primjer, Pentium Dual-Core je u ranoj reviziji baziranoj na 65nm procesu imao 1MB keš memorije za dvije jezgre (E2160 serija i slično), a kasna 45nm revizija serije E5200 još uvijek ima 2MB, sve ostale stvari su jednake (i većina najvažnije - CIJENA). Naravno, vrijedi odabrati ovo drugo.

compua.com.ua

Šta je keš, zašto je potreban i kako funkcioniše

Koje je najprljavije mjesto na vašem računaru? Mislite li na korpu? Korisnički folderi? Sistem hlađenja? Ne pogađam! Najprljavije mjesto je cache! Uostalom, stalno se mora čistiti!

U stvari, na računaru postoji mnogo keš memorija i oni ne služe kao deponija otpada, već kao akceleratori za hardver i aplikacije. Odakle im reputacija "sistemskog đubreta"? Hajde da shvatimo šta je keš memorija, šta je to, kako funkcioniše i zašto mu je potrebno čišćenje s vremena na vreme.

Keš memorija ili keš memorija je posebna pohrana često korištenih podataka, pristup kojima se vrši desetine, stotine i hiljade puta brže od RAM-a ili drugih medija za pohranu.

Aplikacije (web pretraživači, audio i video plejeri, uređivači baza podataka, itd.), komponente operativnog sistema (sličica keš, DNS keš) i hardver (CPU keš L1-L3, grafički framebuffer) imaju svoju keš memoriju. čip, bafere diska) . Realizira se na različite načine - softverski i hardverski.

  • Keš memorija programa je samo zasebna mapa ili datoteka u koju se učitavaju, na primjer, slike, meniji, skripte, multimedijalni sadržaj i drugi sadržaji posjećenih stranica. Upravo u ovu fasciklu pretraživač prvi put „zaroni“ kada ponovo otvorite web stranicu. Preuzimanje dijela sadržaja iz lokalne memorije ubrzava njegovo preuzimanje i smanjuje mrežni promet.

  • U pogonima (posebno tvrdim diskovima), keš memorija je zaseban RAM čip kapaciteta 1–256 Mb, koji se nalazi na elektroničkoj ploči. Prima informacije pročitane sa magnetnog sloja koje još nisu učitane u RAM, kao i podatke koje najčešće traži operativni sistem.

  • Moderan centralni procesor sadrži 2-3 glavna nivoa keš memorije (koja se naziva i keš memorija), koja se nalazi u obliku hardverskih modula na istoj matrici. Najbrži i najmanji u smislu zapremine (32-64 Kb) je keš nivo 1 (L1) - radi na istoj frekvenciji kao i procesor. L2 zauzima prosečnu poziciju u pogledu brzine i kapaciteta (od 128 Kb do 12 Mb). A L3 je najsporiji i najobimniji (do 40 Mb), nije dostupan na nekim modelima. Brzina L3 je niska samo u odnosu na njegove brže kolege, ali je stotine puta brža od najproduktivnije RAM-a.

Memorija sa slučajnim pristupom procesora se koristi za skladištenje podataka koji se stalno koriste, pumpanih iz RAM-a, i instrukcija mašinskog koda. Što je više, to je brži procesor.

Danas tri nivoa keširanja više nisu ograničenje. Pojavom Sandy Bridge arhitekture, Intel je implementirao dodatni keš L0 u svoje proizvode (namijenjen za skladištenje dešifrovanih mikroinstrukcija). A procesori sa najvećim performansama imaju i keš memoriju četvrtog nivoa, napravljenu u obliku zasebnog mikrokola.

Interakcija nivoa keša L0-L3 shematski izgleda ovako (koristeći primjer Intel Xeon):

U ljudskom smislu, kako to sve funkcionira

Da bismo razumjeli kako keš memorija funkcionira, zamislimo osobu koja radi za stolom. Fascikle i dokumenti koje on stalno koristi nalaze se na stolu (u keš memoriji). Da im pristupite, samo se obratite.

Papiri koji su mu rjeđe potrebni pohranjeni su u blizini na policama (u RAM-u). Da biste ih dobili, morate ustati i prošetati nekoliko metara. A ono sa čime osoba trenutno ne radi je arhivirano (snimljeno na hard disku).

Što je tabela širi, to će više dokumenata stati na nju, što znači da će zaposlenik moći brzo pristupiti više informacija (što je veći kapacitet keša, to je brži program ili uređaj, u teoriji).

Ponekad pogriješi – na stolu drži papire koji sadrže netačne podatke i koristi ih u svom radu. Kao rezultat, kvaliteta njegovog rada se smanjuje (greške u kešu dovode do kvarova programa i opreme). Da bi ispravio situaciju, zaposlenik mora odbaciti dokumente s greškama i staviti ispravne na njihovo mjesto (obrisati keš memoriju).

Tabela ima ograničeno područje (keš memorija je ograničena). Ponekad se može proširiti, na primjer, pomicanjem druge tablice, a ponekad nije moguće (veličina keša može se povećati ako program pruža takvu mogućnost; hardverski keš se ne može mijenjati, jer je implementiran u hardveru) .

Drugi način da se ubrza pristup većem broju dokumenata nego što stol može da primi je da pronađete pomoćnika koji će hraniti papire zaposlenika sa police (operativni sistem može dodijeliti dio neiskorištenog RAM-a za keširanje podataka uređaja). Ali to je ipak sporije nego da ih skinete sa stola.

Dokumenti koji su na raspolaganju trebaju biti relevantni za tekuće zadatke. Zaposleni to mora sam pratiti. Morate redovno dovoditi stvari u red (cijeđenje nebitnih podataka iz keš memorije pada na pleća aplikacija koje ga koriste; neki programi imaju funkciju automatskog brisanja keš memorije).

Ako zaposleni zaboravi da održava red na radnom mjestu i ažurira dokumentaciju, može sebi nacrtati raspored čišćenja stola i koristiti ga kao podsjetnik. U krajnjem slučaju, uputite pomoćnika da to učini (ako aplikacija koja ovisi o keš memoriji postane sporija ili često učitava nebitne podatke, koristite alate za brisanje keš memorije prema rasporedu ili izvršite ovu manipulaciju ručno svakih nekoliko dana).

Mi zapravo vidimo "funkcije keširanja" posvuda. To je kupovina proizvoda za buduću upotrebu, te razne radnje koje radimo usputno, u isto vrijeme itd. Zapravo, to je sve što nas oslobađa nepotrebne gužve i nepotrebnih pokreta tijela, pojednostavljuje život i olakšava rad. Računar radi isto. Jednom riječju, da nema keša, radio bi stotine i hiljade puta sporije. I teško da bismo to voljeli.

f1comp.ru

Cache, cache, cash - memorija. Čemu služi keš memorija? Utjecaj veličine keša i brzine na performanse.

Cache – memorija (cache, cash, buffer – eng.) – koristi se u digitalnim uređajima kao brzi međuspremnik. Keš memorija se može naći na računarskim uređajima kao što su tvrdi diskovi, procesori, video kartice, mrežne kartice, CD-ROM drajvovi i mnogi drugi.

Princip rada i arhitektura keša mogu biti vrlo različiti.

Na primjer, keš može poslužiti kao normalan međuspremnik. Uređaj obrađuje podatke i prenosi ih u bafer velike brzine, gdje kontroler prenosi podatke na sučelje. Ovakva keš memorija je namenjena za sprečavanje grešaka, proveru integriteta hardverskih podataka ili za kodiranje signala sa uređaja u čist signal za interfejs, bez odlaganja. Takav sistem se koristi, na primjer, u CD / DVD CD pogonima.

Alternativno, keš memorija se može koristiti za pohranjivanje često korištenog koda i na taj način ubrzati obradu podataka. Odnosno, uređaj ne mora ponovo da računa ili traži podatke, što bi potrajalo mnogo duže od čitanja iz keša. U ovom slučaju, veličina i brzina keš memorije igraju vrlo važnu ulogu.


Ova arhitektura se najčešće nalazi na tvrdim diskovima, SSD diskovima i centralnim procesorskim jedinicama (CPU).

Kada uređaji rade, u keš memoriju se mogu učitati posebni firmver ili dispečerski programi koji bi radili sporije iz ROM-a (memorije samo za čitanje).

Većina modernih uređaja koristi mješoviti tip keš memorije, koji može poslužiti kao međuspremnik, kao i za pohranjivanje često korištenog koda.

Postoji nekoliko vrlo važnih funkcija implementiranih za keš procesora i video čipove.

Kombinacija izvršnih blokova. CPU i video procesori često koriste brzu dijeljenu keš memoriju između jezgara. Shodno tome, ako je jedno jezgro obradilo informaciju i ona se nalazi u kešu, a dobije se naredba za istu operaciju, odnosno za rad sa ovim podacima, tada podaci neće biti ponovo obrađivani od strane procesora, već će biti uzeti iz keša. za dalju obradu. Kernel će biti istovaren radi obrade drugih podataka. Ovo značajno povećava performanse u sličnim, ali složenim proračunima, posebno ako je keš memorija velika i brza.

Zajednička keš memorija također omogućava jezgri da rade s njim direktno, zaobilazeći sporu RAM memoriju.

Predmemorija za upute. Postoji ili opća, vrlo brza keš memorija prve razine za instrukcije i druge operacije ili namjenska za njih. Što je više ugrađenih instrukcija u procesor, to mu je potrebna veća predmemorija instrukcija. Ovo smanjuje kašnjenje memorije i omogućava da blok instrukcija funkcioniše gotovo nezavisno. Kada je pun, blok instrukcija počinje periodično da miruje, što usporava brzinu računanja.

Ostale funkcije i karakteristike.

Važno je napomenuti da se kod CPU-a (centralnih procesorskih jedinica) koristi hardverska korekcija grešaka (ECC), jer mala greška u kešu može dovesti do jedne kontinuirane greške u daljoj obradi ovih podataka.

CPU i GPU imaju hijerarhiju keš memorije koja omogućava da se podaci dijele između pojedinačnih jezgara i dijele. Iako se skoro svi podaci iz keša drugog nivoa još uvijek kopiraju na treći, opći nivo, ali ne uvijek. Prvi nivo keš memorije je najbrži, a svaki sljedeći je sporiji, ali veće veličine.

Za procesore, tri ili manje nivoa keša smatraju se normalnim. Ovo balansira brzinu, veličinu keš memorije i rasipanje topline. Teško je pronaći više od dva nivoa keš memorije u video procesorima.

Veličina predmemorije, utjecaj na performanse i druge karakteristike.

Naravno, što je veći keš, to više podataka može pohraniti i obraditi, ali postoji ozbiljan problem.

Veliki keš znači veliki budžet tranzistora. U serverskim procesorima (CPU), keš memorija može koristiti do 80% budžeta tranzistora. Prvo, to utiče na krajnji trošak, a kao drugo, povećava se potrošnja energije i rasipanje topline, što nije uporedivo sa performansama koje su povećane za nekoliko posto.

Jedna od najvažnijih karakteristika procesora je njegova keš memorija. Nije važan samo njegov volumen, već i brzina pristupa, kao i distribucija po nivoima. Apsolutno svi procesori za desktop računare, pa čak i neki mobilni, opremljeni su ovom memorijom. U ovom dijelu ćemo govoriti o praktičnoj svrsi ove karakteristike.

Struktura i čemu služi keš memorija

Keš memorija Je memorija koja ima veliku brzinu čitanja/pisanja i dizajnirana je za privremeno pohranjivanje najčešće korištenih podataka. Prevedeno na jednostavan jezik, služi za ubrzavanje procesora pri obavljanju zadataka istog tipa.

Drugi naziv za keš memoriju je statička memorija, njegova važna karakteristika je konstrukcija svake njene ćelije na tranzistorskom stepenu (tj. jedna ćelija izgleda kao grupa tranzistora), svaki stepen sadrži u prosjeku do 10 tranzistora. Budući da je brzina prebacivanja tranzistora između stanja izuzetno velika, brzina memorije je također vrlo visoka. Ali postoji i negativna točka, ona leži u veličini ove vrste memorije, kao i njenoj visokoj cijeni.

Prvi vlasnici ove vrste keš memorije bili su Intel 80386 procesori (386.) i nalazila se na matičnoj ploči. U budućnosti, na novijim Intel 80486 (486.) procesorima, ova vrsta memorije je dodata u samu procesorsku ploču, dok je zadržana na matičnoj ploči. Za ovu funkciju podijeljeni su na dva nivoa, ono što se nalazi na samom kristalu postalo je poznato kao keš memorija prvog nivoa (L1), a onaj na matičnoj ploči - drugi nivo keš memorije (L2). Ali danas je L2 keš takođe prebačen na procesorsku ploču. Između sebe, ove vrste memorije rade prema dvije moguće sheme: inkluzivnoj (dupliciranje onoga što je u memoriji na oba nivoa) i ekskluzivnoj (podaci na svakom nivou su isključivi).

Kao što je ranije spomenuto, keš memorija služi kao bafer u koji se učitavaju često izvršavane instrukcije i korišteni podaci iz RAM-a (Random Access Memory). Iako je njegova veličina izuzetno mala po današnjim standardima (do 32 MB), pruža značajne performanse. Veza između keš memorije i RAM-a odvija se prema jednoj od mogućih shema: direktno preslikavanje, montažno-asocijativno, asocijativno. Nema smisla objašnjavati ove šeme, sumnjam da će vam pri kupovini neko moći odgovoriti koja se shema koristi u određenom procesoru.

Nivoi keš memorije procesora

Većina modernih procesora opremljena je sa dva ili tri nivoa keš memorije (sada se treći može nalaziti na matičnoj ploči):

Keš 1. nivoa (L1)- najbrži od svih nivoa, nalazi se u neposrednoj blizini jezgre procesora, zbog čega ima najkraće vreme odziva i radi brzinom bliskom procesorskoj. Druga funkcija ove vrste memorije je da obezbijedi razmjenu između procesora i drugog nivoa keš memorije.

L2 keš memorija- ima veću količinu memorije od prvog, ali to podrazumijeva takvu negativnu točku kao što je smanjenje brzine. Može biti ili zajedničko za cijeli procesor ili pojedinačno za svaku jezgru. Jedna od namjena je bafer između prvog i trećeg nivoa.

L3 keš memorija- najsporija keš memorija (ali i dalje značajno brža od RAM-a), ali ima i najveću količinu memorije. Ako je prvi nivo individualan za svako jezgro, onda je ovaj zajednički za ceo procesor.

Sažimanje

Keš memorija procesora je njegova lična superbrza RAM memorija. Služi za pohranjivanje podataka koje procesor najčešće koristi prilikom obavljanja određenog zadatka ili mene. Mogu postojati tri nivoa keš memorije procesora - najbrži je prvi nivo, a najveći, ali i najsporiji, treći.

Top srodni članci