falsche Ergebnisse durch übertakten?

Grid-Computing, technische Entwicklung von Distributed Computing...
Nachricht
Autor
Benutzeravatar
Digger T. Rock
Brain-Bug
Brain-Bug
Beiträge: 543
Registriert: 20.03.2003 22:30
Wohnort: Cunewalde

falsche Ergebnisse durch übertakten?

#1 Ungelesener Beitrag von Digger T. Rock » 28.03.2005 23:40

Hi,


Es ist ja nun allgemein bekannt das wenn man eine CPU übertaktet es auch zu rechenfehlern kommt. Wenn man eine Grafik PU übertaktet, dann sieht man es ja anhand von Grafikfehlern.

Was passiert aber bei einer CPU?
Wenn ich ein DC Projekt auf einer übertakteten Maschine laufen lasse, kann dann das DC Prg die WUs falsch berechnen?
Was wenn man bei FAD etwas falsch berechnet und die Tests sagen aber es ist alles OK........?


Na ja, nur so eine Überlegung von mir.

:::Digger:::
Bild

Benutzeravatar
Patrick Keller
Vereinsmitglied
Vereinsmitglied
Beiträge: 1202
Registriert: 25.03.2003 15:06
Wohnort: Mainz

#2 Ungelesener Beitrag von Patrick Keller » 29.03.2005 01:18

Das kann passieren, sogar gar nicht so selten. Die Fehler sind dann in sehr geringen Bereichen, sodass man oft gar nix merkt, aus diesem Grund wird aber zB bei FAD die WU mehrmals berechnet (einige zumindest). Oder gar bei BOINC-Projekten wie Predictor, SETI oder auch Einstein@home die WU 4 mal gerechnet und gegengecheckt ;)

Es gibt aber zahlreiche Tools mit denen man testen kann ob die CPU läuft. Zum Beispiel bietet der GIMPS Client eine sehr nützliche Option bei der vorgegebene Zahlen gerechnet werden und anhan von Referenzwerten überprüft werden.

Gruß,
Keller ;)

Benutzeravatar
SpeedKing
TuX-omane
TuX-omane
Beiträge: 2943
Registriert: 12.09.2003 17:14

#3 Ungelesener Beitrag von SpeedKing » 29.03.2005 17:06

Der Unterschied zwischen GPU und CPU:
Eine GPU kannst du ziemlich stark übertakten, sie zeigt dann nur noch Müll an, trotzdem stürzt der Computer nicht ab.
Wenn du die CPU übertaktest, dann ist der Grat zwischen nur Rechenfehler erzeugen und Abstürzen sehr schmal. Der Takt muß genau so sein, daß die FPU oder MMX/SSE-Einheit Mist produziert, aber die ALU (für Integer- und Adressberechnungen) und der ganze Rest noch einwandfrei funktioniert.

Die Wahrscheinlichkeit eines Übertragungsfehlers über das Internet dürfte übrigens deutlich höher sein als die Wahrscheinlichkeit, durch Übertakten bei einem sonst noch stabilen System einen Rechenfehler zu erzeugen. Ich suche dazu zur Zeit konkrete Daten.

Trotzdem schadet ein Test der CPU natürlich nicht, evtl. auch mit CPU-Burn, der die CPU so stark wie möglich auheizt, weil die Fehlerwahrscheinlichkeit auch mit der Temperatur zunimmt.

Benutzeravatar
Mystwalker
Oberfalter
Oberfalter
Beiträge: 483
Registriert: 24.04.2003 14:40
Wohnort: Potsdam

#4 Ungelesener Beitrag von Mystwalker » 29.03.2005 18:35

Bei (den meisten) DC-Projekten würde ich davon ausgehen, dass deutlich mehr Fehler bei der Berechnung entstehen als bei der Übertragung.

Ein Faktor ist die Zeit: Die Berechnung dauert teilweise Tage, die Übertragung meistens Sekunden bis wenige Minuten.

Die Fehlererkennung ist bei der Übertragung auch simpel geregelt, zunächst durch TCP, anschließend häufig durch einfache sanity checks. Fehler werden im allgemeinen sehr leicht erkannt, da im Header eine checksum enthalten ist. Die beste Chance, falsche Daten zu übertragen, liegt in den Endpunkten. Sollte ein Fehler auftreten, so kann das entspr. Paket erneut übertragen werden.

Bei Berechnungen hingegen ist es oftmals schwer, Fehler wahrzunehmen. Man kann schliesslich nicht nach jeder Anweisung überprüfen, ob das Ergebnis auch korrekt war, da dadurch sehr viel Performance verloren geht.
Häufig gibt es gewisse sanity checks, aber gerade bei iterativen Berechnungen kann ein kleiner Fehler am Anfang oder in der Mitte das Endergebnis massiv verfälschen, ohne dass dies auffällt.

Bei GIMPS/SoB schwankt die Fehlerquote zwischen 1 und 5%. Von Fehlern, die sich bei der Übertragung eingeschlichen haben, habe ich bislang noch nicht gehört. Gewiss, es gibt Fehler, allerdings drücken die sich eher in abgewiesenen oder falsch zugerechneten Ergebnissen aus, sind also quasi serverseitig bedingt.

Benutzeravatar
SpeedKing
TuX-omane
TuX-omane
Beiträge: 2943
Registriert: 12.09.2003 17:14

#5 Ungelesener Beitrag von SpeedKing » 29.03.2005 20:28

Ok, nimm das "über das Internet" aus meiner Vermutung heraus.
Die Fehlerquote wundert mich, machen da denn wirlich so viele Overclocker mit? Oder ist das nicht auch ein Softwarebug - irgendwo?

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 22923
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#6 Ungelesener Beitrag von Michael H.W. Weber » 30.03.2005 10:18

SpeedKing hat geschrieben:...machen da denn wirlich so viele Overclocker mit?
Ich würde mal sagen: Fast nur Overclocker. :D Jedenfalls bei FAH.

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Benutzeravatar
Mystwalker
Oberfalter
Oberfalter
Beiträge: 483
Registriert: 24.04.2003 14:40
Wohnort: Potsdam

#7 Ungelesener Beitrag von Mystwalker » 30.03.2005 12:34

SpeedKing hat geschrieben:Die Fehlerquote wundert mich, machen da denn wirlich so viele Overclocker mit? Oder ist das nicht auch ein Softwarebug - irgendwo?
Viele Rechner dürften übertaktet sein. Zudem ist die Software derart hoch optimiert, dass Prozessoren und Speicher mehr belastet werden als bei anderen Projekten (weshalb Prime95 auch einen guten Stabilitätstest darstellt).
Jeder Rechner wird vor der Teilnahme überprüft (und gegen vorberechnete Resultate verglichen), allerdings kann ein Rechner ja durchaus einen einstündigen Test bestehen, aber in einer mitunter monatelangen Berechnung Fehler machen. Und leider ist bei einem einzigen Fehler die komplette Berechnung falsch. Gewisse Fehler kann man abfangen, aber eben nicht alle.

Man könnte sicherlich die Fehlerquote senken, aber dadurch geht vermutlich so viel Performance verloren, dass der Gesamtdurchsatz sinkt. Und falsche Resultate fallen ja spätestens beim DoubleCheck auf...

Benutzeravatar
SpeedKing
TuX-omane
TuX-omane
Beiträge: 2943
Registriert: 12.09.2003 17:14

#8 Ungelesener Beitrag von SpeedKing » 30.03.2005 19:02

Mystwalker hat geschrieben:Man könnte sicherlich die Fehlerquote senken, aber dadurch geht vermutlich so viel Performance verloren, dass der Gesamtdurchsatz sinkt. Und falsche Resultate fallen ja spätestens beim DoubleCheck auf...
Aber niemals Faktor 2 (oder gar 4 bei BOINC) - eher 10%. Und die Fehlerquote bei nicht übertakteten Rechnern liegt ziemlich genau bei 0.

Benutzeravatar
Mystwalker
Oberfalter
Oberfalter
Beiträge: 483
Registriert: 24.04.2003 14:40
Wohnort: Potsdam

#9 Ungelesener Beitrag von Mystwalker » 30.03.2005 20:00

SpeedKing hat geschrieben:Und die Fehlerquote bei nicht übertakteten Rechnern liegt ziemlich genau bei 0.
Die liegt schon noch höher. Ein großes Problem sind z.B. Speicherriegel im DualChannel-Betrieb. Solange der Rechner nicht übertaktet ist, ist solch ein Szenario Kandidat 1 bei der Fehlersuche.
Ansonsten kann auch ein einzelner Speicherriegel defekt sein. Man könnte natürlich sagen, dass die angegebene Taktung dann zu hoch und er somit quasi "übertaktet" ist, aber ich glaube nicht, dass du darauf hinauswillst...

Man muss mit einer gewissen Fehlerquote rechnen. Bei GIMPS ist es von enormer Wichtigkeit, dass keine Primzahl übersehen wird, da man die Zahl ja anschließend als "zusammengesetzte Zahl" deklariert, ohne es wirklich beweisen zu können. Die Wahrscheinlichkeit, dass sich 2 unterschiedliche Rechner aber auf dieselbe Art verrechnen ist sehr sehr gering. Und alleine schon um Betrug aufzudecken ist es wichtig, die Ergebnisse zu überprüfen. Eine vierfache Berechnung wiederum finde ich auch unnötig. Eher zwei, und eine dritte, wenn die beiden ersten Ergebnisse nicht passen.
Wenn man dann wirklich die Sicherheit erhöhen will, so sollte man vielmehr unterschiedliche Systeme fordern (z.B. unterschiedliche Clientversion und/oder Rechnerarchitektur). So werden auch andere Fehlerarten entdeckt...

aalerich

#10 Ungelesener Beitrag von aalerich » 31.03.2005 14:14

Michael H.W. Weber hat geschrieben:Ich würde mal sagen: Fast nur Overclocker. :D Jedenfalls bei FAH.
Na, die Aussage halte ich aber für ziemlich übertrieben. Das größte aller Teams, das "Team" google, dürfte wohl ziemlich frei von Übertaktern sein. Und selbst in den zahlreichen Übertakterteams laufen sehr viele Rechner @ stockspeed. Die Leute haben früher übertaktet und interessieren sich auch noch für das Thema, haben aber keine Lust oder Zeit mehr, dieses Hobby noch aktiv zu betreiben. Abgesehen davon ist das ja auch nicht ganz billig, jedenfalls, wenn man die Werte erreichen will, mit denen so gern geprotzt wird. Naja, und dann kommen noch die ganzen Probleme hinzu... Die kosten dann nochmal einen Haufen Zeit. Ein Problem sind allerdings Macs. Apple macht wohl irgendwelche Tests, ignoriert die Klassifizierung von IBM und übertaktet wohl von sich aus die Prozessoren.
Allerdings ist F@H gerade bei Übertaktern sehr beliebt, weil es Speicher und Prozessor bis zum Anschlag auslastet. Die testen damit die Stabilität ihrer aufgebohrten Systeme... Naja, jedenfalls sinnvoller, als tagelang irgendwelche CPU-Stresser laufen zu lassen.
Die große Masse der F@H-Rechner wird jedenfalls mit der vom Hersteller vorgesehenen Geschwindigkeit laufen, da bin ich mir sehr sicher.

Mit freundlichen Grüßen
aalerich

Benutzeravatar
wirthi
PDA-Benutzer
PDA-Benutzer
Beiträge: 46
Registriert: 22.08.2003 15:12
Wohnort: Pasching / Österreich

#11 Ungelesener Beitrag von wirthi » 31.03.2005 15:25

bei FAD wird deshalb jede WU mehrfach berechnet, weil der algorithmus offenbar nicht deterministisch ist, also bei jeder Berechnung (geringfügig) andere Ergebnisse liefert. Ganz nenbenei werden damit natürlich auch grobe Fehler erkannt.

Wichtig ist auch eines: Wenn man mal von einem "kleinen" Fehler ausgeht (=ein Bit kippt), dann wird das bei FAD, FAH, Muon, ... dazu führen, dass das Ergebnis geringfügig falsch ist. Vielleicht ist die anti-cancer-wahrscheinlichkeit des Moleküls statt 50% dann nur 49% oder 51%.

Bei SOB, GIMPS oder ähnlichen Projekten wird bei einem solchen Fehler das Ergebnis möglicherweise totoal korrumpiert. Wenn's in Wirklichkeit eine Priemzahl ist die getestet wird, dann kommt wegen dem Fehler heraus dass es keine ist. Daher ist gerade bei diesen Projekten das double-checking so wichtig.

Natürlich kann man das nicht so allgemein sagen, aber die Wahrscheinlichkeit, durch einen kleinen Fehler das Ergebnis der Berechnung total zu verfälschen ist jedenfalls bei mathematischen Projekten um einiges höher als bei naturwissenschaftlich-medizinischen.
Free-DC spy!

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 22923
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#12 Ungelesener Beitrag von Michael H.W. Weber » 01.04.2005 16:52

aalerich hat geschrieben:
Michael H.W. Weber hat geschrieben:Ich würde mal sagen: Fast nur Overclocker. :D Jedenfalls bei FAH.
Na, die Aussage halte ich aber für ziemlich übertrieben. Das größte aller Teams, das "Team" google, dürfte wohl ziemlich frei von Übertaktern sein. Und selbst in den zahlreichen Übertakterteams laufen sehr viele Rechner @ stockspeed. Die Leute haben früher übertaktet und interessieren sich auch noch für das Thema, haben aber keine Lust oder Zeit mehr, dieses Hobby noch aktiv zu betreiben. Abgesehen davon ist das ja auch nicht ganz billig, jedenfalls, wenn man die Werte erreichen will, mit denen so gern geprotzt wird. Naja, und dann kommen noch die ganzen Probleme hinzu... Die kosten dann nochmal einen Haufen Zeit. Ein Problem sind allerdings Macs. Apple macht wohl irgendwelche Tests, ignoriert die Klassifizierung von IBM und übertaktet wohl von sich aus die Prozessoren.
Allerdings ist F@H gerade bei Übertaktern sehr beliebt, weil es Speicher und Prozessor bis zum Anschlag auslastet. Die testen damit die Stabilität ihrer aufgebohrten Systeme... Naja, jedenfalls sinnvoller, als tagelang irgendwelche CPU-Stresser laufen zu lassen.
Die große Masse der F@H-Rechner wird jedenfalls mit der vom Hersteller vorgesehenen Geschwindigkeit laufen, da bin ich mir sehr sicher.

Mit freundlichen Grüßen
aalerich
Also sicherlich habe ich (absichtlich) etwas übertrieben, aber wenn Du Dir mal das FAH-Forum durchsiehst, wird schnell klar, daß massiv übertaktet wird. Da gibt es ganze Teams, die nur aus Overclockern bestehen. Und Äpfel dürften bei FAH wohl eher eine verschwindend geringe Zahl der Beiträge liefern - auch wenn das Projekt ja immerhin einen (meist veralteten) Client bietet. ;)

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Zurück zu „Hintergrundinfos zu Verteiltem Rechnen“