1 / 11

„ Programming Language Design and Implementation “ Daniel Weber, Tobias Ickler

Kosten / Nutzen-Optimierung komplexer Floating-Point-Berechnungen unter Ausnutzung variabler Präzision. „ Programming Language Design and Implementation “ Daniel Weber, Tobias Ickler. Darstellung von Gleitkommazahlen. x = (-1) s ∙ m ∙ β e z.B. x = + 3,212 ∙ 10 -4. mit

rosa
Download Presentation

„ Programming Language Design and Implementation “ Daniel Weber, Tobias Ickler

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Kosten / Nutzen-Optimierung komplexer Floating-Point-Berechnungen unter Ausnutzung variabler Präzision „ProgrammingLanguage Design andImplementation“ Daniel Weber, Tobias Ickler

  2. Darstellung von Gleitkommazahlen x = (-1) s ∙ m ∙ βe z.B. x = + 3,212 ∙ 10 -4 mit m = d0 , d1 d2 d3 … dp-1 (mit 0 ≤ di < β) s є { 0, 1 }, β : Basis, e : Exponent

  3. IEEE 754

  4. Rundungsfehler x1 = 0,03214 β = 10, p = 3 x2 = 3,21 ∙ 10 -2  0,4 ulps („units in the last place“) Fehler

  5. Fehler Absoluter Fehler in einer Gleitkommaoperation: ½ β–p ≤ ½ ulps ≤ ½ β 1 - p Maximaler relativer Fehler: ε = ½ β 1 – p

  6. Computational Graphs

  7. Variable Präzision Geht man davon aus, dass in jeder Operation mit einer unterschiedlichen Präzision gerechnet wird, gilt εp = ½ β 1 – p mit εp-1 = 2 ∙ εp

  8. Problemstellung Lösung für das Problem bei variabler Präzision mit minimalen Kosten einen vorgegebenen Fehlerwert nicht zu überschreiten, wobei die Kosten durch die Anzahl der Operationen und deren Präzision bestimmt wird. Kostenfunktion:

  9. Verbindung zu Programmiersprachen • Hardwarebeschreibungssprachen • FPGAs • Günstige Produktion oder zeitkritische Anwendung Beispiele für mögliche Funktionsaufrufe: x = a +24 b x = opt16 ( (a + b / 4) ∙ b , a = [a1, a2], b = (b1, b2])

  10. Fragen?

  11. Vielen Dank für die Aufmerksamkeit!

More Related