3.9 Article Proceedings Paper

Stochastic Optimization of Floating-Point Programs with Tunable Precision

Journal

ACM SIGPLAN NOTICES
Volume 49, Issue 6, Pages 53-64

Publisher

ASSOC COMPUTING MACHINERY
DOI: 10.1145/2666356.2594302

Keywords

Performance; 64-bit; x86; x86-64, Binary; Markov Chain Monte Carlo; MCMC; Stochastic Search; SMT; Floating-Point; Precision

Ask authors/readers for more resources

The aggressive optimization of floating-point computations is an important problem in high-performance computing. Unfortunately, floating-point instruction sets have complicated semantics that often force compilers to preserve programs as written. We present a method that treats floating-point optimization as a stochastic search problem. We demonstrate the ability to generate reduced precision implementations of Intel's handwritten C numeric library which are up to 6 times faster than the original code, and achieve end-to-end speedups of over 30% on a direct numeric simulation and a ray tracer by optimizing kernels that can tolerate a loss of precision while still remaining correct. Because these optimizations are mostly not amenable to formal verification using the current state of the art, we present a stochastic search technique for characterizing maximum error. The technique comes with an asymptotic guarantee and provides strong evidence of correctness.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

3.9
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available