PDA

View Full Version : Cache processori?


Algno93
30-06-2010, 16:22
Ciao, vorrei sapere delle cose, ma a cosa serve la cache sui processori? Poi Sui intel socket 775 c'è la l2, mentre sui amd e intel socket 1156 o 1366 c'è l2 e l3, ma cosa serve? Mi spiegate meglio?

calabar
30-06-2010, 20:33
In breve: i dati che la CPU processa deve andare a prenderli dalla ram, ma la ram è "lontana" e occorrono molti cicli di clock per reperire i dati.
Allora vengono utilizzate delle memorie più "vicine" e veloci che permettono di accedere rapidamente ai dati che vengono usati più spesso.
Queste memorie sono le cache, e sono disposte su più "livelli".

Maggiore è il livello, più "lontana" e lenta sarà la cache, ma al contempo più grande e quindi con la capacità di contenere più dati e quindi passarli al processore senza che questo debba andare a cercarli nella ram.

L'uso di queste memorie è una questione complessa e va valutata insieme all'architettura del processore, nulla insomma che una persona normale sia in grado di fare: la cosa migliore è semplicemente valutare le performance complessive del processore in oggetto.

Algno93
01-07-2010, 08:37
Ok grazie, però perchè ci sono anche cache di l1 l2 e l3? Questo non capisco

calabar
01-07-2010, 09:04
Come ti spiegavo sopra, sono diversi livelli di cache, sempre più "lontani" dal processore, dove le più vicine sono più veloci, costose e piccole, le più lontane sono economiche, lente (ma comunque più veloci dell'accesso in ram) e grandi.

Il perchè alcuni processori scelgano di utilizzare la sola l2 piuttosto che l2+l3 è una questione abbastanza complessa, ma comunque legata al modo in cui l'architettura specifica sfrutta la cache e ai costi di questa.