Šta je novo?

Šta mi konkretno znači keš procesora?

Samo dva inace ista procesora vredi porediti po kesu.
Tipa i7-2670QM i i7-2720QM - razlika je samo u kesu (isti takt, isti proizvodni proces, ista tehnologija, broj jezgara itd.)
Od slucaja do slucaja zavisi da li ima koristi. Za laptop mozda i ne znaci jer se dodatno greje, zbog veceg kesa, a nema vecih performansi.
 
Ok, znači poređenje keša samo istih procesora, ne kao što sam ja uzeo potpuno različite tehnologije i proizvođače. Ako je isti tip procesora, šta mi govori razlika između L1, L2, i L3, konkretno? Koliko je to bitno prilikom izbora, jer se navodi na osnovnoj strani kratkih specifikacija?

Molim navesti par slučaja kao primere da bih stekao sliku. Hvala! ;)
 
U principu kesa je uvek bolje imati vise, uglavnom su skuplji procesori sa vise kes memorije, moj glas ide za vise kesa za malo vise para u desktop a i u laptop varijanti.
On inace omogucava brzi pristup poslednje biranih fajlova procesoru. Neki cpu ima 512kb, neki 1MB, neki 6 a neki 12MB,,,,,,
 
Čemu služi L1, L2 i L3 keš i koji je "najbitniji" za šta?

Evo na poređenju ova dva procesora koja su slične cene, niže u tabeli vidi se da su im sva tri keša sasvim drugačije raspoređena. Ili, pak, keš i ne može da se posmatra zasebno?

http://www.cpu-world.com/Compare/684/AMD_Phenom_II_X6_1055T_(95W)_vs_Intel_Core_i3_i3-2100.html

Hvala! ;)



Da probam da ti pojasnim sta je L1, L2 i L3 kes memorija, ali nemoj ove informacije uzeti kao 100% pouzdane, jer nisu citane sa Wiki ili Google, vec pisem iz glave. :)

Koliko se secam, CPU cache se primarno delio na L1 i L2. L1 je najbrza CPU cache memorija, ali je i najmanja. L2 je nesto veca. Uglavnom, svrha joj je da "ublazi" proces komunikacije izmedju memorije i procesora.

Koliko je ona bitna, to je sada relativno. Nije merodavno porediti 4MB L2 kesa na Intel Pentium Dxx Presleru i 1MB L2 kesa na Intel Pentium E2180. Poenta, arhitektura je definitivno na prvom mestu, a ne kes memorija.

L3 kes bi trebao da bude najsporiji, voli ga Photoshop, WinRar, neke igrice poput GTA, WoW i razni sinteticki testovi.

Konkretno u primeru Phenom II x6 vs i3-2100, to je tek zamrseno. Phenom II x6 ima vecu L3 kes memoriju, koja svoje benefite jos uvek ne moze da pokaze na "pravi" nacin, po mom misljenju.

Rekao bih da je na difoltu mali i3-2100 ipak efikasniji procesor, iako je svakako x6 bolja solucija za Photoshop, rendering i gejming, jer ima mogucnost overklokinga, a ima i vise jezgara.
 
Poslednja izmena:
Ne znam sta bih konkretno mogao da dam kao primer da kesh pravi bitnu razliku :)
Moj glas bash ide na manje kesa a isti procesor, barem za ova dva konkretna modela. U doba P4 bi bila druga prica eventualno.
 
Pa rekao sam.

Recimo WinRar, GTA IV, razni sinteticki testovi, na primer:

3D Mark 2006, 3D Mark Vantage... WoW, takodje.

Pa i u doba Netbursta, L2 kes nije igrao neku ulogu. Uvek sam bio za northwood jezgro koje je imalo manje kesa, u odnosu na vruceg Preskota.
 
Intelovoj trenutnoj arhitekturi dosta prija veca kolicina L3 kes memorije. Recimo razlika izmedju 2500 i 2600 je svega 100MHz, ali i dodatnih 2MB L3 pa 2600 u pojedinim situacijama ima i preko 20% bolje performanse. Slicna situacija je bila i kod C2D, ali sa L2, setite se samo koliko je derivata bilo sa razlicitom kolicinom L2 kesa. Kod AMD-a prisustvo L3 kesa najvise benefita pokazuje u pojedinim igrama, dok veca kolicina L2 donosi ne vise od 10% poboljsanja, sto se moze i videti na primeru jacih Llano modela koji iako imaju 1MB L2 po jezgru i poboljsan IMC jedva da su brzi od Athlona II.
 
To ti je kao slavina u kojoj tece voda pod pritiskom. Veci pritisak (vise Mhz) i sirina slavine (kes memorija). Najbolje rezultate (najvise istice vode) daje najveci pritisak sa najvecim precnikom slavine.
:D
 
aco mogu samo reci :happy:
(steta sto ovaj forum nema emot. tapsanja)
 
Hvala svima na odgovorima, razumeo sam, baš mi je trebalo "narodsko", plastično objašnjenje! :smoke:
 
Intelovoj trenutnoj arhitekturi dosta prija veca kolicina L3 kes memorije. Recimo razlika izmedju 2500 i 2600 je svega 100MHz, ali i dodatnih 2MB L3 pa 2600 u pojedinim situacijama ima i preko 20% bolje performanse. Slicna situacija je bila i kod C2D, ali sa L2, setite se samo koliko je derivata bilo sa razlicitom kolicinom L2 kesa. Kod AMD-a prisustvo L3 kesa najvise benefita pokazuje u pojedinim igrama, dok veca kolicina L2 donosi ne vise od 10% poboljsanja, sto se moze i videti na primeru jacih Llano modela koji iako imaju 1MB L2 po jezgru i poboljsan IMC jedva da su brzi od Athlona II.
Razlika između i5 i i7 je pre svega u HT-u.
 
Memorija je spora za danasnje procesore. Kada se statisticki analizira najcesce korisceni code vidi se da postoji odredjena verovatnoca da program obradjuje podatke iz susednih mem. lokacija. Kes memorija se koristi da mem. kontroler uz svaki zahtev procesora za nekim podatkom, prebaci i susedne podatke jer predpostavlja da ce zatrebati vrlo brzo. Postoje i instrukcije procesora kojima se moze zahtevati kesiranje nekog dela memorije. Na sve ovo dodajte i pametne kompajlere koji mogu da preurede redosled izvrsavanja tako da code bude kes-friendly.
L1,2 i 3 su samo nivoi kes memorije koji se razlikuju po brzini i velicini.
 
@ peja

KOd Nehalema da, ali kod SB ima razliek i u 2 mb kes memorije...
 
Znam ja to, nego kažem da je za najveći deo brzinske razlike između i5 i i7 zadužen HT, a ne 2MB L3 keša više.
 
OK, tu je i HT, ali uzmi recimo primer winrar-a za koji se zna da ne mari za HT pa opet dosta bolje radi na i7
 
winrar_4.01.jpg


Ako je verovati ovom testu razliku mahom pravi 100MHz.
 
Kes memorija ti je po hijerarhiji memorija druga po redu. Prvi su registri u samom procesoru, pa ide kes, redom, L1, L2, pa L3...pa zatim ram...

kesh potice od francuske reci, i znaci 'skriven'...znaci kes memorija je skrivena memorija. ona nije vidljiva programeru prilikom pisanja koda, znaci iskljucivo procesor upravlja njome (za razliku od rama gde programer moze da zauzima i oslobadja memorijski prostor)

L1 se koristi za instrukcije i podatke,a L2 i L3 se koriste uz pomoc verovatnoce. Znaci u njima stoje podaci/datoteke za koje je najveca verovatnoca da u skorijem ciklusu budu upotrebljeni. Svaki put kada je procesoru potreban podatak, on prvo sidje u kes, pa zatim tek ako je promasaj, onda silazi u ram...

svakako da je bolje imati vise kesa, ali to nije striktno merilo za bolje performanse procesora. jako su bitni i algoritmi kojima procesor upravlja kes memorijom

a i treba imati na umu da sav taj kes koristi odredjeni broj tranzistora na cipu, tako da nije moguce uvecavati ga u nedogled...
 
Da,dobro si to objasnio, horvat. Svaka čast i tebi i peji, dobro ste razumeli ovo obojica.

Inače,SVI današnji procesori imaju 128 KB L1 keša, mene sad tipično L1 keš interesuje. Zbog čega ga ima najmanje, da li to znači da je on najsuperiorniji tj. najbrži i samim tim skupljui drastično, u odnosu na L2 keš koga ima daleko više.


Šta bi se desilo kada bi, lupam sada, AMD stavio u neki budući procesor 384 ili čak 512 KB L1 keša po jezgru, da li bi dobici u performansama bili drastični ?
 
ne bi. a evo i zasto...

kao sto znamo danasnji procesori su svi 64-bitni...to znaci da im je jedna instrukcija duzine 64 bita...

L1 kes je 128 kb, tacnije 64 kb za instrukciju i 64 za data...

u 64 kb stane 1024 instrukcije... ja kolko znam x86 arhitektura spada u CISC arhitekturu (Complex Instruction Set Computing), a kolko znam oni znaju imati i do par hiljada naredbi...sto prakticno znaci da recimo cetvrtina (ovo sam lupio jer ne znam tacan broj naredbi procesora), stoji u L1 kesu i jednostavno u cemu bi bio smisao kesa ako bi ti sve stajalo u njemu(kada bi bio veci)?

i da, L1 kes jeste najsuperiorniji po smislu hijerarhije, jer stoji najblize, i najbrzi je, a to je zato sto on zapravo "puni" registar naredbi(instrukcija), koji svoj sadrzaj menja jako brzo i zato mu je potrebna ta blizina/brzina, a opet nema mu puno koristi da bude veci...

e sad, zeleo bih da naglasim ovo sto sam objasnio je sve po nekom skolskom primeru procesora, vrlo moguce da novije arhitekture imaju sve ovo potpuno drugacije odradjeno, ali jednostavno toga jos nema u literaturi, i onda to ne mogu da proucim...

i dodao bih jos jedno...

u racunarstvu je milion puta pokazano da preterivanje u bilo cemu (pa ni u velicini kes memorije) nije dovelo do rezultata. sve sto imamo danas i sto koristimo je sve kompromis i neka 'zlatna' sredina nekih mogucnosti...

mogao bih tu da nabrajam i da pricam o ovome do sutra, ali nije tema...
 
Poslednja izmena:
Pa dobro, onda ni ti ne znaš da li bi povećanje L1 keša npr u Intel Ivy Bridge procesoru ili AMD FX procesoru doneo drastične pomake. Ja sam mišljenja da bi doneo, ali ne mogu nigde da nađem na netu konkretne analize šta bi se desilo kada bi to bilo primenjeno na današnje najsavremenije Intel i AMD procesore.


Zar je toliko teško, pomoću nekog programa za simuliranje , napraviti virtuelni procesor i samo na ono što ima npr. Intel i7 3770K staviti mu da ima 256 KB L1 keša za instrukcije i 256 KB keša za data. Ima li neko ideju kako bi takva simulacija mogla da se napravi i koliko duboko treba znati arhitekturu da bi se uspešno uopšte ovo i izvelo ?
 
da naravno ne mogu da znam kako bi se tacno odrazilo u novijim arhitekturama...sto se simulatora tice, kontam da tako nesto sigurno postoji...poznavanje arhitektura pod konac je sigurno preduslov za tako nesto u to budi siguran :)
 
Nažalost nema konkretnog odgovora za mene...ako ovde na forumu ima neki stručnjak koji se bavi ovime i zna neke informacije oko ovog simulatora nek se javi, veoma me interesuje.
 
Izvinjavam se što pokrećem 'zastarelu' temu , ali google me često baca ovde :type:
Naime imam nekih nejasnoća oko toga kako stvari funkcionišu između Procesora i Memorije...
Pokušaću da postavim neka pitanja kroz neko moje trenutno sagledavanje ove temu, pa kao neko može da pomogme, ispravi ili dopuni.

NPR:
-Startujemo neki program primer.exe...
-Sadržaj (Mašinski kod) se smešta u Radnu Memoriju...
Sad pretpostavljam da se na samo početku Cashe memorija ne popunjava, već se ona kasnije popunjava (L1 najčešće korišćenim podacima), (L2 i L3 na osnovu 'verovatnoće') ili žestoko grešim?
Takođe mi nije najjasnije, da li to početno popunjavanje memorije obavalja Procesor Write-operacijama ili je u pitanju nešto drugo?

-Sada nakon što su se podaci učitali počinje Procesuiranje : (PC-Registar)-> (Adresni Registar) ->Memorija -> (Registar Podataka) ->(Registar Instrukcije)->(ALU)-> (Akomulator) its.
Sada mi opet nije jasno da li se na tom samom početku (CU Procesora) prvo obraća redom: L1->L2->L3 ->Radna Memorija
ili se (CU Procesora) ako je Cashe prazan, prvo obraća Radnoj Memoriji?

Nadam se da je neko razumeo šta sam pokušao da pitam , teško je ovu probelmatiku smestiti u par rečenica.
 
Poslednja izmena:
Nazad
Vrh Dno