Colección de citas famosas - Slogan de motivación - ¿Qué significa caché de CPU?

¿Qué significa caché de CPU?

El caché de la CPU es una memoria temporal entre la CPU y la memoria. La capacidad es menor que la memoria, pero la velocidad de intercambio es más rápida. Los datos en el caché son una pequeña parte de la memoria, pero la CPU accede a esta pequeña parte en un corto período de tiempo. Cuando la CPU llama a una gran cantidad de datos, se puede llamar directamente desde el caché sin memoria, lo que acelera la lectura. Se puede ver que agregar caché a la CPU es una solución eficiente, de modo que toda la memoria (memoria caché) se convierte en un sistema de almacenamiento de alta velocidad, con caché y memoria. El caché tiene un gran impacto en el rendimiento de la CPU, principalmente debido a la secuencia de intercambio de datos de la CPU y el ancho de banda entre la CPU y el caché.

El principio de funcionamiento del caché es que cuando la CPU quiere leer un dato, primero lo busca en el caché. Si lo encuentra, lo lee inmediatamente y lo envía a la CPU. tratamiento. Si no se encuentra, se leerá de la memoria a una velocidad relativamente lenta y se enviará a la CPU para su procesamiento. Al mismo tiempo, el bloque de datos donde se encuentran estos datos se transferirá al caché, de modo que todos los datos se puedan leer más tarde desde el caché sin llamar a la memoria.

Es este mecanismo de lectura el que hace que la tasa de aciertos de la caché de lectura de la CPU sea muy alta (la mayoría de las CPU pueden alcanzar alrededor del 90; en otras palabras, el 90% de los datos leídos por la CPU la próxima vez están en la caché). De estos, sólo es necesario leer de la memoria unos 10. Esto ahorra mucho tiempo a la CPU para leer directamente la memoria y también hace que la CPU básicamente no necesite esperar al leer datos. En términos generales, el orden en que la CPU lee los datos es primero el caché y luego la memoria.

El primer caché de CPU era completo y tenía muy poca capacidad. Intel ha estado clasificando cachés desde la era Pentium. En ese momento, el caché integrado en el núcleo de la CPU no era suficiente para satisfacer las necesidades de la CPU y las limitaciones del proceso de fabricación no podían aumentar significativamente la capacidad del caché. Por tanto, existe un caché integrado en la misma placa de circuito o placa base que la CPU. En este momento, el caché integrado con el núcleo de la CPU se denomina caché de primer nivel y el caché externo se denomina caché de segundo nivel. El caché de primer nivel se divide en caché de datos (D-Cache) y caché de instrucciones (I-Cache). Se utilizan para almacenar datos y ejecutar instrucciones para estos datos respectivamente, y la CPU puede acceder a ellos al mismo tiempo, lo que reduce los conflictos causados ​​por la contención por el caché y mejora la eficiencia del procesador. Cuando Intel lanzó el procesador Pentium 4, reemplazó el caché de instrucciones con un nuevo caché de seguimiento L1 con una capacidad de 12KμOps, lo que significa que puede almacenar 12K microinstrucciones.

Con el desarrollo de la tecnología de fabricación de CPU, la caché de segundo nivel también se puede integrar fácilmente en el núcleo de la CPU, y su capacidad también aumenta año tras año. Es inexacto definir los cachés de primer y segundo nivel en función de si están integrados en la CPU. Y con la integración de la caché de segundo nivel en el núcleo de la CPU, la gran división de frecuencia entre la caché de segundo nivel y la CPU también ha cambiado. En este momento, funciona a la misma velocidad que la frecuencia principal, lo que puede proporcionar una mayor velocidad de transmisión para la CPU.

La caché de nivel 2 es una de las claves del rendimiento de la CPU. Si bien el núcleo de la CPU permanece sin cambios, aumentar la capacidad de la caché de segundo nivel puede mejorar enormemente el rendimiento. Las CPU de gama alta y baja con el mismo núcleo a menudo tienen diferentes cachés L2, lo que muestra la importancia de la caché L2 para la CPU.

Cuando la CPU encuentra datos útiles en la caché, se denomina hit. La CPU accede a la memoria cuando no hay datos en el caché que la CPU necesita (esto se llama error). Teóricamente, en una CPU con caché de segundo nivel, la tasa de aciertos para leer la caché de primer nivel es del 80%. En otras palabras, los datos útiles que se encuentran en el caché de primer nivel de la CPU representan el 80% de los datos totales y el 20% restante se lee del caché de segundo nivel. Dado que los datos que se ejecutarán no se pueden predecir con precisión, la tasa de aciertos de la lectura del caché de segundo nivel también es de alrededor de 80 (los datos útiles leídos del caché de segundo nivel representan 16 del total de datos). Entonces habrá que recuperar algunos datos de la memoria, pero esto ya es un porcentaje bastante pequeño. Actualmente, existe un caché de tercer nivel en las CPU de gama alta, que está diseñado para los datos perdidos después de leer el caché de segundo nivel. En una CPU con caché de nivel 3, sólo es necesario recuperar aproximadamente el 5% de los datos de la memoria, lo que mejora aún más la eficiencia de la CPU.

Para garantizar una alta tasa de aciertos durante el acceso a la CPU, el contenido de la caché debe reemplazarse de acuerdo con un algoritmo determinado. Un algoritmo comúnmente utilizado es el algoritmo utilizado menos recientemente (algoritmo LRU), que elimina las filas a las que se accedió menos recientemente. Por lo tanto, es necesario configurar un contador para cada fila. El algoritmo LRU pone a cero el contador de la fila de aciertos e incrementa los contadores de otras filas en 1. Cuando es necesario realizar un reemplazo, se elimina la fila de datos con el valor de contador de fila más grande. Este es un algoritmo científico y eficiente. Su proceso de borrado de contador puede borrar algunos datos innecesarios del caché después de llamadas frecuentes y mejorar la utilización del caché.

En los productos de CPU, la capacidad del caché de primer nivel es básicamente entre 4 KB y 64 KB, y la capacidad del caché de segundo nivel se divide en 128 KB, 256 KB, 512 KB, 1 MB, 2 MB, etc. No hay mucha diferencia entre los productos en la capacidad de caché de primer nivel, pero la capacidad de caché de segundo nivel es la clave para mejorar el rendimiento de la CPU. El aumento de la capacidad de la caché L2 está determinado por el proceso de fabricación de la CPU. El aumento de la capacidad conducirá inevitablemente a un aumento en la cantidad de transistores en la CPU. Integrar una caché más grande en un área de CPU limitada requiere un proceso de fabricación más avanzado.