Papers › Finding representative sets of optimizations for adaptive multiversioning applications

Finding representative sets of optimizations for adaptive multiversioning applications

14 Jul 2014arXiv:1407.4075archive 2025-07-28

Lianjie Luo, Yang Chen, Chengyong Wu, Shun Long, Grigori Fursin

Iterative compilation is a widely adopted technique to optimize programs for different constraints such as performance, code size and power consumption in rapidly evolving hardware and software environments. However, in case of statically compiled programs, it is often restricted to optimizations for a specific dataset and may not be applicable to applications that exhibit different run-time behavior across program phases, multiple datasets or when executed in heterogeneous, reconfigurable and virtual environments. Several frameworks have been recently introduced to tackle these problems and enable run-time optimization and adaptation for statically compiled programs based on static function multiversioning and monitoring of online program behavior. In this article, we present a novel technique to select a minimal set of representative optimization variants (function versions) for such frameworks while avoiding performance loss across available datasets and code-size explosion. We developed a novel mapping mechanism using popular decision tree or rule induction based machine learning techniques to rapidly select best code versions at run-time based on dataset features and minimize selection overhead. These techniques enable creation of self-tuning static binaries or libraries adaptable to changing behavior and environments at run-time using staged compilation that do not require complex recompilation frameworks while effectively outperforming traditional single-version non-adaptable code.

PaperPDFCode

Code

ctuning/ck-analytics mentioned on GitHubtf report
ctuning/ck-autotuning mentioned on GitHub report
ctuning/ck-crowdtuning mentioned on GitHub report
ctuning/ck-math mentioned on GitHub report
ctuning/ck-web mentioned on GitHub report
ctuning/ctuning-programs mentioned on GitHub report
ctuning/reproduce-adapt16 mentioned on GitHub report
ctuning/reproduce-ck-paper mentioned on GitHub report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

Not run by Syntology. Nothing on this page verifies that the listed code works.

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections