A Logic Programming Approach to Predict Effective Compiler Settings for Embedded Software

Craig B Blackmore, Oliver Ray, Kerstin Eder

Research output: Chapter in Book/Report/Conference proceedingConference Contribution (Conference Proceeding)

4 Citations (Scopus)
495 Downloads (Pure)

Abstract

This paper introduces a new logic-based method for optimising the selection of compiler flags on embedded architectures. In particular, we use Inductive Logic Programming (ILP) to learn logical rules that relate effective compiler flags to specific program features. Unlike earlier work, we aim to infer human-readable rules and we seek to develop a relational first-order approach which automatically discovers relevant features rather than relying on a vector of predetermined attributes. To this end we generated a data set by measuring execution times of 60 benchmarks on an embedded system development board and we developed an ILP prototype which outperforms the current state-of-the-art learning approach in 34 of the 60 benchmarks. Finally, we combined the strengths of the current state of the art and our ILP method in a hybrid approach which reduced execution times by an average of 8% and up to 50% in some cases.
Original languageEnglish
Title of host publicationProceedings of the 31st International Conference on Logic Programming, 4-5 July 2015
PublisherCambridge University Press
Pages481-494
Number of pages14
Volume15
DOIs
Publication statusPublished - 4 Jul 2015
Event31st International Conference on Logic Programming (ICLP 2015) - Cork, Ireland
Duration: 31 Aug 20154 Sept 2015

Publication series

NameTheory and Practice of Logic Programming
PublisherCambridge Unversity Press
Number4-5
Volume15
ISSN (Print)1471-0684
ISSN (Electronic)1475-3081

Conference

Conference31st International Conference on Logic Programming (ICLP 2015)
Country/TerritoryIreland
CityCork
Period31/08/154/09/15

Keywords

  • inductive logic programming
  • embedded system
  • compiler optimisation

Fingerprint

Dive into the research topics of 'A Logic Programming Approach to Predict Effective Compiler Settings for Embedded Software'. Together they form a unique fingerprint.

Cite this