Skip to main content
Log in

Efficient computation control in concurrent logic languages

  • Regular Papers
  • Published:
New Generation Computing Aims and scope Submit manuscript

Abstract

Many interesting applications of concurrent logic languages require the ability to initiate, monitor, and control computations. Two approaches to the implementation of these control functions have been proposed: one based on kernel support and the other on program transformation. The efficiency of the two approaches has not previously been compared. This paper presents an implementation scheme based on kernel support, applicable to both uniprocessor and multiprocessor architectures. Experimental studies on a uniprocessor show the scheme to be more efficient than equivalent program transformations. Analysis of a multiprocessor implementation shows that the scheme imposes little communication and computation overhead.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Broda, K. and Gregory, S., “Parlog for Discrete Event Simulation”, inProc. 2nd Intl Logic Programming Conf. (S.-A. Tarnlund, ed.), Uppsala, pp. 301–312, 1984.

  2. Clark, K. and Gregory, S., “Notes on Systems Programming in Parlog”, inProc. Intl Conf. on 5th Generation Computer Systems (H. Aiso, ed.), Tokyo, North-Holland, pp. 299–306, 1984.

    Google Scholar 

  3. Foster, I.,Systems Programming in Parallel Logic Languages, Prentice-Hall, London, 1990.

    Google Scholar 

  4. Foster, I. and Taylor, S., “Strand: A Practical Parallel Programming Tool”, inProc. North American Conf. on Logic Programming, MIT Press, pp. 497–512, 1989.

  5. Foster, I. and Taylor, S.,Strand: New Concepts in Parallel Programming, Prentice-Hall, Englewood Cliffs, N.J., 1990.

    Google Scholar 

  6. Gregory, S.,Parallel Logic Programming in Parlog, Addison-Wesley, Reading, Mass., 1987.

    Google Scholar 

  7. Gregory, S., Foster, I., Burt, A., and Ringwood, G., “An Abstract Machine for the Implementation of Parlog on Uniprocessors”,New Generation Computing, Vol. 6, pp. 389–420, 1989.

    Article  MATH  Google Scholar 

  8. Gregory, S., Neely, R., and Ringwood, G., “Parlog for Specification, Verfication and Simulation”, inProc. 7th Intl Symposium on Computer Hardware Description Languages and their Applications Tokyo, August, 1985.

  9. Hirsch, M., Silverman, W., and Shapiro, E., “Layers of Protection and Control in the Logix System”, inConcurrent Prolog: Collected Papers, MIT Press, 1986.

  10. Ichiyoshi, N., Miyazaki, T., and Taki, K., “A Distributed Implementation of Flat GHC on the Multi-PSI”, inProc. 4th Intl Logic Programming Conf., Melbourne, MIT Press, pp. 257–275, 1987.

  11. Mierowsky, C., Taylor, S., Shapiro, E., Levy, J., and Safra, M., “The Design and Implementation of Flat Concurrent Prolog”,Technical Report, CS85-09, Weizmann Institute of Science, Rehovot, 1985.

    Google Scholar 

  12. Sato, M., Shimizu, H., Matsumoto, A., Rokusawa, K., and Goto, A., “KL1 Execution Model for PIM Cluster with Shared Memory”, inProc. 4th Intl Logic Programming Conf., Melbourne, MIT Press, pp. 338–355, 1987.

  13. Shapiro, E., “Concurrent Prolog: A progress report”, inFundamentals of Artificial Intelligence, LNCS 232, Springer-Verlag, pp. 277–313, 1986.

  14. Taylor, S.,Parallel Logic Programming Techniques, Prentice-Hall, Englewood Cliffs, N.J., 1989.

    Google Scholar 

  15. Ueda, K., “Guarded Horn Clauses”,D. Eng. thesis, University of Tokyo, Tokyo, 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

About this article

Cite this article

Foster, I. Efficient computation control in concurrent logic languages. New Gener Comput 10, 1–21 (1991). https://doi.org/10.1007/BF03037520

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF03037520

Keywords

Navigation