Despre cache Generalitati
#1
Scris 15 November 2006 - 06:33 PM
#3
Scris 18 November 2006 - 10:34 AM
Daca te referi strict la cantitatile de memorie descrise mai sus... pai da, sunt relative la felul in care lucreaza procesorul, la felul in care isi gestioneaza acel cache.
#4
Scris 18 November 2006 - 10:54 AM
Herr Spiegellman, la Nov 15 2006, 06:33 PM, a spus:
Cred că avem din nou o problemă
La ce crezi că se foloseşte memoria cache, concret?
P.S. Independent de programul sau jocul pe care vrei să-l rulezi īn acel moment. La ce foloseşte maşina hardware memoria cache?
Aceasta postare a fost editata de harald: 18 November 2006 - 10:56 AM
#5
Scris 18 November 2006 - 05:24 PM
As far as I know, cacheul e memorie tampon pentru procesor, unde se stocheaza o anumita cantitate de informatie si ceva din comenzile care urmeaza sa fie executate. Procesoarele Klamath (slot1) aveau 512 kb, un Celeron are 128. Preferabil este in jurul valorilor de 256 sau 512.
Ce trece peste 512 ajunge in cache-ul de level 3, care are o latenta suficient de mare incat sa nu-l faca folositor decat serverelor sau masinilor care cer o putere imensa de procesare, extremely streamlined. Unui home-user nu vad cu ce-i aduce concret un spor de performanta.
Asteptam si pe Herr sa dea cu explicatia..
@Loop : procesoarele dual-core au avantajul exact asta, al capacitatii de a rula mai multe fire de executie simultan - nu stiu si de cache sa fie cu ceva diferit. Daca tot e diferit, mai mare, poti spune si la ce frecvente? Si ce impact ar avea?
@Harald: nenea, cauti cearta cu lumanarea?
#6
Scris 18 November 2006 - 05:47 PM
daemon, la Nov 18 2006, 05:24 PM, a spus:
Īn esenţă, da. Cea mai frecventă activitate pentru care este necesară memoria cache level 2, este practic administrarea memoriei RAM. Īn orice moment, dacă datele căutate nu există īn memoria cache, li se face loc "aruncānd" datele despre care se presupune că există şanse mai reduse să fie necesare īntr-un moment ulterior foarte apropiat. Moment ulterior foarte apropiat cānd tot administrarea memoriei RAM va necesita "aruncarea" altor date pentru īnlocuirea lor cu cele necesare. Şi tot aşa, īn fiecare secundă.
Ca să afirmi, īn zilele noastre, că 256 KB cache e cam puţin, dar 512 KB cache e suficient, īnseamnă să reproduci vreun text care era valabil prin 1999. Klamath avea 512 KB level 2 cache īn 1998, iar Katmai, tot cu 512 KB cache, a apărut prin martie 1999.
P.S. Īntre Klamath şi Katmai a mai existat şi Deschutes.
"For more information regarding L1 and L2 cache, including a history of the IA-32 architecture, please review section 2.1 of the IA-32 Intel® Architecture Software Developer's Manual Volume 1: Basic Architecture"
Aceasta postare a fost editata de harald: 18 November 2006 - 06:04 PM
#7
Scris 18 November 2006 - 07:21 PM
Edit: ain't sure, poate ma insel cu level 3 ala .. Parca erau niste Pentium4 cu lvl 2 de 1MB, versiuni denumite sugestiv extreme, ale unor procesoare altfel normale
PS Offtopic: procesorul meu e Descutes, nu Klamath
Aceasta postare a fost editata de daemon: 18 November 2006 - 07:23 PM
#8
Scris 18 November 2006 - 09:58 PM
http://en.wikipedia.org/wiki/CPU_cache
Mai ales: http://en.wikipedia....ti-level_caches
Lectura placuta.
@daemon:
Idee de impact: http://computer.hows....com/cache3.htm
Apropo , prescottul meu care nu e extreme edition vine cu L1: 16 KB si L2: 1 MB.
Pe scurt: Procesoarele devin din ce in ce mai rapide si in numere din ce in ce mai mari. Procesoarele proceseaza date. Datele ocupa memorie. Daca memorie este insuficienta sau prea lenta datele nu pot ajunge la procesor cand este nevoie de ele si drept urmare procesorul ala mai mult sta degeaba decat sa isi faca treaba.
Cand ai mai multe procesoare este un lucru destul de intelept sa le dai cacheuri mai mari astfel incat sa poata procesa in voie fara sa piarda timpul din cazua latentelor (care sunt destul de mari mai ales in cazul memoriilor DDR2).
Concluzia este: Cu cat mai multa memorie cache , cu atat mai bine. (preferabil separat in diverse layere pentru ca asa cum s-a mentionat mai devreme si chiar si pe wikipedia , cu cat e mai mult la un loc cu atat devine mai lent)
Aceasta postare a fost editata de Looop: 18 November 2006 - 10:07 PM
#9
Scris 20 November 2006 - 02:30 PM
Ceea ce este descris pe Wikipedia este manipularea datelor. Pe How Stuff Works este descrisa si executia datelor. Ei bine... daca programele ar fi concepute cu simtul responsabilitatii sau pur si simplu cu bun simt, nu v-ati crede ochilor ce ati putea face cu un PC...
Un soft bun dpdvd al executiei ar face asa : la pornire verifica suma totala de RAM si cat din ei este liber, aloca memorie pentru sine cat are nevoie pentru initializare si functionalitatile de baza intr-un singur bloc, se incarca de pe hdd in memorie, se executa mai departe. Pentru fiecare bloc de procesare, fir de executie sau plugin aloca un singur bloc de memorie, incarca si execute. Dupa terminarea executiei unui bloc / plugin / fir de executie, memoria este dezalocata, se sterg atat instructiunile cat si structurile de date folosite.
Problema insa este ca in ziua de azi 90% din programatori se bazeaza pe capacitatea limbajului de programare de a produce un executabil cu management de memorie integrat, pe care il ajuta si Windows-ul. Este foarte usor asa pentru ca pur si simplu decizi sa uiti acest aspect si faci programul de ca si cum ai avea ram la discretie... acestia stimuleaza necesarul de mult cache.
Am vazut la un moment dar un soft demo pentru niste librarii de grafica 3D in miscare scrise de un rus in Pascal dar cu blocurile functionale principale in Assembler. Era o demonstratie de 2-3 minute. Softul care facea asta in MS-DOS cu tot cu librariile aferente ocupa 29 kb. Rula foarte rapid pe 486-le pe care il aveam atunci... undeva la 28 fps. Explicatia lui era simpla : la inceput softul incerca sa detecteze pe langa ce am zis despre rami si tipul de procesor si dimensiunile cache-ului. algoritmul era facut sa incapa complet in cache L1 iar memoria necesara resurselor era citita in functie de L2. Parea foarte fantezist la vremea aia... but it works !
#10
Scris 21 November 2006 - 12:56 AM
Herr Spiegellman, la Nov 20 2006, 02:30 PM, a spus:
Da, dacă ar fi singur pe maşina aia
După teoria asta, nu numai că n-ar mai fi nevoie de un sistem de operare, dar chiar n-ar mai avea loc să ruleze pe maşină.
Aceasta postare a fost editata de harald: 21 November 2006 - 12:57 AM
Impartaseste acest subiect:
Subiecte similare
| Topic | Deschis de | Replici | Vizualizari | |
|---|---|---|---|---|
|
Probleme cu tastatura | RHS | 1 | 1.786 |
|
probleme lai mprimare |
n1cus0r | 0 | 4.302 |
|
MEGA PROBLEMA! AJUTOR!
calculator stricat? sau nu? |
the_coolest_boy06 | 17 | 6.719 |
|
imprimanta mereu busy
lexmark z12 |
ActorGrabit | 6 | 7.908 |
|
Probleme hard va rog ajutati-ma | Gheart | 4 | 1.416 |
Contact
Facebook
Twitter
RSS














