Escolar Documentos
Profissional Documentos
Cultura Documentos
Protocolo MESI
M. Tinoco Lara1
P. Centeno Becerra2
1,2 Instituto
Politcnico Nacional
IPN-CIDETEC
1/13
Protocolo MESI
Contenido
1 Contenido
MESI
Objetivo del estado E
Diagrama de transicin
Operaciones de MESI
Ejemplo del protocolo MESI
Optimizacin del protocolo MESI
Rendimiento del multiproceso MESI
Bibliografia
2/13
Protocolo MESI
Contenido
MESI
Introduccin
El protocolo Illinois, MESI
Principio
Illinois, utilizado (con algunas modificaciones). Es una mejora del protocolo MSI, al que se le aade un
cuarto estado, E, con el objetivo de minimizar el numero de invalidaciones.
3/13
Protocolo MESI
Contenido
Objetivo del estado E
Distinguir los bloques privados (siempre sern copias nicas) de los compartidos, y, as, reducir el trfico en
el bus.
4/13
Protocolo MESI
Contenido
Estados de MESI
Estados de MESI
(M) Modificado: La lnea de cache ha sido modificada (es distinta a su valor en memoria principal), y est
disponible slo en esta cache.
(E) Exclusivo: nicamente una cach tiene una copia del bloque, y no ha sido modificado.
(S) Compartido: potencialmente dos o ms procesadores tienen este bloque en su cach en un estado no
modificado.
(I) Invalido: La lnea de cache no contiene datos vlidos.
5/13
Protocolo MESI
Contenido
Diagrama de transicin
Diagrama de transicin
6/13
Protocolo MESI
Contenido
Cada lnea 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 lnea 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 lnea se le enva una copia y se marca su estado como
compartido(shared).
Si el procesador modifica una lnea cuyo estado es compartido (shared) se la etiqueta como modificado
(modified) para que sea posteriormente copiada a RAM. Se enva un mensaje para que los dems
procesadores marquen su copa como invalido (invalid).
Si debe acceder a datos en una lnea etiquetada invalido (invalid), enva un mensaje de multifuncin
(broadcast) para que el tenga una copia vlida (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
7/13
Protocolo MESI
Contenido
Operaciones de MESI
Operaciones de MESI
Fallo de lectura: La lnea 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 lnea se coge de la cach que la tenga. Si ninguna la tiene, se coge de la
memoria principal. Si la lnea que se coge est modificada entonces se escribe esta lnea tambin a la
memoria al mismo tiempo.
Acierto de escritura: Si la cach peticionaria es la propietaria (lnea modificada o exclusiva), se actualiza la
lnea en la cach sin ms.
8/13
Protocolo MESI
Contenido
Ejemplo del protocolo MESI
9/13
Protocolo MESI
Contenido
Ejemplo del protocolo MESI
10/13
Protocolo MESI
Contenido
Optimizacin del protocolo MESI
11/13
Protocolo MESI
Contenido
Rendimiento del multiproceso MESI
Varias escrituras de una misma palabra sin lecturas intermedias solo precisan de una escritura de
invalidacin.
Dadas lneas de cach de varias palabras solo es necesaria la escritura de cualquier palabra en la lnea.
El protocolo MESI trabaja sobre bloques de cac, a diferencia de otros protocolos (actualizacin) que
deben trabajar sobre palabras para aumentar su eficiencia.
12/13
Protocolo MESI
Contenido
Bibliografia
Bibliografia
13/13