En informática, el caché de CPU, es un búfer especial de memoria que poseen los ordenadores.
Funciona de una manera similar a como lo hace la memoria principal (RAM),pero es de menor tamaño y de acceso más rápido.Es usado por la unidad central de procesamiento para reducir el tiempo de acceso a datos ubicados en la memoria principal que utilizan con más frecuencia.
Cuando se accede por primera vez a un dato,se hace una copia en el caché;los accesos siguientes se realizan a dicha copia,haciendo que el tiempo de acceso medio al dato sea menor.Cuando el procesador necesita leer o escribir en una ubicación en memoria principal, primero verifica si una copia de los datos está en el caché.Si es así, el procesador de inmediato lee o escribe en la memoria caché, que es mucho más rápido que de la lectura o la escritura a la memoria principal.
Cualquier programa esta compuesto por instrucciones y datos, los cuales, se almacenan en el disco duro cuando el equipo esta apagado. Al producirse el encendido, pasan a la memoria RAM de donde son leídos por el procesador.
La velocidad a la que el micro es capar de acceder a la memoria es muy importante ya que puede limitar sus prestaciones. Ten en cuenta que si no tiene operaciones que ejecutar o le falta algún dato, tendrá que esperar, perdiendo un valioso tiempo a que estén disponibles.
Por desgracia, la memoria RAM es un dispositivo independiente y por lo tanto se necesita tiempo para acceder a ella. Esto que puede parecer algo anecdótico, estamos hablando del orden de nanosegundos, puede hacer que todos los bloques funcionales del micro se paren a la espera de datos, provocando bloqueos muy molestos.
¿Para qué sirve?
La memoria cache es la respuesta al problema de rendimiento de la memoria RAM. Es muy pequeña y esta incluida en el interior del microprocesador. Su función es sencilla conseguir que los accesos se hagan de la manera más eficiente posible.
¿Cómo funciona?
Esta memoria se organiza en niveles, de menor a mayor tamaño, si el procesador necesita un dato de la memoria comprueba si este se encuentra en el primer nivel. En caso de no encontrarlo se busca en el segundo nivel y si no en el tercero. El sistema se complementa con un controlador que coloca los datos más utilizados en los niveles más cercanos al procesador.
Cada uno de estos niveles tiene un bloque de control. Este se encarga de almacenar y poner los datos a disposición del micro. El tamaño de este bloque es proporcional al de la propia memoria cache que administra. Si este elemento es más complejo lleva a que se produzcan mayores retardos al acceder a los datos. Como queremos pocos retardos en los niveles más bajos estos tendrán menor capacidad.
En comparación con la memoria RAM, la cache de nivel tres, que es la mayor de todas, es unas mil veces más pequeña. Por suerte, los programas suelen realizar muchas operaciones sobre los mismos datos y por lo tanto se consiguen grandes mejoras al usar esta técnica.
¿Diferencias AMD e Intel?
La cache es un sistema muy complejo que se puede implementar de diversas maneras. A lo largo de los años las arquitecturas de los micros han avanzado basándose en mejoras de la tecnología de fabricación lo cual ha llevado a que puedas tener disponibles con cada nueva generación memorias mayores con algoritmos más avanzados y eficientes.
Como ejemplos tienes a continuación el tamaño para la arquitectura Sandy Bridge de Intel, los Core de Segunda Generación, y la que tienen los Phenom II de AMD, con arquitectura Star:
Nivel 1 o L1
Por cada uno de los núcleos.
Intel. 32 KB de datos + 32 KB de instrucciones
AMD. 64 KB de datos + 64 KB de instrucciones
Nivel 2 o L2
Por cada uno de los núcleos. En este caso las caches de instrucciones y datos van juntas.
Intel. 256 KB.
AMD. 512 KB.
Aparte ambos poseen una cache de nivel tres que comparten todos los núcleos y que dependiendo del modelo puede llegar a varios megabytes.
¿Qué tipo de aplicaciones se ven más influidas?
La memoria cache es capaz de acelerar todo tipo de aplicaciones. Podrás ver modelos de procesadores que tienen diferencias de precio bastante grandes donde se distinguen únicamente en varios megas de esta memoria.
Al ser un sistema pensado para evitar bloqueos sus ventajas no son lineales. Es decir, una memoria de 6 megas, no te dará el doble de prestaciones que una de 3 si no que puede ser mucho mayor. En este caso y como ocurre por ejemplo en el tamaño de la memoria RAM cuanto mayor mejor.
No hay comentarios:
Publicar un comentario