¿Qué es la Caché CPU y para qué sirve?
¿Qué es la Caché CPU?
La caché CPU es una memoria interna del procesador que va inserta en él. A diferencia de la memoria RAM, SSDs o HDDs, no puede ser sustituida, cambiada ni ampliada, es un recurso del propio procesador o CPU que está implantado físicamente en el mismo PCB. Como ya se aprecia en su nombre, es un tipo de memoria caché, extremadamente rápida y de muy poca capacidad que es usada por el procesador y todos sus núcleos para obtener información frecuentemente utilizada de una manera mucho más eficaz y rápida que si se obtuviese desde otro tipo de almacenamiento como la RAM o SSDs.
La caché de la CPU se suele dividir en 4 niveles de implementación; L1, L2, L3 y L4. Cuanto inferior sea el nivel, más rápida y menor capacidad tendrá. Cada uno de estos niveles está destinado a almacenar un tipo de información según su frecuencia de utilización y su importancia. Por ejemplo, la caché L1 de procesadores típicos del 2020 (como el Intel Core i7-10700K) es de tan solo 64 KB por núcleo y tiene una velocidad típica de más de 1100 GBps y latencias de menos de 1 ns. Al llegar a la caché L3 de este mismo procesador encontramos un tamaño de 16 MB (compartida por todos los núcleos) y una velocidad de unos 200 GBps con latencias de más de 10 ns. La caché CPU L2 quedaría entre medias de estas dos.
De esta manera, la caché CPU queda dividida en niveles y la información que almacenan cada uno de ellos dependerá de la importancia que tengan y de la frecuencia con la que se solicite. El procesador contiene una rutina que evalúa las últimas instrucciones realizadas y extrapola, según la información obtenida en instrucciones anteriores, para almacenar datos en la caché que serán potencialmente utilizados por la CPU.
¿Para qué sirve la Caché CPU?
La caché CPU sirve para agilizar el proceso de búsqueda de datos que solicita el procesador. Cuando la CPU realiza una instrucción y solicita ciertos datos, estos deben ser buscados en primer lugar en la RAM, si no lo están entonces en el almacenamiento (SSD o HDD), y tras su uso se cargarán a la RAM. Si esos mismos datos son requeridos por instrucciones posteriores, comenzarán a almacenarse en la caché CPU, además de en la RAM, ya que serán de acceso frecuente y la caché es bastante más rápida que la mejor de las RAM del mercado. Entonces los datos e instrucciones más frecuentes se almacenan en los distintos niveles de la caché CPU, proporcionando así un almacenaje muy limitado pero extraordinariamente rápido.
La utilidad de la caché CPU es básicamente esa, guardar datos de acceso frecuente para que no tengan que ser buscados en otros sistemas de almacenamiento más lentos. Luego, dependiendo del nivel en el que se haya guardado (L1, L2, L3 o L4) se utilizarán en unos ámbitos u otros, pero siempre serán usados por el procesador. Es más, los niveles superiores de la caché CPU pueden contener copias de niveles inferiores. Puede parecer contraproducente ya que se guardan los mismos datos en varias capas y se pierde almacenamiento. Esto es algo que depende de la estructura interna del procesador y de su fabricación (por Intel o AMD), ya que los niveles más altos de la caché CPU suelen estar compartidos entre todos los núcleos y así se puede centralizar de alguna manera el acceso a la información por parte de los distintos núcleos.
Si estás interesado en saber qué es la caché de una manera más generalizada, sin recurrir a la caché CPU, puedes echar un ojo a esta otra definición. Aunque también has de saber que existen otros tipos de caché como la caché web o caché del sistema.