Frage Unterschied; multi und single-Bit ECC RAM

Reflexiony

Neuling
Mitglied seit
Jun 11, 2022
Beiträge
9
Bewertungspunkte
1
Punkte
2
Sry für die Frage, aber scheinbar bin ich nicht in der Lage gute Dokumentationen oder für mich verständliche Dokumente zu finden, die erläutern, was den Unterschied zwischen multi und single-Bit ECC RAM beziffert.

Mir ist schon die „single“ Variante klar auf den kleineren LGA 11xx Boards und Multi-Bit meinen LGA 2xxx Xeons darum geht es nicht, 1Bit Fehler korregieren.. 2Bit Fehler „nur“ erkennen.. und auch „Chipkill“ für deutlich mehr Behebungen. Nur wird mir nicht klar was und wie viel "multi" multi-bit ECC korregiert..

Mittlerweile sind ja bekannte Ryzen 5gen recht bezahlbar, idle geht mit B550 in Ordnung und ECC können sie zumindest fast in dem Umfang wie Xeons, interessant ist einfach was sie so klasse beim Multi-Bit ECC machen da wo man seitens Intels gerade mal single-Bit ECC bekommt.
 
Multi-Bit ECC ist meiner Meinung nach hauptsächlich Marketinggewäsch, speziell im Desktopbereich. Erreicht wird Multi-bit ECC üblicherweise dadurch, dass man Fehlerkorrektur (1bit) mit Fehlererkennung (bis zu 2bit) kombiniert und das Konstrukt SEC-DED nennt (Auflösung der Abkürzung: Single-bit Error Correction - Double-bit Error Detection). Gibt auch noch andere Verfahren, wo die verschiedenen Mechanismen mehrfach miteinander verschalten werden. Das macht aber nur bei Anwendungen Sinn, wo man nicht ohne weiteres den Speicherbaustein wechseln kann (z.B. beim Cache einer CPU oder beim Computersystem eines Satelliten).

Viel wichtiger bei ECC ist eigentlich, dass kumulierte ECC-Vorfälle dem Benutzer auch gemeldet werden! Der kann dann nämlich Maßnahmen ergreifen, wie zum Beispiel das Einplanen einer Downtime für den Austausch des betreffenden Speicherriegels.
 
Multi-Bit ECC ist meiner Meinung nach hauptsächlich Marketinggewäsch, speziell im Desktopbereich. Erreicht wird Multi-bit ECC üblicherweise dadurch, dass man Fehlerkorrektur (1bit) mit Fehlererkennung (bis zu 2bit) kombiniert und das Konstrukt SEC-DED nennt (Auflösung der Abkürzung: Single-bit Error Correction - Double-bit Error Detection). Gibt auch noch andere Verfahren, wo die verschiedenen Mechanismen mehrfach miteinander verschalten werden. Das macht aber nur bei Anwendungen Sinn, wo man nicht ohne weiteres den Speicherbaustein wechseln kann (z.B. beim Cache einer CPU oder beim Computersystem eines Satelliten).

Viel wichtiger bei ECC ist eigentlich, dass kumulierte ECC-Vorfälle dem Benutzer auch gemeldet werden! Der kann dann nämlich Maßnahmen ergreifen, wie zum Beispiel das Einplanen einer Downtime für den Austausch des betreffenden Speicherriegels.
Danke für die Erklärung, so wie ich das verstehe, ändert sich für den einzelnen RAM Riege nichts nur eben, dass jeder weitere für sich 1Bit Fehler weiterhin erkennt.. also eigentlich kein Mehrwert, hat man seinen Server mit 24 Riegel belegt, ist ohnehin schon ein höheres Risiko zu verzeichnen als bei 1-2 Riegeln, hier macht wohl eher Memory RAID und eben Chipkill etwas mehr Sinn zuverlässigkeit.. Meldung ist natürlich wichtig, soweit gelesen scheinen einige Server beim aufkommenden Fehlern aber auch direkt abzustürzen.
 
Du hast meistens eh nicht die Wahl, die ECC-Funktionalität wird von der Plattform vorgegeben. Und Plattformen, die wirklich multi-bit Fehler KORRIGIEREN können, kommen mit zusätzlicher Magie, die du nicht bezahlen kannst/willst, wenn Du sie nicht wirklich brauchst. Und wenn Du sie bräuchtest, wüsstest Du das und würdet Dein System bei einem Systemhaus mit entsprechendem Support und Zipp&Zapp kaufen. ;) Mehr als Single-Bit Korrektur bekommst Du im Eigenbau-Regal eher nicht, für mehr muss das Ganze System sorgfältig abgestimmt sein.

Die „Abstürze“ bei nicht korrigierbaren ECC-Fehlern (Z.B. mehr als ein Fehler bei Single-Bit ECC) sind in der Regel GEWOLLT, heißen dann gerne „Server halt“ (wird bewusst „angehalten“ im Gegensatz zum harten Absturz/Kernel Panic o.ä.): Absolute Prio hat hier die Integrität der Daten und Datenverarbeitungsprozesse, d.h. bevor „falsche“ Daten irgendwo landen, bricht man lieber alles ab.
 
Guten Abend,

kleiner Einwurf meinerseits: ECC beinhaltet die Korrektur.

Also Bitte keine Spielchen, AMD CPU, ECC Speicher (un-buffered bis 1 Tera Byte, darüber Registered ECC) und die Mühle Crunch beständig weiter.
 
Du hast meistens eh nicht die Wahl, die ECC-Funktionalität wird von der Plattform vorgegeben. Und Plattformen, die wirklich multi-bit Fehler KORRIGIEREN können, kommen mit zusätzlicher Magie, die du nicht bezahlen kannst/willst, wenn Du sie nicht wirklich brauchst. Und wenn Du sie bräuchtest, wüsstest Du das und würdet Dein System bei einem Systemhaus mit entsprechendem Support und Zipp&Zapp kaufen. ;) Mehr als Single-Bit Korrektur bekommst Du im Eigenbau-Regal eher nicht, für mehr muss das Ganze System sorgfältig abgestimmt sein.

Die „Abstürze“ bei nicht korrigierbaren ECC-Fehlern (Z.B. mehr als ein Fehler bei Single-Bit ECC) sind in der Regel GEWOLLT, heißen dann gerne „Server halt“ (wird bewusst „angehalten“ im Gegensatz zum harten Absturz/Kernel Panic o.ä.): Absolute Prio hat hier die Integrität der Daten und Datenverarbeitungsprozesse, d.h. bevor „falsche“ Daten irgendwo landen, bricht man lieber alles ab.
„Server halt“ natürlich macht auch Sinn bevor alles den Bach heruntergeht. Klingt spannend, auch wenn ich nicht zu der Spezies gehöre, die dafür das Systemhaus aufsucht, die zusätzlicher Magie bräuchte ich vllt dann ja doch, wenn ich Sie erstmal kennenlernen dürfte. "für mehr muss das Ganze System sorgfältig abgestimmt." heißt also, dass die 2011-3 Plattform zu aufwendig sind für daheim? Die Abstimmung würde mich interessieren.


Was AMD betrifft, hätte ich das zu bieten;
...Das kann ich noch liefern, die beiden MS200 2TB sitzen inzwischen im GigaByte B550I Aorus Pro AX, mit einem AMD Ryzen 5 PRO 4650G und 2x.Samsung DIMM 16GB, DDR4-3200 ECC, mit Windows 11 pro und laut PowerShell;
wmic memphysical get memoryerrorcorrection ;
"MemoryErrorCorrection 6"
Und
Get-WmiObject CIM_PhysicalMemory | select
banklabel,capacity,caption,devicelocator,partnumber | ft -AutoSize;
P0 CHANNEL A 17179869184 Physikalischer Speicher DIMM 1 M391A2G43BB2-CWE
P0 CHANNEL B 17179869184 Physikalischer Speicher DIMM 1 M391A2G43BB2-CWE
 
Danke für die Erklärung, so wie ich das verstehe, ändert sich für den einzelnen RAM Riege nichts nur eben, dass jeder weitere für sich 1Bit Fehler weiterhin erkennt.. also eigentlich kein Mehrwert, hat man seinen Server mit 24 Riegel belegt, ist ohnehin schon ein höheres Risiko zu verzeichnen als bei 1-2 Riegeln, hier macht wohl eher Memory RAID und eben Chipkill etwas mehr Sinn zuverlässigkeit.. Meldung ist natürlich wichtig, soweit gelesen scheinen einige Server beim aufkommenden Fehlern aber auch direkt abzustürzen.
Bei Multi-Bit ECC sind es Pro RAM Riegel 8-Bit (Dual-Ranked)
Also es wird ein Chip mehr verbaut auf dem PCB. ;)
 
Hier noch ein paar WMIC Befehle bezüglich ECC:


WMIC_ECC_Multi-Bit.jpg


Value Meaning
0 (0x0) Reserved

1 (0x1) Other

2 (0x2) Unknown

3 (0x3) None

4 (0x4) Parity

5 (0x5) Single-bit ECC

6 (0x6) Multi-bit ECC

7 (0x7) CRC
 
Sry für die Frage, aber scheinbar bin ich nicht in der Lage gute Dokumentationen oder für mich verständliche Dokumente zu finden, die erläutern, was den Unterschied zwischen multi und single-Bit ECC RAM beziffert.

Mir ist schon die „single“ Variante klar auf den kleineren LGA 11xx Boards und Multi-Bit meinen LGA 2xxx Xeons darum geht es nicht, 1Bit Fehler korregieren.. 2Bit Fehler „nur“ erkennen.. und auch „Chipkill“ für deutlich mehr Behebungen. Nur wird mir nicht klar was und wie viel "multi" multi-bit ECC korregiert..

Mittlerweile sind ja bekannte Ryzen 5gen recht bezahlbar, idle geht mit B550 in Ordnung und ECC können sie zumindest fast in dem Umfang wie Xeons, interessant ist einfach was sie so klasse beim Multi-Bit ECC machen da wo man seitens Intels gerade mal single-Bit ECC bekommt.
Multi-Bit kann mehr als ein Fehler erkennen.
Single-Bit schaltet ab sobald das Prüf-Bit nicht stimmt: Neustart vom System.
Multi-Bit schickt 8Bit zusätzlich bei jeder Übertragung zwischen IMC und Speicher Modul. Dadurch können Theoretisch bis zu 8 Fehler pro Modul und Übertragung Korregiert werden.

Edit: Chip-Kill = Da kannst im laufende Betrieb das Speicher Modul ausbauen. Beim nächsten Neustart und das kann bei Server bis zu 48 Stunden dauern. Dann kannst das neue Modul Einbauen.

Also das ist wirklich sehr sehr teuer, Chip-Kill ist die Königs Disziplin, mit ECC Speicher.
 
Zuletzt bearbeitet :
Multi-Bit kann mehr als ein Fehler erkennen.
Single-Bit schaltet ab sobald das Prüf-Bit nicht stimmt: Neustart vom System.
Multi-Bit schickt 8Bit zusätzlich bei jeder Übertragung zwischen IMC und Speicher Modul. Dadurch können Theoretisch bis zu 8 Fehler pro Modul und Übertragung Korregiert werden.

Edit: Chip-Kill = Da kannst im laufende Betrieb das Speicher Modul ausbauen. Beim nächsten Neustart und das kann bei Server bis zu 48 Stunden dauern. Dann kannst das neue Modul Einbauen.

Also das ist wirklich sehr sehr teuer, Chip-Kill ist die Königs Disziplin, mit ECC Speicher.
..Danke für die Erläuterung, magst Du erklären was es mit "48 Stunden" auf sich hat? Was dauert hier so lange, mal abgesehen vom dran hängenden Anwendern.

Kannst Du irgendwas mit dem Bereich anfangen ;
DataWidth TotalWidth
72 72

...für mich macht das überhaupt keinen Sinn. Und habe ich bisher auch nur bei einem china Mainboard gesehen.

Wi bereits erwähnt,
was Multi-Bit angeht, so sehe ich da eben keinen Vorteil, da es ja bei 8-Bit pro Riegel bleibt.

Offtopic;
Was Abstürze anbelangt, ich wäre schon dankbar, wenn bei meinem PRIMERGY TX1320 M3 Server im IPMI
"FUJITSU ServerView® iRMC S4 Web Server" die genannten Error Meldungen irgendwo eine Auflösung finden, google Suche dauert an....^^
 
Zuletzt bearbeitet :
Bei Servern kann das auch 3 Jahre dauern…

Meine zu Hause haben schon ne Uptime von 200+ Tagen.
 
Nö, weil ich keinen Bedarf fürn Reboot hatte. :D
 
..Danke für die Erläuterung, magst Du erklären was es mit "48 Stunden" auf sich hat? Was dauert hier so lange, mal abgesehen vom dran hängenden Anwendern.

Kannst Du irgendwas mit dem Bereich anfangen ;
DataWidth TotalWidth
72 72

...für mich macht das überhaupt keinen Sinn. Und habe ich bisher auch nur bei einem china Mainboard gesehen.

Wi bereits erwähnt,
was Multi-Bit angeht, so sehe ich da eben keinen Vorteil, da es ja bei 8-Bit pro Riegel bleibt.

Offtopic;
Was Abstürze anbelangt, ich wäre schon dankbar, wenn bei meinem PRIMERGY TX1320 M3 Server im IPMI
"FUJITSU ServerView® iRMC S4 Web Server" die genannten Error Meldungen irgendwo eine Auflösung finden, google Suche dauert an....^^
No Problem,

die 48 Stunden beziehen sich auf die Zugriffe auf den Server von Ausserhalb.
Du kannst nicht einfach Knoten Punkte herunter fahren ohne den Daten Austausch vorher anzuhalten oder abzubrechen.
Es sind ja Leute auf dem Server, die dafür bezahlt habe (Bandbreite).

Daher bis alle Anfragen abgearbeitet sind und der Ersatz Server Umgeleitet wurde, dauert eben 48h. :)

72 / 72 ist Super, dann hast genau so viele Daten Bits wie Redundanz. (144 Bit im Dual Channel)
 
Oben Unten