in

GeekyGeeky Una moneríaUna monería

¿Qué es y cómo funciona la memoria caché?

Un concepto que lleva décadas entre nosotros, pero que vale la pena repasar

Qué es la memoria caché

Interpretar al ordenador como un elemento único e indivisible suele ser lo más normal para el usuario promedio, pero en segundo plano encontramos una amplia lista de sistemas y recursos muy complejos que trabajan en conjunto para garantizar el máximo rendimiento. Uno de los más importantes es el de la memoria caché, presente en procesadores, discos duros, unidades de estado sólido, y otros componentes. ¿Quieres saber qué es y cómo funciona la memoria caché? Sigue leyendo.

¡Velocidaaaaaaaad!

Más rápido. Todo debe funcionar más rápido, tardar menos tiempo, anticiparse al usuario. Nuestras exigencias han ido en aumento con el paso de los años, y si existe un problema de rendimiento, arrojamos más hardware en su dirección. MS-DOS 6.22 llegó a las estanterías entre abril y junio de 1994, y a partir de ese momento comenzamos a dejar atrás la famosa base de 640 kilobytes de RAM. Hoy, un ordenador necesita 8 gigabytes de memoria como mínimo absoluto, y ya se recomiendan 16 GB para casi todos los entornos.


Todo eso equivale a una expansión de 256 kilobytes de RAM para un viejo IBM PC. Qué lejos hemos llegado…

Pero sumar más núcleos o memoria no cuenta toda la historia. Hay otros jugadores muy importantes que pueden aumentar el rendimiento de manera espectacular, o dejar a un equipo de rodillas con su ausencia. El caso de la memoria caché es uno de los más citados. ¿Qué es y cómo funciona la memoria caché?


¿Qué es la memoria caché?

En términos relajados, la memoria caché es un tipo de memoria temporal que se encarga de almacenar datos para entregarlos al usuario con mayor velocidad en el futuro. Imagino que la has visto en acción: Por ejemplo, si abres un programa, lo cierras e inmediatamente vuelves a abrirlo, notarás que la segunda carga es mucho más rápida gracias a la intervención de la memoria caché, y de la memoria RAM en general.

La idea es reducir los tiempos de acceso. Si lees y ejecutas constantemente los mismos archivos, ¿por qué leerlos desde la unidad de almacenamiento o una memoria más lenta, cuando una pizca de caché puede acelerar todo el proceso? Otro aspecto muy interesante es que la memoria caché se presenta como una solución de software y/o hardware. Sin ir demasiado lejos, el clásico SuperFetch (ahora SysMain) utiliza la RAM del sistema como una caché gigante para precargar aplicaciones, y por el lado del hardware, tenemos cosas como la caché del procesador, y la caché DRAM en los SSD.


Caché en el CPU

que es la memoria caché
La RAM es lenta, el procesador no. La memoria caché sale al rescate.

El procesador llama la atención por poseer diferentes niveles de memoria caché. Una memoria caché muy grande tiene una excelente tasa de aciertos o hit rate, pero paga el precio con latencia adicional. Los múltiples niveles de caché buscan compensar eso, comenzando con memorias caché pequeñas pero extremadamente veloces, seguidas por memorias caché más lentas.


qué es la memoria caché
Una forma sencilla de visualizar los niveles de caché

Esta configuración permite a los núcleos procesar datos a mayor velocidad, y en lo posible evitar el cuello de botella del acceso a la memoria general. Ese problema es mucho más antiguo de lo que creemos: Todas las flechas apuntan a Sir Maurice Vincent Wilkes, científico británico de la Universidad de Cambridge, como el inventor del concepto de memoria caché en 1965, bautizada «memoria esclava» en aquel entonces.


qué es la memoria caché
El Intel Core i7-7700k del año 2017 utiliza tres niveles de memoria caché

Un procesador relativamente moderno como el Intel Core i7-10700F tiene tres niveles de memoria caché: L1 subdividida en 8 x 32 kilobytes para datos y otros 8 x 32 kilobytes para instrucciones, una caché L2 de 8 x 256 kilobytes, y finalmente una memoria caché L3 compartida a través de todos los núcleos, con un total de 16 megabytes. Ahora, esto no siempre fue así: Los viejos 486 y Pentium sólo ofrecían caché L1, y para acceder a una memoria caché L2, teníamos que depender de la placa base, con chips integrados o un zócalo de expansión.


Clásico Pentium MMX, junto al zócalo COAST (Cache-On-A-STick) para instalar caché L2 («benryves» en Reddit)

Casos históricos y actuales

¿Qué tan importante es la memoria caché en los procesadores? El Celeron original es un ejemplo contundente: Intel decidió lanzarlo al mercado como opción de bajo costo recortando la caché L2, y el resultado fue un CPU anémico al que debíamos overclockear hasta el límite para obtener algo potable de él.

Poco tiempo después debutaron los Celeron 300A «Mendocino» con 128 KB de caché L2 integrada. Esos 128 kilobytes fueron más que suficientes para duplicar el rendimiento del chip anterior, y transformar al Celeron 300A en uno de los mejores procesadores de la historia del overclocking.


qué es la memoria caché
Celeron 300A, gloria absoluta del overclocking («Qurren», CC BY-SA 3.0)

Evaluar su impacto en procesadores modernos es más complicado, pero no imposible. De hecho, la gente de Hardware Unboxed publicó un excelente vídeo comparando el incremento de caché L3 bajo un mismo número de núcleos e hilos. En esencia, los procesadores Intel Core i9-10900k (10C/20T), Core i7-10700k (8C/16T) y Core i5-10600k (6C/12T) fueron forzados a trabajar con la misma configuración del Core i3-10105F (4C/8T). La diferencia en el tamaño de la memoria caché L3 establece cierta ventaja para los chips superiores, sin embargo, el beneficio no se extiende a todos los juegos.

(N. del R.: Vídeo en inglés, pero las tablas son lo más importante)



Qué es la memoria caché: En resumen

La memoria caché es un atajo, un suplemento que nos ayuda a acceder a todos esos datos utilizados con frecuencia, de forma más veloz y eficiente. Tener más es mejor, pero su estructura debe ser la correcta. ¿Quieres saber más sobre la memoria caché? El sumario de HWiNFO (que también sirve para medir la temperatura y los voltajes en tu PC) presentará toda la información de tu procesador, esta lista actualizada revela los modelos de SSDs con caché DRAM integrada, y si tienes dudas sobre SuperFetch en tu equipo, siempre puedes desactivarlo. ¡Buena suerte!


Reportar

¿Qué te pareció?

Escrito por Lisandro Pardo

One Comment

Leave a Reply

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

skychart

Sky Chart Maker: Crea asombrosos gráficos del universo

VERTEDERO

Vertedero Animado de la Semana (N°174)