Mitä erilaisia ​​välimuistin koherenssiprotokollia käytetään laskennallisessa arkkitehtuurissa?

Laskennallisessa arkkitehtuurissa käytetään useita välimuistin koherenssiprotokollia:

1. MESI (Modified, Exclusive, Shared, Invalid): Tämä on laajalti käytetty protokolla, joka ylläpitää välimuistin koherenssia määrittelemällä neljä tilaa välimuistiriville: Modified, Exclusive, Shared ja Invalid. .

2. MOESI (Modified, Owned, Exclusive, Shared, Invalid): MESI-muutos, joka lisää Owned-tilan. Tässä protokollassa prosessorin omistama välimuistirivi voi silti olla muiden suoritinten välimuistissa jaetussa tilassa.

3. MOSI (Modified, Owned, Shared, Invalid): MOESI-protokollan muunnelma, joka eliminoi Exclusive-tilan.

4. MSI (Modified, Shared, Invalid): MESI:n yksinkertaistettu versio, jolla ei ole Exclusive-tilaa. Tässä protokollassa välimuistirivi on joko muokattu, jaettu tai virheellinen.

5. MESIF (Muokattu, Exclusive, Shared, Invalid, Forward): Tämä on MESI-protokollan laajennus, joka lisää edelleenlähetystilan. Tässä tilassa välimuistirivi välitetään toiselle prosessorille odottamatta välimuistin puuttumista.

6. Dragon (Directory-based Read and Atomicity Generation): Hakemistopohjainen protokolla, joka pitää kirjaa keskushakemiston välimuistirivien tilasta. Tämä protokolla on suunniteltu vähentämään liikenteen määrää yhteenliitännässä välittämällä päivitykset vain niitä tarvitseville prosessoreille.

7. Firefly: Dragon-protokollan laajennus, joka lisää tukea spekulatiiviselle suoritukselle. Tässä protokollassa prosessori voi tehdä spekulatiivisia päivityksiä välimuistiriveihin odottamatta vahvistusta hakemistosta.

Julkaisupäivämäärä: