Integrating HeuristicLab with Compilers and Interpreters for Non-Functional Code Optimization
Publication, 2020
Outline
D. Dorfmeister, O. Krauss - Integrating HeuristicLab with Compilers and Interpreters for Non-Functional Code Optimization - Proceedings of the Genetic and Evolutionary Computation Conference Companion - GECCO '20, Virtuell, Austria, 2020
Abstract
Modern compilers and interpreters provide code optimizations during
compile and run time, simplifying the development process for
the developer and resulting in optimized software. These optimizations
are often based on formal proof, or alternatively stochastic
optimizations have recovery paths as backup. The Genetic Compiler
Optimization Environment (GCE) uses a novel approach, which
utilizes genetic improvement to optimize the run-time performance
of code with stochastic machine learning techniques.
In this paper, we propose an architecture to integrate GCE, which
directly integrates with low-level interpreters and compilers, with
HeuristicLab, a high-level optimization framework that features a
wide range of heuristic and evolutionary algorithms, and a graphical
user interface to control and monitor the machine learning
process. The defined architecture supports parallel and distributed
execution to compensate long run times of the machine learning
process caused by abstract syntax tree (AST) transformations. The
architecture does not depend on specific operating systems, programming
languages, compilers or interpreters.