View Full Version : PROCESSORI E CACHE L1/L2
Ciao ragazzi voglio aprire questo thread per discutere della cache che caratterizza i processori di questo momento.
Ho notato la differenza fra i processori AMD e INTEL e mi colpisce il fatto che le cpu INTEL posseggono molta più cache rispetto agli AMD...
Basti guardare un core duo e6600 che possiede 4MB di cache L2 e un AMD 5400 x2( che in teoria dovrebbe essere simile al corrispondente intel) che ne ha 512KB.
Allora la cache è importante per un processore?
Goofy Goober
16-04-2007, 14:35
per quanto ne so, i core 2 duo con più cache si occano peggio di quelli con meno cache, per es c'è diff tra l'oc di un 6300-6400 a un 6600-6700.
per il resto la differenza prestazionale tra 2 e 4 mega di cache non è enorme, però non saprei se gli amd sopperiscono la minor quantità di cache con altre caratteristiche.
OverdeatH86
16-04-2007, 19:56
sulla cache te ne accorgi maggiormente nei giochi...xo sinceremaneta avere un cpu limit a 200fps e averlo a 220 kissenefrega...io punterei su un 2mb ke costa meno..
walter89
16-04-2007, 23:13
i 2 mb si occano meglio perchè hanno un numero minore di transistor ;)
le prestazioni in + dei 4 mb rispetto ai 2 mb sono quantificabili in circa 150 Mhz di frequenza
Ma tutti dicono che i core duo di intel sono meglio di quelli amd...
Ma questo è dovuto alla maggiore cache?
La cache in un processore e importante quanto la frequenza o no?
non è così rilevante.....e nemmeno la frequenza è così importante...è l' architettura che fa la differenza!
Ciauz
non è così rilevante.....e nemmeno la frequenza è così importante...è l' architettura che fa la differenza!
Ciauz
Ma per architettura cosa intendi?
Da Wikipedia:
Architettura della CPU
Qualunque CPU possiede almeno due unità distinte:
* una ALU (Unità Aritmetico-Logica) che si occupa di eseguire le operazioni logiche e aritmetiche;
* una Unità di Controllo che legge dalla memoria le istruzioni, se occorre legge anche i dati per l'istruzione letta, esegue l'istruzione e memorizza il risultato se c'è, scrivendolo in memoria o in un registro della CPU.
Oltre a queste possono esserne presenti altre, per esempio:
* una FPU (Floating Point Unit) che si occupa di eseguire calcoli in virgola mobile;
* una MMU (Memory Management Unit) che si occupa di tradurre gli indirizzi di memoria logici in indirizzi fisici, supportando la protezione della memoria e/o uno o più meccanismi di memoria virtuale.
Una generica CPU deve gestire una serie di operazioni sincronizzandole con il resto del sistema: perciò è dotata, oltre a quanto sopra elencato, anche di uno o più bus interni che si occupano di collegare registri, ALU, unità di controllo e memoria: inoltre, all'unità di controllo interna della CPU fanno capo una serie di segnali elettrici esterni che si occupano di tenere la CPU al corrente dello stato del resto del sistema e di agire su di esso. Il tipo e il numero di segnali esterni gestiti possono variare ma alcuni, come il RESET, le linee di IRQ e il CLOCK sono sempre presenti.
Tipicamente la CPU è l'Interprete del linguaggio macchina. Come tutti gli interpreti, si basa sul seguente ciclo:
* Acquisizione dell'istruzione: il processore preleva l'istruzione dalla memoria, presente nell'indirizzo (tipicamente logico) specificato da un registro "speciale" ("speciale" opposto di "generico"), il PC
* Decodifica: una volta che la word è stata prelevata, viene determinata quale operazione debba essere eseguita e come ottenere gli operandi, in base ad una funzione il cui dominio è costituito dai codici operativi (tipicamente i bit alti delle word) ed il codominio consiste nei brani di microprogramma da eseguire
* Esecuzione: viene eseguita la computazione desiderata. Nell'ultimo passo dell'esecuzione viene incrementato il PC: tipicamente di uno se l'istruzione non era un salto condizionale, altrimenti l'incremento dipende dall'istruzione e dall'esito di questa
Questo ciclo elementare può essere migliorato in vari modi: per esempio, la decodifica di una istruzione può essere fatta contemporaneamente all'esecuzione della precedente e alla lettura dalla memoria della prossima (instruction prefetch) e lo stesso può essere fatto con i dati che si prevede saranno necessari alle istruzioni (data prefetch). La stessa esecuzione delle istruzioni può essere suddivisa in passi più semplici, da eseguire in stadi successivi, organizzando la unità di controllo e la ALU in stadi consecutivi, come delle catene di montaggio (pipeline): in questo modo più istruzioni possono essere eseguite "quasi contemporaneamente", ciascuna occupando ad un certo istante uno stadio diverso della pipeline.
Il problema di questo approccio sono le istruzioni di salto condizionato: la CPU non può sapere a priori se dovrà eseguire o no il salto prima di aver eseguito quelle precedenti, così deve decidere se impostare la pipeline tenendo conto del salto o no: e in caso di previsione errata la pipeline va svuotata completamente e le istruzioni in corso di decodifica rilette da capo, perdendo un numero di cicli di clock direttamente proporzionale al numero di stadi della pipeline. Per evitare questo i processori moderni hanno unità interne (“Branch prediction unit”) il cui scopo è tentare di prevedere se, data una istruzione di salto condizionato e quelle eseguite in precedenza, il salto dovrà essere eseguito o no.
Inoltre i processori possono implementare al loro interno più unità di esecuzione per eseguire più operazioni contemporaneamente. Questo approccio incrementa le prestazioni delle CPU ma ne complica notevolmente l'esecuzione dato che per poter eseguire in modo efficiente più operazioni in parallelo la CPU deve poter organizzare le istruzioni in modo diverso da come sono organizzate dal programmatore implementando l'esecuzione fuori ordine delle stesse. Per mantenere comunque la coerenza con quanto previsto dal programma la CPU dopo aver eseguito le istruzioni in modalità fuori ordine deve riordinare le istruzioni in modo da far apparire all'esterno della CPU un'esecuzione in ordine, cioè come prevista dal programma. Questo approccio è seguito da tutti le CPU per computer difatti l'architettura riportato nel paragrafo precedente va intesa come un'architettura concettuale, un'architettura di CPU reale è molto più complessa.
Sono le differenze costruttive basate su questi concetti che determinano il valore (prestazionale) di un' architettura
Ciauz
cmq ho appena messo su un 6420:D , al posto del 6300, 400x8-4mb di cache, stesso prezzo del 6400;)
Dreadnought
17-04-2007, 19:49
Ma tutti dicono che i core duo di intel sono meglio di quelli amd...
Ma questo è dovuto alla maggiore cache?
La cache in un processore e importante quanto la frequenza o no?
Fino ad un anno fa c'erano i pentium 4 prescott che nei confronti delle controparti AMD erano molto indietro, nonostante avessero anche loro 2MB di cache.
Non conta quanta cache hai, ma piuttosto come è costruita e progettata la CPU.
.
Basti guardare un core duo e6600 che possiede 4MB di cache L2 e un AMD 5400 x2( che in teoria dovrebbe essere simile al corrispondente intel) che ne ha 512KB.
Allora la cache è importante per un processore?
non puoi paragonare cpu di fasce diverse e quindi prezzi diversi!!
il tuo esempio sono cpu con 100€ di differenza
il 6600 ha 2 mb per core quindi 4mb
il 5400 512kb x core quindi 1 mb
paragona però
il 6400 ha 1 mb x core quindi 2 mb
il 5600 ha 1 mb x core quindi 2 mb
che sono sulla stesa fascia
al di la di questo come già ti hanno detto la cache influenza le prestazioni in base all'archietttura della cpu
Quindi io che mi ritrovo un pentium 4 630 con 2mb di cache più o meno a quale amd può essere paragonato?
è difficile dirlo.....più o meno con un amd athlon 64 3000+ o 3200 +..
Ciauz
P.s abbiamo la stessa cpu! ma ancora x poco....:cool:
è difficile dirlo.....più o meno con un amd athlon 64 3000+ o 3200 +..
Ciauz
P.s abbiamo la stessa cpu! ma ancora x poco....:cool:
In effetti voglio cambiare anch'io cpu per passare a core duo...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.