Vrijednost cache (priručne) memorije procesora podatak je u specifikacijama koji se redovito zanemaruje. Ako dosad na njega niste obraćali pozornost, svakako bi trebali jer se radi o iznimno važnoj komponenti o kojoj ovisi ukupna izvedba.
U nastavku teksta objasnit ćemo što je cache memorija te dati određene smjernice prema kojima se možete ravnati prilikom kupnje novog procesora ili kad želite detaljnije sebi pojasniti njegove specifikacije.
Što je cache memorija kod procesora?
Cache je mala i brza memorija koja je ugrađena u procesor ili se nalazi na pojedinom njegovom dijelu. Cache memorija procesora pohranjuje često korištene podatke i naredbe glavne memorije. Na taj se način smanjuje broj ponavljanja pristupa procesora glavnoj memoriji kako bi se došlo do navedenih informacija.
S cache memorijom se značajno unaprjeđuje ukupna izvedba sustava jer je pristup njenim podacima mnogo brži u odnosu na pristup putem glavne memorije.
Što znače razine cache memorije (L1, L2, L3)?
Razine cache memorije odnose se na njenu hijerarhiju koja je ugrađena u procesor. Većina modernih procesora ima mnogostruke razine cachea, a svaka od njih ima veći kapacitet i sporije pristupno vrijeme od one koja se na ljestvici nalazi ispod. Razine su numerirane pa će se oznaka L1 (Level 1) odnositi na najmanju i najbržu razinu, a L3 (Level 3) bit će najveća i najsporija razina unutar cachea.
Hijerarhija među razinama postoji kako bi procesor mogao balansirati između brzine i kapaciteta. L1 cache je najbrža razina i koristi se za spremanje najčešće korištenih podataka i naredbi, a L3 cache je najveća razina i sadrži podatke i naredbe koji se rjeđe koriste.
Koja vrsta softvera ima koristi od većeg cachea?
Softver koji u svojoj izvedbi ima ponavljajuće zadatke ili zahtijeva brži pristup velikim količinama podataka svakako će profitirati od većeg cachea. Tako će se unaprijediti izvedba softvera i smanjiti vrijeme koje je potrebno da on izvrši zadatke.
Neki primjeri softvera koji se na temelju većeg cachea može unaprijediti su sljedeći:
- Sustavi za upravljanje bazama podataka često izvode mnoge ponavljajuće zadatke i upite te zahtijevaju brz pristup velikim količinama podataka koje su spremljene.
- Softveri za uređivanje videa često trebaju brzi pristup velikim količinama video i audio podataka kako bi mogli izvoditi uređivanje i reproduciranje u stvarnom vremenu.
- Softver za procesuiranje fotografija i videa izvodi mnoge matematičke operacije na velikim količinama podataka kako bi mogao manipulirati fotografijama i videima te ih uređivati.
- Softveri za izvođenje financijskih analiza traže brzi pristup te analiziraju velike količine financijskih podataka kako bi mogli izvoditi kompleksne izračune i generirati izvještaje.
Navedeni su samo neki primjeri softvera čiji se rad može značajno poboljšati s velikim cacheom, no ovaj popis se može još proširiti.
Jedan od dodatnih primjera su videoigre koje također mogu značajno profitirati od velikog cachea. S njime će se zahtjevnije videoigre koje traže snažne specifikacije računala mnogo lakše pokretati.
Kako cache radi kod procesora s više jezgri?
Kod višejezgrenih procesora svaka će jezgra imati svoju cache memoriju. Ovo svakoj jezgri omogućuje spremanje često korištenih podataka i neovisni pristup naredbama bez potrebe za oslanjanjem na glavnu memoriju ili cache memoriju neke druge jezgre procesora.
S time se dobiva značajno unaprjeđenje izvedbe procesora jer smanjuje vrijeme koje svaka jezgra troši za čekanje podataka i naredbi iz glavne memorije ili drugih jezgri. Procesor zbog toga može izvoditi zadatke simultano te poboljšati ukupnu brzinu i responzivnost.
Također je važno znati da se cache memorija u višejezgrenim procesorima između jezgri tipično ne može dijeliti. To znači da svaka jezgra samo ima pristup svojoj cache memoriji, a ne cache memorijama ostalih jezgri.
Ovaj oblik ograničenja može utjecati na izvedbu procesora ako se jedna ili više jezgri previše oslanjaju na podatke ili naredbe koje su samo dostupne u cacheu druge jezgre. U tom će slučaju rad procesora biti ograničen na veličinu cachea pojedinačnih jezgri, a ne na ukupnu veličinu cachea svih jezgri.
Neki višejezgreni procesori ipak imaju cache memoriju koja se može dijeliti te koja ima pristup preko svih jezgri. Treba napomenuti da je ovaj oblik cache memorije mnogo sporiji od L1 cachea unutar pojedine jezgre. Korištenje dijeljenog cachea također uzrokuje dodatnu kompleksnost u samom dizajnu procesora.
Isplati li se imati više cache memorije?
Kada ste u fazi kupnje novog procesora, razlika u cijeni između dva modela od kojih jedan ima više cache memorije može biti iznenađujuća. Količina te memorije je malena, no izrazito diktira cijenu. Legitimno se zbog toga možemo upitati isplati li se utrošiti više novca kako bi kupili procesor s više cache memorije?
Kao i uvijek, ono što je najvažnije je kakvu će izvedbu imati procesor unutar sustava koji koristite, aplikacija i programa kojima se redovito služite te videoigara koje igrate. Ako paketi softvera ili videoigre mogu dobiti značajno unaprjeđenje s korištenjem cache memorije, svakako ima smisla potrošiti nešto više novca na procesor.
Drugim riječima, ne slijedite samo specifikacije procesora na papiru. Umjesto toga pogledajte benchmark testiranja određenog modela procesora i uvjerite se da njegove veće vrijednosti cache memorije zaista čine razliku.
Proizvođači procesora inače jako dobro rade prilagodbe cachea za određenu namjenu. Sukladno tome, ako se procesor reklamira kao izvrstan model za gejming ili uređivanje videa, obično se radi o tome da je cache memorija već unaprijed za to optimizirana.
Vama je kao korisniku najvažnije znati funkciju cache memorije na procesoru i dobro se informirati putem pregleda raznih benchmark testiranja koliko ona može unaprijediti ciljane aktivnosti zbog kojih kupujete novi procesor.
Piše: Ervin Mičetić