Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Folie 1 Rechnen mit garantierter Genauigkeit Wolfgang Mühlbauer Stephan Thoma Proseminar Rechnerarchitekturen 5. Juli 2001.

Ähnliche Präsentationen


Präsentation zum Thema: "Folie 1 Rechnen mit garantierter Genauigkeit Wolfgang Mühlbauer Stephan Thoma Proseminar Rechnerarchitekturen 5. Juli 2001."—  Präsentation transkript:

1 Folie 1 Rechnen mit garantierter Genauigkeit Wolfgang Mühlbauer Stephan Thoma Proseminar Rechnerarchitekturen 5. Juli 2001

2 Folie 2 Überblick  Erweiterte Arithmetik: Erhöhung der Rechengenauigkeit  Intervallarithmetik: Garantie, dass ein Ergebnis richtig ist

3 Folie 3 Ein einführendes Beispiel a = 12345678 b = 12345679 b 2 - ab - a = ?  Ausrechnen per Hand: b 2 - ab - a = b (b - a) - a = 1  Ausrechnen mit Taschenrechner: b 2 - ab - a = 322

4 Folie 4 Das Gleitkommaformat: floating-point Das single-Format: 32 bit 00000001011000000000000000000000 ± Exponent Mantisse 8 bit 23 bit Prinzip der Normalisierung!

5 Folie 5 Beispiel  Vorzeichenbit : positiv  Exponent : 2  Mantisse : 1,75 = + 1,75 * 2 2 = 7 00000001011000000000000000000000 ± Exponent Mantisse

6 Folie 6 IEEE-Standard 754 ±ExponentMantisseGesamt Single182332 Double1115264 SingleExtended1156480 DoubleExtended115112128

7 Folie 7 Warum Gleitkommaformat?  Darstellung von Zahlen unter- schiedlichster Größenordnung  Einsparen von Speicherplatz  Kleine Register und Addierer  Historische Gründe

8 Folie 8 Beispiel 1 a = 1,109632969473378 * 10 0 b = 6,748659387134009 * 10 -12  Darstellung im Dezimalsystem  Mantisse mit 16 Stellen Annahme: a + b – a = ?

9 Folie 9 a = 1,109632969473378 * 10 0 b = 6,748659387134009 * 10 -12 1,109632969473378 6,748659387134009 * 10 -12 a + b 0,000000000006748659387134009 1,109632969480126659387134009 + - a - 1,109632969473378 0,000000000006748 = 6,748 * 10 -12 Exakt: b = 6,7486559387134009 * 10 -12 Beispiel 1: Auslöschung

10 Folie 10 Beispiel 2: Auslöschung  10 20 + 17 - 10 + 130 - 10 20 =  10 20 + 17 - 10 20 - 10 + 130 =  10 20 - 10 20 + 17 - 10 + 130 =  10 20 + 17 + 130 - 10 20 - 10 = 0 120 137 -10 Verletzung des Kommutativgesetzes!

11 Folie 11 Beispiel 3: Auslöschung 64 919 121 x – 159 018 721 y = 1 41 869 520,5 x – 102 558 961 y = 0  Mit Gleitkommarechnung: x = 102 558 961 y = 41 869 520,5  Richtige Lösung: x = 205 117 922 y = 83 739 041 Lösung:

12 Folie 12 Wo stehen wir?  Darstellung reeller Zahlen durch das Gleitkommaformat  Probleme des Gleitkommaformats  Auslöschung gültiger Ziffern  Verletzung von mathematischen Gesetzen

13 Folie 13 Vermeiden von Auslöschung 10 20 + 17 - 10 + 130 – 10 20 = 0 ersetzen durch: 10 20 - 10 20 + 17 - 10 + 130 = 137 Optimierung von Algorithmen: Algorithmen, die ohne Subtraktion nahezu gleicher Zahlen auskommen

14 Folie 14 Mehrfachlange Arithmetiken ExponentMantisse + - ExponentMantisse + - eine Gleitkommazahl Speicheradressexy Speicherinhalt 1,3 * 10 -1 1,2*10 -19 Wert: 0,130000000000000000120

15 Folie 15 Festkommadarstellung Festkommdarstellung (fixed point): Das Komma sitzt an einer festen Stelle. (vgl. Darstellung von ganzen Zahlen) 0 0 0 1 1 0 1 1 1 1 0 0 0 0 Beispiel:, = 13, 875

16 Folie 16 Beispiel a = 1,109632969473378 * 10 0 b = 6,748659387134009 * 10 -12 a + b – a = ? Vorher: 6,748 * 10 -12 Festkommaregister (29 Stellen) 0,0000000000000000000000000000 1,109632969473378 1,1096329694733780000000000000 6748659387134009 1,1096329694801266593871340090 1,109632969473378 0,00000000000000000000000000000,0000000000067486593871340090 =6,748659387134009 * 10 -12

17 Folie 17 Festkommarithmetik  Prinzip: Rechnen mit extrem langen Festkommazahlen  Vorteil: Keine Normalisierung  Nachteil: Mangelnde Unterstützung durch die Hardware

18 Folie 18 Bedeutung des Skalarproduktes  Zentrale Bedeutung in der Mathematik  Lineare Algebra: Lösen von linearen Gleichungssystemen  Numerik: Elimination von Rundungsfehlern  Zentrale Bedeutung im Zusammenhang mit mehrfachlanger Arithmetik a = a 1 + a 2 b = b 1 + b 2 a * b = (a 1 + a 2 ) * (b 1 + b 2 ) = = a 1 b 1 + a 1 b 2 + a 2 b 1 + a 2 b 2 Skalarprodukt!

19 Folie 19 Das Skalarprodukt als fünfte Grundrechenart Idee: Berechnung des Skalarproduktes mit nur einer Rundung am Ende des Ergebnisses Realisierung: 1. Aufaddieren in einem Langzahlregister 2. Erst das Endergebnis runden!

20 Folie 20 Erweiterte Arithmetik  Advanced Computer Arithmetic erhöht die Genauigkeit grundlegender Operationen  Skalarprodukt als 5. Grundrechenart (einmalige Rundung)  Intervallrechnung (dazu gleich mehr)  Ausweitung der Rechenoperationen auf reelle und komplexe Vektoren und Matrizen  Realisierung durch:  Software: Neue Programmiersprachen  Hardware: Co-Prozessor-Chip XPA 3233

21 Folie 21 Wo stehen wir?  Das Gleitkommaformat  Auslöschung gültiger Ziffern  Verletzung mathematischer Gesetze  Auswege und Lösungsmöglichkeiten  Optimierte Algorithmen  Mehrfachlange Arithmetiken  Festkommaarithmetik  Skalarprodukt als neue Grundrechenart

22 Folie 22 Inhalt  Intervallarithmetik  Iterative Verfahren  Spezielle Chips

23 Folie 23 Intervallarithmetik  Wozu der ganze Aufwand?

24 Folie 24 Intervallarithmetik

25 Folie 25 Intervallarithmetik  Ergebnisverifikation  Wie genau ist mein Ergebnis?

26 Folie 26 Theorie  Beispiel 1,075 ± 0,002 ↔ [1,073; 1,077]  Addition a = [a 1 ; a 2 ]; b=[b 1 ; b 2 ] a+b = [  (a 1 +b 1 );  (a 2 +b 2 )]

27 Folie 27 Rechenzeichen x-+/  x-+/  +-x/  Standard Abrunden Aufrunden Addition Subtraktion Multiplikation Division Skalarprod. Intervallarithmetik IEEE 754, 854

28 Folie 28 Praxis  Spezielle Programmiersprachen  Pascal-XSC Extended Scientific Computing  C-XSC Class Library für C++  Fortran-XSC  Spezielle Chips  XPA 3233

29 Folie 29 Praxis - Polynomaddition  Standard-Pascal Berechnung z=a+b+c procedure add(a, b: Poly; var c: Poly); begin...end add(a, b, z); add(c, z, z);

30 Folie 30 Praxis - Polynomaddition  Pascal-XSC Berechnung z=a+b+c... z:=a+b+c;...

31 Folie 31 Nachteile  Umschalten zwischen Auf- und Abrunden  Überschätzung der Intervallgrößen

32 Folie 32 Inhalt  Intervallarithmetik  Iterative Verfahren  Spezielle Chips

33 Folie 33 Newtonverfahren Klassisch x x neu Tangente x neu = x - f(x) / f‘(x) f

34 Folie 34 Newtonverfahren Mit Intervallarithmetik m1m1m1m1 X 2 = m 1 - f(m 1 ) / f‘(X 1 ) f Tangenten X1X1X1X1 X2X2X2X2

35 Folie 35 Inhalt  Intervallarithmetik  Iterative Verfahren  Spezielle Chips

36 Folie 36 XPA 3233 - System-Struktur

37 Folie 37 XPA 3233 - Daten  Entwickelt an der Uni Karlsruhe, Uni Stuttgart und TU Hamburg Harburg  VHDL und Compass  CMOS 8µm VLSI-Technologie  33 MHz  207.000 Transistoren  6 Mflops Maximalleistung

38 Folie 38 XPA 3233 - Architektur Komm. mit dem Prozessor Operanden/ Ergebnis 53x53  106 Bit Verschieben/ Runden Ergebnis Zusammen- führen

39 Folie 39 XPA 3233 - Floorplan

40 Folie 40 XPA 3233 - Foto

41 Vielen Dank für die Aufmerksamkeit !


Herunterladen ppt "Folie 1 Rechnen mit garantierter Genauigkeit Wolfgang Mühlbauer Stephan Thoma Proseminar Rechnerarchitekturen 5. Juli 2001."

Ähnliche Präsentationen


Google-Anzeigen