Skip to main content

An object-oriented class library for scalable parallel heuristic search

  • Conference paper
  • First Online:

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

Abstract

In this report, we describe the design and implementation of a Parallel Heuristic Search Class Library, with emphasis on the use of object-oriented programming techniques for distributed applications. Another key consideration is the scalability of the library. We present the rationale behind major design decisions as well as the adoption of particular programming conventions. Along with an outline of the general framework of the library, we discuss implementation details of individual library classes. To demonstrate the applicability of the class library, it was used to port two existing parallel applications to an object-oriented platform. Different software metrics regarding the porting projects are used for evaluating library usability.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Arvindam, V. Kumar, V.N. Rao, and V. Singh. Automatic test pattern generation on parallel processors. Parallel Computing, 17(12):1323–1342, December 1991. A shorter version appeared in proceedings of the 1989 International Conference on Knowledge-Based Computer Systems.

    Article  Google Scholar 

  2. Sunil Arvindam, Vipin Kumar, and V. Nageshwara Rao. Floorplan Optimization on Multiprocessors. Technical Report ACT-OODS-241-89, MCC, 1989. Submitted for journal publication. Shorter version appeared in proceedings of the 1989 International Conference on Computer Design.

    Google Scholar 

  3. G. Booch. Object-Oriented Design with Applications. Benjamin/Cummings, Reading, MA, 1990.

    Google Scholar 

  4. G. Carey, J. Schmidt, V. Singh, and D. Yelton. A Scalable, Object-Oriented Finite Element Solver for Partial Differential Equations on Multicomputers. In Proceedings of the 1992 ACM International Conference on Supercomputing, 1992. To appear.

    Google Scholar 

  5. J.M. Coggins. Designing C++ Libraries. In Proceedings of the 1990 USENIX C++ Conference, April 1990.

    Google Scholar 

  6. D.W. Forslund. Experiences in Writing a Distributed Particle Simulation Code in C++. In USENIX C++ Conference, pages 177–190, 1990.

    Google Scholar 

  7. A.S. Grimshaw. An Introduction to Object-Oriented Parallel Programming with Mentat. Computer Science Report TR-91-07, University of Virginia, 1991.

    Google Scholar 

  8. P.R. Jossman, E.N. Schiebel, and J.C. Shank. Climbing the C++ Learning Curve. In Proceedings of the 1990 USENIX C++ Conference, April 1990.

    Google Scholar 

  9. A. Khanna et al. Experimental Systems Project at the Fifth Distributed Memory Computing Conference. Technical Report ACT-ESP-117-90, MCC, April 1990.

    Google Scholar 

  10. Vipin Kumar and Anshul Gupta. Analyzing the Scalability of Parallel Algorithms and Architectures: A Survey. In Proceedings of the 1991 International Conference on Supercomputing, June 1991.

    Google Scholar 

  11. Vipin Kumar and V. N. Rao. Scalable Parallel Formulations of Depth-First Search. In Vipin Kumar, P. S. Gopalakrishnan, and Laveen Kanal, editors, Parallel Algorithms for Machine Intelligence and Vision. Springer-Verlag, New York, 1990.

    Google Scholar 

  12. Vipin Kumar and V. Nageshwara Rao. Parallel depth-first search, part II: Analysis. International Journal of Parallel Programming, 16 (6):501–519, 1987.

    Article  MathSciNet  Google Scholar 

  13. Vipin Kumar and Vineet Singh. Scalability of Parallel Algorithms for the All-Pairs Shortest Path Problem. Journal of Parallel and Distributed Processing (special issue on massively parallel computation), October 1991. A short version appears in the Proceedings of the International Conference on Parallel Processing, 1990.

    Google Scholar 

  14. D. Mancl. Use of metrics to evaluate C++. In Conference Proceedings: C++ at Work'90. The C++ Report and The Wang Institute of Boston University, 1990.

    Google Scholar 

  15. B. Meyer. Object-Oriented Software Construction. Prentice Hall, 1988.

    Google Scholar 

  16. V. Nageshwara Rao and Vipin Kumar. Parallel Depth-First Search, Part I: Implementation. International Journal of Parallel Programming, 16 (6):479–499, 1987.

    Article  MathSciNet  Google Scholar 

  17. Michael J. Quinn. Designing Efficient Algorithms for Parallel Computers. McGraw Hill, New York, 1987.

    Google Scholar 

  18. V. Singh, V. Kumar, G. Agha, and C. Tomlinson. Efficient Algorithms for Parallel Sorting on Mesh Multicomputers. International Journal of Parallel Programming, 20(2), 1991. Shorter version in proceedings of the 1991 International Parallel Processing Symposium.

    Google Scholar 

  19. K.S. Smith and A. Chatterjee. A C++ Environment for Distributed Application Execution. In Conference Proceedings: C++ at Work-'90, 1990.

    Google Scholar 

  20. E. Surma. Extensible Software Platform Development Environment Programmer's Guide. Technical Report ACA-ESP-223-88, MCC, August 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ole Lehrmann Madsen

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lau, Wc., Singh, V. (1992). An object-oriented class library for scalable parallel heuristic search. In: Madsen, O.L. (eds) ECOOP ’92 European Conference on Object-Oriented Programming. ECOOP 1992. Lecture Notes in Computer Science, vol 615. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053041

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-47268-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics