Skip to main content

Performance of a data-parallel concurrent constraint programming system

  • Knowledge Representation and Programming Languages
  • Conference paper
  • First Online:
Algorithms, Concurrency and Knowledge (ACSC 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1023))

Included in the following conference series:

  • 123 Accesses

Abstract

Finite domain constraints [27] are very effective in solving a class of integer problems which find its applications in various areas like scheduling and operations research. The advantage over conventional approaches is that the problem is specified declaratively. The actual computation is carried out by logic inference and constraint satisfaction [24]. Solving a set of finite domain constraints is an intractable problem and we propose to use massively parallel computers to obtain satisfactory performance. In our previous papers, we have shown that finite domain constraint languages can be implemented on massively parallel SIMD machines. The resulting system, Firebird, has been implemented on a DECmpp 12000 Sx-100 massively parallel computer with 8,192 processor elements. In this paper, some preliminary performance results are given. A speedup of 2 orders of magnitude is possible when we compare the performance using 8,192 processor elements and the performance using a single processor element of the same machine. On the other hand, we measure the effects of several control strategies and optimizations on execution time and memory consumption in a data-parallel context.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. H. Aït-Kaci. Warren's Abstract Machine: A Tutorial Reconstruction. MIT Press, 1991.

    Google Scholar 

  2. A. K. Bansal and J. L. Potter. An associative model to minimize matching and backtracking overhead in logic programs with large knowledge bases. Engineering Applications of Artificial Intelligence, 5(3):247–262, 1992.

    Google Scholar 

  3. J. Barklund and H. Millroth. Providing iteration and concurrency in logic programs through bounded quantifications. In Proceedings of the International Conference on Fifth Generation Computer Systems, pages 817–824, ICOT, Japan, 1992.

    Google Scholar 

  4. D. Diaz and P. Codognet. A minimal extension of the WAM for clp(FD). In D. S. Warren, editor, Logic Programming: Proceedings of the Tenth International Conference, pages 774–790, Budapest, Hungary, 1993. The MIT Press.

    Google Scholar 

  5. M. Dincbas, P. Van Hentenryck, and H. Simonis. Solving the car sequencing problem in constraint logic programming. In Proceedings of the European Conference on Artificial Intelligence, Munich, Germany, August 1988.

    Google Scholar 

  6. M. Dixon and J. de Kleer. Massively parallel assumption-based truth maintainance. In Proceedings of the National Conference on Artificial Intelligence, St. Paul, Minnesota, August 1988.

    Google Scholar 

  7. A. González and J. Tubella. The Multipath Parallel Execution Model for Prolog. In Proceedings of the First Int'l Conf. on Parallel Symbolic Computation PASCO'94. World Scientific Pub., 1994.

    Google Scholar 

  8. S. Ivanets, N. Ilinsky, and M. Krylov. WAM specification for parallel execution on SIMD computer. In First Russian Conference on Logic Programming, pages 232–239, St. Petersburg, Russia, September 1990. Springer-Verlag.

    Google Scholar 

  9. P. Kacsuk and A. Bale. DAP Prolog: A set-oriented approach to Prolog. The Computer Journal, 30(5):393–403, 1987.

    Google Scholar 

  10. Y. Kanada, K. Kojima, and M. Sugaya. Vectorization techniques for Prolog. In Proceedings of the ACM International Conference on Supercomputing, pages 539–549, St. Malo, 1988.

    Google Scholar 

  11. S. Kliger and E. Shapiro. From decision trees to decision graphs. In S. Debray and M. Hermenegildo, editors, Proceedings of the 1990 North American Conference on Logic Programming, pages 97–116, Austin, 1990. ALP, The MIT Press.

    Google Scholar 

  12. J. W. Lloyd. Foundations of Logic Programming, Second, Extended Edition. Springer-Verlag, 1987.

    Google Scholar 

  13. M. J. Maher. Logic semantics for a class of committed-choice programs. In J.-L. Lassez, editor, Logic Programming: Proceedings of the Fourth International Conference, pages 858–876, Melbourne, 1987. The MIT Press.

    Google Scholar 

  14. M. Nilsson and H. Tanaka. A flat GHC implementation for supercomputers. In R. A. Kowalski and K. A. Bowen, editors, Logic Programming: Proceedings of the Fifth International Conference and Symposium, pages 1337–1350, Seatle, 1988. ALP, IEEE, The MIT Press.

    Google Scholar 

  15. M. Nilsson and H. Tanaka. Massively parallel implementation of flat GHC on the Connection Machine. In Proceedings of the International Conference on Fifth Generation Computer Systems, pages 1031–1040, Japan, 1988. ICOT.

    Google Scholar 

  16. V. A. Saraswat. A somewhat logical formulation of CLP synchronisation primitives. In R. A. Kowalski and K. A. Bowen, editors, Logic Programming: Proceedings of the Fifth International Conference and Symposium, pages 1298–1314, Seatle, 1988. ALP, IEEE, The MIT Press.

    Google Scholar 

  17. V. A. Saraswat and M. Rinard. Concurrent constraint programming. In Proceedings of the 17th Symposium on Principles of Programming Languages, pages 232–244, San Fransisco, 1990.

    Google Scholar 

  18. D. A. Smith. MultiLog: Data or-parallel logic programming. In D. S. Warren, editor, Logic Programming: Proceedings of the Tenth International Conference, pages 314–331, Budapest, Hungary, 1993. The MIT Press.

    Google Scholar 

  19. D. A. Smith, 1994. Personal communication.

    Google Scholar 

  20. D. A. Smith. Why multi-SLD beats SLD (even on a uniprocessor). In Proceedings of the Sixth International Symposium on Programming Language Implementation and Logic Programming, Madrid, Spain, 1994. Springer-Verlag.

    Google Scholar 

  21. B. M. Tong. Data-parallel concurrent constraint programming. M. Phil. thesis, Department of Computer Science, The Chinese University of Hong Kong, Hong Kong, 1994.

    Google Scholar 

  22. B. M. Tong and H. F. Leung. Concurrent constraint logic programming on massively parallel SIMD computers. In D. Miller, editor, Logic Programming: Proceedings of the 1993 International Symposium, pages 388–402, Vancouver, Canada, October 1993. The MIT Press.

    Google Scholar 

  23. B. M. Tong and H. F. Leung. Implementation of a data-parallel concurrent constraint programming system. In Proceedings of the First International Symposium on Parallel Symbolic Computation, pages 382–393, Linz, Austria, September 1994. World Scientific.

    Google Scholar 

  24. E. Tsang. Foundations of Constraint Satisfaction. Academic Press, 1993.

    Google Scholar 

  25. J. Tubella and A. González. A Partial Breadth-First Execution Model for Prolog. In Proceedings of the 6th Int'l Conf. on Tools with Artificial Intelligence TAI'94, pages 129–137, 1994.

    Google Scholar 

  26. K. Ueda. Guarded horn clauses. In E. Wada, editor, Logic Programming '85 — Proceedings of the 4th Conference, Lecture Notes in Computer Science 221, pages 168–179, Tokyo, July 1985. Springer-Verlag.

    Google Scholar 

  27. P. Van Hentenryck. Constraint Satisfaction in Logic Programming. MIT Press, 1989.

    Google Scholar 

  28. P. Van Hentenryck, V. A. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Technical Report CS-93-02, Department of Computer Science, Brown University, Providence, 1993.

    Google Scholar 

  29. D. H. D. Warren. An abstract Prolog instruction set. Technical Note 309, SRI International, Menlo Park, CA, U.S.A., 1983.

    Google Scholar 

  30. C. M. Yeung, S. M. Leung, and H. F. Leung. Applying constraint satisfaction technique in university timetable scheduling. In A. Roth, editor, Proceedings of the Third International Conference on the Practical Application of Prolog, Paris, France, April 1995. Practical Applications of Prolog.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Kanchana Kanchanasut Jean-Jacques Lévy

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Tong, BM., Leung, HF. (1995). Performance of a data-parallel concurrent constraint programming system. In: Kanchanasut, K., Lévy, JJ. (eds) Algorithms, Concurrency and Knowledge. ACSC 1995. Lecture Notes in Computer Science, vol 1023. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60688-2_53

Download citation

  • DOI: https://doi.org/10.1007/3-540-60688-2_53

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60688-8

  • Online ISBN: 978-3-540-49262-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics