MESI protocol (original) (raw)
El protocolo MESI, también conocido como protocolo Illinois, es un extendido protocolo de coherencia de caché y coherencia de memoria, que fue creado por Intel en el procesador Pentium para "dar soporte más eficientemente a en lugar del de caché de CPU usado con anterioridad en el procesador 486".
Property | Value |
---|---|
dbo:abstract | MESI (Modified Exclusive Shared Invalid) ist ein Protokoll zur Wahrung der Cache-Kohärenzin Multiprozessorsystemen. Das MESI-Protokoll wurde zuerst von Forschern der Universität von Illinois veröffentlicht. Es wird auch oft als Illinois-Protokoll bezeichnet. Da in speichergekoppelten Multiprozessorsystemen jeder Prozessor einen Cache besitzt, muss festgelegt werden, ob einer der Caches oder der Hauptspeicher den aktuellen Wert eines Datums enthält. Ein System heißt cache-kohärent, wenn es zu jeder Zeit garantiert den aktuellen Wert eines Datums beschaffen kann, auch wenn sich dieser in einem anderen Cache befindet. Beim MESI-Protokoll werden jeder Cache-Line zwei Statusbits zugeordnet, durch die einer der folgenden vier Zustände beschrieben wird: 1. * (exclusive) Modified: Diese Cache-Line wurde lokal geändert. Die im Hauptspeicher befindliche (alte) Kopie ist daher ungültig. Will ein anderer Rechner diese Daten im Hauptspeicher lesen, so muss die Zeile zuerst vom Cache-Speicher in den Hauptspeicher zurückgeschrieben werden. 2. * Exclusive (unmodified): Dieser Cache ist der einzige, der diesen Datenblock enthält. Der Wert im Hauptspeicher ist gültig. Liest ein anderer Rechner diese Daten im Hauptspeicher, so muss die Zeile als Shared gekennzeichnet werden. Werden die Daten im Hauptspeicher verändert, so müssen sie im Cache als ungültig erklärt werden, damit sie beim nächsten Zugriff neu aus dem Hauptspeicher geladen werden. 3. * Shared (unmodified): Mehrere Caches enthalten diesen Datenblock. Da alle aber bisher nur gelesen haben, ist der Wert im Hauptspeicher gültig. Schreibzugriffe auf eine Shared-Zeile müssen immer zu einem Zugriff auf den externen Bus führen um den Hauptspeicher nachzuführen, damit die Zeilen in anderen Cache-Speichern als ungültig erklärt werden können. 4. * Invalid: Der Inhalt dieser Cache-Line ist nicht aktuell oder es befindet sich noch gar kein Wert in dieser Cache-Line (Compulsory Miss). Die Übergänge zwischen diesen vier Zuständen können nun auf zwei verschiedene Arten ausgelöst werden: Entweder * direkt durch das Schreiben oder Lesen der Daten vom Programm * indirekt durch das Belauschen (Bus snooping) der Aktionen eines anderen Prozessors auf dem Bus durch den Cache. Dabei bedient sich ein Cache folgender Steuersignale: 1. * Invalidate-Signal: Invalidieren der Zeile in den Caches anderer Prozessoren. 2. * Shared-Signal: Signalisierung, ob ein zu ladender Speicherblock bereits als Kopie im Cache vorhanden ist. 3. * Retry-Signal: Aufforderung an einen Prozessor, das Laden eines Blockes aus dem Hauptspeicher in den Cache abzubrechen, da der Hauptspeicher noch ein altes, ungültiges Datum besitzt und vorher aktualisiert werden muss. Das Laden kann danach wiederholt werden. Ein Prozessor kann auf eine einzelne Adresse im Speichersystem schreibend oder lesend zugreifen. Entsprechend lösen Lese- und Schreiboperationen eines Prozessors Bustransaktionen aus. Beim MESI-Protokoll gibt es folgende Bustransaktionen: 1. * Bus-Read (BusRd): Das Signal wird auf den Bus gelegt, wenn ein Prozessor das Datum bzw. den Wert eines Speicherblocks lesen will. 2. * Bus-Read-Exclusive (BusRdX): Signal wird auf den Bus gelegt, wenn ein Prozessor das Datum eines Speicherblocks überschreiben will. 3. * Flush: Dieses Signal wird erzeugt, wenn ein Prozessor alleinig (evtl. noch der Hauptspeicher) das aktuelle Datum einer Speicherzelle in seinem Cache hat und ein weiterer Prozessor versucht, auf die gleiche Adresse dieser Speicherzelle lesend oder schreibend zuzugreifen. Wenn das Signal Flush auf dem Bus erscheint, so wird ebenfalls das Datum der entsprechenden Speicherzelle auf den Bus gelegt. Die Lese- und Schreiboperationen sowie die dadurch direkt und indirekt erzeugten Bustransaktionen legen das Verhalten des Zustandsautomaten fest, der durch das MESI-Protokoll definiert ist (siehe Abbildung). (de) El protocolo MESI, también conocido como protocolo Illinois, es un extendido protocolo de coherencia de caché y coherencia de memoria, que fue creado por Intel en el procesador Pentium para "dar soporte más eficientemente a en lugar del de caché de CPU usado con anterioridad en el procesador 486". (es) The MESI protocol is an Invalidate-based cache coherence protocol, and is one of the most common protocols that support write-back caches. It is also known as the Illinois protocol (due to its development at the University of Illinois at Urbana-Champaign). Write back caches can save a lot of bandwidth that is generally wasted on a write through cache. There is always a dirty state present in write back caches that indicates that the data in the cache is different from that in main memory. The Illinois Protocol requires a cache to cache transfer on a miss if the block resides in another cache. This protocol reduces the number of main memory transactions with respect to the MSI protocol. This marks a significant improvement in performance. (en) Le protocole MESI (Modified, Exclusive, Shared, Invalid, aussi connu sous le nom d'Illinois protocol) est un protocole de cohérence de cache utilisé dans les systèmes multiprocesseur. Chaque ligne du cache est estampillée avec l'une des marques suivantes (codées sur deux bits supplémentaires) : * M - Modified (Modifié) : La ligne de cache n'est présente que dans le cache considéré et a été modifiée (état parfois désigné par sale (dirty)). Elle n'est pas cohérente avec la valeur présente en mémoire centrale. La ligne en mémoire centrale doit être mise à jour avec la version locale avant que d'autres puissent la lire. * E - Exclusive (Exclusif) : La ligne de cache n'est présente que dans le cache considéré, mais est propre, c'est-à-dire identique à la valeur correspondante en mémoire centrale. On dit que la cohérence est assurée. * S - Shared (Partagé) : Indique que cette ligne est peut-être dans d'autres caches. La cohérence est assurée. * I - Invalid (Invalide) : Indique que cette ligne de cache n'est plus à jour. Une évolution de ce protocole est le protocole MOESI, qui rajoute une marque O (Owned). L'article sur le protocole MOESI est plus complet que celui-ci. (fr) MESIプロトコル(別名、イリノイ・プロトコル)とは、マルチプロセッサシステムでメモリやキャッシュメモリの同期をとるキャッシュコヒーレンシとメモリ一貫性のプロトコルであり、ライトバック方式のキャッシュで広く使われている。イリノイ・プロトコルという別名はイリノイ大学アーバナ・シャンペーン校で開発されたことに由来する。 インテルは、「486プロセッサで以前から使われていたライトスルーキャッシュに加えて、より効率的なライトバックキャッシュをサポートする」としてPentiumプロセッサでMESIプロトコルを採用した。そのためパーソナルコンピュータでも広く使われている。 (ja) MESI 프로토콜은 캐시 메모리의 일관성을 유지하기 위해서 별도의 플래그(flag)를 할당한 후 플래그의 상태를 통해 데이터의 유효성 여부를 판단하는 프로토콜이다. 멀티프로세서 시스템에서 캐시 메모리의 일관성을 유지하기 위해 메모리가 가질 수 있는 4가지 상태를 정의한다. * Modified(수정) 상태 : 데이터가 수정된 상태 * Exclusive(배타) 상태 : 유일한 복사본이며, 주기억장치의 내용과 동일한 상태 * Shared(공유) 상태 : 데이터가 두 개 이상의 프로세서 캐시에 적재되어 있는 상태 * Invalid(무효) 상태 : 데이터가 다른 프로세스에 의해 수정되어 무효화된 상태 (ko) MESI (inaczej Illinois protocol) — protokół spójności danych w pamięci podręcznej komputera, stosowany w większości współczesnych procesorów. Każda linia pamięci podręcznej ma przydzielony jeden z czterech stanów (zakodowanych na dwóch dodatkowych bitach): * M (Modified) – linia pamięci jest dostępna tylko w jednym z poziomów cache, i jest różna od zawartości pamięci operacyjnej. * E (Exclusive) – linia pamięci jest dostępna tylko w jednym z poziomów cache, oraz w pamięci operacyjnej. * S (Shared) – linia pamięci jest dostępna na wszystkich poziomach cache oraz w pamięci operacyjnej * I (Invalid) – linia pamięci jest nieaktualna i może zostać zastąpiona inną. (pl) O protocolo MESI (conhecido também como protocolo de Illinois) é um protocolo de e largamente usado, que foi introduzido pela Intel no processador Pentium para "dar suporte a uma na cache mais eficiente, além da , anteriormente usada no processador Intel 486". (pt) MESI协议是一个基于失效的缓存一致性协议,是支持写回(write-back)缓存的最常用协议。也称作伊利诺伊协议 (Illinois protocol,因为是在伊利诺伊大学厄巴纳-香槟分校被发明的)。与写直达(write through)缓存相比,回写缓冲能节约大量带宽。总是有“脏”(dirty)状态表示缓存中的数据与主存中不同。MESI协议要求在缓存不命中(miss)且数据块在另一个缓存时,允许缓存到缓存的数据复制。与MSI协议相比,MESI协议减少了主存的事务数量。这极大改善了性能。 (zh) |
dbo:thumbnail | wiki-commons:Special:FilePath/Diagrama_MESI.gif?width=300 |
dbo:wikiPageExternalLink | http://opencores.org/project,mesi_isc https://www.cs.tcd.ie/Jeremy.Jones/vivio/caches/MESIHelp.htm |
dbo:wikiPageID | 267518 (xsd:integer) |
dbo:wikiPageLength | 20900 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1122940054 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:MOSI_protocol dbr:MERSI_protocol dbr:MESIF_protocol dbr:MOESI_protocol dbr:University_of_Illinois_Urbana-Champaign dbr:Cache_(computing) dbr:Cache_coherence dbr:CAS_latency dbr:Dragon_protocol dbr:Bit dbr:Bus_snooping dbc:Cache_coherency dbr:MSI_protocol dbr:Finite-state_machine dbr:Firefly_(cache_coherence_protocol) dbr:Write-once_(cache_coherency) dbr:Write-back_cache dbr:Main_memory dbr:Coherence_protocol dbr:Cache_coherency dbr:File:Diagrama_MESI.GIF |
dbp:date | March 2013 (en) |
dbp:reason | Improper grammar, formatting, etc. (en) |
dbp:wikiPageUsesTemplate | dbt:Cleanup dbt:Reflist dbt:Short_description dbt:Y dbt:N |
dcterms:subject | dbc:Cache_coherency |
rdf:type | yago:Abbreviation107091587 yago:Abstraction100002137 yago:Form106290637 yago:LanguageUnit106284225 yago:Part113809207 yago:Relation100031921 yago:Word106286395 yago:WikicatAbbreviations |
rdfs:comment | El protocolo MESI, también conocido como protocolo Illinois, es un extendido protocolo de coherencia de caché y coherencia de memoria, que fue creado por Intel en el procesador Pentium para "dar soporte más eficientemente a en lugar del de caché de CPU usado con anterioridad en el procesador 486". (es) The MESI protocol is an Invalidate-based cache coherence protocol, and is one of the most common protocols that support write-back caches. It is also known as the Illinois protocol (due to its development at the University of Illinois at Urbana-Champaign). Write back caches can save a lot of bandwidth that is generally wasted on a write through cache. There is always a dirty state present in write back caches that indicates that the data in the cache is different from that in main memory. The Illinois Protocol requires a cache to cache transfer on a miss if the block resides in another cache. This protocol reduces the number of main memory transactions with respect to the MSI protocol. This marks a significant improvement in performance. (en) MESIプロトコル(別名、イリノイ・プロトコル)とは、マルチプロセッサシステムでメモリやキャッシュメモリの同期をとるキャッシュコヒーレンシとメモリ一貫性のプロトコルであり、ライトバック方式のキャッシュで広く使われている。イリノイ・プロトコルという別名はイリノイ大学アーバナ・シャンペーン校で開発されたことに由来する。 インテルは、「486プロセッサで以前から使われていたライトスルーキャッシュに加えて、より効率的なライトバックキャッシュをサポートする」としてPentiumプロセッサでMESIプロトコルを採用した。そのためパーソナルコンピュータでも広く使われている。 (ja) MESI 프로토콜은 캐시 메모리의 일관성을 유지하기 위해서 별도의 플래그(flag)를 할당한 후 플래그의 상태를 통해 데이터의 유효성 여부를 판단하는 프로토콜이다. 멀티프로세서 시스템에서 캐시 메모리의 일관성을 유지하기 위해 메모리가 가질 수 있는 4가지 상태를 정의한다. * Modified(수정) 상태 : 데이터가 수정된 상태 * Exclusive(배타) 상태 : 유일한 복사본이며, 주기억장치의 내용과 동일한 상태 * Shared(공유) 상태 : 데이터가 두 개 이상의 프로세서 캐시에 적재되어 있는 상태 * Invalid(무효) 상태 : 데이터가 다른 프로세스에 의해 수정되어 무효화된 상태 (ko) O protocolo MESI (conhecido também como protocolo de Illinois) é um protocolo de e largamente usado, que foi introduzido pela Intel no processador Pentium para "dar suporte a uma na cache mais eficiente, além da , anteriormente usada no processador Intel 486". (pt) MESI协议是一个基于失效的缓存一致性协议,是支持写回(write-back)缓存的最常用协议。也称作伊利诺伊协议 (Illinois protocol,因为是在伊利诺伊大学厄巴纳-香槟分校被发明的)。与写直达(write through)缓存相比,回写缓冲能节约大量带宽。总是有“脏”(dirty)状态表示缓存中的数据与主存中不同。MESI协议要求在缓存不命中(miss)且数据块在另一个缓存时,允许缓存到缓存的数据复制。与MSI协议相比,MESI协议减少了主存的事务数量。这极大改善了性能。 (zh) MESI (Modified Exclusive Shared Invalid) ist ein Protokoll zur Wahrung der Cache-Kohärenzin Multiprozessorsystemen. Das MESI-Protokoll wurde zuerst von Forschern der Universität von Illinois veröffentlicht. Es wird auch oft als Illinois-Protokoll bezeichnet. Beim MESI-Protokoll werden jeder Cache-Line zwei Statusbits zugeordnet, durch die einer der folgenden vier Zustände beschrieben wird: Die Übergänge zwischen diesen vier Zuständen können nun auf zwei verschiedene Arten ausgelöst werden: Entweder (de) Le protocole MESI (Modified, Exclusive, Shared, Invalid, aussi connu sous le nom d'Illinois protocol) est un protocole de cohérence de cache utilisé dans les systèmes multiprocesseur. Chaque ligne du cache est estampillée avec l'une des marques suivantes (codées sur deux bits supplémentaires) : Une évolution de ce protocole est le protocole MOESI, qui rajoute une marque O (Owned). L'article sur le protocole MOESI est plus complet que celui-ci. (fr) MESI (inaczej Illinois protocol) — protokół spójności danych w pamięci podręcznej komputera, stosowany w większości współczesnych procesorów. Każda linia pamięci podręcznej ma przydzielony jeden z czterech stanów (zakodowanych na dwóch dodatkowych bitach): (pl) |
rdfs:label | MESI (de) Protocolo MESI (es) Protocole MESI (fr) Protocollo MESI (it) MESI protocol (en) MESI 프로토콜 (ko) MESIプロトコル (ja) MESI (pl) Protocolo MESI (pt) MESI协议 (zh) |
owl:sameAs | freebase:MESI protocol yago-res:MESI protocol wikidata:MESI protocol dbpedia-de:MESI protocol dbpedia-es:MESI protocol dbpedia-fr:MESI protocol dbpedia-it:MESI protocol dbpedia-ja:MESI protocol dbpedia-ko:MESI protocol dbpedia-pl:MESI protocol dbpedia-pt:MESI protocol dbpedia-tr:MESI protocol dbpedia-zh:MESI protocol https://global.dbpedia.org/id/RJkH |
prov:wasDerivedFrom | wikipedia-en:MESI_protocol?oldid=1122940054&ns=0 |
foaf:depiction | wiki-commons:Special:FilePath/Diagrama_MESI.gif |
foaf:isPrimaryTopicOf | wikipedia-en:MESI_protocol |
is dbo:wikiPageDisambiguates of | dbr:Mesi |
is dbo:wikiPageRedirects of | dbr:Read_For_Ownership dbr:Illinois_protocol dbr:MESI |
is dbo:wikiPageWikiLink of | dbr:MOSI_protocol dbr:Mesi dbr:MERSI_protocol dbr:MESIF_protocol dbr:MOESI_protocol dbr:Spinlock dbr:Cache_coherence dbr:Dragon_protocol dbr:UPCRC_Illinois dbr:Espresso_(microprocessor) dbr:Directory-based_coherence dbr:Memory_coherence dbr:Read_For_Ownership dbr:Write-once_(cache_coherence) dbr:Bus_snooping dbr:MSI_protocol dbr:Firefly_(cache_coherence_protocol) dbr:Illinois_protocol dbr:MESI |
is foaf:primaryTopic of | wikipedia-en:MESI_protocol |