Anzeige

Am Puls von Microsoft

Anzeige

[gelöst] Diskussion Können sich Computer verrechnen / Fehler machen?

Status
Dieses Thema wurde gelöst! Lösung ansehen…
Für weitere Antworten geschlossen.

Dose

gehört zum Inventar
Ich war immer der Überzeugung, dass es technisch ausgeschlossen ist, dass sich ein Computer verrechnen kann und entsprechend Fehler produziert wie ein Mensch. Wenn von "Computerfehlern" die Rede ist, ist es für mich immer die Ausrede für "Fehler 40" (der, der ca. 40cm vor dem Bildschirm sitzt) oder für schlecht programmierte Software oder eben der PC bekommt fehlerhafte Daten zur Berechnung.

In der Mathematik gibt es immer nur ein richtiges Ergebnis ohne Wenn und Aber und das macht ein Computer, egal ob Taschenrechner oder High End Gerät: Er rechnet mit Einsen und Nullen. Nach meiner Logik sind Rechenfehler hier ausgeschlossen.

Heute hat mir unser Firmen ITler erklärt, dass es zwar höchst selten vorkomme, aber durchaus passiert, dass Computer sich bei korrekten Vorgaben verrechnen, z.B. ich lasse meinen PC ganz simpel multiplizieren oder Primzahlen ausrechnen und er spuckt mir ein falsches Ergebnis aus. Wie das sein kann konnte er mir nicht erklären und ich kann es mir nicht vorstellen wie es möglich sein soll, dass ein PC einfache Rechenfehler macht.

Beispiel: Ich lasse den PC 5+5 ausrechnen. Meiner Meinung nach kann er immer nur 10 als Ergebnis ausgeben. Dem ITler zufolge wäre aber auch 9 (oder was auch immer) möglich und der PC könnte es als logisch und richtig ausgeben. Das Szenario bei 100 Versuchen: 99 mal gibt der PC korrekt 10 aus, einmal 9.

Ich meinte dann zu ihm: Wenn der PC bei 100 Versuchen 5+5 einmal 9 ausgibt und 99x 10, dann hast du dich bei der 9 vertippt und statt 5+5 wohl 5+4 getippt (dich vertippt) weil solche Fehler immer in menschlichem Versagen begründet sind. Jedenfalls sind wir da nicht zusammengekommen.

Wie erklärt ihr euch das und was entspricht der Wahrheit?
 
Zuletzt bearbeitet:
Anzeige
Gib doch mal intel rechenfehler bei einer Suchmaschine ein. Den Rest darfst du selbst lesen.
 
Es soll Belastungstests geben, bei denen immer hin- und hergerechnet wird (987654321 x 123456789 / 123456789 u.s.w.).
Nach unzähligen Durchläufen ergeben sich dann manchmal Differenzen.
 
Quadratwurzel, um genau zu sein. Denn die dritte Wurzel ist wieder eindeutig. Eigentlich sind alle 2*n-Wurzeln zweideutig, alle (2n+1) nicht.
 
Nach unzähligen Durchläufen ergeben sich dann manchmal Differenzen.
Wenn du sehr lange multiplizierst und dividierst hast du doch auch Nachkommastellen, die immer wieder auf - und abgerundet werden und irgendwann müssen sich da Differenzen ergeben, das meinst du doch? Solche Differenzen meine ich aber nicht weil sie logisch begründet sind und auch keine Wurzeln mit 2 Lösungen, sondern ich beziehe mich wirklich nur auf einfache Rechenvorgänge wie 5+5, bei denen das Ergebnis eindeutig sein muss.
 
Warum gibt es wohl ECC-RAM?
Danke für den interessanten Hinweis, ich habe das gerade mal recherchiert.

Ich habe gleich mal hier weitergelesen: Was ist ein DataBit Error?

Wenn im Arbeitsspeicher Fehler passieren, ist es im Grunde aber auch wieder menschliches Versagen, weil die CPU oder GPU aufgrund billiger / mangelhafter Hardware mit falschen Daten gefüttert werden und entsprechende Resultate ausgeben.

In meiner eigentlichen Frage meine ich den Fall, dass die berechnende CPU oder GPU korrekt mit Daten beliefert wird und trotzdem ein falsches Ergebnis ausgibt. Dass bei einer CPU ankommt: 5+5=? und dann: 9 will mir immer noch nicht in den Kopf.
 
Wenn die Hardware 100% fehlerfrei läuft, wird das nicht passieren. Aber gibt es 100%ige Fehlerfreiheit?
Warum benutzen Linux Server zunehmend das ZFS-Dateisystem?
Warum stürzen Notebooks schon mal ab, wenn das Handy direkt daneben oder dahinter liegt?
Auch Höhenstrahlung wird als „Bitveränderer" vermutet.
 
Danke @Porky !

Ich habe es jetzt verstanden. Der ITler hatte Recht und ich auch irgendwo, wir haben nur aneinander vorbeigeredet: Er meinte mit "Computer" ein komplettes System, ich bin immer von der reinen Recheneinheit (CPU/GPU) ausgegangen.

Also können wir festhalten: Wird eine intakte CPU mit den korrekten Daten zur Berechnung beliefert, ist ein Rechenfehler ohne äußere Einwirkung wie Magnetismus, Strahlung, falsche Daten usw. rein von der Logik her unmöglich. Die CPU kann nur die Daten berechnen, die ihr vorliegen und wenn sie aufgrund falscher Daten nicht die gewünschten Ergebnisse berechnet, ist das ja kein Fehler der CPU - sie hat ja berechnet, was man ihr vorgegeben hat.

Das ist in etwa so als wenn ich dich frage: Porky, was ergibt 3x3? "9". Deine Antwort ist richtig, ich meinte aber eigentlich 3x4=12 und schiebe die Schuld dann auf dich.
 
@Dose
... Das ist alle schon lange her, aber ich kanns nicht lassen muss da auch etwas klugscheißen:
Die CPU kann nur die Daten berechnen, die ihr vorliegen und wenn sie aufgrund falscher Daten nicht die gewünschten Ergebnisse berechnet, ist das ja kein Fehler der CPU - sie hat ja berechnet, was man ihr vorgegeben hat.
Das stimmt nicht ganz. - Die CPU macht Fehler, denn sie kann nichts berechnen ohne die Daten irgendwo zu speichern, und das macht sie mit Registern. Register sind die kleinsten "Orte" an denen Daten gespeichert werden. Auch diese Register sind Bitfehlern, durch Strahlung etc., unterworfen. Diese Register sind Teil der CPU.

Eine nicht reale physische Maschine (also ein Modell einer Maschine) macht keine Fehler, da hast du recht.
Also können wir festhalten: Wird eine intakte CPU mit den korrekten Daten zur Berechnung beliefert, ist ein Rechenfehler ohne äußere Einwirkung wie Magnetismus, Strahlung, falsche Daten usw. rein von der Logik her unmöglich.
Da stimme ich Dir vollkommen zu. Leider aber praktisch unmöglich. Es gibt immer Umwelteinflüsse.
 
Ihr braucht nicht mal so weit in ein System einzutauchen. Es fängt schon damit an dass absolut keine Software auf dem Planeten Fehlerfrei ist. Dann wird man es niemals hinkriegen ein und die gleiche Stromleistung zu haben weil absolut jedes Stromnetz permanent redispatcht werden muss. In D dann sogar dank beschissener Energiepolitik häufiger als anderswo mittlerweile bist du auf knapp 30 mal am Tag wo Kraftwerkeflipper angesagt ist und du ganz automatisch einen Frequenzwechsel hast. Dann kommen thermische Einflüsse von der Witterung dazu, Güte des Netzteils, wird die Kiste in einem Erdbebengebiet aufgestellt (und ja das gilt auch für D) oder nicht dementsprechend nimmt die Fuhre nämlich Erschütterungen auf die du als Mensch nicht mal wahrnimmst aber Worstcase kurzzeitig mal Kontaktpunkte unterbrechen etc. Das ist alles noch weit bevor ihr überhaupt mal Anfangen könnt von Platine, CPU & Co auch nur zu reden.

Das einzige was man machen kann ist minimieren das ein Rechne sich Grütze zusammen rechnet aber du wirst es nie zu 100% ausschließen können wer das behauptet lügt.

Kannst ja alleine mal Spaßeshalber nachschauen wie viele Jahre der Rechenfehler damals im Windows Taschenrechner war wo es dem Rechner egal war das er erst Strichrechnung gemacht hat statt Punktrechnung vor zu ziehen da fängt man aber mal dezent an zu weinen und du kannst dir sicher sein das irgendjemand diesen Rechner in dem Zeitraum beim Programieren genutzt hat ohne darauf zu achten. Soviel dann zu deinem Mathe lügt nicht
 
Status
Dieses Thema wurde gelöst! Lösung ansehen…
Für weitere Antworten geschlossen.
Anzeige
Oben