martes, 8 de mayo de 2012

CACHÉ


Memoria Caché
La caché es una memoria más pequeña y rápida, la cual almacena copias de datos ubicados en la memoria principal que se utilizan con más frecuencia.
Es un conjunto de datos duplicados de otros originales, con la propiedad de que los datos originales son costosos de acceder, normalmente en tiempo, respecto a la copia en la caché. Cuando se accede por primera vez a un dato, se hace una copia en el caché; los accesos siguientes se realizan a dicha copia, haciendo que el tiempo de acceso medio al dato sea menor.
Cuando el procesador necesita leer o escribir en una ubicación en memoria principal, primero verifica si una copia de los datos está en la caché. Si es así, el procesador de inmediato lee o escribe en la memoria caché, que es mucho más rápido que de la lectura o la escritura a la memoria principal.

Esta memoria se organiza en niveles. Cuanto más cercano al procesador más rápida, más cara y por tanto más pequeña. Debido a esto usamos los nombres cache de nivel 1, nivel 2 y nivel 3. También lo puedes ver como L1, L2 y L3.
Si el procesador necesita un dato de la memoria comprueba si esta se encuentra en el nivel 1. En caso de no encontrarla se busca en el nivel 2 y si no en el nivel 3. El sistema se complementa con un algoritmo que es capaz de colocar los datos que más utilizas en los niveles más cercanos al procesador.
En comparación con la memoria RAM la cache de nivel 3 que es la mayor de todas es unas mil veces más pequeña. Por suerte los programas suelen realizar muchas operaciones sobre los mismos datos y tienen un efecto radical en el rendimiento.



Caché de 1er nivel (L1): 

Esta caché está integrada en el núcleo del procesador, trabajando a la misma velocidad que este. La cantidad de memoria caché L1 varía de un procesador a otro, estando normalmente entra los 64KB y los 256KB. Esta memoria suele a su vez estar dividida en dos partes dedicadas, una para instrucciones y otra para datos. 



Caché de 2º nivel (L2): 



Integrada también en el procesador, aunque no directamente en el núcleo de este, tiene las mismas ventajas que la caché L1, aunque es algo más lenta que esta. La caché L2 suele ser mayor que la caché L1, pudiendo llegar a superar los 2MB. 

A diferencia de la caché L1, esta no está dividida, y su utilización está más encaminada a programas que al sistema. 



Caché de 3er nivel (L3): 



Es un tipo de memoria caché más lenta que la L2, muy poco utilizada en la actualidad. 



En un principio esta caché estaba incorporada a la placa base, no al procesador, y su velocidad de acceso era bastante más lenta que una caché de nivel 2 o 1, ya que si bien sigue siendo una memoria de una gran rapidez (muy superior a la RAM, y mucho más en la época en la que se utilizaba), depende de la comunicación entre el procesador y la placa base. 



Para hacernos una idea más precisa de esto, imaginemos en un extremo el procesador y en el otro la memoria RAM. Pues bien, entre ambos se encuentra la memoria caché, más rápida cuanto más cerca se encuentre del núcleo del procesador (L1). 



Las memorias caché son extremadamente rápidas (su velocidad es unas 5 veces superior a la de una RAM de las más rápidas), con la ventaja añadida de no tener latencia, por lo que su acceso no tiene ninguna demora... pero es un tipo de memoria muy cara. 

Esto, unido a su integración en el procesador (ya sea directamente en el núcleo o no) limita bastante el tamaño, por un lado por lo que encarece al procesador y por otro por el espacio disponible. 



En cuanto a la utilización de la caché L2 en procesadores multinucleares, existen dos tipos diferentes de tecnologías a aplicar. 



Por un lado está la habitualmente utilizada por Intel, que consiste en que el total de la caché L2 está accesible para ambos núcleos y por otro está la utilizada por AMD, en la que cada núcleo tiene su propia caché L2 dedicada solo para ese núcleo. 



La caché L2 apareció por primera vez en los Intel Pentium Pro, siendo incorporada a continuación por los Intel Pentium II, aunque en ese caso no en el encapsulado del procesador, sino externamente (aunque dentro del procesador). 




Imagen de un P-II, en la que se puede observar los chips de la caché L2.



Tamaño ideal para la cache
El tamaño fijo de cache, el ideal es un 50% de lo que tienes de memoria física.

No hay comentarios:

Publicar un comentario