Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden...

Post on 21-Oct-2019

1 views 0 download

Transcript of Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden...

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Kombinierte HW/SW-Verfahren zur Behebungvon Hauptspeicherfehlern

Jan Lahni

TU Dortmund

3. Marz 2013

1 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Inhaltsverzeichnis

Einleitung

Hauptspeicher

VECC

LOT-ECC

Fazit

2 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des Hauptspeicherbedarfs

I Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende Anschaffungskosten

I steigender Energiebedarf des Hauptspeichers und darausresultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I ProblematikI ...

3 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senken

I Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECCI x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiert

I Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiert

I Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiert

I Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)

I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)

I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits Daten

I DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro Rank

I 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus Bandbreite

I keine x16 ECC-DIMMs

6 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I”chipkill correct“

I”Single Symbol Correct Double Symbol Detect“ (SSC-DSD)

I 3- oder 4-Symbol Prufsumme

7 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I”chipkill correct“

I”Single Symbol Correct Double Symbol Detect“ (SSC-DSD)

I 3- oder 4-Symbol Prufsumme

7 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I”chipkill correct“

I”Single Symbol Correct Double Symbol Detect“ (SSC-DSD)

I 3- oder 4-Symbol Prufsumme

7 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

”chipkill“ Konfiguration

Abbildung : Chipkill Konfiguration(Quelle: Virtualized and Flexible ECC for Main Memory, Seite 399)

8 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteilt

I”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim Speicherzugriff

I”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-InterfacesI Bereitstellen von Speicherplatz fur T2EC

I wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-InterfacesI Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Information wirdim ECC Bereich bei dendazugehorigen Datengespeichert

I T2EC Information wirdin anderem DRAM rankim Datenteil gespeichert

I T2EC kann wie dienormalen Daten inden

”last-levle cache“

(LLC) geladen werden

10 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Information wirdim ECC Bereich bei dendazugehorigen Datengespeichert

I T2EC Information wirdin anderem DRAM rankim Datenteil gespeichert

I T2EC kann wie dienormalen Daten inden

”last-levle cache“

(LLC) geladen werden

10 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Information wirdim ECC Bereich bei dendazugehorigen Datengespeichert

I T2EC Information wirdin anderem DRAM rankim Datenteil gespeichert

I T2EC kann wie dienormalen Daten inden

”last-levle cache“

(LLC) geladen werden

10 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLC

I Fehlererkennung mitT1EC Code ausfuhren

I Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhren

I Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefundenI Laden von T2EC zur

Fehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefundenI Laden von T2EC zur

FehlerkorrekturI zusatzlicher

Speicherzugriff fallsT2EC nicht im LLC

11 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in den Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T2EC Information mussaktualisiert werden

I 3©: Ubersetzen derDatenadresse durch

”ECC adress

translation unit“I 4©: ECC Information

im LLC wirdaktualisiert bzw. neureserviert

12 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in den Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T2EC Information mussaktualisiert werden

I 3©: Ubersetzen derDatenadresse durch

”ECC adress

translation unit“

I 4©: ECC Informationim LLC wirdaktualisiert bzw. neureserviert

12 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in den Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T2EC Information mussaktualisiert werden

I 3©: Ubersetzen derDatenadresse durch

”ECC adress

translation unit“I 4©: ECC Information

im LLC wirdaktualisiert bzw. neureserviert

12 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I Abspeichern vonZusatzinformationbezuglich Gultigkeit

I 5© Schreiben der T2ECInformationen in denSpeicher

13 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I Abspeichern vonZusatzinformationbezuglich Gultigkeit

I 5© Schreiben der T2ECInformationen in denSpeicher

13 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Erweiterung fur Non-ECC DIMMs

Abbildung : Virtuelles ECC mitNon-ECC DIMMsQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Informationenwerden bei den T2ECInformationengespeichert

I wenn ECC Informationnicht im LLC muss einweitererHauptspeicherzugrifferfolgen

I T2EC Informationenwerden sofort mitgelesen

14 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Erweiterung fur Non-ECC DIMMs

Abbildung : Virtuelles ECC mitNon-ECC DIMMsQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Informationenwerden bei den T2ECInformationengespeichert

I wenn ECC Informationnicht im LLC muss einweitererHauptspeicherzugrifferfolgen

I T2EC Informationenwerden sofort mitgelesen

14 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Erweiterung fur Non-ECC DIMMs

Abbildung : Virtuelles ECC mitNon-ECC DIMMsQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Informationenwerden bei den T2ECInformationengespeichert

I wenn ECC Informationnicht im LLC muss einweitererHauptspeicherzugrifferfolgen

I T2EC Informationenwerden sofort mitgelesen

14 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1EC

I das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2EC

I bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 Bit

I bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 SymboleI Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8

DIMMs

15 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM Chips

I Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in DatenchipsI bei x16 DIMMs konnen aufgrund großerer Symbole weniger

ECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in DatenchipsI bei x16 DIMMs konnen aufgrund großerer Symbole weniger

ECC Informationen im LLC gehalten werdenI

”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der lokalen und mehrstufigen Fehlererkennungund -korrektur

I”chipkill protection“ fur x4 und x8 ECC DIMMs

I Aufteilen des Schutzes auf lokale und globale Ebene

17 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der lokalen und mehrstufigen Fehlererkennungund -korrektur

I”chipkill protection“ fur x4 und x8 ECC DIMMs

I Aufteilen des Schutzes auf lokale und globale Ebene

17 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhalten

I bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit Daten

I wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigt

I dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener Daten

I wird im selben”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichert

I aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht Chips

I letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I Fehler muss bei zwei gleichzeitigen Chipfehlern erkannt werden

I kann nicht korrigiert werden, aber muss als Unkorrigierbarkeitgekennzeichnet werden

I 9 Bit Error Detection Code fur GEC Parity Bits

Abbildung : Speicherlayout fur den GEC einer Cachezeile(Quelle: LOcalized and Tiered Reliability Mechanisms for CommodityMemory Systems Seite 289)

20 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I Fehler muss bei zwei gleichzeitigen Chipfehlern erkannt werdenI kann nicht korrigiert werden, aber muss als Unkorrigierbarkeit

gekennzeichnet werden

I 9 Bit Error Detection Code fur GEC Parity Bits

Abbildung : Speicherlayout fur den GEC einer Cachezeile(Quelle: LOcalized and Tiered Reliability Mechanisms for CommodityMemory Systems Seite 289)

20 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I Fehler muss bei zwei gleichzeitigen Chipfehlern erkannt werdenI kann nicht korrigiert werden, aber muss als Unkorrigierbarkeit

gekennzeichnet werdenI 9 Bit Error Detection Code fur GEC Parity Bits

Abbildung : Speicherlayout fur den GEC einer Cachezeile(Quelle: LOcalized and Tiered Reliability Mechanisms for CommodityMemory Systems Seite 289)

20 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ansatz

LOT-ECC

I Anderungen nur auf Ebenedes Speichercontrollersvorgenommen, uminteressant fur kommerzielleUmsetzung zu sein

I”chipkill protection“ auf x8

DIMMs realisiert

I”chipkill protection“ fur

einen aus neun Chips

Virtuelles ECC

I Moglichkeit der flexiblenAdaptierung desSchutzlevels an aktuelleAnwendung, weitreichendereAnderungen

I”chipkill protection“ mit

verschiedenenKonfigurationen; ECC aufNON-ECC DIMMs

I”chipkill protection“ fur zwei

aus 36 Chips

22 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ansatz

LOT-ECC

I Anderungen nur auf Ebenedes Speichercontrollersvorgenommen, uminteressant fur kommerzielleUmsetzung zu sein

I”chipkill protection“ auf x8

DIMMs realisiert

I”chipkill protection“ fur

einen aus neun Chips

Virtuelles ECC

I Moglichkeit der flexiblenAdaptierung desSchutzlevels an aktuelleAnwendung, weitreichendereAnderungen

I”chipkill protection“ mit

verschiedenenKonfigurationen; ECC aufNON-ECC DIMMs

I”chipkill protection“ fur zwei

aus 36 Chips

22 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ansatz

LOT-ECC

I Anderungen nur auf Ebenedes Speichercontrollersvorgenommen, uminteressant fur kommerzielleUmsetzung zu sein

I”chipkill protection“ auf x8

DIMMs realisiert

I”chipkill protection“ fur

einen aus neun Chips

Virtuelles ECC

I Moglichkeit der flexiblenAdaptierung desSchutzlevels an aktuelleAnwendung, weitreichendereAnderungen

I”chipkill protection“ mit

verschiedenenKonfigurationen; ECC aufNON-ECC DIMMs

I”chipkill protection“ fur zwei

aus 36 Chips

22 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Vergleich”Singel Symbol Correct Double Symbol Detect“

(SSC-DSD)

LOT-ECC

I 20-40 ProzentEnergieeinsparung

I 5-15 Prozent geringereLatenz

I 14 Prozent hohererSpeicherbedarf

Virtuelles ECC

I 10-30 ProzentEnergieeinsparung

I 0,5 Prozent hohere Latenzbei ECC DIMMs

I Non-ECC DIMMs bis zu 10Prozent schlechter

23 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Vergleich”Singel Symbol Correct Double Symbol Detect“

(SSC-DSD)

LOT-ECC

I 20-40 ProzentEnergieeinsparung

I 5-15 Prozent geringereLatenz

I 14 Prozent hohererSpeicherbedarf

Virtuelles ECC

I 10-30 ProzentEnergieeinsparung

I 0,5 Prozent hohere Latenzbei ECC DIMMs

I Non-ECC DIMMs bis zu 10Prozent schlechter

23 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Vergleich”Singel Symbol Correct Double Symbol Detect“

(SSC-DSD)

LOT-ECC

I 20-40 ProzentEnergieeinsparung

I 5-15 Prozent geringereLatenz

I 14 Prozent hohererSpeicherbedarf

Virtuelles ECC

I 10-30 ProzentEnergieeinsparung

I 0,5 Prozent hohere Latenzbei ECC DIMMs

I Non-ECC DIMMs bis zu 10Prozent schlechter

23 / 24

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Quellen

Doe Hyun Yoon, Mattan Erez. Virtualized and flexible ECC formain memory. Proceedings of the fifteenth edition of ASPLOSon Architectural support for programming languages andoperating systems. (2010)

A. N. Udipi, N. Muralimanohar, R. Balsubramonian, A. Davis,N.P. Jouppi. LOT-ECC: localized and tiered reliabilitymechanisms for commodity memory systems. 39th AnnualInternational Symposium on Computer Architecture (ISCA).(2012)

24 / 24