MESI
Short Description
Protocolo MESI...
Description
Protocolo MESI
Protocolo MESI M. Tinoc Tinoco o La Lara1 1,2
P. Centeno Becerra2
Instituto Politécnico Nacional IPN-CIDETEC
Maestría en Tecnología de Cómputo
Protocolo MESI Contenido
1 Contenido
MESI Objetivo del estado E Diagrama de transición Operaciones de MESI Ejemplo del protocolo MESI Optimización del protocolo MESI Rendimiento del multiproceso MESI Bibliografia
Protocolo MESI Contenido MESI
Introducción El protocolo Illinois, MESI
Principio Illinois, utilizado (con algunas modificaciones). Es una mejora del protocolo MSI, al que se le aÃśade un cuarto estado, E, con el objetivo de minimizar el numero de invalidaciones.
Protocolo MESI Contenido Objetivo del estado E
Objetivo del estado E
Distinguir los bloques privados (siempre serán copias únicas) de los compartidos, y, así, reducir el tráfico en el bus.
Protocolo MESI Contenido Estados de MESI
Estados de MESI
(M) Modificado: La línea de cache ha sido modificada (es distinta a su valor en memoria principal), y está
disponible sólo en esta cache. (E) Exclusivo: Únicamente una caché tiene una copia del bloque, y no ha sido modificado. (S) Compartido: potencialmente dos o más procesadores tienen este bloque en su caché en un estado no modificado. (I) Invalido: La línea de cache no contiene datos válidos.
Protocolo MESI Contenido Diagrama de transición
Diagrama de transición
Protocolo MESI Contenido
Cada línea de caché esta en uno de los cuatro estados, exclusive, compartido (shared o invalid), . Cada caché permanentemente al bus(snoop) y cambia de estado de la línea dependiendo de las operaciones y el mensaje que recibe. Cuando un procesador lee de la memoria y carga en cache el estado se marca como exclusive. Si otro procesador necesita acceder a la misma línea se le envía una copia y se marca su estado como compartido(shared). Si el procesador modifica una línea cuyo estado es compartido (shared) se la etiqueta como modificado (modified) para que sea posteriormente copiada a RAM. Se envía un mensaje para que los demás procesadores marquen su copa como invalido (invalid). Si debe acceder a datos en una línea etiquetada invalido (invalid), envía un mensaje de multifunción (broadcast) para que el tenga una copia válida (en el estado exclusive o modified) le responda con el valor actualizado. Si ninguno la tiene, accede a la memoria RAM para obtener una copia
Protocolo MESI Contenido Operaciones de MESI
Operaciones de MESI
Fallo de lectura: La línea se coge de la caché que la tenga como propietaria. Si ninguna la tiene como
propietaria, se coge de la memoria principal. Fallo de escritura: En este caso la línea se coge de la caché que la tenga. Si ninguna la tiene, se coge de la memoria principal. Si la línea que se coge está modificada entonces se escribe esta línea también a la memoria al mismo tiempo. Acierto de escritura: Si la caché peticionaria es la propietaria (línea modificada o exclusiva), se actualiza la línea en la caché sin más.
Protocolo MESI Contenido Ejemplo del protocolo MESI
Ejemplo del protocolo MESI
Para el primer instante tenemos dos accesos de lectura de dos datos diferentes que van a bloques de memoria diferentes, pero que pueden o no ir a la misma línea de caché.
Protocolo MESI Contenido Ejemplo del protocolo MESI
Ejemplo del protocolo MESI
En este caso, si fueran a la caché del mismo procesador, se mapearían en la misma línea de caché. Sin embargo, como lo leen dos procesadores diferentes, van a la misma línea pero de cachés diferentes
Protocolo MESI Contenido Optimización del protocolo MESI
Optimización del protocolo MESI
La optimización que se busca, en la transferencia caché a caché, es significativa porque las condiciones para que se produzca suceden con mucha frecuencia cuando los hilos de las aplicaciones multitarea se ejecutan en procesadores separados de una máquina SMP (Symmetric Multi-Processing o Multiproceso Simétrico).
Protocolo MESI Contenido Rendimiento del multiproceso MESI
Rendimiento del multiproceso MESI
Varias escrituras de una misma palabra sin lecturas intermedias solo precisan de una escritura de invalidación. Dadas líneas de caché de varias palabras solo es necesaria la escritura de cualquier palabra en la línea. El protocolo MESI trabaja sobre bloques de cacé, a diferencia de otros protocolos (actualización) que deben trabajar sobre palabras para aumentar su eficiencia.
Protocolo MESI Contenido Bibliografia
Bibliografia
COMPUTADORES PARALELOS Computación de Alta Velocidad: A. Arruabarrena âĂŤ J. Muguerza. MESI Cache Coherence Simulator for Teaching Purposes Juan GÃşmez-Luna,Ezequiel Herruzo and José Ignacio Benavides. Principios y algoritmos de concurrencia. Multiprocesadores y multicomputadores: Daniel Jiménez González.
View more...
Comments