Speicherhierarchie und Leistung

Was ist der Hauptzweck eines Schreibpuffers bei einem Write-Through-Cache?

  1. ADamit die CPU mit der nächsten Verarbeitung fortfahren kann, ohne auf den Abschluss des Schreibens in den Hauptspeicher zu warten
  2. BDamit die Daten im Cache aktueller als im Hauptspeicher gehalten werden
  3. CDamit eine Zeile, bei der der Schreibzugriff ein Miss war, stets zuerst aus dem Hauptspeicher in den Cache geladen wird, bevor geschrieben wird
Antwort und Erläuterung anzeigen

Antwort: A. Damit die CPU mit der nächsten Verarbeitung fortfahren kann, ohne auf den Abschluss des Schreibens in den Hauptspeicher zu warten

Beim Write-Through wird bei jedem Schreibzugriff auch in den Hauptspeicher geschrieben; würde auf den Abschluss gewartet, hielte die CPU häufig an. Werden Schreibzugriffe vorübergehend in einem Schreibpuffer gesammelt, geht die CPU sofort zur nächsten Anweisung über, und der Puffer schreibt im Hintergrund in den Hauptspeicher. Den Cache aktueller als den Hauptspeicher zu halten ist eine Eigenschaft von Write-Back; bei Write-Through stimmen beide vielmehr überein. Ob eine Miss-Zeile geladen wird, ist die Wahl Write-Allocate und eine andere Frage als der Schreibpuffer.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Speicherhierarchie und Leistung

  1. Welche Rolle spielt das Dirty-Bit, das bei einem Write-Back-Cache an jede Zeile angefügt wird?
  2. Welches Verfahren schreibt bei einem Cache-Miss beim Schreiben direkt in die untere Hierarchieebene, ohne die Zeile zu laden?
  3. Ein voll assoziativer Cache mit 2 Zeilen Kapazität und LRU-Ersetzung ist anfangs leer. Wie viele Misses treten auf, wenn die Blöcke in der Reihenfolge A, B, A, C, B, A referenziert werden?
  4. Bei welchem Zugriff entfaltet Hardware-Prefetch besonders leicht seine Wirkung?
  5. Welche Aussage zur Frage, wie weit im Voraus Daten gelesen werden sollen (Prefetch-Distanz), ist richtig, wenn Software-Prefetch-Anweisungen eingefügt werden?

Vergleiche zu diesem Thema