¿Qué es el caché de coherencia?

May 21

La coherencia de caché es el problema natural que se desarrolla cuando se accede y alterada por múltiples agentes conjunto de datos de un sistema. El área principal de la arquitectura de computadores, donde esto se convierte en un problema es en equipos multiprocesador. Cada procesador en un equipo multiprocesador tiene su propia caché que las cargas y almacena la información de la memoria de acceso aleatorio (RAM). Cuando dos procesadores están accediendo a la misma área de la memoria, la coherencia de caché se perdería si no se toman ciertas precauciones.

Sin coherencia de caché, un sistema multiprocesador sería incapaz de funcionar. Hay varios métodos que se han desarrollado con el fin de abordar esta cuestión y evitar posibles problemas. Coherencia, espionaje y snarfing basada en directorios tres métodos que se utilizan para prevenir la pérdida de coherencia de caché.

Coherencia basada en directorios funciona como un filtro con el fin de garantizar la coherencia. Los datos se coloca dentro de una parte de la memoria que es accesible a todos los procesadores. Cuando se cambia la información que se almacena dentro de esa área de la memoria, el sistema actualizará o bien los caches o invalidar ellos.

Snooping requiere el procesador para controlar todos los accesos a los lugares de memoria que hayan sido almacenados en caché. Esto permite que el procesador de saber cuando se ha producido una operación de escritura. Al conocer cuando se produce una operación de escritura, el procesador puede actualizar su memoria caché.

Snarfing es bastante similar a husmear. Snarfing no sólo implica el seguimiento de los accesos a ubicaciones de memoria que han sido almacenadas en caché, sino también el control de la información real que se almacena en la memoria. Cuando se produce una escritura en la memoria, la memoria caché puede ser actualizado con la nueva información.

Sistemas de coherencia basada en directorios tienen una relativamente alta latencia, lo que resulta en el procesamiento más lento. Menores requerimientos de ancho de banda permiten a los sistemas de coherencia basados ​​en directorios para ser práctico en aplicaciones a gran escala de la coherencia de caché. Los más procesadores que utiliza un sistema, más ventajas que puede tener el uso de un sistema de coherencia basada en directorios.

Snooping es un método mucho más rápido. Este método requiere más ancho de banda que el enfoque basado en el directorio. Este método es capaz de ser utilizado con eficacia en sistemas que tienen relativamente pocos procesadores.

Snarfing no se utiliza por lo general como un método para mantener la coherencia de caché. Esto es principalmente porque snarfing requiere más recursos para ser utilizados como comparación tanto con snooping y métodos basados ​​en directorios. Para que un sistema de snarfing a trabajar, debe realizar un seguimiento tanto de las direcciones de memoria y los datos almacenados en las áreas de memoria. La cantidad de ancho de banda y procesamiento que es absorbido por este método hace que sea indeseable para la mayoría de aplicaciones de mantenimiento de la coherencia de caché.