Post-compiler Software Optimization for Reducing Energy

Created by W.Langdon from gp-bibliography.bib Revision:1.4524

  author =       "Eric Schulte and Jonathan Dorn and Stephen Harding and 
                 Stephanie Forrest and Westley Weimer",
  title =        "Post-compiler Software Optimization for Reducing
  booktitle =    "Proceedings of the 19th International Conference on
                 Architectural Support for Programming Languages and
                 Operating Systems, ASPLOS'14",
  year =         "2014",
  pages =        "639--652",
  address =      "Salt Lake City, Utah, USA",
  publisher_address = "New York, NY, USA",
  month =        "1-5 " # mar,
  publisher =    "ACM",
  keywords =     "genetic algorithms, genetic programming, genetic
                 improvement, GOA, Evolutionary Computation, Power
                 Modelling, Assembly Code, Compilation, Profile-guided
                 Optimisation, Superoptimization, Mutational
  isbn13 =       "978-1-4503-2305-5",
  URL =          "",
  URL =          "",
  DOI =          "doi:10.1145/2541940.2541980",
  acmid =        "2541980",
  size =         "13 pages",
  abstract =     "Modern compilers typically optimize for executable
                 size and speed, rarely exploring non-functional
                 properties such as power efficiency. These properties
                 are often hardware-specific, time-intensive to
                 optimise, and may not be amenable to standard dataflow
                 optimisations. We present a general post-compilation
                 approach called Genetic Optimisation Algorithm (GOA),
                 which targets measurable non-functional aspects of
                 software execution in programs that compile to x86
                 assembly. GOA combines insights from profile-guided
                 optimization, superoptimisation, evolutionary
                 computation and mutational robustness. GOA searches for
                 program variants that retain required functional
                 behaviour while improving non-functional behavior,
                 using characteristic workloads and predictive modeling
                 to guide the search. The resulting optimisations are
                 validated using physical performance measurements and a
                 larger held-out test suite. Our experimental results on
                 PARSEC benchmark programs show average energy
                 reductions of 20percent, both for a large AMD system
                 and a small Intel system, while maintaining program
                 functionality on target workloads.",
  notes =        "

                 Steady state population 512. Linux gcc, Perf.
                 blackscholes, bodytrack, ferret, fluidanimate,
                 freqmine, swaptions, vips, x264 (MPEG).

Genetic Programming entries for Eric Schulte Jonathan Dorn Stephen Harding Stephanie Forrest Westley Weimer