Frage Was ist ECC RAM und warum ist es besser?


Ich habe eine Diskussion über ECC-RAM-Nutzung auf Servern gesehen. Warum ist es besser?


30
2018-05-07 16:34


Ursprung


Frage beantwortet in einer anderen Frage: serverfault.com/questions/5817/... - sh-beta
Gibt es Hinweise darauf, dass das ECC-Gedächtnis notwendig oder nützlich ist? Die Vorteile und der Mechanismus des Handelns sind leicht zu verstehen, aber ich habe nie Beweise gehört, um seine Verwendung zu rechtfertigen. - Drew Stephens
Und welche möglichen Konsequenzen ergeben sich aus solchen Speicher (Bit) -Fehlern? Zum Beispiel habe ich gerade einen Server abgeschaltet, der 5 Jahre ununterbrochen online war (mit ECC-RAM), und im Großen und Ganzen ging alles gut, ich hatte nie Beschwerden von Kunden, die dort gehostet wurden oder jemals einen Major erlebt hatten Fehler damit ... Gleiches gilt für meine Desktop-Computererfahrung - ein BSOD hier und da ganz selten, aber ist das alles? :) - Denis Volovik
@Denis, ich denke, wenn Sie möchten, dass die Leute Ihre Frage beantworten, müssen Sie sie vielleicht als separate Frage und nicht als Kommentar stellen. - Toby Allen


Antworten:


ECC-RAM kann sich von kleinen Fehlern in Bits erholen, indem Paritätsbits verwendet werden. Da Server eine gemeinsame Ressource sind, bei der Verfügbarkeit und Zuverlässigkeit wichtig sind, wird ECC-RAM im Allgemeinen nur mit einem geringen Preisunterschied verwendet. ECC-RAM wird auch in CAD / CAM-Workstations verwendet, wo kleine Bitfehler zu Berechnungsfehlern führen können, die zu größeren Problemen werden, wenn ein Design in die Fertigung geht.


28
2018-05-07 16:46



Ein bisschen Fehler in einer Nummer überall, einschließlich der kleinen Unternehmen Finanzen Paket kann sehr klein sein oder sehr groß. Es hängt alles davon ab, was für ein bisschen. - Zan Lynx
Fügen Sie dazu die Tatsache hinzu, dass der falsche Fehler an der falschen Stelle viel mehr als eine Maschine zum Absturz bringen kann, wenn Sie die Konsolidierung virtualisiert haben. - MikeyB
Ich warte nur darauf, dass eine skrupellose Firma behauptet, ihr Bilanzbetrug sei nur ein kleiner Fehler. - Eloff


Ausgezeichnete reale Studie:

DRAM-Fehler in freier Wildbahn: Eine groß angelegte Feldstudie (pdf)

Dieses Papier bietet die erste groß angelegte Untersuchung von DRAM   Speicherfehler im Feld. Es basiert auf gesammelten Daten   von der Serverflotte von Google über einen Zeitraum von mehr als zwei   Jahre, die viele Millionen DIMM-Tage ausmachen. Der DRAM   In unserer Studie deckt mehrere Anbieter, DRAM-Dichten und   Technologien (DDR1, DDR2 und FBDIMM).

Der Beitrag befasst sich mit folgenden Fragen: Wie häufig sind Speicherfehler in der Praxis? Was sind ihre statistischen Eigenschaften? Wie werden sie von externen Faktoren wie Temperatur und Systemauslastung beeinflusst? Und wie variieren sie mit chipspezifischen Faktoren wie Chipdichte, Speichertechnologie und DIMM-Alter?

Wir stellen fest, dass sich DRAM-Fehler im Feld in vielen Aspekten sehr unterschiedlich verhalten, als gemeinhin angenommen. Zum Beispiel beobachten wir DRAM-Fehlerraten, die Größenordnungen sind   höher als bisher berichtet, mit FIT-Raten (Ausfälle in der Zeit pro Milliarde Gerätestunden) von 25.000 bis 70.000 pro Mbit und mehr als 8% der betroffenen DIMMs pro Jahr. Wir liefern überzeugende Beweise dafür, dass Speicherfehler eher von Fehlern als von weichen Fehlern dominiert werden, auf die sich die meisten früheren Arbeiten konzentrieren. Wir finden, dass von allen Faktoren, die das Fehlerverhalten eines DIMMs beeinflussen, die Temperatur überraschend klein ist. Schließlich beobachten wir, anders als allgemein befürchtet, keine Anzeichen dafür, dass die DIMM-Fehlerrate bei neueren DIMM-Generationen zunimmt.

Interessant, dass die meisten Speicherfehler schwer waren - harte Speicherfehler sind nicht wiederherstellbar, was bedeutet, dass der Speicher sein muss physisch ersetzt als fehlgeschlagen, während weiche Speicherfehler durch Überschreiben des Speichers mit dem richtigen Wert behoben werden können. Dies deutet darauf hin, dass der Wert der ECC ziemlich begrenzt ist.

Es gibt zwei Arten von Fehlern, die typischerweise in einem Speichersystem auftreten können. Der erste wird als wiederholbarer oder schwerer Fehler bezeichnet. In dieser Situation ist ein Teil der Hardware defekt und führt regelmäßig zu falschen Ergebnissen. Ein Bit kann stecken bleiben, so dass es zum Beispiel immer "0" zurückgibt, egal was darauf geschrieben wird. Harte Fehler weisen in der Regel auf lose Speichermodule, defekte Chips, defekte Motherboards oder andere physikalische Probleme hin. Sie sind relativ einfach zu diagnostizieren und zu korrigieren, da sie konsistent und wiederholbar sind.

Klingt so, als ob alle Server in der Studie ECC verwendet hätten, daher können wir keine ECC- oder Nicht-ECC-Fehlerraten kennen.

In dieser Arbeit wurden die Inzidenz und Eigenschaften von   DRAM-Fehler in einer großen Flotte von Commodity-Servern. Unsere   Studie basiert auf Daten gesammelt über mehr als 2 Jahren und   umfasst DIMMs verschiedener Anbieter, Generationen, Technologien und Kapazitäten. Alle DIMMs waren mit Fehlern ausgestattet   Korrekturlogik (ECC), um mindestens einzelne Bitfehler zu korrigieren.


29
2017-08-20 11:24



+1 schöner Bericht. Während ich nicht kennt Nicht-ECC-Fehlerraten, I schätzenDiese Nicht-ECC-Fehlerraten entsprechen in etwa den ECC-Fehlerraten pro GB. Dieselben verwendeten RAM-Chips werden sowohl in ECC- als auch in Nicht-ECC-DIMMs verwendet (die ECC-DIMMs verwenden einfach 9/8 so viele Chips - 72 Rohspeicherbits zum Speichern eines 64-Bit-Datenworts und 8/9 der Fehlerrate) ungefähr dieselbe Fehlerrate), und ich sehe keinen Grund, dass ein RAM-Chip eine signifikant unterschiedliche Fehlerrate aufweisen würde, wenn er auf einem ECC DIMM platziert wird, im Gegensatz zu einem auf einem Nicht-ECC DIMM platzierten. - David Cary


ECC hat mehrere Vorteile gegenüber Parität. Zum einen kann es Single-Bit-Fehler erkennen und reparieren, ohne das ganze System stoppen zu müssen. Mehrbitfehler geben immer noch einen Paritätsfehler zurück, aber die Wahrscheinlichkeit dafür ist während der Lebensdauer eines PCs astronomisch niedrig, es sei denn, der Speicher selbst ist defekt. ECC ist wie Auto-Versicherung: Es deckt Sie für die Mehrheit der Dinge, die schief gehen können, aber es kann nicht verhindern, dass ein Multi-Car Pile-Up.

mehr Details hier: ECC-Speicher: Ein Muss für Server, nicht für Desktop-PCs


9
2018-05-07 16:45



Ich stimme dem Artikel nicht zu. Ich denke jeder sollte ECC benutzen. Ich wollte nicht nachgeben, aber ich wollte einen neuen Core I7, den ich endlich gemacht habe. Ich bin jedoch sicher, dass meine 6 GB RAM überall Fehler auffangen. - Zan Lynx
@ Zan und diese Fehler sind Sie "sicher" über, welche Konsequenz haben sie? - Jeff Atwood
Raten Sie nicht; korrigierbare Fehler sollten zu MCEs führen, die im Betriebssystem protokolliert werden können (Systemprotokoll in Windows, / var / log / mcelog in Linux) - MikeyB
@ JeffAtwood: Nichts normalerweise, aber ich hatte gelegentlich einen Bluescreen ohne ersichtlichen Grund. Auf Systemen habe ich welche tun habe ECC Ich werde jeden Monat ein paar Einzelbitfehler sehen. - Zan Lynx
@ JeffAtwood: Und wie alle anderen bin ich mir sicher, dass ich gelegentlich eine Anwendung neu installieren musste (Office. Visual Studio), weil sie anscheinend verrückt geworden ist. App-Fehler oder ECC-Fehler, der eine beschädigte Datei verursacht? Wer weiß, ob Sie kein ECC haben? - Zan Lynx


Um es einfacher zu machen, zitieren wir von Wikipedia:

Elektrische oder magnetische Interferenz innerhalb eines Computersystems kann bewirken, dass ein einzelnes DRAM-Bit spontan in den entgegengesetzten Zustand umkehrt. Es wurde zunächst angenommen, dass dies hauptsächlich auf Alphateilchen zurückzuführen sei, die von Verunreinigungen in Chipverpackungsmaterial emittiert wurden, aber die Forschung [5] hat gezeigt, dass die Mehrzahl von einmaligen ("weichen") Fehlern in DRAM-Chips als Folge von Hintergrundstrahlung auftritt
  ...
  Dieses Problem kann durch Verwendung von DRAM-Modulen, die zusätzliche Speicherbits enthalten, und Speichersteuereinheiten, die diese Bits ausnutzen, gemildert werden. Diese zusätzlichen Bits werden verwendet, um Parität aufzuzeichnen oder einen Fehlerkorrekturcode zu verwenden


5
2018-05-07 16:39