Wieso wird im Rechenzentrum kein Undervolting benutzt?



  • Würde doch Sinn machen, denn da kommen immerhin bei ca. 1000 Rechner locker 30 KW/h zusammen, im Jahr wäre das eine Kostenersparnis von ca. 55000 €.

    Da ist es doch ziemlich doof, wenn man diese Energieeinsparung nicht nutzt.
    Leistungseinbußen hat man ja nicht.



  • Eine Spannungsabsenkung kann also dazu führen, dass die Software falsche Ergebnisse liefert oder nicht mehr korrekt abläuft; die Hardware selbst wird bei einer Spannungsabsenkung nicht beschädigt. Daher ist bei einer Spannungsabsenkung sicherzustellen, dass noch alle Transistoren des Mikroprozessors sicher schalten können. Bei Rechnern im medizinischen, wissenschaftlichen oder sicherheitsrelevanten Bereich sollte kein unnötiges Risiko eingegangen werden, die Spannung sollte deshalb immer innerhalb der Spezifikationen liegen.



  • WikipediaLesen schrieb:

    Eine Spannungsabsenkung kann also dazu führen, dass die Software falsche Ergebnisse liefert oder nicht mehr korrekt abläuft; die Hardware selbst wird bei einer Spannungsabsenkung nicht beschädigt. Daher ist bei einer Spannungsabsenkung sicherzustellen, dass noch alle Transistoren des Mikroprozessors sicher schalten können. Bei Rechnern im medizinischen, wissenschaftlichen oder sicherheitsrelevanten Bereich sollte kein unnötiges Risiko eingegangen werden, die Spannung sollte deshalb immer innerhalb der Spezifikationen liegen.

    Ja und?

    Rechenergebnisse lassen sich überprüfen. Prime95 macht das.

    Sobald der Rechner also falsch rechnet, stellt man die Spannung wieder etwas höher und dann rechnet er wieder richtig, aber die Spannung ist immer noch so niedrig, daß er immer noch undervoltet ist.

    Das kann man schon machen.
    Und bei ner Renderfarm dürften seltene Rechenfehler ziemlich egal sein.



  • Mal davon abgesehen, daß in der Wikipedia jeder was reinschreiben kann.



  • Ökofreak schrieb:

    Mal davon abgesehen, daß in der Wikipedia jeder was reinschreiben kann.

    Dadurch werden richtige Aussagen aber noch lange nicht falsch. Außerdem überprüft dieses Prime95 bestimmt nicht allumfassend die gesamte CPU. An Rechenzentren wird die Anforderung an nahezu 100% Uptime gestellt, da will niemand unnötige Risiken eingehen. Außerdem verursacht es auch zusätzliche Kosten, für jede CPU eine ideale Spannung zu finden.



  • Don't feed the troll



  • Müslifresser schrieb:

    Dadurch werden richtige Aussagen aber noch lange nicht falsch.

    Sie sind für den gebenen Anwendungsfall aber irrelevant.

    Rechenfarmen wie die von Google, die nur Suchanfragen bedienen, bei denen ist es egal, wenn mal in 1 von x Trilliarden * Trilliarden Fällen ein Bit wegen Undervolting falsch umkippt.

    Und bei der Forschung wie z.b. Folding@Home ist es auch wurscht, denn da existiert Redunanz.
    Selbst die Rechner am LHC dürften bei den Rechenergebnissen auf Redunanz setzen und nochmal dagegen rechnen.
    Der Fehler wird auf jedenfall nicht zweimal an der gleichen Stelle auftreten.

    Außerdem überprüft dieses Prime95 bestimmt nicht allumfassend die gesamte CPU.

    Und genau deswegen geht man nochmal ein Spannungsstufen zurück, als Sicherheitsfaktor. Siehe das Posting in meinem anderen Thread.

    An Rechenzentren wird die Anforderung an nahezu 100% Uptime gestellt, da will niemand unnötige Risiken eingehen.

    Es fallen aber nicht alle Rechner gleichzeitig aus.
    Sollte so etwas passieren, dann ist das einer von 1000.

    Und was soll das eigentlich, bei Undervolting gibt es keine Hardwaredefekte, sondern bestenfalls in einem von trillionen * Trillionen Versuchen einen Rechenfehler der einen einzigen Computer von 1000 CPUs in einem Zeitraum von 10 Jahren vielleicht mal das Programm falsch rechnen läßt und dieses dann hängen bleibt.
    Die anderen Rechner funktionieren trotzdem weiter, die Redunanz ist vorhanden und das gesamte Rechenzentrum kein bischen betroffen.

    Das dir eine Festplatte kaputt geht ist um mehrere Größenordnungen wahrscheinlicher, als daß du nen Rechenfehler wegen Undervolting hast.

    Außerdem verursacht es auch zusätzliche Kosten, für jede CPU eine ideale Spannung zu finden.

    Das ist richtig, aber diese Kosten enstehen nur einmal, bei der Installation des Rechenzentrums.
    Wenn du die individuelle Spannung für jede CPU einmal ausgelotet hast, dann rennt der Rechner für die nächsten Jahre bis die gesamte Hardware im Rechenzentrum wieder ausgewechselt wird.

    Aber die 50000 € pro Jahr, die hast du halt trotzdem gespart.
    Deswegen rechnet sich das halt durchaus.

    Ja, es rechnet sich selbst dann, wenn du am Anfang bei der Einrichtung einen Mitarbeiter für einen Monat anstellt, der nur die Aufgabe hat, die Undervolting Spannungen aller Rechner auszuloten.

    Das Beispiel in der WP bezügl. Medizinischer Bereich trifft also nur zu, wenn du z.b. keine Redunanz hast.
    Also z.B. eine einzige CPU im Herzschrittmacher z.B.
    Aber wer weiß, vielleicht sind selbst da schon 2 CPUs drin.
    Das Space Shuttle hatte 4 Computer, bei denen wäre Undervolting kein Problem gewesen, denn selbst wenn einer mal für einen Augenblick falsch gerechnet hätte, so hätten die 3 anderen richtig gerechnet.



  • Redundanz wird verwendet um Sicherheit zu schaffen, nicht um schlampige Arbeit des Prozessors auszugleichen. Zudem erfordert eine falsche Korrektheitsprüfung auch oft eine erneute Berechbung, was die Effizienz wieder deutlich drückt.

    Auch der Arbeitsaufwand ist enorm. Ich habe letztens wieder einen tollen Beitrag gelesen wie: "Mein Betriebssystem xyz ist gar nicht so unzuverlässig, das läuft schon 2 Monate durchgehend ohne Neustart." Du kannst dir mit Sicherheit ausrechnen, was das in einer Serverfarm mit 1000 Rechnern bedeutet, wenn ein Rechner "nur" 2 Monate am Stück zuverlässig läuft, bevor man wieder ran muss. Von der Fehleranalyse mal ganz abgesehen. Die ist nämlich nicht so einfach, wenn der Prozessor immer mal wieder falsch rechnet.

    Ich war letztens in einem Saturn Laden. Da wollte der Verkäufer einem Ehepaar (schätzungsweise 50-60 Jahre, keine Technik-Erfahrung) tatsächlich einen Laptop mit 8 Gigabyte RAM anbieten und ihnen weis machen, dass man für eine vernünftige Grafikleistung auch eine sehr tolle Grafikkarte braucht. Das werden die für ein bisschen Solitär, Im Web surfen und mal einen Brief oder eine EMail schreiben mit Sicherheit brauchen...

    Von Bekannten höre ich immer wieder etwas wie: "Mein PC ist zu langsam geworden, ich brauche einen neuen". In der Regel ist das völliger Blödsinn und liegt eher daran, dass ihr Windows-System total vollgemüllt ist. Neu aufsetzen, eventuell mit Linux, und schon rennt das Ding wieder wie neu.

    Ich glaube, wenn Privatleute etwas bewusster einkaufen würden, ließe sich viel mehr sparen, als in Rechenzentren, die in der Regel schon Kosten-/Energiebewusst administriert werden.



  • Ökofreak meinst du das ernst oder trollst du nur rum?



  • @Ökofreak: Die Leute, die viele Rechner unterhalten müssen, machen sich durchaus Gedanken um die Energieeffizienz. Wie Du schon sagst, ist das auch ein Kostenfaktor. Aber gehen wir mal von den Rechenzentren weg zu den Supercomputern. Da gibt es ja eine Liste der 500 schnellsten Supercomputer. Aber wusstest Du, dass es auch eine Liste der 500 energieeffizientesten Supercomputer gibt? Die Existenz dieser Liste kannst Du darauf zurückführen, dass Energieeffizienz durchaus als Designziel bei Supercomputern gesehen wird. Die Stromrechnung ist nämlich durchaus enorm, wenn man ein paar hunderttausend Prozessoren rechnen lässt. 😋



  • Ökofreak schrieb:

    [...] Redundanz [...] Redundanz [...] Redundanz [...]



  • Gregor schrieb:

    @Ökofreak: Die Leute, die viele Rechner unterhalten müssen, machen sich durchaus Gedanken um die Energieeffizienz. Wie Du schon sagst, ist das auch ein Kostenfaktor. Aber gehen wir mal von den Rechenzentren weg zu den Supercomputern. Da gibt es ja eine Liste der 500 schnellsten Supercomputer. Aber wusstest Du, dass es auch eine Liste der 500 energieeffizientesten Supercomputer gibt? Die Existenz dieser Liste kannst Du darauf zurückführen, dass Energieeffizienz durchaus als Designziel bei Supercomputern gesehen wird. Die Stromrechnung ist nämlich durchaus enorm, wenn man ein paar hunderttausend Prozessoren rechnen lässt. 😋

    Richtig, die Listen kenne ich auch, aber es wäre doch mal interessant zu erfahren, ob die auch Undervolting im Programm haben.

    Wenn man nur per Software undervoltet und die niedrigere Spannung nicht im BIOS einträgt, dann kann man den Rechner sogar sehr schnell wieder in Betrieb nehmen, wenn es denn tatsächlich ein Problem geben sollte.

    Außerdem, wenn man 50000 € an Stromkosten einspart, dann hat das noch weitere Nebeneffekte, denn dann dürfte man noch weitere X € für die Kühlung einsparen, oder man kann für die 50000 € noch ein paar hundert mehr CPUs anschließen, dann hat man dank Undervolting sogar einen Supercomputer mit noch mehr CPUs und mehr Rechenleistung.

    Also finanziell kann sich das schon lohnen, zumal die Kosten ja nur einmalig am Anfang in den ersten 2 Tagen Testbetrieb anfallen.
    Wenn die CPU sauber bezügl. Undervolting ausgelotet wurde, dann wird sie auf ewig richtig rechnen, daß da dann doch mal ein Rechenfehler auftritt ist nämlich sehr sehr unwahrscheinlich.

    Eine ausgelotete Undervolting CPU ist also so, als würde man sie innerhalb der Spezifikation betreiben. Die wahrscheinlichkeit daß wegen Undervolting noch ein Rechenfehler auftritt ist extrem unwahrscheinlich, ganz ausschließen tue ich es aber nicht, aber das kann man in den Griff kriegen.

    Der Punkt mit von 1000 CPU fällt einer nach 2 Monaten aus ist nicht der Rede wert, denn es ist ja nur eine einzige CPU.
    Diese muß man dann einmal neu starten und die Spannung etwas erhöhen und schon rechnet sie wieder richtig.
    Der größte Verlust dürfte wohl nur an der Zeit für die Daten liegen, die man nun neuberechnen muß.

    Aber hey, irgendwelche Sicherheiten bezügl. korrektheit der Berechnungen muß so eine Supercomputersoftware IMO sowieso haben, denn man denke nur mal an radioaktive Hintergrundstrahlung die auch mal so ein Bit im Cache der CPUs umkippen lassen können.

    Also ich bin schon der Meinung, daß sich Undervolting sowohl im Rechenzentrum als auch bei Supercomputern finanziell lohnen würde.



  • hoollaaa schrieb:

    Ökofreak meinst du das ernst oder trollst du nur rum?

    Ich meine das ernst, weil eine gut ausgelotete Undervolting CPU richtig rechnet und ein Rechenfehler mehr als unwahrscheinlich ist.
    Das kann man also durchaus machen.

    Siehe die obige Begründungen.



  • Ökofreak schrieb:

    Also finanziell kann sich das schon lohnen, zumal die Kosten ja nur einmalig am Anfang in den ersten 2 Tagen Testbetrieb anfallen.
    Wenn die CPU sauber bezügl. Undervolting ausgelotet wurde, dann wird sie auf ewig richtig rechnen, daß da dann doch mal ein Rechenfehler auftritt ist nämlich sehr sehr unwahrscheinlich.

    Die Grenzwerte verschieben sich aber mit der Zeit durch Elektronenmigration. Das ist gerade bei modernen Chips mit kleinen Strukturen ein Problem.

    Ökofreak schrieb:

    Der Punkt mit von 1000 CPU fällt einer nach 2 Monaten aus ist nicht der Rede wert, denn es ist ja nur eine einzige CPU.
    Diese muß man dann einmal neu starten und die Spannung etwas erhöhen und schon rechnet sie wieder richtig.
    Der größte Verlust dürfte wohl nur an der Zeit für die Daten liegen, die man nun neuberechnen muß.

    Wenn sie einfach mit dieser Rate ausfallen würden und ein großes Schild aufblingt, mit der Aufschrift, "Fehler wegen zu niedriger Betriebsspannung", dann sind die Wartungsvorgänge kein Problem, da die Wartungszeit nur sehr kurz ist. Das ist aber nicht der Fall. Die Systeme können auch einfach Müll produzieren und dann musst du erstmal herausfinden, ob Müll produziert wurde, was den Müll produziert hat und was du tun musst, um die Fehler zu korrigieren. Eventuell musst du Daten von mehreren Tagen Betrieb verwerfen und spätestens dann rechnet es sich nicht mehr mit der Ökobilanz. Mal abgesehen von den Störungen und Verzögerungen im Betriebsablauf, denn die Dinger laufen ja nicht aus Selbstzweck.



  • 50kEUR ist kein Betrag, wegen dem man irgendwelche Rechner außerhalb der Spezifikation betreiben würde. Die Einsparung ist lächerlich. Sie würde nicht einmal das Jahresgehalt des zusätzlichen Technikers kompensieren, den man für diese Optimierung einstellen müßte.



  • Marc++us schrieb:

    50kEUR ist kein Betrag, wegen dem man irgendwelche Rechner außerhalb der Spezifikation betreiben würde. Die Einsparung ist lächerlich. Sie würde nicht einmal das Jahresgehalt des zusätzlichen Technikers kompensieren, den man für diese Optimierung einstellen müßte.

    Du brauchst keinen Techniker für das ganze Jahr, sondern nur für die erste Woche fürs ausloten.

    Danach tut dann nur das Standardpersonal, das sowieso da ist, diesen einen Rechner von 1000, der mal falsch rechnet neu konfigurieren.
    Weitere Wartungskosten fallen nicht an.

    Wegen der Elektronnenmigration.
    Die Belastung auf die CPU ist durch Undervolting niedriger, da geringere Spannung und weniger Wärme.
    D.h. die Elektonenmigration schreitet viel langsamer voran.



  • @50k ersparnis/Jahr:

    Was würde es denn kosten alle rechner so anzupassen? Was kostet es alle rechner zu testen ob die keien falschen ergebnisse liefern? Wer kümmert sich drum?

    Ich glaub der Aufwand lohnt sich nicht.



  • unabhängig davon:

    eine CPU rechnet falsch und es kippt ein Bit. 1 Woche später gibt das Programm das Resultat aus und niemand bemerkt den Fehler.

    Oops.



  • Es lohnt sich auf jeden Fall, sich über sowas Gedanken zu machen, die HPC-Szene ist doch ein gutes Beispiel dafür. Vor nicht allzulanger Zeit lag der bessere Effizienzwert bei etwa 400 Mflops/Watt, neulich waren es schon über 700 (Roadrunnersystem, mit Sicherheit auch Spannungsmanipulation dabei) dann wieder etwas besser und jetzt sogar 1664 Mflops/Watt, und das ist net schlecht.
    ( http://www.green500.org/lists/2010/11/top/list.php )
    ( http://www.bernd-leitenberger.de/benchmark.shtml )

    Diese Geschichte ist insofern fesselnd, weil auch neuere Systeme von solcherlei Überlegung profitieren können, z.B. "intelligente" Autos oder tragbare Computer.

    Und jetzt mal raus mit der Sprache, wieviel Flops- bzw. Mflops/Watt kann dein/euer Notebook? 😉



  • otze schrieb:

    unabhängig davon:

    eine CPU rechnet falsch und es kippt ein Bit. 1 Woche später gibt das Programm das Resultat aus und niemand bemerkt den Fehler.

    Oops.

    Die Frage ist doch, warum sollte es überhaupt kippen.

    Lest euch den WP Artikel durch.
    Alle Transistoren haben einen Toleranzbereich, Transistor 1 schaltet also bei einer niedrigeren Spannung als Transistor 2.

    Undervolting ausleuten bedeutet aber, die Spannung herauszufinden, bei dem auch der letzte Transistor, also der, der die höchste Spannung benötigt, zuverlässig schaltet.

    Wenn dieser also in x Milliarden Fällen zuverlässig schaltet, warum sollte er es dann einmal nicht tun?

    Die anderen Transistoren schalten auf alle Fälle, da die ja schon mit einer geringeren Spannung klarkommen, als dieser Transistor.

    Stellt euch das also einfach mal physikalisch vor.
    Im Prinzip ist die Wahrscheinlichkeit das er mal nicht schaltet so gering, daß er im Hintergrundrauschen von Bitkipps verursacht durch radioaktive Strahlung und Co verschwindet.

    [QUOTE=sdfsdfsd ]
    @50k ersparnis/Jahr:

    Was würde es denn kosten alle rechner so anzupassen? Was kostet es alle rechner zu testen ob die keien falschen ergebnisse liefern? Wer kümmert sich drum?

    Ich glaub der Aufwand lohnt sich nicht.
    [/QUOTE]

    Das kann man automatisieren.
    Auf allen CPUs wird ausgehend von der Standardspannung ein Programm gestartet, das anfängt zu rechnen und die Rechnungen auf Fehler mehrfach überprüft. Sobald die Rechnung stimmt, wird die Spannung etwas gesenkt und die Berechnung geht von vorne los.
    Und das geht so lange, bis die ersten Rechenfehler gemeldet werden, werden diese erreicht, dann wird die Spannung um 3-4 Stufen, welche als Puffer zur Sicherheit dienen erhöht und die gesuchte Spannung ist gefunden.
    Das schöne an Undervolting ist nämlich, daß der erste Rechenfehler noch längst nicht zum Programm oder Rechnerabsturz führt. Die Wahrscheinlichkeit ist hier selbst sehr gering.
    Das könnt ihr selber ausprobieren.
    Also ich Prime95 so durchlaufen lief, meldete es mir z.b. den Rechenfehler als Rückmeldung und der Rechner war noch so bedienbar als wäre gar nichts gewesen.
    D.h. ein kleines Bitkippen führt noch längst nicht zum sofortigen Absturz.

    Genau deswegen ist die niedrigste funktionsfähige Spannung durch ein Programm automatisiert auslotbar.

    Wenn überhaupt, dann dürfte das herantasten nur bei ganz wenigen CPUs von x Tausend dazu führen, daß das Programm schon bei der ersten zu niedrigen Spannungsstufe abstürzt und zwar genau bei den CPUs, bei denen die Transistoren betroffen sind, die z.B. das Zeigerregister und dergleichen betroffen.
    Nur bei solche Rechnern müßte man dann manuel wohl nachhelfen.

    Aber wie wahrscheinlich ist das schon, daß von x Milliarden Transistoren in einer CPU, ausgerechnet ein Transistor des Zeigerregisters ausfällt?
    IMO ist das sehr unwahrscheinlich.

    Deswegen dürfte man 1000 CPU spielend automatisiert ausloten können.
    Die Frage wie lange das dauert alle CPUs auszuloten, begrenzt sich also auf die Frage, wieviel Zeit man bei jeder Spannungsstufenabsenkung für die Prüfberechnung aufbringen will.
    1 h pro Stufe dürfte, um wirklich alle Transistoren durchzutesten, also genügen.

    Ich selbst habe etwa 10 Stufen durchprobiert und die CPU auch nicht so lange berechnen lassen, bei mir war die Berechnungszeit z.b. auch nur 10 Minuten pro Stufe und dann noch mal 2 h für die letzte Stufe für die ich mich dann entschied, aber ich habe auch etwas größere Sprünge gemacht, da ich es ja manuell machte.
    Aber da das automatisiert geht, dürften das auch nicht mehr als 30-60 Stufen sein.
    Das ganze Prozedere wäre durch ein automatisch laufendes Programm also in sagen wir mal weniger als 3 Tagen zu schaffen und dann sind alle 1000 CPUs durchgetestet.
    Einige erreichen das Ziel früher, weil sie schon früher bei hohen Spannungen Fehler melden und andere brauchen etwas länger.
    Und von den 1000 CPUs sind es vielleicht gerade mal 2 CPUs, bei denen ausgerechnet die Transistoren von der ersten Fehlspannung betroffen sind, die für einen zuverlässigen weiterbetrieb der CPU notwendig sind.
    Nur an diese müßte man dann Manuell ran, sie also neu starten und die letzte noch funktionierende Spannung + Sicherheitspuffer manuell eingeben.

    Um alle Programme auf allen CPUs zu starten reicht ein Script.
    Das Programm müßte ein Programmierer einmal schreiben und ein einziger Amdin würde es dann in den 3 Tagen auf allen CPUs durchlaufen lassen.

    Der Aufwand an Personal und Mannstunden ist also minimal.

    Was kostet ne Fachkraft die das dann in 3 Tagen + 2 für nen Puffer durchlaufen läßt?
    IMO fast nichts, im Vergleich zu den 50000 €, die man schon im ersten Jahr einspart.

    Und das sind jetzt nur 1000 CPUs, bedenkt, mit jeder weiteren CPU spart ihr, wenn wir mal meine CPU als Ausgangsopunkt nehmen 28 W ein.

    Bei 100000 CPUs sind es also nicht nur 50000 € die man spart, sondern gleich 5 Millionen Euro.
    Der Gewinn bzw. die Ersparnis skaliert nämlich mit der Anzahl der CPU, während der Aufwand für den automatischen Test sich kaum verändert.

    Umso mehr CPUs gleicher Bauart, desto lohnender wird es.


Anmelden zum Antworten