Spartinančiosios atmintinės darna

Spartinančiąją atmintinę galima naudoti siekiant pagerinti prieigos prie tam tikro ištekliaus našumą. Kai tam pačiam ištekliui yra kelios tokios talpyklos, kaip parodyta paveikslėlyje, gali kilti problemų. Spartinančiosios talpyklos suderinamumas arba spartinančiosios talpyklos suderinamumas reiškia keletą būdų, kaip užtikrinti, kad visose ištekliaus spartinančiosiose talpyklose būtų tie patys duomenys ir kad spartinančiosiose talpyklose esantys duomenys turėtų prasmę (vadinama duomenų vientisumu). Spartinančiosios atminties darna yra specialus atminties darnos atvejis.

Gali kilti problemų, jei yra daug bendro atminties ištekliaus talpyklų, nes duomenys talpykloje gali nebeturėti prasmės arba vienoje talpykloje gali nebūti tų pačių duomenų kaip kitose. Dažnas atvejis, kai kyla ši problema, yra procesorių talpyklos daugiaprocesorinėje sistemoje. Kaip matyti paveikslėlyje, jei viršutinis klientas turi atminties bloko kopiją iš ankstesnio skaitymo, o apatinis klientas pakeičia tą atminties bloką, viršutinis klientas gali likti su negaliojančia atminties talpykla,apie tai nežinodamas. Spartinančiosios atminties darna skirta tokiems konfliktams valdyti ir išlaikyti nuoseklumą tarp spartinančiosios atminties ir atminties.

Kelios bendrųjų išteklių talpyklosZoom
Kelios bendrųjų išteklių talpyklos

Apibrėžimas

Nuoseklumas apibrėžia skaitymo ir rašymo į tą pačią atminties vietą elgseną. Spartinančiosios atmintinės yra nuoseklios, jei tenkinamos visos toliau nurodytos sąlygos:

  1. Kai procesorius P skaito vietą X, po to, kai į tą vietą įrašė, P turi gauti vertę, kurią įrašė, jei joks kitas procesorius į tą vietą neįrašė kitos vertės. Tai galioja ir monoprocesorinėms sistemoms, vadinasi, atmintis gali išlaikyti įrašytą reikšmę.
  2. Tarkime, kad yra du procesoriai, P1 ir P2, ir P1 parašė reikšmę X1, o po to P 2parašė reikšmę X2, jei P 1skaito reikšmę, jis turi gauti P2 parašytą reikšmę X2, o ne savo parašytą reikšmę X1, jei tarp jų nėra kitų įrašų. Tai reiškia, kad atminties vaizdas yra nuoseklus. Jei procesoriai gali perskaityti tą pačią seną reikšmę po P2 atlikto įrašo, atmintis nebūtų koherentinė.
  3. Vienu metu į tam tikrą atminties vietą galima įrašyti tik vieną kartą. Jei yra keli įrašai, jie turi būti atliekami vienas po kito. Kitaip tariant, jei vieta X gavo dvi skirtingas reikšmes A ir B, tokia tvarka, bet kurių dviejų procesorių, procesoriai niekada negali perskaityti vietos X kaip B, o paskui perskaityti kaip A. Vieta X turi būti matoma su reikšmėmis A ir B tokia tvarka.

Šios sąlygos apibrėžtos darant prielaidą, kad skaitymo ir rašymo operacijos atliekamos akimirksniu. Tačiau kompiuterių techninėje įrangoje taip nebūna dėl atminties vėlavimo ir kitų architektūros aspektų. Procesoriaus X atlikto įrašymo gali nepastebėti procesoriaus Y atliktas skaitymas, jei skaitymas atliekamas per labai trumpą laiką po to, kai buvo atliktas įrašymas. Atminties nuoseklumo modelis apibrėžia, kada įrašyta reikšmė turi būti matoma po to kitų procesorių atliktoje skaitymo instrukcijoje.

Spartinančiosios atmintinės koherentiškumo mechanizmai

  • Katalogais pagrįsti darnos mechanizmai palaiko centrinį talpyklos blokų katalogą.
  • "Snooping" yra procesas, kurio metu kiekviena talpykla stebi adresų eilutes, ar nėra kreipimųsi į jos talpykloje esančias atminties vietas. Kai pastebima rašymo operacija į vietą, kurios kopiją turi spartinančioji atmintinė, spartinančiosios atmintinės valdiklis anuliuoja savo stebimos atminties vietos kopiją.
  • "Snarfing" - tai kai spartinančiosios atmintinės valdiklis stebi ir adresą, ir duomenis, bandydamas atnaujinti savo atminties vietos kopiją, kai antrasis valdiklis keičia vietą pagrindinėje atmintyje.

Paskirstytosios bendrosios atminties sistemos imituoja šiuos mechanizmus, kad galėtų palaikyti nuoseklumą tarp atminties blokų laisvai susietose sistemose.

Paprastai tiriami du dažniausiai pasitaikantys darnos tipai: "Snooping" ir "Directory-based". Kiekvienas jų turi savų privalumų ir trūkumų. Snooping protokolai paprastai būna greitesni, jei yra pakankamas duomenų srauto pralaidumas, nes visi sandoriai yra užklausa ir atsakymas, kuriuos mato visi procesoriai. Trūkumas yra tas, kad šnipinėjimas nėra keičiamo mastelio. Kiekviena užklausa turi būti perduodama visiems sistemos mazgams. Didėjant sistemai, turi didėti (loginės arba fizinės) magistralės dydis ir jos teikiamas pralaidumas. Kita vertus, katalogai paprastai turi ilgesnį uždelsimo laiką (kai užklausa/perdavimas/atsakymas vyksta per 3 šuolius), tačiau naudoja daug mažiau pralaidumo, nes pranešimai siunčiami iš taško į tašką, o ne transliuojami. Dėl šios priežasties daugelyje didesnių sistemų (>64 procesoriai) naudojamas šis talpyklos suderinamumo tipas.

Klausimai ir atsakymai

Klausimas: Kas yra talpyklos darna?


A: Spartinančiosios talpyklos darnumas reiškia užtikrinimą, kad visose išteklių talpyklose būtų tie patys duomenys ir kad duomenys talpyklose būtų nuoseklūs (duomenų vientisumas).

K: Koks yra talpyklos darnos tikslas?


A.: Spartinančiosios atmintinės suderinamumo tikslas - valdyti konfliktus tarp kelių bendro atminties ištekliaus spartinančiosios atmintinės talpyklų ir išlaikyti nuoseklumą tarp spartinančiosios atmintinės ir atminties.

K: Kokios gali būti spartinančiosios atmintinės darnos nebuvimo pasekmės?


A: Nesant spartinančiosios atminties darnos, duomenys spartinančiojoje atmintyje gali nebetekti prasmės arba vienoje spartinančiojoje atmintyje gali nebūti tų pačių duomenų kaip ir kitose, todėl gali atsirasti nenuoseklumų ir klaidų.

K.: Koks yra dažnas atvejis, kai kyla spartinančiosios atmintinės darnos problemų?


A: Dažnas atvejis, kai kyla spartinančiosios atmintinės suderinamumo problemų, yra procesorių spartinančioji atmintinė daugiaprocesorinėje sistemoje.

K: Kaip veikia spartinančiosios atminties darna?


A.: Spartinančiosios atmintinės darna veikia užtikrinant, kad visi ištekliaus spartinančiosios atmintinės duomenys būtų vienodi ir kad duomenys spartinančiosiose atmintinėse būtų nuoseklūs įvairiais metodais.

K: Ką reiškia atminties darna?


A. Atminties darna reiškia duomenų nuoseklumą bendrame atminties išteklyje.

K: Kaip talpyklų darna gali pagerinti našumą?


A. Spartinančiosios atminties darna gali pagerinti našumą, nes leidžia greičiau ir efektyviau pasiekti tam tikrą išteklių.

AlegsaOnline.com - 2020 / 2023 - License CC3