Skip to main content
Log in

A data-driven machine for OR-parallel evaluation of logic programs

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

Abstract

Research in the area of parallel evaluation mechanisms for logic programs have led to the proposal of a number of schemes exploiting various forms of parallelism. Many of the early models have been based on the conventional approach of organising concurrent components of computations as communicating processes. More recently, however, models based on more novel computation organisations, in particular, data-driven organisations, have been proposed. This paper describes the development of one such model, its implementation and the design of a data-driven machine to support it. The model exploits a form of parallelism known as OR-parallelism and is particularly suited to database applications, although it would also support general applications. It is envisaged that the proposed machine may be refined into an efficient database engine, which can then be a component of a more powerful and integrated logic programming machine.

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. Arvind and Kathail, V., “A Multiple Processor Dataflow Machine That Supports Generalised Procedures,”Proc. of the 8th Annual Symposium on Computer Architecture, p. 291, May, 1981.

  2. Bic, L., “A Data-Driven Model for Parallel Interpretation of Logic Programs,” Dept. of Information and Computer Science, University of California, Irvine, California, Jan., 1984.

    Google Scholar 

  3. Bowen, D. L., “Implementation of Data Structures on a Dataflow Computer,”Ph. D. Thesis, University of Manchester, 1981.

  4. Bruynooghe, M. and Pereira, L. M., “Deduction Revision by Intelligent Backtracking,” inImplementations of PROLOG (Campbell, J. A., ed.), Ellis Horwood Ltd., Chichester, pp. 194–215, 1984.

    Google Scholar 

  5. Ciepielewski, A. and Haridi, S., “Formal Models for OR-Parallel Execution of Logic Programs,”CSALAB Working Paper, 821121, TTDS, Royal Inst. of Tech., Stockholm, Sweden, 1982.

    Google Scholar 

  6. Clark, K. L. and Gregory, S., “PARLOG: A Parallel Logic Programming Language,”Research Rep. Doc. 83/85, Imperial College, London, 1983.

    Google Scholar 

  7. Conery, J. S. and Kibler, D. F., “Parallel Interpretation of Logic Programs,”ACM Conf. on Functional Languages and Architectures, 1981.

  8. Cox, P. T., “Finding Backtrack Points for Intelligent Backtracking,” inImplementations of PROLOG (Campbell, J. A., ed.), Ellis Horwood Ltd., Chichester, pp. 216–234, 1984.

    Google Scholar 

  9. Dennis, J. B., Boughton, J. A. and Leung, C. K. C., “Building Blocks for Dataflow Prototypes,” inProc. 7th Annual Symposium on Computer Architecture, May, 1980.

  10. Deliani, A. and Kowalski, R. A., “Logic and Semantic Networks,”CACM Vol. 22,No. 2, March, 1979.

  11. Gajski, D., et al., “A Second Opinion on Dataflow Machines and Languages,”IEEE Computer,Vol. 15,No. 2, pp. 58–69, Feb., 1982.

  12. Gurd, J. R., “Dataflow Architectures,”Infotech State of the Art Report: Supercomputer Systems Technology,Series 10,No. 6, 1982.

  13. Gurd, J. R. and Watson, I., “Dataflow Systems for High Speed Parallel Computing,”Computer Design, Vol. 19, Nos. 6 and 7, p. 91, June, 1980, and p. 97, July, 1980.

    Google Scholar 

  14. Gurd, J. R. and Watson, I., “Preliminary Evaluation of a Prototype Dataflow Computer,”Proc. IFIP-83 Congress, North-Holland, 1983.

  15. Halim, M. Z., “Data-driven and Demand-driven Evaluation of Logic Programs,”Ph. D. Thesis, University of Manchester, 1984.

  16. Halim, M. Z. and Watson, I., “An OR-Parallel Data-driven Model for Logic Programs,” inProc. of International Workshop on High-Level Computer Architecture, L. A., Calif., May, 1984.

  17. Johnson, D., “Automatic Partitioning of Programs in Multiprocessor Systems,”Proc. IEEE Spring COMPCON, April, 1980.

  18. Kowalski, R. A., “Predicate Logic as a Programming Language,”Proc. IFIP-74 Congress, North-Holland, pp. 569–574, 1974.

  19. Pollard, G. H., “Parallel Execution of Horn Clause Programs,”Ph. D. Thesis, Imperial College, London, 1982.

    Google Scholar 

  20. Rumbaugh, J. E., “A Dataflow Multiprocessor,”IEEE Trans. on Computers, C-26, No. 2, pp. 138–146, Feb., 1977.

    Article  MATH  Google Scholar 

  21. Sargeant, J., “Data Structure Storage — a survey of the problems and an approach to solving them,”Discussion Document JSI, Dept. of Computer Science, University of Manchester, Manchester, 1982.

    Google Scholar 

  22. Umeyama, S. and Tamura, K., “Parallel Execution of Logic Programs,” inProc. of the 10th Annual Symposium on Computer Architecture, pp. 349–355, 1983.

  23. Watson, I. and Gurd, J. R., “A Practical Dataflow Computer,”IEEE Computer.Vol. 15,No. 2, Feb., 1982.

  24. Wise, M. J., “A Parallel PROLOG: the construction of a data-driven model,”ACM Conf. on LISP and Functional Programming, 1982.

Download references

Author information

Authors and Affiliations

Authors

About this article

Cite this article

Halim, Z. A data-driven machine for OR-parallel evaluation of logic programs. New Gener Comput 4, 5–33 (1986). https://doi.org/10.1007/BF03037380

Download citation

  • Received:

  • Revised:

  • Issue Date:

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

Keywords

Navigation