folie 1 rechnen mit garantierter genauigkeit wolfgang mühlbauer stephan thoma proseminar...
Post on 06-Apr-2015
108 Views
Preview:
TRANSCRIPT
Folie Folie 11
Rechnen mit garantierter Rechnen mit garantierter GenauigkeitGenauigkeit
Wolfgang MühlbauerWolfgang MühlbauerStephan ThomaStephan Thoma
Proseminar RechnerarchitekturenProseminar Rechnerarchitekturen5. Juli 20015. Juli 2001
Folie Folie 22
ÜberblickÜberblick
Erweiterte Arithmetik: Erhöhung der Erweiterte Arithmetik: Erhöhung der RechengenauigkeitRechengenauigkeit
Intervallarithmetik: Garantie, dass ein Intervallarithmetik: Garantie, dass ein Ergebnis richtig istErgebnis richtig ist
Folie Folie 33
Ein einführendes BeispielEin einführendes Beispiel
a = 12345678 b = 12345679b2 - ab - a = ?
Ausrechnen per Hand: Ausrechnen per Hand: bb22 - ab - a = b (b - a) - a = - ab - a = b (b - a) - a = 11
Ausrechnen mit Taschenrechner: Ausrechnen mit Taschenrechner: bb2 2 - ab - a = - ab - a = 322322
Folie Folie 44
Das Gleitkommaformat:Das Gleitkommaformat:floating-pointfloating-point
Das single-Format: 32 bitDas single-Format: 32 bit
0 00000010 11000000000000000000000
± Exponent Mantisse 8 bit 23 bit
Prinzip der Normalisierung!
Folie Folie 55
Beispiel
Vorzeichenbit : positivVorzeichenbit : positiv
Exponent Exponent : 2 : 2
Mantisse Mantisse : 1,75 : 1,75
= + 1,75 * 22 = 7
0 00000010 11000000000000000000000
± Exponent Mantisse
Folie Folie 66
IEEE-Standard 754IEEE-Standard 754
±± ExponentExponent MantisseMantisse GesamtGesamt
SingleSingle 11 88 2323 3232
DoubleDouble 11 1111 5252 6464
Single Single ExtendedExtended 11 1515 6464 8080
DoubleDoubleExtendedExtended 11 1515 112112 128128
Folie Folie 77
Warum Gleitkommaformat?Warum Gleitkommaformat?
Darstellung von Zahlen unter- Darstellung von Zahlen unter- schiedlichster Größenordnung schiedlichster Größenordnung
Einsparen von SpeicherplatzEinsparen von Speicherplatz
Kleine Register und AddiererKleine Register und Addierer
Historische GründeHistorische Gründe
Folie Folie 88
Beispiel 1Beispiel 1
a = 1,109632969473378 * 100
b = 6,748659387134009 * 10-12
Darstellung im Dezimalsystem Darstellung im Dezimalsystem Mantisse mit 16 StellenMantisse mit 16 Stellen
Annahme:
a + b – a = ?
Folie Folie 99
a = 1,109632969473378 * 100
b = 6,748659387134009 * 10-12
1,1096329694733786,748659387134009 * 10-12
a + b0,000000000006748659387134009
1,109632969480126659387134009
+
- a - 1,109632969473378
0,000000000006748 = 6,748 * 10-12
Exakt: b = 6,7486559387134009 * 10-12
Beispiel 1: AuslöschungBeispiel 1: Auslöschung
Folie Folie 1010
Beispiel 2: Auslöschung Beispiel 2: Auslöschung
10102020 + 17 - 10 + 130 - 10 + 17 - 10 + 130 - 1020 20 ==
10102020 + 17 - 10 + 17 - 1020 20 - 10 + 130 =- 10 + 130 =
10102020 - 10 - 102020 + 17 - 10 + 130 = + 17 - 10 + 130 =
101020 20 + 17 + 130 - 10+ 17 + 130 - 1020 20 - 10 =- 10 =
0
120
137
-10
Verletzung des Kommutativgesetzes!
Folie Folie 1111
Beispiel 3: AuslöschungBeispiel 3: Auslöschung
64 919 121 x – 159 018 721 y = 141 869 520,5 x – 102 558 961 y = 0
Mit Gleitkommarechnung: Mit Gleitkommarechnung: xx = 102 558 961 = 102 558 961 yy = 41 869 520,5 = 41 869 520,5
Richtige Lösung: Richtige Lösung: xx = 205 117 922 = 205 117 922 yy = 83 739 041 = 83 739 041
Lösung:
Folie Folie 1212
Wo stehen wir?Wo stehen wir?
Darstellung reeller Zahlen durch das Darstellung reeller Zahlen durch das GleitkommaformatGleitkommaformat
Probleme des GleitkommaformatsProbleme des Gleitkommaformats Auslöschung gültiger Ziffern Auslöschung gültiger Ziffern Verletzung von mathematischen Gesetzen Verletzung von mathematischen Gesetzen
Folie Folie 1313
Vermeiden von AuslöschungVermeiden von Auslöschung
1020 + 17 - 10 + 130 – 1020 = 0
ersetzen durch:
1020 - 1020 + 17 - 10 + 130 = 137
Optimierung von Algorithmen: Algorithmen, die ohne Subtraktion nahezu gleicher Zahlen auskommen
Folie Folie 1414
Mehrfachlange ArithmetikenMehrfachlange Arithmetiken
Exponent Mantisse+- Exponent Mantisse+-
eine Gleitkommazahl
SpeicheradresseSpeicheradresse xx yySpeicherinhaltSpeicherinhalt 1,3 * 101,3 * 10-1-1 1,2*101,2*10-19-19
Wert: 0,130000000000000000120
Folie Folie 1515
FestkommadarstellungFestkommadarstellung
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
Folie Folie 1616
Beispiel Beispiel
a = 1,109632969473378 * 100
b = 6,748659387134009 * 10-12
a + b – a = ? Vorher: 6,748 * 10-12
Festkommaregister (29 Stellen)
0,00000000000000000000000000001,1096329694733781,1096329694733780000000000000
6748659387134009
1,10963296948012665938713400901,1096329694733780,00000000000000000000000000000,0000000000067486593871340090
=6,748659387134009 * 10-12
Folie Folie 1717
FestkommarithmetikFestkommarithmetik
Prinzip: Rechnen mit extrem langen Prinzip: Rechnen mit extrem langen FestkommazahlenFestkommazahlen
Vorteil: Keine NormalisierungVorteil: Keine Normalisierung
Nachteil: Mangelnde Unterstützung durch die Nachteil: Mangelnde Unterstützung durch die HardwareHardware
Folie Folie 1818
Bedeutung des Bedeutung des SkalarproduktesSkalarproduktes
Zentrale Bedeutung in der MathematikZentrale Bedeutung in der Mathematik Lineare Algebra: Lösen von linearen Lineare Algebra: Lösen von linearen
GleichungssystemenGleichungssystemen Numerik: Elimination von RundungsfehlernNumerik: Elimination von Rundungsfehlern
Zentrale Bedeutung im Zusammenhang mit Zentrale Bedeutung im Zusammenhang mit mehrfachlanger Arithmetikmehrfachlanger Arithmetik
a = a1 + a2 b = b1 + b2
a * b = (a1 + a2) * (b1 + b2) =
= a1b1 + a1b2 + a2b1 + a2b2 Skalarprodukt!
Folie Folie 1919
Das Skalarprodukt als Das Skalarprodukt als fünfte Grundrechenartfünfte Grundrechenart
Idee: Berechnung des Skalarproduktes mit nur einer Rundung am Ende des Ergebnisses
Realisierung:1. Aufaddieren in einem Langzahlregister2. Erst das Endergebnis runden!
Folie Folie 2020
Erweiterte ArithmetikErweiterte Arithmetik
Advanced Computer Arithmetic erhöht die Advanced Computer Arithmetic erhöht die Genauigkeit grundlegender OperationenGenauigkeit grundlegender Operationen
Skalarprodukt als 5. Grundrechenart (einmalige Skalarprodukt als 5. Grundrechenart (einmalige Rundung)Rundung)
Intervallrechnung (dazu gleich mehr)Intervallrechnung (dazu gleich mehr)
Ausweitung der Rechenoperationen auf reelle und Ausweitung der Rechenoperationen auf reelle und
komplexe Vektoren und Matrizenkomplexe Vektoren und Matrizen
Realisierung durch:Realisierung durch: Software: Neue ProgrammiersprachenSoftware: Neue Programmiersprachen
Hardware: Co-Prozessor-Chip XPA 3233Hardware: Co-Prozessor-Chip XPA 3233
Folie Folie 2121
Wo stehen wir?Wo stehen wir? Das GleitkommaformatDas Gleitkommaformat
Auslöschung gültiger ZiffernAuslöschung gültiger Ziffern
Verletzung mathematischer GesetzeVerletzung mathematischer Gesetze
Auswege und Lösungsmöglichkeiten Auswege und Lösungsmöglichkeiten Optimierte AlgorithmenOptimierte Algorithmen Mehrfachlange ArithmetikenMehrfachlange Arithmetiken FestkommaarithmetikFestkommaarithmetik Skalarprodukt als neue GrundrechenartSkalarprodukt als neue Grundrechenart
Folie Folie 2222
InhaltInhalt
IntervallarithmetikIntervallarithmetik
Iterative VerfahrenIterative Verfahren
Spezielle ChipsSpezielle Chips
Folie Folie 2323
IntervallarithmetikIntervallarithmetik
Wozu der ganze Aufwand?Wozu der ganze Aufwand?
Folie Folie 2424
IntervallarithmetikIntervallarithmetik
Folie Folie 2525
IntervallarithmetikIntervallarithmetik
ErgebnisverifikationErgebnisverifikation Wie genau ist mein Ergebnis?Wie genau ist mein Ergebnis?
Folie Folie 2626
TheorieTheorie
BeispielBeispiel
1,075 1,075 ± 0,002 ↔ [1,073; 1,077]± 0,002 ↔ [1,073; 1,077]
AdditionAddition
a = [aa = [a11; a; a22]; ]; b=[bb=[b11; b; b22]]
a+b = [a+b = [(a(a11+b+b11); ); (a(a22+b+b22)])]
Folie Folie 2727
RechenzeichenRechenzeichen
x-+ /
x-+ / + - x / StandardStandard
AbrundenAbrunden
AufrundenAufrunden
AdditionAddition
SubtraktionSubtraktion
MultiplikationMultiplikation
DivisionDivision
Skalarprod.Skalarprod.
Intervallarithmetik
IEEE 754, 854
Folie Folie 2828
PraxisPraxis
Spezielle ProgrammiersprachenSpezielle Programmiersprachen Pascal-XSC Pascal-XSC
EExxtended tended SScientific cientific CComputingomputing C-XSCC-XSC
Class Library für C++Class Library für C++ Fortran-XSCFortran-XSC
Spezielle ChipsSpezielle Chips XPA 3233XPA 3233
Folie Folie 2929
Praxis - PolynomadditionPraxis - Polynomaddition
Standard-PascalStandard-PascalBerechnung z=a+b+cBerechnung z=a+b+c
procedure add(a, b: Poly; var c: Poly);procedure add(a, b: Poly; var c: Poly);beginbegin
......endend
add(a, b, z);add(a, b, z);add(c, z, z);add(c, z, z);
Folie Folie 3030
Praxis - PolynomadditionPraxis - Polynomaddition
Pascal-XSCPascal-XSCBerechnung z=a+b+cBerechnung z=a+b+c
..
..
..z:=a+b+c;z:=a+b+c;......
Folie Folie 3131
NachteileNachteile
Umschalten zwischenUmschalten zwischenAuf- und AbrundenAuf- und Abrunden
Überschätzung der IntervallgrößenÜberschätzung der Intervallgrößen
Folie Folie 3232
InhaltInhalt
IntervallarithmetikIntervallarithmetik
Iterative VerfahrenIterative Verfahren
Spezielle ChipsSpezielle Chips
Folie Folie 3333
NewtonverfahrenNewtonverfahrenKlassischKlassisch
xxxxneuneu
TangenteTangentexxneu neu = x - f(x) / f‘(x)= x - f(x) / f‘(x)
ff
Folie Folie 3434
NewtonverfahrenNewtonverfahrenMit IntervallarithmetikMit Intervallarithmetik
mm11
XX2 2 = m= m11 - f(m - f(m11) / f‘(X) / f‘(X11))
ff
TangentenTangenten
XX11
XX22
Folie Folie 3535
InhaltInhalt
IntervallarithmetikIntervallarithmetik
Iterative VerfahrenIterative Verfahren
Spezielle ChipsSpezielle Chips
Folie Folie 3636
XPA 3233 - System-StrukturXPA 3233 - System-Struktur
CPUCACHE
Host Bus
PCIBridge
DRAMDRAM
PCI Bus
XPA SRAM
Folie Folie 3737
XPA 3233 - DatenXPA 3233 - Daten
Entwickelt an der Uni Karlsruhe, Uni Entwickelt an der Uni Karlsruhe, Uni Stuttgart und TU Hamburg HarburgStuttgart und TU Hamburg Harburg
VHDL und CompassVHDL und Compass
CMOS 8CMOS 8µµm VLSI-Technologiem VLSI-Technologie
33 MHz33 MHz
207.000 Transistoren207.000 Transistoren
6 Mflops Maximalleistung6 Mflops Maximalleistung
Folie Folie 3838
XPA 3233 - ArchitekturXPA 3233 - ArchitekturKomm. mit dem Prozessor
Operanden/Ergebnis
53x53106 Bit
Verschieben/Runden
ErgebnisZusammen-führen
Folie Folie 3939
XPA 3233 - FloorplanXPA 3233 - Floorplan
Folie Folie 4040
XPA 3233 - FotoXPA 3233 - Foto
Vielen Dank für die Vielen Dank für die Aufmerksamkeit !Aufmerksamkeit !
top related