Ce este memoria cache de nivel 3. Memoria cache și scopul acesteia în procesor. Tipuri de bază și niveluri de memorie cache L1 L2 L3

29.04.2020 Siguranță

Articolul de astăzi nu este un material independent - pur și simplu continuă studiul performanței a trei generații ale arhitecturii Core în condiții egale (început la sfârșitul anului trecut și continuat recent). Adevărat, astăzi vom face un mic pas în lateral - frecvențele nucleelor ​​și ale memoriei cache vor rămâne aceleași ca înainte, dar capacitatea acesteia din urmă va scădea. De ce este necesar acest lucru? Am folosit Core i7 „complet” din ultimele două generații pentru puritatea experimentului, testându-l cu suport pentru tehnologia Hyper-Threading activată și dezactivată, deoarece de un an și jumătate Core i5 este echipat cu nu 8, dar 6 MiB de L3. Este clar că impactul capacității memoriei cache asupra performanței nu este atât de mare pe cât se crede uneori, dar există și nu există nicio scăpare. În plus, Core i5 sunt mai multe produse produse în masă decât Core i7, iar în prima generație nimeni nu le-a „ jignit” în acest sens. Dar înainte erau limitate puțin diferit: viteza de ceas UnCore în prima generație i5 era de numai 2,13 GHz, așa că „Nehalem” nostru nu este tocmai un reprezentant al liniei 700 la 2,4 GHz, ci puțin mai mult. procesor rapid. Cu toate acestea, am considerat inutil să extindem lista de participanți și să refacem condițiile de testare - la fel, așa cum am avertizat de mai multe ori, testarea acestei linii nu oferă informații practice noi: procesoarele reale funcționează în moduri complet diferite. Dar pentru cei care doresc să înțeleagă temeinic toate punctele subtile, credem că astfel de testare vor fi interesante.

Configurația bancului de testare

Am decis să ne limităm la doar patru procesoare și vor fi doi participanți principali: ambele quad-core Ivy Bridge, dar cu capacități diferite de cache de nivel al treilea. Al treilea este „Nehalem HT”: data trecută, în ceea ce privește scorul final, s-a dovedit a fi aproape identic cu „Ivy Bridge Simply”. Și „pur și simplu Nehalem” care, așa cum am spus deja, este puțin mai rapid decât Core i5 real de prima generație care funcționează la 2,4 GHz (datorită faptului că în linia 700 frecvența UnCore era puțin mai mică), dar nu prea radical. Dar comparația este interesantă: pe de o parte, există doi pași pentru îmbunătățirea microarhitecturii, pe de altă parte, memoria cache a fost limitată. A priori, putem presupune că primul va depăși în majoritatea cazurilor, dar cât și în general - cât de comparabile sunt „primul” și „al treilea” i5-uri (ajustat pentru frecvența UnCore, desigur, deși dacă există mulți oameni care doresc să vadă o comparație absolut exactă, o vom face mai târziu, hai să o facem) - deja bun subiect pentru cercetare.

Testare

În mod tradițional, împărțim toate testele într-un număr de grupuri și arătăm pe diagrame rezultatul mediu pentru un grup de teste/aplicații (puteți afla mai multe despre metodologia de testare într-un articol separat). Rezultatele din diagrame sunt date în puncte; performanța sistemului de referință este considerată ca 100 de puncte. sistem de testare site din 2011. Se bazeaza pe procesor AMD Athlon II X4 620, dar cantitatea de memorie (8 GB) și placa video () sunt standard pentru toate testele „liniei principale” și pot fi modificate numai în cadrul unor studii speciale. Pentru cei care sunt interesați de mai multe informatii detaliate, din nou, în mod tradițional se propune descărcarea unui tabel în format Microsoft Excel, în care toate rezultatele sunt prezentate atât convertite în puncte, cât și în formă „naturală”.

Lucru interactiv în pachete 3D

Există un anumit efect al capacității cache, dar este mai mică de 1%. În consecință, ambele poduri Ivy pot fi considerate identice între ele, iar îmbunătățirile arhitecturale permit noului Core i5 să depășească cu ușurință vechiul Core i7 în același mod ca noul Core i7.

Redarea finală a scenelor 3D

În acest caz, desigur, nicio îmbunătățire nu poate compensa creșterea numărului de fire procesate, dar astăzi cel mai important lucru pentru noi nu este acesta, ci lipsa completă de influență a capacității memoriei cache asupra performanței. Celeron și Pentium, așa cum am stabilit deja, sunt procesoare diferite, așa că programele de randare sunt sensibile la capacitatea L3, dar numai atunci când aceasta din urmă este insuficientă. Și 6 MiB pentru patru nuclee, după cum vedem, este destul de suficient.

Ambalare și despachetare

Desigur, aceste sarcini sunt susceptibile de capacitatea memoriei cache, cu toate acestea, și aici efectul creșterii acesteia de la 6 la 8 MiB este destul de modest: aproximativ 3,6%. Mai interesantă este, de fapt, comparația cu prima generație - îmbunătățirile arhitecturale permit noului i5 să spargă chiar și vechiul i7 la frecvențe egale, dar asta se află în clasamentul general: datorită faptului că două dintre cele patru teste sunt singure. -cu filet, iar un altul este cu filet dublu. Comprimarea datelor folosind 7-Zip este în mod natural cea mai rapidă pe Nehalem HT: opt fire sunt întotdeauna mai rapide decât patru, cu performanțe comparabile. Dar dacă ne limităm la doar patru, atunci „Ivy Bridge 6M” nostru pierde nu numai în fața progenitorului său, ci și în fața vechiului Nehalem: îmbunătățirile microarhitecturii cedează complet reducerii capacității de memorie cache.

Codificare audio

Ceea ce a fost oarecum neașteptat nu a fost dimensiunea diferenței dintre cele două Poduri Ivy, ci faptul că a existat vreo diferență. Adevărul este atât de ieftin încât poate fi pus pe seama erorilor de rotunjire sau de măsurare.

Compilare

Threadurile sunt importante, dar la fel este și capacitatea memoriei cache. Cu toate acestea, ca de obicei, nu prea mult - aproximativ 1,5%. O comparație mai interesantă este cu Core de prima generație cu Hyper-Threading dezactivat: „pe puncte” noul Core i5 câștigă chiar și la aceeași frecvență, dar unul dintre cele trei compilatoare (fabricate de Microsoft, mai exact) a funcționat pe ambele procesoare. în aceeași perioadă de timp. Chiar și cu un avantaj de 5 secunde pentru cel mai vechi - în ciuda faptului că în acest program rezultatele „full cache” Ivy Bridge sunt cu 4 secunde mai bune decât Nehalem. În general, nici aici nu putem presupune că reducerea capacității L3 a afectat cumva foarte mult Core i5 de a doua și a treia generație, dar există câteva nuanțe.

Calcule matematice și inginerești

Din nou, mai puțin de 1% diferență cu cristalul „mai vechi” și din nou o victorie convingătoare asupra primei generații în toate formele sale. Care este mai mult regula decât excepția pentru astfel de teste cu fire reduse, dar de ce să nu te asiguri încă o dată? Mai ales într-o formă atât de rafinată, când (spre deosebire de testele din modul normal) diferența de frecvențe („standard” sau care apare datorită Turbo Boost) nu interferează.

Grafică raster

Dar chiar și cu o utilizare mai completă a multithreading-ului, imaginea nu se schimbă întotdeauna. Iar capacitatea memoriei cache nu dă absolut nimic.

Grafică vectorială

Și aici este la fel. Adevărat, sunt necesare doar câteva fire de calcul.

Codificare video

Spre deosebire de acest grup, unde, însă, nici Hyper-Threading nu îi permite lui Nehalem să lupte în condiții de egalitate cu adepții noilor generații. Dar nu sunt prea împiedicați de reducerea capacității memoriei cache. Mai precis, practic nu interferează deloc, deoarece diferența este din nou mai mică de 1%.

Software de birou

După cum s-ar putea aștepta, nu există un câștig de performanță din creșterea capacității de memorie cache (mai precis, nu există nicio scădere din scăderea acesteia). Deși, dacă te uiți la rezultatele detaliate, poți vedea că singurul test multi-threaded din acest grup (și anume recunoașterea textului în FineReader) rulează cu aproximativ 1,5% mai rapid cu 8 MiB L3 decât cu 6 MiB. S-ar părea - ce înseamnă 1,5%? Din punct de vedere practic - nimic. Dar din punct de vedere al cercetării este deja interesant: după cum vedem, este vorba despre testele multi-threaded care de cele mai multe ori nu au memoria cache. Ca urmare, diferența (deși mică) se găsește uneori chiar și acolo unde pare că nu ar trebui să fie. Deși nu este nimic atât de inexplicabil în acest sens - aproximativ vorbind, în testele low-threaded avem 3-6 MiB per fir, dar în testele cu mai multe fire se dovedește a fi 1,5 MiB. Există multe dintre primele, dar a doua poate să nu fie suficientă.

Java

Cu toate acestea, aparatul Java nu este de acord cu această evaluare, dar și acest lucru este de înțeles: așa cum am scris de mai multe ori, este foarte bine optimizat nu pentru procesoare x86 deloc, ci pentru telefoane și cafetiere, unde poate exista un multe nuclee, dar memoria cache este foarte puțină memorie. Și uneori există puține nuclee și memorie cache - resurse scumpe atât în ​​ceea ce privește suprafața chipului, cât și consumul de energie. Și, dacă este posibil să faceți ceva cu nuclee și megaherți, atunci cu memoria cache totul este mai complicat: în Tegra 3 quad-core, de exemplu, există doar 1 MiB. Este clar că JVM-ul poate „strânge” mai mult (ca toate sistemele bytecode), ceea ce am văzut deja când comparăm Celeron și Pentium, dar mai mult de 1,5 MiB per thread, dacă poate fi util, nu este pentru acele sarcini. au fost incluse în SPECjvm 2008.

Jocuri

Am avut mari speranțe pentru jocuri, deoarece acestea se dovedesc adesea a fi mai solicitante în ceea ce privește capacitatea memoriei cache decât chiar și arhivatorii. Dar acest lucru se întâmplă atunci când există foarte puțin și 6 MiB, după cum vedem, sunt de ajuns. Și, din nou, procesoarele quad-core Core de orice generație, chiar și la o frecvență de 2,4 GHz, sunt o soluție prea puternică pentru aplicațiile de gaming folosite, așa că în mod clar blocajul nu vor fi ele, ci alte componente ale sistemului. Prin urmare, am decis să curățăm modurile cu o calitate grafică scăzută - este clar că pentru astfel de sisteme este prea sintetic, dar facem și toate testele sintetic :)

Când tot felul de plăci video și așa mai departe nu interferează, diferența dintre cele două Ivy Bridge ajunge la un „nebun” de 3%: în acest caz, o puteți ignora în practică, dar în teorie este mult. Mai multe au apărut doar în arhive.

Mediu multitasking

Am văzut deja asta undeva. Ei bine, da - când am testat procesoare cu șase nuclee sub LGA2011. Și acum situația se repetă: încărcarea este multi-threaded, unele dintre programele folosite sunt „lacome” pentru memoria cache, dar creșterea acesteia reduce doar performanța medie. Cum poate fi explicat acest lucru? Doar că arbitrajul devine mai complicat și numărul de greșeli crește. Mai mult, observăm că acest lucru se întâmplă numai atunci când capacitatea lui L3 este relativ mare și există cel puțin patru fire de calcul care funcționează simultan - în segment de buget o imagine complet diferită. În orice caz, după cum au arătat recentele noastre teste Pentium și Celeron, pentru procesoarele dual-core, creșterea L3 de la 2 la 3 MiB adaugă performanță de 6%. Dar nu dă nimic celor cu patru și șase nuclee, ca să spunem ușor. Chiar mai puțin decât nimic.

Total

Rezultatul general logic: deoarece nu a fost găsită nicio diferență semnificativă între procesoarele cu dimensiuni L3 diferite, nu există niciuna „în general”. Astfel, nu există niciun motiv să fii supărat cu privire la reducerea capacității de memorie cache în a doua și a treia generație de Core i5 - predecesorii primei generații nu sunt oricum concurenți cu ei. Iar Core i7-urile mai vechi, în medie, demonstrează, de asemenea, doar un nivel similar de performanță (desigur, în principal din cauza decalajului aplicațiilor low-threaded - și există scenarii care, în condiții egale, se descurcă mai repede). Dar, așa cum am spus deja, în practică procesoarele reale sunt departe de a fi în condiții egale în ceea ce privește frecvențele, așa că diferența practică între generații este mai mare decât se poate obține în astfel de studii.

O singură întrebare rămâne deschisă: a trebuit să reducem foarte mult frecvența ceasului pentru a asigura condiții egale cu Core de prima generație, dar modelele observate vor fi păstrate în condiții mai apropiate de realitate? La urma urmei, doar pentru că patru fire de calcul cu viteză redusă nu văd diferența dintre 6 și 8 MiB de memorie cache, nu rezultă că nu va fi detectat în cazul celor patru de mare viteză. Adevărat, nu urmează invers, așa că pentru a închide în sfârșit tema cercetării teoretice, vom avea nevoie de încă una. munca de laborator, ceea ce vom face data viitoare.

Facand diverse sarcini Procesorul computerului dvs. primește blocurile de informații necesare de la memorie cu acces aleator. După ce le-a procesat, CPU scrie rezultatele calculelor obținute în memorie și primește blocurile ulterioare de date pentru procesare. Aceasta continuă până când sarcina este finalizată.

Procesele de mai sus sunt efectuate cu viteză foarte mare. Cu toate acestea, viteza chiar și a celei mai rapide RAM este semnificativ mai mică decât viteza oricărui procesor slab. Fiecare acțiune, fie că este vorba despre scrierea informațiilor în ea sau citirea acesteia din ea, necesită mult timp. Viteza RAM este de zeci de ori mai mică decât viteza procesorului.

În ciuda acestei diferențe de viteză de procesare a informațiilor, procesorul PC-ului nu stă inactiv și nu așteaptă ca RAM să emită și să primească date. Procesorul funcționează mereu și totul datorită prezenței memoriei cache în el.

Un cache este un tip special de RAM. Procesorul folosește memoria cache pentru a stoca acele copii ale informațiilor din memoria RAM principală a computerului, care este posibil să fie accesate în viitorul apropiat.

În esență, memoria cache acționează ca un buffer de memorie de mare viteză care stochează informații de care procesorul ar putea avea nevoie. Astfel, procesorul primește datele necesare de zeci de ori mai repede decât atunci când le citește din RAM.

Principala diferență dintre o memorie cache și un buffer obișnuit este încorporarea funcții logice. Bufferul stochează date aleatorii, care sunt de obicei procesate conform schemei „primit primul, emis primul” sau „primit primul, emis ultimul”. Memoria cache conține date care probabil vor fi accesate în viitorul apropiat. Prin urmare, datorită „cache-ului inteligent”, procesorul poate funcționa la viteză maximă și nu poate aștepta ca datele să fie preluate din memoria RAM mai lentă.

Tipuri de bază și niveluri de memorie cache L1 L2 L3

Memoria cache este realizată sub formă de cipuri SRAM (static random access memory), care sunt instalate pe placa de bază sau încorporate în procesor. În comparație cu alte tipuri de memorie, memoria statică poate funcționa la viteze foarte mari.

Viteza cache-ului depinde de dimensiunea cipului specific. Cu cât este mai mare cip, cu atât este mai dificil de realizat de mare viteză pentru munca ei. Luand in considerare această caracteristică, în timpul fabricației, memoria cache a procesorului este realizată sub forma mai multor blocuri mici numite niveluri. Cel mai comun astăzi este sistemul de cache pe trei niveluri L1, L2, L3:

Memoria cache L1 - cel mai mic ca volum (doar cateva zeci de kilobytes), dar cel mai rapid ca viteza si cel mai important. Conține datele cel mai frecvent utilizate de procesor și rulează fără întârziere. De obicei, numărul de cipuri de memorie L1 este egal cu numărul de nuclee de procesor, fiecare nucleu accesând doar cip-ul său L1.

Memoria cache L2 Este inferioară ca viteză memoriei L1, dar este superior ca volum, care este deja măsurat în câteva sute de kilobytes. Este destinat depozitării temporare Informații importante, probabilitatea de accesare care este mai mică decât cea a informațiilor stocate în memoria cache L1.

Cache al treilea nivel L3 - are cel mai mare volum dintre cele trei niveluri (poate ajunge la zeci de megaocteți), dar are și cel mai mult viteza mica, care este încă semnificativ mai mare decât viteza RAM. Memoria cache L3 este comună tuturor nucleelor ​​de procesor. Nivelul de memorie L3 este conceput pentru stocarea temporară a acelor date importante, probabilitatea de accesare care este puțin mai mică decât cea a informațiilor stocate în primele două niveluri L1, L2. De asemenea, asigură că nucleele procesorului comunică între ele.

Unele modele de procesoare sunt proiectate cu două niveluri de memorie cache, în care L2 combină toate funcțiile L2 și L3.

Când este utilă o dimensiune mare a memoriei cache.

Veți simți un efect semnificativ de la un volum mare de cache atunci când utilizați programe de arhivare, în jocuri 3D, în timpul procesării și codificării video. În programele și aplicațiile relativ „ușoare”, diferența este practic inobservabilă (programe de birou, jucători etc.).

S-a întâmplat să am în mâini un procesor i5 2400. Și pentru că am un 2600k, care are un cache L3 de 8mb față de 6mb pentru un i5, am vrut să le compar în jocuri și aplicații. Timpul a fost limitat, așa că nu vor fi multe teste. Dar pentru a adăuga și mai multe informații, m-am jucat cu memoria și am simulat trei situații cu i5 2400.

1. Configurați cu cel mai ieftin placa de baza pe un chipset cu indicele „H”, unde nu există opțiune de overclocking și frecvența tuturor nucleelor ​​va fi de 3200MHz. RAM va funcționa la 1333MHz cu un timp de 9:9:9:27

2. Configurați cu o placă de bază pe un chipset cu indici „P” și „Z”, care au capacitatea de a crește multiplicatorul procesoarelor cu suport turbo boost cu patru puncte. În cazul meu, cu un procesor i5 2400, multiplicatorul de la 32 poate fi mărit la 36, ​​obținând astfel o frecvență de 3600MHz. După ce am overclockat și autobuzul, am primit 3800MHz, adică cu 600MHz mai mult decât în ​​prima configurație. RAM în acest caz va funcționa la o frecvență de 2252MHz cu timpi de 9:9:9:27

3. Configurația este exact aceeași cu cea de-a doua, dar cu o frecvență RAM de 1689MHz la timpi 9:9:9:27

4. Configurare cu un procesor de 2600k la 3.80GHz, HT dezactivat și RAM de 2252MHz cu timpi 9:9:9:27.

Componente de testare:
Intel core i7 2600K
Intel Core i5 2400
Placa de baza: ASUS P8Z77-V Deluxe
RAM: 16 GB DDR3 CRUCIAL Ballistix Elite
Placă video: GTX 780 Ti 1279|7800 Drivere: 381,89
Alimentare: APS-850C 850W
sistem de operare: Windows 8.1 x64 curat (35 de procese după pornirea sistemului)

i5 2400 3200MHz DDR3 1333MHz

i5 2400 3800MHz DDR3 1689MHz

i5 2400 3800MHz DDR3 2252MHz

i7 2600k 3800MHz 2252MHz

NVIDIA GTX 780 Ti 1279|7800

Rezultatele testului:

Scorul CPU 3DMark 2013




Câștigul atât din cache, cât și din RAM este minim.

_________________________________________________________________________________________________

Cinebench R15




În Cinebench R15 vedem o imagine similară.

_________________________________________________________________________________________________

LinX 0.6.5 Volumul sarcinii: 25000




În LinX, de asemenea, doar overclockarea procesorului oferă o creștere

_________________________________________________________________________________________________

x264 FHD Benchmark




Și din nou creșterea este la nivel de eroare.

_________________________________________________________________________________________________

Winrar v4.20



Și, în sfârșit, obținem o creștere din cache de aproximativ 6% și din memorie aproximativ 15%

_________________________________________________________________________________________________

Battlefield 1 SinglePlayer


Permisiune: 1280x720
Scala de rezoluție: 100%
Calitatea texturii: fund. / mediu / înalt / ultra
Filtrarea texturii: fund. / mediu / înalt / ultra
Calitatea luminii: fund. / mediu / înalt / ultra
Calitatea efectului: fund. / mediu / înalt / ultra
Calitate post-procesare: fund. / mediu / înalt / ultra
Calitatea plasei: fund. / mediu / înalt / ultra
Calitatea peisajului: fund. / mediu / înalt / ultra
Calitatea gazonului: fund. / mediu / înalt / ultra
Calitate anti-aliasing: Nu/ FXAA (mediu) / FXAA (ridicat) / TAA
Lumina volumetrica: nu /SSAO/ HBAO


Există o ușoară creștere din cache-ul L3.

_________________________________________________________________________________________________

Crysis 3 Bun venit în junglă


Permisiune: 1280x720
Netezire: oprit
Rezoluția texturii: scăzut / in medie / înalt / Max.
Efecte: scăzut / in medie / înalt / Max.
Un obiect: scăzut / in medie / înalt / Max.
Particule: scăzut / in medie / înalt / Max.
Post procesare: scăzut / in medie / înalt / Max.
Umbrire: scăzut / in medie / înalt / Max.
Umbre: scăzut / in medie / înalt / Max.
Apă: scăzut / in medie / înalt / Max.
Filtru anizotrop: 1x / 2x / 4x / 8x / 16x
Nivel de estompare: oprit
Strălucire: da/ Nu


Una dintre cele mai intense scene de CPU din joc. Creșterea depinde doar de frecvența procesorului. Sarcina 780Ti în această scenă, chiar și pe i7, nu a depășit 50%

_________________________________________________________________________________________________

Mare Furt auto V Benchmark încorporat (Ultima scenă)


Permisiune: 1280x720
Versiunea DirectX: 11
Anti-aliasing FXAA: oprit/ pe
Antialiasing MSAA: oprit/ x2 / x4 / x8
Populația orașului: max
Tipul populației: max
Scala de focalizare: max
Calitatea texturii: standard / ridicat / foarte inalt
Calitatea umbrelor: standard / ridicat / foarte inalt
Calitatea umbrei: standard / ridicat / foarte inalt
Calitatea reflexiei: cel mai înalt grad
MSAA pentru reflecții: oprit/ x2 / x4 / x8
Calitatea apei: standard / ridicat / foarte inalt
Calitatea particulelor: standard / ridicat / foarte inalt
Calitatea gazonului: standard / ridicat / foarte ridicat / cel mai înalt grad
Umbre moi: ascuțit / moale / mai moale / max. moale / AMD CHS / NVIDIA PCSS
Configurarea efectelor speciale: standard / ridicat / foarte ridicat / cel mai înalt grad
Nivelul de estompare a mișcării: min
Efectul profunzimii câmpului: oprit/ pe
Filtrare anisotropic: x16
Umbrire AO: oprit / standard / înalt
Teselație: oprit / standard / ridicat / foarte inalt

Setari aditionale:
Umbre lungi: oprit / pe
Umbre de înaltă definiție: oprit / pe
Încărcarea texturilor mai detaliate în timpul zborului: oprit / pe
Mărirea distanței de încărcare pentru obiecte mai detaliate: max
Lungimea umbrei: max


Acest joc are cu siguranță un impuls atât din memorie, cât și din cache. O creștere foarte bună a i5 2400 3.80GHz față de stocul de 3.20GHz.

_________________________________________________________________________________________________

Efectul de masă Andromeda


Permisiune: 1280x720
Netezire: oprit
Cereale: oprit / pe
Aberatii cromatice: oprit / pe
Calitatea texturii: ultra
Umbrire difuză: oprit /SSAO/HBAO/ HBAO complet
Calitate post-procesare: scazut mediu ridicat / ultra
Calitatea texturii: scazut mediu ridicat / ultra
Calitatea luminii: scazut mediu ridicat / ultra
Calitatea umbrei: scazut mediu ridicat / ultra
Calitatea efectului: scazut mediu ridicat / ultra
Calitate model: scazut mediu ridicat / ultra
Calitatea umbrelor: scăzut/ înalt
Calitatea peisajului: scazut mediu ridicat / ultra
Calitatea plantelor: scazut mediu ridicat / ultra


În această scenă, niciunul nu a deschis complet 780Ti.
_________________________________________________________________________________________________

World Of Tanks 0.9.18
Hartă: Treci

Netezire: deschis/ pe
Arte grafice: standard / îmbunătățită
Calitatea texturii: scazut mediu ridicat / maxim
Calitatea luminii: maxim
Calitatea umbrei: oprit/mediu/ridicat/ maxim
Iarbă în modul lunetist: oprit / pe
Calitate extra efecte: oprit / scăzut / mediu / ridicat / maxim
Efecte suplimentare în modul lunetist: înalt
Cantitatea de vegetație: oprit / scăzut / mediu / ridicat / maxim
Post procesare: oprit / scăzut / mediu / ridicat / maxim
Efecte de sub piese: oprit / pe
Calitatea peisajului: minim / scăzut / mediu / ridicat / maxim
Calitatea apei: scazut mediu ridicat / maxim
Calitate decalcomanii: oprit / scăzut / mediu / ridicat / maxim
Detalierea obiectului: scazut mediu ridicat / maxim
Detalierea arborelui: scazut mediu ridicat / maxim
Distanța de redare: scazut mediu ridicat / maxim
Calitate estompare a mișcării: oprit / scăzut / mediu / înalt
D Schimbarea dinamică a calității efectului: oprit / pe
Urmele omizilor: oprit / pe

Concluzie: Unii recenzenti de la Youtube pur și simplu dezactivează HT, făcând un i5 „artificial” din I7, dar cu un cache mare... și spun că nu este nicio diferență. Dar totuși, în unele jocuri, cache-ul suplimentar oferă o creștere.

Și, în general, overclockarea unui stoc i5 2400 dă o creștere foarte puternică, dar atunci va trebui să cheltuiești bani pe o placă de bază.

Ziua bună tuturor. Astăzi vom încerca să vă explicăm conceptul de cache. Memoria cache a procesorului este o matrice de procesare a datelor ultra-rapidă, a cărei viteză depășește RAM standard de 16-17 ori, dacă vorbim de DDR4.

Din acest articol veți învăța:

Este volumul memoriei cache care permite procesorului să funcționeze la viteze maxime fără a aștepta ca RAM să prelucreze orice date și să trimită rezultatele calculelor finalizate către cip pentru procesare ulterioară. Un principiu similar poate fi văzut în HDD, doar că folosește un buffer de 8–128 MB. Un alt lucru este că vitezele sunt mult mai mici, dar procesul de lucru este similar.

Ce este memoria cache a procesorului?

Cum funcționează în general procesul de calcul? Toate datele sunt stocate în RAM, care este proiectat pentru stocarea temporară a informațiilor importante despre utilizator și sistem. Procesorul selectează un anumit număr de sarcini pentru el însuși, care sunt împinse într-un bloc ultra-rapid numit memorie cache și începe să se ocupe de responsabilitățile sale directe.

Rezultatele calculului sunt din nou trimise în RAM, dar în cantități mult mai mici (în loc de o mie de valori de ieșire, obținem mult mai puține) și o nouă matrice este luată pentru procesare. Și așa mai departe până la terminarea lucrării.

Viteza de funcționare este determinată de eficiența RAM. Dar nici un singur modul DDR4 modern, inclusiv soluții de overclocking cu frecvențe sub 4000 MHz, nu se apropie de capacitățile celui mai slăbit procesor cu cache-ul său „lent”.

Acest lucru se datorează faptului că viteza procesorului depășește performanța RAM în medie de 15 ori, sau chiar mai mult. Și nu vă uitați doar la parametrii de frecvență; există o mulțime de diferențe în afară de ei.
În teorie, se dovedește că chiar și super-puternicii Intel Xeon și AMD Epyc sunt forțați să rămână inactiv, dar de fapt ambele cipuri de server funcționează la limita capacităților lor. Și totul pentru că colectează cantitatea necesară de date în funcție de dimensiunea memoriei cache (până la 60 MB sau mai mult) și procesează instantaneu datele. RAM servește ca un fel de depozit din care sunt desenate matrice pentru calcule. Eficiența de calcul a computerului crește și toată lumea este fericită.

O scurtă excursie în istorie

Primele mențiuni despre memoria cache datează de la sfârșitul anilor 80. Până în acest moment, viteza procesorului și a memoriei erau aproximativ aceleași. Dezvoltarea rapidă a cipurilor a necesitat să se creeze un fel de „cârjă” pentru a crește nivelul de performanță RAM, dar utilizarea cipurilor ultra-rapide a fost foarte costisitoare și, prin urmare, au decis să se mulțumească cu o opțiune mai economică - introducerea unui matrice de memorie de viteză în procesor.

Modulul de memorie cache a apărut pentru prima dată în Intel 80386. La acea vreme, latența de operare a DRAM a fluctuat în jurul a 120 de nanosecunde, în timp ce modulul SRAM mai modern a redus latența la un impresionant 10 nanosecunde pentru acele vremuri. O imagine aproximativă este demonstrată mai clar în confruntarea dintre HDD și SSD.

Inițial, memoria cache a fost lipită direct la plăci de bază, datorită nivelului procesului tehnic la momentul respectiv. Începând cu Intel 80486, 8 KB de memorie au fost încorporați direct în matrița procesorului, crescând și mai mult performanța și reducând suprafața matriței.

Această tehnologie de aranjare a rămas relevantă doar până la lansarea Pentium MMX, după care memoria SRAM a fost înlocuită cu SDRAM mai avansat.
Iar procesoarele au devenit mult mai mici și, prin urmare, nu este nevoie de circuite externe.

Niveluri de cache

Pe etichetarea CPU-urilor moderne, pe lângă și , puteți găsi conceptul de dimensiune cache a nivelurilor 1, 2 și 3. Cum se determină și ce afectează? Să înțelegem în termeni simpli.

  • Cache-ul de nivel 1 (L1) este cel mai important și mai rapid cip din arhitectura CPU. Un procesor poate găzdui un număr de module egal cu numărul de nuclee. Este de remarcat faptul că cipul poate stoca în memorie cele mai populare și importante date numai din nucleul său. Dimensiunea matricei este adesea limitată la 32–64 KB.
  • Cache al doilea nivel (L2) - scăderea vitezei este compensată de o creștere a dimensiunii bufferului, care ajunge la 256 sau chiar 512 KB. Principiul de funcționare este același cu cel al L1, dar frecvența solicitărilor de memorie este mai mică, datorită stocării datelor cu prioritate mai mică în acesta.
  • Cel de-al treilea nivel cache (L3) este cea mai lentă și mai voluminoasă secțiune dintre toate. Și totuși, această matrice este mult mai rapidă decât RAM. Dimensiunea poate ajunge la 20 și chiar 60 MB când vine vorba de cipuri de server. Beneficiile matricei sunt enorme: este o legătură cheie în schimbul de date între toate nucleele sistemului. Fără L3, toate elementele cipului ar fi împrăștiate.

La vânzare puteți găsi atât structuri de memorie cu două cât și trei niveluri. Care este mai bun? Daca folosesti procesorul doar pentru programe de birouși jocuri ocazionale, nu veți simți nicio diferență. Dacă sistemul este asamblat în vederea unor jocuri 3D complexe, arhivare, randare și lucru cu grafică, atunci creșterea în unele cazuri va varia de la 5 la 10%.
Un cache de nivel al treilea este justificat doar dacă intenționați să lucrați în mod regulat cu aplicații cu mai multe fire care necesită calcule complexe regulate. Din acest motiv, modelele de server folosesc adesea cache L3 mari. Deși există cazuri în care acest lucru nu este suficient și, prin urmare, trebuie să instalați suplimentar așa-numitele module L4, care arată ca un cip separat conectat la placa de bază.

Cum pot afla numărul de niveluri și dimensiunea cache-ului pe procesorul meu?

Să începem cu faptul că acest lucru se poate face în 3 moduri:

  • prin Linie de comanda(Numai cache L2 și L3);
  • prin căutarea specificațiilor pe Internet;
  • folosind utilități terțe.

Dacă luăm ca bază faptul că pentru majoritatea procesoarelor L1 este de 32 KB, iar L2 și L3 pot fluctua foarte mult, ultimele 2 valori sunt cele de care avem nevoie. Pentru a le căuta, deschideți linia de comandă prin „Start” (introduceți valoarea „cmd” prin bara de căutare).

Sistemul va afișa o valoare suspect de mare pentru L2. Trebuie să-l împărțiți la numărul de nuclee de procesor și să aflați rezultatul final.

Dacă intenționați să căutați date în rețea, atunci aflați mai întâi numele exact al procesorului. Faceți clic dreapta pe pictograma „Computerul meu” și selectați „Proprietăți”. În coloana „Sistem” va fi un element „Procesor”, de care avem de fapt nevoie. Îi rescrieți numele în Google sau Yandex și vă uitați la semnificația de pe site-uri. Pentru informații fiabile, este mai bine să alegeți portalurile oficiale ale producătorului (Intel sau AMD).
A treia metodă, de asemenea, nu provoacă probleme, dar necesită instalarea unui software suplimentar precum GPU-Z, AIDA64 și alte utilități pentru a studia specificațiile pietrei. O opțiune pentru cei cărora le place overclockarea și mânuirea detaliilor.

Rezultate

Acum înțelegeți ce este memoria cache, de ce depinde dimensiunea acesteia și în ce scopuri este utilizată o matrice de date ultra-rapidă. Pe acest moment Cele mai interesante soluții de pe piață în ceea ce privește memoria cache mare sunt dispozitivele AMD Ryzen 5 și 7 cu 16 MB L3.

În articolele următoare vom aborda subiecte precum procesoarele, beneficiile cipurilor și multe altele. și rămâneți pe fază. Până data viitoare, la revedere.

Cât de important este memoria cache L3 pentru procesoarele AMD?

Într-adevăr, este logic să echipați procesoarele cu mai multe nuclee cu memorie dedicată care va fi partajată de toate nucleele disponibile. În acest rol, un cache rapid de nivel al treilea (L3) poate accelera în mod semnificativ accesul la datele care sunt solicitate cel mai des. Atunci nucleele, dacă este posibil, nu vor trebui să acceseze memoria principală lentă (RAM).

Cel putin in teorie. AMD a anunțat recent procesorul Athlon II X4, care este un model al Phenom II X4 fără cache L3, sugerând că nu este atât de necesar. Am decis să comparăm direct două procesoare (cu și fără cache L3) pentru a testa modul în care cache-ul afectează performanța.

Cum funcționează memoria cache?

Înainte de a ne aprofunda în teste, este important să înțelegem câteva elemente de bază. Principiul cum funcționează memoria cache este destul de simplu. Cache-ul tamponează datele cât mai aproape de nucleele de procesare ale procesorului pentru a reduce cererile CPU la o memorie mai îndepărtată și mai lentă. Pe platformele desktop moderne, ierarhia cache-ului include până la trei niveluri care preced accesul la RAM. Mai mult, cache-urile celui de-al doilea și, în special, al treilea nivel servesc nu numai la stocarea datelor. Scopul lor este de a preveni supraîncărcarea magistralei procesorului atunci când nucleele trebuie să facă schimb de informații.

Lovituri și rateuri

Eficacitatea arhitecturilor cache este măsurată prin rata de accesare. Solicitările de date care pot fi satisfăcute de cache sunt considerate accesări. Dacă cache-ul dat nu conține datele necesare, cererea este transmisă mai departe de-a lungul conductei de memorie și o ratare este contorizată. Desigur, greșelile duc la mai mult timp necesar pentru a obține informații. Ca rezultat, „bule” (inactiv) și întârzieri apar în conducta de calcul. Hiturile, dimpotrivă, vă permit să mențineți performanța maximă.

Intrare în cache, exclusivitate, coerență

Politicile de înlocuire dictează modul în care spațiul este eliberat în cache pentru noile intrări. Deoarece datele scrise în cache trebuie să apară în cele din urmă în memoria principală, sistemele pot face acest lucru în același timp cu scrierea în cache (scriere prin scriere) sau pot marca zonele de date ca „murdare” (rescriere) și pot scrie în memorie.când este evacuat din cache.

Datele din mai multe niveluri de cache pot fi stocate exclusiv, adică fără redundanță. Atunci nu veți găsi aceleași linii de date în două ierarhii de cache diferite. Sau cache-urile pot funcționa inclusiv, adică nivelurile inferioare de cache sunt garantate să conțină date prezente în nivelurile de cache superioare (mai aproape de nucleul procesorului). U AMD Phenom cache-ul L3 exclusiv este folosit, în timp ce Intel urmează o strategie de cache inclusivă. Protocoalele de coerență asigură integritatea și prospețimea datelor în diferite nuclee, niveluri de cache și chiar procesoare.

Mărimea cache-ului

Un cache mai mare poate stoca mai multe date, dar tinde să crească latența. În plus, un cache mare consumă un număr considerabil de tranzistori de procesor, așa că este important să găsim un echilibru între bugetul tranzistorului, dimensiunea matriței, consumul de energie și performanță/latență.

Asociativitatea

Intrările din RAM pot fi mapate direct în cache, adică există o singură poziție cache pentru o copie a datelor din RAM, sau pot fi asociative în n moduri, adică există n locații posibile în cache în care acest lucru datele pot fi stocate. Grade mai înalte de asociativitate (până la cache-uri complet asociative) oferă o flexibilitate mai mare de stocare în cache, deoarece datele existente în cache nu trebuie rescrise. Cu alte cuvinte, un grad n ridicat de asociativitate garantează o rată de hit mai mare, dar crește și latența, deoarece este nevoie de mai mult timp pentru a verifica toate acele asocieri pentru un hit. În mod obișnuit, cel mai înalt grad de asociere este rezonabil pentru ultimul nivel de stocare în cache, deoarece capacitatea maximă este disponibilă acolo, iar căutarea datelor în afara acestui cache va duce la accesarea procesorului RAM lentă.

Iată câteva exemple: Core i5 și i7 folosesc 32 KB de cache L1 cu asociativitate cu 8 căi pentru date și 32 KB de cache L1 cu asociativitate în 4 căi pentru instrucțiuni. Este de înțeles că Intel dorește ca instrucțiunile să fie disponibile mai rapid și cache-ul de date L1 să aibă o rată de accesare maximă. Cache-ul L2 de pe procesoarele Intel are asociativitate în 8 căi, iar memoria cache Intel L3 este și mai inteligentă, deoarece implementează asociativitate în 16 căi pentru a maximiza accesările.

Cu toate acestea, AMD urmează o strategie diferită cu procesoarele Phenom II X4, care utilizează un cache L1 asociativ cu două căi pentru a reduce latența. Pentru a compensa eventualele erori, capacitatea cache-ului a fost dublată: 64 KB pentru date și 64 KB pentru instrucțiuni. Cache-ul L2 are asociativitate cu 8 căi, ca și designul Intel, dar memoria cache L3 de la AMD funcționează cu asociativitate cu 48 de căi. Dar decizia de a alege o arhitectură cache în detrimentul unei alte nu poate fi evaluată fără a lua în considerare întreaga arhitectură a CPU. Este destul de firesc ca rezultatele testelor să aibă o semnificație practică, iar scopul nostru a fost tocmai un test practic al întregii structuri complexe de stocare în cache pe mai multe niveluri.