Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Vs5.21 5.2 Objektpufferung (caching) = dynamische, ad-hoc-Replikation einer Primärkopie: Zugriffswilliger beschafft sich temporär eine lokale Kopie cache.

Ähnliche Präsentationen


Präsentation zum Thema: "Vs5.21 5.2 Objektpufferung (caching) = dynamische, ad-hoc-Replikation einer Primärkopie: Zugriffswilliger beschafft sich temporär eine lokale Kopie cache."—  Präsentation transkript:

1 vs5.21 5.2 Objektpufferung (caching) = dynamische, ad-hoc-Replikation einer Primärkopie: Zugriffswilliger beschafft sich temporär eine lokale Kopie cache (engl./franz., sprich wie „cash“, dt. Versteck) oder Pufferspeicher = Bereich zum Unterbringen lokaler Kopien im Prozessor: Register, z.B. für Teil des Kellers im Prozessor: Hauptspeicherpuffer für Speicherblöcke im Arbeitsspeicher: Rahmen für Seiten aus Externspeicher

2 vs5.22 5.2.1 Snoopy Cache (auch snooping cache) in Mehrprozessorsystemen Cache Speicher (Primärkopien)....... Prozessoren Bus Zugriff auf Adresse a veranlaßt Caching des Blocks, der a enthält; gegebenenfalls wird dafür ein anderer Blockverdrängt Objekt = Speicherblock Operation = Lese/Schreibzugriff auf Speicherzelle Implementierung: Hardware Cache

3 vs5.23 Schreibzugriff: 1. Block wird im Cache modifiziert. 2. Block wird im Speicher modifiziert (write-through). 3. Alle Prozessoren sind „neugierig“ (snoopy): sie „schnüffeln“ (to snoop) am Bus, bekommen den Schreibvorgang mit (vgl. Ethernet-Rundruf!) und ändern ihre Kopien (falls vorhanden) entsprechend.  Cache Coherence = Sequentielle Konsistenz wegen Totalordnung des HW-Rundrufs (!) Variante:Kopie löschen statt ändern (somit „write-invalidate statt write-update“, und somit mehr passive als aktive Replikation), reduziert den Schreibverkehr

4 vs5.24 5.2.2 Verteilter Virtueller Speicher (distributed shared memory, DSM) Verteilter virtueller Speicher arbeitet grundsätzlich mit write-invalidate, d.h. mit Löschen obsoleter Kopien, somit mit passiver Replikation, und ohne feste Primärkopie. ( dennsonst müßte jeder Schreibzugriff (!!!) auf eine replizierte Seite über Betriebssystem und Netz gehen ! ) Objekt = Seite (gemäß Adressabbildungs-Hardware, MMU) Operation = Lese/Schreibzugriff auf Speicherzelle Implementierung: Software (Betriebssystem)

5 vs5.25 Eine mögliche Realisierung von DSM: IVY (Li/Hudak 1986, Yale)  Jede Seite hat zu jedem Zeitpunkt einen Eigner – die Sation, die zuletzt in eine Kopie der Seite geschrieben hat.  Jede Seite ist zu jedem Zeitpunkt in einem von 2 Zuständen R, W : R: Eigner und eventuell andere Stationen haben lesbare Kopien, W: Eigner hat die einzige gültige, schreibbare Kopie („Primärkopie“).  Wer lesen will, muß Eigner sein oder sich eine R-Kopie beschaffen.  Wer schreiben will, muß sich eine W-Kopie beschaffen (und dabei alle R-Kopien löschen)  sequentielle Konsistenz

6 vs5.26 Implementierung muß folgende Probleme lösen: - Zustandsübergänge, Kopieren, - Eigner finden, - zu invalidierende Kopien finden. DSM in Hardware, Stationen in Ringstruktur verbunden: SCI – Scalable Coherent Interface (IEEE Standard, 1993)

7 vs5.27 5.2.3 Programmiersprachlich definierte Objekte (object caching) Anwendungsprogrammierung typischerweise ohne expliziten Umgang mit Nachrichten : Laufzeitsystem versendet und empfängt die notwendigen Nachrichten  Für ADO Fernaufruf (remote invocation,  7.1) Objekt: auf der Halde, mit oder ohne Datenabstraktion Operation: gemäß Schnittstelle bzw. Typsystem der Sprache Implementierung: Software (Laufzeitsystem oder Middleware (  7))


Herunterladen ppt "Vs5.21 5.2 Objektpufferung (caching) = dynamische, ad-hoc-Replikation einer Primärkopie: Zugriffswilliger beschafft sich temporär eine lokale Kopie cache."

Ähnliche Präsentationen


Google-Anzeigen