En muchos anuncios de ordenadores existen unas cifras que parecen sacadas de un código de espías, algo como: "256 Kb" o "512 burst-sram". Ante semejante galimatías, nuestro amigo informático de turno no duda en exclamar: "ah, sí, eso es la caché", en un tono rotundo que no deja lugar a más preguntas. Pero en nuestro fuero interno, seguimos preguntándonos ¿la ca-qué?
Para qué sirve
Para empezar, digamos que la caché no es sino un tipo de memoria del ordenador; por tanto, en ella se guardarán datos que el ordenador necesita para trabajar. ¿Pero no era eso la RAM?, preguntará usted. Bueno, en parte sí. A decir verdad, la memoria principal del ordenador (la RAM, los famosos 8, 16, 32 ó 64 "megas") y la memoria caché son básicamente iguales en muchos aspectos; la diferencia está en el uso que se le da a la caché.
Debido a la gran velocidad alcanzada por los microprocesadores desde el 386, la RAM del ordenador no es lo suficientemente rápida para almacenar y transmitir los datos que el microprocesador (el "micro" en adelante) necesita, por lo que tendría que esperar a que la memoria estuviera disponible y el trabajo se ralentizaría. Para evitarlo, se usa una memoria muy rápida, estratégicamente situada entre el micro y la RAM: la memoria caché.
Ésta es la baza principal de la memoria caché: es muy rápida. ¿Cuánto es "muy rápida"? Bien, unas 5 ó 6 veces más que la RAM. Esto la encarece bastante, claro está, y ése es uno de los motivos de que su capacidad sea mucho menor que el de la RAM: un máximo en torno a 512 kilobytes (512 Kb), es decir, medio "mega", frente a 16 ó 32 megas de RAM. Además, este precio elevado la hace candidata a falsificaciones y timos.
Pero la caché no sólo es rápida; además, se usa con una finalidad específica. Cuando un ordenador trabaja, el micro opera en ocasiones con un número reducido de datos, pero que tiene que traer y llevar a la memoria en cada operación. Si situamos en medio del camino de los datos una memoria intermedia que almacene los datos más usados, los que casi seguro necesitará el micro en la próxima operación que realice, se ahorrará mucho tiempo del tránsito y acceso a la lenta memoria RAM; esta es la segunda utilidad de la caché.
Para los que tengan curiosidad por ver cómo es la caché (aunque en muchas ocasiones no resulta fácil de reconocer, por venir encapsulada en algún tipo de chip de control o toda junta en un único chip), aquí tienen una foto de unos chips de caché:
El tamaño de la caché
Leído lo anterior, usted pensará: pues cuanto más grande, mejor. Cierto, pero no; o más bien, casi siempre sí. Aunque la caché sea de mayor velocidad que la RAM, si usamos una caché muy grande, el micro tardará un tiempo apreciable en encontrar el dato que necesita. Esto no sería muy importante si el dato estuviera allí, pero ¿y si no está? Entonces habrá perdido el tiempo, y tendrá que sumar ese tiempo perdido a lo que tarde en encontrarlo en la RAM.
Por tanto, la caché actúa como un resumen, una "chuleta" de los datos de la RAM, y todos sabemos que un resumen de 500 páginas no resulta nada útil. Se puede afirmar que, para usos normales, a partir de 1 MB (1024 Kb) la caché resulta ineficaz, e incluso pudiera llegar a ralentizar el funcionamiento del ordenador. El tamaño idóneo depende del de la RAM, y viene recogido en la siguiente tabla:
Se debe hacer notar que muchos "chipsets" para Pentium, como los conocidos Intel "Tritón" VX o TX, no permiten cachear más de 64 MB de RAM; es decir, que a partir de esta cifra, ES COMO SI NO EXISTIERA CACHé EN ABSOLUTO (0 Kb!!).
Así que si necesita instalar más de 64 MB en una placa para Pentium, busque una placa que permita cachear más de esa cifra (como algunas -no todas- las que tienen chipsets "Tritón" HX). Para saber más sobre chipsets, pulse aquí.
La caché interna o L1
La caché a la que nos hemos referido hasta ahora es la llamada "caché externa" o de segundo nivel (L2). Existe otra, cuyo principio básico es el mismo, pero que está incluida en el interior del micro; de ahí lo de interna, o de primer nivel (L1).
Esta caché funciona como la externa, sólo que está más cerca del micro, es más rápida y más cara, además de complicar el diseño del micro, por lo que su tamaño se mide en pocas decenas de kilobytes. Se incorporó por primera vez en los micros 486, y por aquel entonces era de 8 Kb (aunque algunos 486 de Cyrix tenían sólo 1 Kb). Hoy en día se utilizan 32 ó 64 Kb, aunque seguro que pronto alguien superará esta cifra.
La importancia de esta caché es fundamental; por ejemplo, los Pentium MMX son más rápidos que los Pentium normales en aplicaciones no optimizadas para MMX, gracias a tener el doble de caché interna. A decir verdad, la eficacia de la "optimización MMX" de aplicaciones como Microsoft Office, está por ver...
La caché de los Pentium II/III y Celeron
Puede que haya oido hablar de que los Pentium II y Pentium III (y su antecesor el extinto Pentium Pro) tienen 512 Kb de caché interna; esto es inexacto, cuando no una "confusión interesada" por parte de Intel y los vendedores. Los Pentium II y III tienen 32 Kb de caché interna, y 512 Kb de caché dentro del cartucho SEC pero externa al encapsulado del microchip.
Este contrasentido se explica si se ve un Pentium II "destripado" como éste:
Dentro de la gran carcasa negra encontramos una placa de circuito en la que va soldado el micro en sí (en el centro de la imagen), junto con varios chips que forman la caché, externa a lo que es propiamente el micro. Sin embargo, esta caché funciona a una frecuencia que es la mitad de la del micro (es decir, a 133, 150 MHz o más), mientras que la caché externa clásica funciona a la de la placa base (de 50 a 66 MHz en los Pentium y 100 MHz en los AMD K6-2).
Los que casi pueden presumir de tener una gran caché interna son los micros más modernos: Pentium III Coppermine, Celeron Mendocino (no los antiguos Celeron, que carecían de caché L2 en absoluto) y AMD Athlon Thunderbird y Duron. Estos micros tienen la caché L2 integrada en el propio encapsulado del micro y la hacen funcionar a la misma velocidad que éste, de forma que no llega a ser tan rápida como la caché L1 pero sí lo bastante como para ser más rápidos que los modelos con caché externa, pese a tener la mitad o menos de caché.
Digamos, en fin, que los Pentium II y los primeros Pentium III y Celeron tienen una caché interna y una semi-externa, lo cual no es poco mérito en absoluto; pero las cosas son como son, mal que le pese a los magos de la publicidad.
Apéndice 1 - Sobre cachés falsas y tramposos
Como ya dijimos, la caché es un bien preciado, y preciado en bastantes pesetas. Por ello, la natural codicia de ciertos personajes les ha llevado a fabricar placas base con chips de caché de vulgar plástico sólido, método que puede enriquecerles en unas 2.000 pesetas por placa y reducir el rendimiento del ordenador de un 5 a un 10%.
Este fenómeno tuvo su auge con las placas base para 486, aunque no se puede asegurar que esté totalmente erradicado. Desgraciadamente, hay pocos métodos para saber si un chip de caché es bueno o falso, y casi ninguno se basa en la observación directa (como no sea por radiografía). Los medios principales para detectar el fraude son:
- observar chips sumamente burdos y mal rematados, con bordes de plástico y serigrafiados de baja calidad (suponiendo que sepa identificar el o los chips de caché, lo cual puede ser difícil);
- utilizar alguna herramienta de diagnóstico por software que detecte la presencia o ausencia de caché.
Sobre estos programas de diagnóstico, cabe comentar que no son infalibles, por lo que si alguno no detecta la caché conviene probar con otro (pero conque uno la detecte, es casi seguro que es auténtica). Además, pueden fallar con ciertos tipos muy rápidos y modernos de caché, por lo que no suele servir el mismo programa para la placa de un 486 y la de un Pentium. Algunos de estos programas (para placas 486, que suelen ser las más falsificadas) se pueden encontrar en Internet.
Si usted acaba convencido de que su placa tiene una caché falsa (aunque si se trata de una para Pentium puede llevarle su tiempo), lo mejor que puede hacer es no volver a comprar en la tienda donde la adquirió o, si tiene tiempo y ganas, irse a quejar. No es probable que le hagan caso, pero ¡que le oigan! (Y si les engañó su proveedor, no es excusa, sino falta de profesionalidad.)
Apéndice 2 - Tecnologías usadas en la caché
Aunque en general no se puede elegir qué memoria caché adquirir con el ordenador, puesto que se vende conjuntamente con la placa base (o con el micro, si es un Pentium II, un Pentium III o un Mendocino), conviene tener claros unos cuantos conceptos por si se diera el caso de tener varias opciones a nuestra disposición.
Ante todo, el tipo de memoria empleada para fabricar la caché es uno de los factores más importantes. Suele ser memoria de un tipo muy rápido (como por ejemplo SRAM o SDRAM) y con características especiales, como burst pipeline: transmitir datos "a ráfagas" (burst).
La velocidad de la caché influye en su rendimiento, como es obvio. Las cachés se mueven en torno a los 10 nanosegundos (ns) de velocidad de refresco; es decir, que cada 10 ns pueden admitir una nueva serie de datos. Por tanto, a menor tiempo de refresco, mayor velocidad. Si quiere saber cómo detectar "a ojo descubierto" la velocidad de un chip de memoria, pulse sobre este hipervínculo.
El último parámetro que influye en las cachés es la forma de escribir los datos en ellas. Esto se suele seleccionar en la BIOS, bien a mano o dejando que lo haga el ordenador automáticamente; las dos formas principales son:
- Write-Througth: impronunciable término que indica el modo clásico de trabajo de la caché;
- Write-Back: un modo más moderno y eficaz de gestionar la caché.
Para más datos sobre la misteriosa BIOS y cómo operar sobre ella, vaya al artículo dedicada a ella ¿Qué es... la BIOS?.