Functional Approximation and Approximate Parallelization with the ACCEPT compiler

被引:1
|
作者
Reis, Lucas [1 ]
Wanner, Lucas [1 ]
机构
[1] Univ Estadual Campinas, Inst Comp, Campinas, Brazil
关键词
approximate computing; energy efficiency; LLVM; RELIABILITY;
D O I
10.1109/SBAC-PAD53543.2021.00030
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Approximate computing can aid in the use of energy on cloud and mobile systems by exchanging result accuracy for faster processing times and energy efficiency. One fundamental challenge in applying approximate techniques arises when trying to identify which parts of the application are resilient to approximations, since resilience is not fixed and is dependent on the sensibility of the code. ACCEPT [1] is an approximate computing framework that applies multiple approximation techniques at the compiling level, and that presents suggestions of sections of code that could be annotated to enforce such techniques. The original ACCEPT framework applies a variety of approximation techniques, including hardware acceleration and loop perforation. This work extends ACCEPT in order to attack a broader range of applications and approximation techniques. We extend the framework to support function approximation and approximate loop parallelization. We evaluate the extended framework with seven benchmarks, showing the resulting speedup and quality degradation for each technique when applied in isolation and in combination with other approximation targets. We introduce these approximations without requiring application-level annotations. Our experiments with set benchmarks showed maximum speedups ranging from 1.22x up to 634x for the combined techniques, with quality degradation between 0% and 29%.
引用
收藏
页码:188 / 197
页数:10
相关论文
共 50 条
  • [1] Compiler support for Java']Java parallelization
    Bik, AJC
    Breg, F
    Gannon, DB
    [J]. COMPUTERS IN PHYSICS, 1998, 12 (01): : 45 - 52
  • [2] A compiler cost model for speculative parallelization
    Dou, Jialin
    Cintra, Marcelo
    [J]. ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2007, 4 (02) : 12
  • [3] Prospect: A Compiler Framework for Speculative Parallelization
    Suesskraut, Martin
    Knauth, Thomas
    Weigert, Stefan
    Schiffel, Ute
    Meinhold, Martin
    Fetzer, Christof
    [J]. CGO 2010: THE EIGHTH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, PROCEEDINGS, 2010, : 131 - +
  • [4] Language extensions in support of compiler parallelization
    Shirako, Jun
    Kasahara, Hironori
    Sarkar, Vivek
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 2008, 5234 : 78 - +
  • [5] Usage of the TRACO Compiler for Neural Network Parallelization
    Palkowski, Marek
    Bielecki, Wlodzimierz
    [J]. ARTIFICIAL INTELLIGENCE AND SOFT COMPUTING ICAISC 2014, PT I, 2014, 8467 : 121 - 130
  • [6] Automatic parallelization: An overview of fundamental compiler techniques
    Midkiff, Samuel P.
    [J]. Synthesis Lectures on Computer Architecture, 2012, 19 : 1 - 169
  • [7] An OpenMP based Parallelization Compiler for C Applications
    Arabnejad, Hamid
    Bispo, Joao
    Barbosa, Jorge G.
    Cardoso, Joao M. P.
    [J]. 2018 IEEE INT CONF ON PARALLEL & DISTRIBUTED PROCESSING WITH APPLICATIONS, UBIQUITOUS COMPUTING & COMMUNICATIONS, BIG DATA & CLOUD COMPUTING, SOCIAL COMPUTING & NETWORKING, SUSTAINABLE COMPUTING & COMMUNICATIONS, 2018, : 915 - 923
  • [8] An approximate functional equation with applications to a problem of Diophantine approximation
    Wilton, JR
    [J]. JOURNAL FUR DIE REINE UND ANGEWANDTE MATHEMATIK, 1933, 169 (1/4): : 219 - 237
  • [9] A TOOL FOR EVALUATING COMPILER-BASED PARALLELIZATION STRATEGIES
    ANAND, TS
    GUPTA, R
    [J]. MATHEMATICS AND COMPUTERS IN SIMULATION, 1989, 31 (4-5) : 509 - 516
  • [10] A novel compiler support for automatic parallelization on multicore systems
    Andion, Jose M.
    Arenaz, Manuel
    Rodriguez, Gabriel
    Tourino, Juan
    [J]. PARALLEL COMPUTING, 2013, 39 (09) : 442 - 460