Skip to main content

The design of the PACLIB kernel for parallel algebraic computation

  • Conference paper
  • First Online:
Parallel Computation (ACPC 1993)

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

Abstract

This paper describes the runtime kernel of Paclib, a new system for parallel algebraic computation on shared memory computers. Paclib has been developed as a professional tool for the simple design and efficient implementation of parallel algorithms in computer algebra and related areas. It provides concurrency, shared memory communication, non-determinism, speculative parallelism, streams and a parallelized garbage collection. We explain the main design decisions as motivated by the special demands of algebraic computation and give several benchmarks that demonstrate the performance of the system. Paclib has been implemented on a Sequent Symmetry multiprocessor and is portable to other shared memory machines and workstations.

Supported by the Austrian Science Foundation (FWF) grant S5302-PHY “Parallel Symbolic Computation”.

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. A. V. Aho, J. E. Hopcroft, and J. D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley, 1974.

    Google Scholar 

  2. Arvind, R. S. Nikhil, and K. K. Pingali. I-Structures: Data Structures for Parallel Computing. Computation Structures Group Memo 269, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA, February 1987. Also in: Proceedings of the Workshop on Graph Reduction, Los Alamos, New Mexico, September 28–October 1, 1986.

    Google Scholar 

  3. P. S. Barth, R. S. Nikhil, and Arvind. M-Structures: Extending a Parallel, Nonstrict, Functional Language with State. In Functional Programming Languages and Computer Architectures, volume 523 of Lecture Notes in Computer Science, pages 538–568, Harvard, Massachusetts, USA, 1991. Springer, Berlin.

    Google Scholar 

  4. B. Buchberger. Gröbner Bases: An Algorithmic Method in Polynomial Ideal Theory. In N. K. Bose and D. Reidel, editors, Recent trends in Multidimensional Systems, chapter 6, pages 184–232. D. Reidel Publishing Company, Dordrecht-Boston-Lancaster, 1985.

    Google Scholar 

  5. B. Buchberger, G. Collins, M. Encarnation, H. Hong, J. Johnson, W. Krandick, R. Loos, A. Mandache, A. Neubacher, and H. Vielhaber. A SACLIB Primer. Technical Report 92-34, RISC-Linz, Johannes Kepler University, Linz, Austria, 1992.

    Google Scholar 

  6. B. Buchberger, G. E. Collins, R. Loos, and R. Albrecht, editors. Computer Algebra — Symbolic and Algebraic Computation. Springer, Vienna, New York, 1982.

    Google Scholar 

  7. P. A. Buhr and R. A. Stroobosscher. The μSystem: Providing Light-weight Concurrency on Shared-Memory Multiprocessor Computers Running UNIX. Software — Practice and Experience, 20(9):929–964, September 1990.

    Google Scholar 

  8. N. Carriero and D. Gelernter. How to Write Parallel Programs. MIT Press, 1990.

    Google Scholar 

  9. B. W. Char. Progress Report on a System for General-Purpose Parallel Symbolic Algebraic Computation. In Proceedings of the ISSAC'90, Tokyo, Japan, August 20–24, pages 96–103, Department of Computer Science, University of Tennessee, Knoxville, TN 37996–1301, 1990. ACM Press, New York.

    Google Scholar 

  10. G. E. Collins and H. Hong. Partial CAD Construction in Quantifier Elimination. Technical Report OSU-CISRC-10/89 TR 45, Computer and Information Science Research Center, Ohio State University, Columbus, OH, 1987.

    Google Scholar 

  11. I. Foster and S. Taylor. Strand — New Concepts in Parallel Programming. Prentice-Hall, Englewood Cliffs, New Jersey, 1989.

    Google Scholar 

  12. R. H. Halstead, Jr. Multilisp: A Language for Concurrent Symbolic Computation. ACM Trans. Prog. Lang. Syst., 7(4):501–538, October 1985.

    Google Scholar 

  13. H. Hong, W. Schreiner, A. Neubacher, K. Siegl, H.-W. Loidl, T. Jebelean, and P. Zettler. PACLIB User Manual. Technical Report 92-32, RISC-Linz, Johannes Kepler University, Linz, Austria, May 1992. Also: Technical Report ACPC/TR 92-9, ACPC Technical Report Series, Austrian Center for Parallel Computation, July 1992.

    Google Scholar 

  14. Inmos. Occam 2 Reference Manual. Prentice Hall, New York, 1988.

    Google Scholar 

  15. W. Küchlin. The S-Threads Environment for Parallel Symbolic Computation. In Computer Algebra and Parallelism, Second International Workshop, pages 1–18, Ithaca, USA, May, 1990. Springer, Berlin. Volume 584 of Lecture Notes in Computer Science.

    Google Scholar 

  16. R. S. Nikhil. ID (Version 88.0) Reference Manual. Computation Structures Group Memo 284, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA, March 1988.

    Google Scholar 

  17. J. Rothnie. Kendall Square Research Introduction to the KSR1. In H.-W. Meuer, editor, Supercomputer '92 — Anwendungen, Architekturen, Trends (Applications, Architectures, Trends), pages 104–113, Mannheim, Germany, June 25–27, 1992. Springer, Berlin.

    Google Scholar 

  18. M. Rudalics. Multiprocessor List Memory Management. PhD thesis, Johannes Kepler University, Linz, Austria, 1988. Also: Technical Report 88-87, RISC-Linz, Johannes Kepler University, Linz, Austria, 1988.

    Google Scholar 

  19. W. Schreiner. The Design of the PACLIB Kernel. Technical Report 92-33, RISC-Linz, Johannes Kepler University, Linz, Austria, 1992. Also: Technical Report ACPC/TR 93-4, ACPC Technical Report Series, Austrian Center for Parallel Computation, February 1993.

    Google Scholar 

  20. W. Schreiner and H. Hong. A New Library for Parallel Algebraic Computation. In R. F. Sincovec et al., editors, Sixth SIAM Conference on Parallel Processing for Scientific Computing, volume II, pages 776–783, Norfolk, Virginia, March 22–24, 1993. SIAM. Also: Technical Report 92-73, RISC-Linz, Johannes Kepler University, Linz, Austria, 1992. Also: Technical Report ACPC/TR 93-9, ACPC Technical Report Series, Austrian Center for Parallel Computation, February 1993.

    Google Scholar 

  21. W. Schreiner and H. Hong. PACLIB — A System for Parallel Algebraic Computation on Shared Memory Computers. In H. M. Alnuweiri, editor, Parallel Systems Fair at the Seventh International Parallel Processing Symposium, pages 56–61, Newport Beach, CA, April 14, 1993. IPPS '93. Also: Technical Report 93-03, RISC-Linz, Johannes Kepler University, Linz, Austria, February 1993. Also: Technical Report ACPC/TR 93-12, ACPC Technical Report Series, Austrian Center for Parallel Computation, February 1993.

    Google Scholar 

  22. W. Schreiner and V. Stahl. The Exact Solution of Linear Equation Systems on a Shared Memory Multiprocessor. Technical report, RISC-Linz, Johannes Kepler University, Linz, Austria, 1992.

    Google Scholar 

  23. K. Siegl. Parallelizing Algorithms for Symbolic Computation Using ∥MAPLE∥. In Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pages 179–186, San Diego, California, May 19–22, 1993. ACM Press. Also: Technical Report 93-08, RISC-Linz, Johannes Kepler University, Linz, Austria, February 1993.

    Google Scholar 

  24. Sun Microsystems. System Services Overview, Lightweight Processes, May 1988.

    Google Scholar 

  25. B. K. Szymanski, editor. Parallel Functional Languages and Compilers. Frontier Series. ACM Press, 1991.

    Google Scholar 

  26. A. Tevanian, Jr. and R. F. Rashid. MACH: A Basis for Future UNIX Development. Technical Report CMU-CS-87-139, Computer Science Department, Carnegie-Mellon University, Pittsburgh, PA, June 1987.

    Google Scholar 

  27. University of Illinois. The CHARM (3.2) Programming Language Manual, December 1992.

    Google Scholar 

  28. F. Winkler. Computer Algebra I. Technical Report 88-88, RISC-Linz, Johannes Kepler University, Linz, Austria, 1988.

    Google Scholar 

  29. H. Zima and B. Chapman. Supercompilers for Parallel and Vector Computers. Addison Wesley, New York, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jens Volkert

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Schreiner, W., Hong, H. (1993). The design of the PACLIB kernel for parallel algebraic computation. In: Volkert, J. (eds) Parallel Computation. ACPC 1993. Lecture Notes in Computer Science, vol 734. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57314-3_17

Download citation

  • DOI: https://doi.org/10.1007/3-540-57314-3_17

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57314-2

  • Online ISBN: 978-3-540-48055-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics