Standard Benchmark Format & Floating-Point Analysis Suite

toward a standard benchmark format and suite n.w
1 / 23
Embed
Share

Explore the incredible progress and challenges in floating-point analysis with optimization techniques such as STOKE and FPTaylor. Discover the community's goal to keep progressing and address growing pains in compilers, HPC, SAT, and SMT. Learn about FPBench, a community infrastructure for cooperation and comparison in the FP community, promoting a common benchmark suite with named measures.

  • Analysis
  • Benchmark
  • Floating-Point
  • Optimization
  • CommunityInfrastructure

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Toward a Standard Benchmark Format and Suite for Floating-Point Analysis Nasrine Damouche, Matthieu Martel, Pavel Panchekha, Chen Qiu, Alexander Sanchez-Stern, Zachary Tatlock.

  2. Incredible progress Optimization STOKE [PLDI 14] Automatic Verification Fluctuat [SAS 13] Rosa [POPL 14] FPTaylor [FM 15] Improvement Salsa [FMICS 15] Herbie [PLDI 15] Mechanized Proofs Wave equation [ITP 10] Rounding error [NSV 16] Rapid improvement in hard problems!

  3. Incredible progress Optimization STOKE Automatic Verification Fluctuat Rosa FPTaylor Next ??? Manual Verification Wave equation Rounding error We want our community to keep progressing! Improvement Salsa Herbie Rapid improvement in hard problems!

  4. Incredible progress We want our community to keep progressing! Optimization STOKE Automatic Verification Fluctuat Rosa FPTaylor Next ??? Manual Verification Wave equation Rounding error Improvement Salsa Herbie As community grows, growing pains appear Rapid improvement in hard problems!

  5. Similar growing pains in compilers, HPC, SAT, SMT, communities Growing pains Composition Rosa: def example(x: Double): Double = ? + 1 ? Rosa Salsa Salsa: double example(double x) { } Evaluation Fluctuat: Poly, Inv, F1a, F1b, idem, Fluctuat FPTaylor FPTaylor: sine, sqrt, verhulst, Standardization Herbie STOKE Herbie: ulp(NaN, Inf) = UINT_MAX STOKE: ulp(NaN, Inf) < UINT_MAX

  6. FPBench FPBench is community infrastructure for cooperation and comparison in the FP community. http://fpbench.org

  7. FPBench Common format Benchmark suite Named measures

  8. FPBench Common format Benchmark suite Named measures

  9. ? + 1 ? Arguments (FPCore (x) (- (sqrt (+ x 1)) (sqrt x))) S-expression syntax

  10. ? + 1 ? Metadata (FPCore (x) :name Sqrt Difference :cite (hamming-87) :pre (> x 0) (- (sqrt (+ x 1)) (sqrt x))) Preconditions

  11. (FPCore (x0) :name Sine Newton :cite (darulova-kuncak-2014) :pre (< (abs x0) 1) (while (< i 10) ([i 0 (+ i 1)] [x x0 (- x (/ (+ (+ (- x (/ (pow x 3) 6.0)) (/ (pow x 5) 120.0)) (/ (pow x 7) 5040.0)) (+ (+ (- 1.0 (/ (* x x) 2.0)) (/ (pow x 4) 24.0)) (/ (pow x 6) 720.0))))]) x)) Loops Common functions

  12. FPCore common format S-expression syntax Purely functional No control flow analysis Simple to use Generate from higher-level, imperative FPImp lang. All C, Fortran functions Loops, conditionals Tools support parts Expressive Metadata properties Tool-specific metadata Input or output format Extensible

  13. FPBench Common format Benchmark suite Named measures Simple to implement Covers all existing uses Simple to extend, specialize

  14. FPBench Common format Benchmark suite Named measures Simple to implement Covers all existing uses Simple to extend, specialize

  15. FPBench benchmark suite 72 total benchmarks Drawn from existing papers Annotated with source, ranges, description, citation

  16. FPBench benchmark suite Existing programs Rich features Diverse domains FPTaylor 29 Arith 72 Textbook 59 Herbie 28 Expt 16 Math Alg 6 Rosa 6 Trig 11 Emb Sys 4 Salsa 9 Loop 12 Sci Comp 3 Branch 3

  17. FPBench Common format Benchmark suite Named measures Simple to implement From existing projects Covers all existing uses Cover many domains Simple to extend, specialize Grows over time

  18. FPBench Common format Benchmark suite Named measures Simple to implement From existing projects Covers all existing uses Cover many domains Simple to extend, specialize Grows over time

  19. FPBench measures Formal definitions of accuracy measures Described along 5 axes Standard measures so tools agree

  20. FPBench axes of measurement Absolute, relative, ULPs, bits, Scaling vs. non-scaling Fixed input error vs fixed output error Forward vs. backward Maximum vs. average vs Formal guarantees vs mathematical accuracy Sound vs. statistical vs Improvement

  21. FPBench Common format Benchmark suite Named measures Simple to implement From existing projects Terms for measuring error Covers all existing uses Cover many domains Standard across tools Simple to extend, specialize Grows over time Flexible but rigorous

  22. FPBench Common format Benchmark suite Named measures Simple to implement From existing projects Terms for measuring error Covers all existing uses Cover many domains Standard across tools Simple to extend, specialize Grows over time Flexible but rigorous

  23. FPBench FPBench is community infrastructure for cooperation and comparison in the FP community. Common format Benchmark suite Named measures http://fpbench.org

Related


More Related Content