© University of Kent - Contact | Feedback | Legal | FOI | Cookies
Schedule Analysis of Concurrent Logic Programs
A. King and P. Soper
In K. Apt, editor, Joint International Conference and Symposium on Logic Programming, pages 182-196. MIT Press, January 1992.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.
Download publication 153 kbytes (PostScript)Bibtex Record
@inproceedings{1322, author = {A. King and P. Soper}, title = {Schedule {A}nalysis of {C}oncurrent {L}ogic {P}rograms}, month = {January}, year = {1992}, pages = {182-196}, keywords = {determinacy analysis, Craig interpolants}, note = {}, doi = {}, url = {http://www.cs.kent.ac.uk/pubs/1992/1322}, publication_type = {inproceedings}, submission_id = {9586_1011197598}, other_year = {1992}, booktitle = {Joint International Conference and Symposium on Logic Programming}, editor = {K. Apt}, publisher = {MIT Press}, refereed = {yes}, }