¿Cómo se realiza el direccionamiento de las cachés de CPU L1/L2/L3 frente a la asignación de RAM?

¿Cómo se realiza el direccionamiento de las cachés de CPU L1/L2/L3 frente a la asignación de RAM?

A medida que aumentan los tamaños de caché en las CPU, ¿cómo se administra en comparación con la RAM? ¿Es necesario tener en cuenta algunas consideraciones al crear una aplicación para asegurarse de aprovechar al máximo su caché o se trata completamente del nivel de hardware?

Respuesta1

Hay muchas consideraciones que se deben tener en cuenta al desarrollar software con respecto a la utilización de la caché. Tanto es así que lo único que puedo hacer es señalar este artículo.

https://software.intel.com/en-us/articles/software-techniques-for-shared-cache-multi-core-systems

En cuanto a caché versus RAM, una caché de CPU simplemente almacena datos de uso frecuente en la CPU, lo que permitirá un acceso más rápido a ellos que si tuvieran que viajar desde la RAM. Consulte la página 2 del artículo de ars technica para obtener una tabla sobre los tiempos de latencia. Es una gran lectura.

http://arstechnica.com/gadgets/2002/07/caching/

información relacionada