Schedule Analysis of Concurrent Logic Programs

King, Andy and Soper, Paul (1992) Schedule Analysis of Concurrent Logic Programs. In: Apt, Krzysztof, ed. Joint International Conference and Symposium for Logic Programming. Logic Programming . MIT Press, USA, pp. 478-492. ISBN 9780262510646. (Full text available)

PDF
Download (1MB)
[img]
Preview

Abstract

A compilation technique is proposed for concurrent logic programs called schedule analysis. Schedule analysis deduces at compile-time a partial schedule for the processes of a program by partitioning the atoms of each clause into threads. Threads are totally ordered sets of atoms whose relative ordering is determined by a scheduler. Threads reduce scheduler activity and permit a wealth of traditional Prolog optimisations to be applied to the program. A framework for schedule analysis is proposed and this defines a procedure for creating threads. A safety result is presented stating the conditions under which the work of the scheduler can be reduced from ordering processes to ordering threads. Schedule analysis has been integrated into a compiler and implementation has suggested that it can play a central role in compilation. Optimisations which follow from schedule analysis include a reduction in scheduling, the removal of synchronisation checks, the simplification of unification, decreased garbage collection and a reduction in argument copying.

Item Type: Book section
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Science Technology and Medical Studies > School of Computing
Depositing User: Andy King
Date Deposited: 15 Jul 2009 13:04
Last Modified: 15 Dec 2013 17:47
Resource URI: http://kar.kent.ac.uk/id/eprint/20891 (The current URI for this page, for reference purposes)
  • Depositors only (login required):

Downloads

Downloads per month over past year