The University of Southampton
University of Southampton Institutional Repository

Self-Tuning Resource Aware Specialisation for Prolog

Self-Tuning Resource Aware Specialisation for Prolog
Self-Tuning Resource Aware Specialisation for Prolog
The paper develops a self-tuning resource aware partial evaluation technique for Prolog programs, which derives its own control strategies tuned for the underlying computer architecture and Prolog compiler using a genetic algorithm approach. The algorithm is based on mutating the annotations of offline partial evaluation. Using a set of representative sample queries it decides upon the fitness of annotations, controlling the trade-off between code explosion, speedup gained and specialisation time. The user can specify the importance of each of these factors in determining the quality of the produced code, tailoring the specialisation to the particular problem at hand. We present experimental results for our implemented technique on a series of benchmarks. The results are compared against the aggressive termination based binding-time analysis and optimised using different measures for the quality of code. We also show that our technique avoids some classical pitfalls of partial evaluation.
Partial Evaluation, Logic Programming, Genetic Algorithms, Optimization, Compilers, Embedded Systems, Tuning
23-34
Association for Computing Machinery
Craig, Stephen-John
70e3474a-2043-482f-9e1c-27f68e9aba16
Leuschel, Michael
c2c18572-66cf-4f84-ade4-218ce3afe78b
Felty, Amy
Craig, Stephen-John
70e3474a-2043-482f-9e1c-27f68e9aba16
Leuschel, Michael
c2c18572-66cf-4f84-ade4-218ce3afe78b
Felty, Amy

Craig, Stephen-John and Leuschel, Michael (2005) Self-Tuning Resource Aware Specialisation for Prolog. Felty, Amy (ed.) In Proceedings of PPDP'05. Association for Computing Machinery. pp. 23-34 .

Record type: Conference or Workshop Item (Paper)

Abstract

The paper develops a self-tuning resource aware partial evaluation technique for Prolog programs, which derives its own control strategies tuned for the underlying computer architecture and Prolog compiler using a genetic algorithm approach. The algorithm is based on mutating the annotations of offline partial evaluation. Using a set of representative sample queries it decides upon the fitness of annotations, controlling the trade-off between code explosion, speedup gained and specialisation time. The user can specify the importance of each of these factors in determining the quality of the produced code, tailoring the specialisation to the particular problem at hand. We present experimental results for our implemented technique on a series of benchmarks. The results are compared against the aggressive termination based binding-time analysis and optimised using different measures for the quality of code. We also show that our technique avoids some classical pitfalls of partial evaluation.

Text
ppdp05_final.pdf - Other
Download (338kB)

More information

Published date: 2005
Keywords: Partial Evaluation, Logic Programming, Genetic Algorithms, Optimization, Compilers, Embedded Systems, Tuning
Organisations: Electronics & Computer Science

Identifiers

Local EPrints ID: 261197
URI: http://eprints.soton.ac.uk/id/eprint/261197
PURE UUID: 7c8365d1-b541-46f0-8691-f137cd3935d6

Catalogue record

Date deposited: 07 Sep 2005
Last modified: 14 Mar 2024 06:49

Export record

Contributors

Author: Stephen-John Craig
Author: Michael Leuschel
Editor: Amy Felty

Download statistics

Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.

View more statistics

Atom RSS 1.0 RSS 2.0

Contact ePrints Soton: eprints@soton.ac.uk

ePrints Soton supports OAI 2.0 with a base URL of http://eprints.soton.ac.uk/cgi/oai2

This repository has been built using EPrints software, developed at the University of Southampton, but available to everyone to use.

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.

×