Välimuistin yhtenäisyys

Välimuistin yhtenäisyys () on tietokoneen suorittimen ja välimuistin ominaisuus. 

Koska tietokoneen keskusmuisti on huomattavasti hitaampaa kuin suorittimen nopeus, tätä nopeuseroa lievitetään lisäämällä suorittimeen eri tasoista välimuistia (kuten L3- ja L2-tason välimuistit).
Moniytimellisessä suorittimessa L3-tason välimuisti voi olla jaettu useamman ytimen kanssa L2-tason ollessa rajatumpi pienemmälle määrälle ytimiä.

Moniprosessointi lisää haastavuuden tasoa, koska myös L3-tason välimuisteja voi olla useita eri suoritinpiireillä.

Jotta suorittimesta saataisiin maksimaalinen hyötysuhde, olisi tarvittavan tiedon oltava aina saatavilla mahdollisimman lähellä itse suoritinta (L0-taso). Jotta eri suoritinyksiköt eivät käyttäisi vanhentuneita arvoja (stale), on tiedot päivitettävä myös ylemmän tason välimuistiin sekä itse keskusmuistiin. Lisäksi on huolehdittava, että tieto haetaan keskusmuistista välimuistiin tarvittaessa (tiedon päivittyessä) ja minimoimalla tarpeettomat päivitykset.

Yhtenäisyyden hallinta tulee sitä vaikeammaksi, mitä suuremmasta järjestelmästä on kyse. Supertietokoneissa käytetään niitä varten kehitettyjä väyläratkaisuja kuten Remote DMA (RDMA).

Grafiikkaprosessorit (GPU) sisältävät paljon ytimiä ja yhtenäisyyden toteuttamiseen tarvittava piirin pinta-ala sekä suorituskyky olisi liian kallista: tästä johtuen grafiikkaprosessorien välimuistit ovat tavallisesti epäyhtenäisiä.

Protokollat 

Yhtenäisyyden hallintaan on kehitetty useita protokollia ja mekanismeja. 

Näitä ovat esimerkiksi MSI-, MESI-, MOSI-, MOESI-, MERSI- ja MESIF-protokollat sekä write-once-, Synapse-, Berkeley-, Firefly- ja Dragon-protokollat.

Vuonna 2011 ARM ehdotti AMBA 4 ACE -protokollaa järjestelmäpiirien kanssa käytettäväksi.

Mekanismit voidaan jakaa write invalidate- ja write update -kategorioihin sekä snooping- ja directory-pohjaisiin.

Yhtenäisyyden hallintaan on hakemistopohjainen ratkaisu ja väylän haistelu (bus snooping).

Snooping-mekanismia on ehdotettu vuonna 1983 julkaistussa tutkielmassa.

Katso myös 

 Muistiarkkitehtuuri
 Bus snooping

Lähteet 

Tietotekniikka