(Memoria Cache).
Tecnológico de Estudios Superiores de Coacalco
(TESCo).
Ingeniería en Sistemas Computacionales (SIC).
Grupo: 3512. Turno: Matutino.
Materia: Arquitectura De Computadoras.
Alumno:
Lozano Jiménez Ángel Israel.
Matricula: 201810069
¿Qué es la memoria caché?
Este componente, que a veces pasa desapercibido en pos de la cantidad de núcleos
de los procesadores y su velocidad, fue todo un hito en la historia de la computación.
A un nivel básico, la memoria caché es un tipo de memoria muy rápida que contiene
un pequeño conjunto de instrucciones que el equipo utiliza con asiduidad para
realizar sus tareas cotidianas. El equipo carga esas instrucciones en la caché
usando algoritmos complejos para poder acceder a ellos de manera rápida, eficiente
y sin más obstáculos de por medio.
En otras palabras, la caché es un tipo de memoria a la que el procesador tiene
acceso directo, casi instantáneo, y en la que se almacenan los datos e instrucciones
que más utiliza para «tenerlos a mano» de manera inmediata.
Niveles de caché en un procesador moderno
Especificamos «procesador moderno» porque los primeros procesadores, en los
cuales se comenzó a implementar este tipo de memoria, no funcionaban así. Los
procesadores modernos tienen varios niveles de caché, diferenciados en L1, L2, L3
e incluso L4 en algunos casos (la L viene de «level», nivel en inglés, por lo tanto
hablamos de caché de nivel 1, nivel 2, etc.).
• La caché L1 es la más rápida pero más pequeña de todas. Contiene los datos
que el procesador necesitará para realizar la mayoría de operaciones, los
más básicos, aunque tiene un propósito doble: instrucciones y datos. El
primero son las operaciones que tiene que realizar el procesador, y el
segundo es la información que se debe procesar. El tamaño de esta caché
suele rondar los 256 KB, aunque en algunos modelos de procesador ya llega
a 1 MB. Por ejemplo, un Intel Core i9-9900K tiene 512 KB de caché L1.
• La caché L2 es un poco más lenta (pero todavía muy rápida) y algo más
grande que la L1. Normalmente tiene entre 256 KB y 8 MB de capacidad. Por
ejemplo, el Core i9-9900K tiene 2 MB de caché L2.
• La caché L3 es, de nuevo, más lenta pero más grande que la anterior, y tiene
unas capacidades típicas de entre 4 y 50 MB. El Core i9-9900K tiene en este
caso 16 MB de caché L3, pero se comporta de manera diferente a las
anteriores porque es compartida entre todos los núcleos del procesador.
¿Cómo funciona la memoria caché del procesador?
Para ver cómo funciona la memoria caché, debemos saber que los ordenadores
tienen tres tipos de memoria: por un lado, está la memoria de almacenamiento, la
que encontramos en discos duros y SSD, que suponen el repositorio más grande del
equipo. Por otro lado, tenemos la memoria RAM, o memoria de acceso aleatorio,
que es mucho más rápida pero más pequeña que la anterior. Finalmente tenemos la
memoria caché que está dentro del propio procesador, que es el más rápido de
todos pero también el más pequeño.
Proporcionalmente hablando, hoy en día es habitual manejar capacidades de varios
terabytes cuando hablamos de discos duros, mientras que cuando hablamos de
RAM, esta cantidad se reduce a unos pocos gigabytes (hoy en día lo más habitual es
ver 16 ó 8 GB de RAM). La caché, por su parte, es todavía mucho más pequeña, y
de hecho se mide en megabytes o kilobytes.
La manera en la que funciona este tipo de memoria es que, cuando se inicia un
programa, éste comienza a ejecutar una serie de instrucciones que se encuentran en
su código y son gestionadas por el procesador. Esa información primero se carga en
la RAM y luego pasa al procesador, pero para mejorar la eficiencia con la que éste la
procesa, las instrucciones principales y más utilizadas se copian en la caché, de
manera que el procesador pueda tener acceso inmediato a ellas. Y esto mejora el
rendimiento en gran medida, por supuesto.
La secuencia de uso de la caché
Vamos a ver el comportamiento de los datos a tenor de lo que hemos explicado ya:
cuando se ejecuta un programa en el PC, los datos van a la memoria RAM, y desde
ésta a la caché L3, luego a la L2 y finalmente a la L1. Mientras el programa esté en
ejecución, el procesador irá a buscar la información que necesita procesador primero
a la memoria más rápida, la caché L1. Si no la encuentra ahí, se irá a la L2, luego a
la L3, y si no está en ninguna, entonces la buscará en la RAM.
Este es el motivo de que la memoria caché sea tan importante, así como lo son los
tiempos de acceso. Imaginad que si cada vez que el procesador tiene que ejecutar
una instrucción (y ejecuta miles por segundo) tiene que esperar un nanosegundo,
que es lo que tarda el tiempo de acceso. La suma de este tiempo, al final, sucumbiría
en una enorme pérdida de rendimiento, y volviendo al principio este era
precisamente el problema que encontraron en los 80, y motivo por el que se creó la
caché.
Conclusión:
Para mí me es increíble como la memoria cache es tan importante
como tal y el cual es irónico que sea más rápida en medidas que
no tienen comparación que la memoria RAM, tanto que una
memoria caché así de grande como la RAM seria absurdamente
caro.
Bibliografía:
OSCA R CAMACHO
Diseño de Sistemas de Memoria Cache de Alto Rendimiento aplicando
Algoritmos de Acceso Seudo-Especulativo
Revistas.unam.mx
http://www.revistas.unam.mx/index.php/cys/article/view/2633