QUE ES LA CACHE L1, L2 Y L3
QUE ES LA CACHE L1, L2 Y L3
La memoria caché de un procesador se organiza por
niveles. Los primeros niveles son los más rápidos, pero de menor capacidad,
mientras que los últimos son los más lentos, pero tienen mayor capacidad para
guardar almacenar datos
La caché L1 es la caché principal de la CPU. Es el
«nivel» más rápido de caché de CPU y también tiene la capacidad de memoria más
pequeña. La caché L2 es ligeramente más lenta que la L1, pero tiene mayor
capacidad.
Cuando un procesador busca instrucciones y datos que
necesita primero recurre a la memoria caché L1, si no encuentra nada recurre a
la caché L2 y finalmente a la caché L3.
En los
procesadores encontramos la memoria caché L1, L2 y L3. En las
tarjetas gráficas podemos encontrar los 3 niveles, pero solo en AMD.
La memoria L1 suele tener KB, sin llegar a 1024 KB (1 MB), siendo la
más pequeña. Con la L2 ya empezamos a ver más 1 MB o más por núcleo.
La memoria RAM es mucho más rápida que un disco duro,
sobre todo que los discos mecánicos. Pero aún existe una memoria más rápida en
nuestro ordenador, concretamente dentro de nuestro procesador, y esta es
lamemoria caché.
Memoria caché L1
La caché L1 es la configuración más rápida, la que se
encuentra más cerca de los núcleos. Ésta almacena los datos que inmediatamente
van a ser usados por la CPU, y es por ello que las velocidades están en torno a
los 1150 GB/s y la latencia en tan solo 0,9 ns.
El tamaño de esta memoria caché está en torno a los 256
KB en total, aunque según la potencia de la CPU (y coste) será menor o mayor,
de hecho, los procesadores de Workstation como el Intel Core i9-7980 XE cuentan
con unos 1152 KB en total.
Esta caché L1 se divide en dos tipos, la caché L1 de
datos y la caché L1 de instrucciones, la primera se encarga de almacenar los
datos que se procesarán y la segunda almacena la información sobre la operación
a realizar (suma, resta, multiplicación, etc).
Además, cada núcleo cuenta con sus propias memorias caché
L1, así que, si tenemos un procesador de 6 núcleos, tendremos 6 caché L1
divididas en L1 D y L1 I. En los procesadores Intel cada una de ellas son de 32
KB, y en los procesadores AMD también son de 32 KB o 64 KB en la L1 I. Por
supuesto variarán según la calidad y potencia, como siempre.
Memoria caché L2
La siguiente que encontramos será la caché L2 o de nivel
2. Esta tiene mayor capacidad de almacenamiento, aunque será un poco más lenta,
de unos 470 GB/s y 2,8 ns de latencia.
El tamaño de almacenamiento suele variar entre los 256 KB y los 18 MB.
Ya vemos que son capacidades considerables para las velocidades que manejamos.
En ella se almacenan las instrucciones y datos que pronto
serán utilizadas por la CPU y en este caso no está dividida en Instrucciones y
datos. Pero sí que tenemos una caché L2 por cada núcleo, al menos es así en los
procesadores más relevantes. Por cada núcleo, suele haber 256, 512 o hasta 1024
KB.
Memoria caché L3
Finalmente nos encontraremos con la caché L3, la cual
tiene un espacio dedicado para ella en el chip del procesador. Será la de mayor
tamaño y también la más lenta, hablamos de más de 200 GB/s y 11 ns de latencia.
En la actualidad un procesador que se precie va a tener
al menos 4 MB de caché L3, y puede verse unidades de hasta 64 MB. La L3 se
reparte normalmente en unos 2 MB por cada núcleo, pero digamos que no está
dentro de cada núcleo, así que hay un bus de datos para comunicarse con ellos.
De este bus y del propio de la memoria RAM depende en gran medida la solvencia
y velocidad de una CPU, y es donde Intel saca su poderío frente a AMD.
Los datos fluyen desde el disco duro hasta el núcleo de
procesamiento a través de todos los niveles de memoria. Donde primero busca el
procesador la siguiente instrucción a procesar, es en la memoria caché, un
sistema de calidad debería se saber ubicar correctamente los datos en función
de su importancia para así reducir al máximo los tiempos de acceso a ellos, lo
que se llama latencia.
La latencia es entonces, el tiempo que se tarda en
acceder a los datos desde la memoria. Mientras más lejos y más lenta, mayor
latencia y más tiempo tendrá que esperar la CPU su siguiente instrucción. Así
cuando una instrucción no está situada en la memoria caché, el procesador debe
buscarla directamente en la memoria RAM, a esto se le denomina falta de caché o
caché miss, es entonces cuando se experimenta un PC más lento.
El ancho de bus también es de gran importancia para la
velocidad, ya que éste marca la capacidad para transferir mayores bloques de
datos desde la memoria a la CPU. Tanto CPU como memoria RAM son de 64 bits,
pero la función de Dual Channel es capaz de doble esta capacidad a 128 bits
para que la transferencia entre estos elementos tenga mayor capacidad.