Authors: Konstantinos Parasyris, James Diffenderfer, Harshitha Menon, and Ignacio Laguna (Lawrence Livermore National Laboratory); Jackson Vanover (University of California, Davis); and Ryan Vogt and Daniel Osei-Kuffuor (Lawrence Livermore National Laboratory)
Abstract: As computer system technology approaches the end of Moore's law, new computing paradigms that improve performance become a necessity. One such paradigm is approximate computing (AC). AC can present significant performance improvements, but a challenge lies in providing confidence that approximations will not overly degrade the application output quality. In AC, application domain experts manually identify code regions amenable to approximation. However, automatically guiding a developer where to apply AC is still a challenge.
We propose Puppeteer, a novel method to rank code regions based on amenability to approximation. Puppeteer uses uncertainty quantification methods to measure the sensitivity of application outputs to approximation errors. A developer annotates possible application code regions and Puppeteer estimates the sensitivity of each region. Puppeteer successfully identifies insensitive regions on different benchmarks. We utilize AC on these regions and we obtain speedups of 1.18x, 1.8x, and 1.3x for HPCCG, DCT, and BlackScholes, respectively.
Back to Technical Papers Archive Listing