POPL 2017
Sun 15 - Sat 21 January 2017
Wed 18 Jan 2017 17:20 - 17:45 at Auditorium - Compiler Optimisation Chair(s): Andrew Myers

Virtually all real-valued computations are carried out using floating-point data types and operations. The precision of these data types must be set with the goals of reducing the overall round-off error, but also emphasizing reduced data movement and cache occupancy costs. Often, a mixed precision allocation achieves this optimum; unfortunately, there are no techniques available to compute such allocations and conservatively meet a given error target across all program inputs. In this work, we present a rigorous approach to precision allocation based on formal analysis via Symbolic Taylor Expansions, and error analysis based on interval functions. This approach is implemented in an automated tool called FPTUNER that generates and solves a quadratically constrained quadratic program to obtain a precision-annotated version of the given expression. FPTUNER automatically introduces all the requisite precision up/down casting operations. It also allows users to flexibly control precision allocation through constraints, including capping the number of high precision operators, grouping a collection of operators to allocate the same precision for them (to facilitate vectorization), etc. Our evaluation, including real energy measurements on an ARM (Jetson) hardware platform, demonstrate the degree to which precision choices can be exercised, especially controlling compiler optimizations, and the energy impacts of these allocations.

Wed 18 Jan
Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

16:30 - 17:45: Compiler OptimisationPOPL at Auditorium
Chair(s): Andrew MyersCornell University
16:30 - 16:55
Ziv ScullyCarnegie Mellon University, Adam ChlipalaMIT
16:55 - 17:20
Oleg Kiselyov, Aggelos BiboudisUniversity of Athens, Nick PalladinosNessos Information Technologies, SA, Yannis SmaragdakisUniversity of Athens
Pre-print Media Attached
17:20 - 17:45
Wei-Fan ChiangSchool of Computing, University of Utah, Ganesh GopalakrishnanUniversity of Utah, Zvonimir RakamaricUniversity of Utah, Ian BriggsSchool of Computing, University of Utah, Marek S. BaranowskiUniversity of Utah, Alexey SolovyevSchool of Computing, University of Utah