Recursive individually distributed object

  • Z. George Mou
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1586)


Distributed Objects (DO) as defined by OMG’s CORBA architecture provide a model for object-oriented parallel distributed computing. The parallelism in this model however is limited in that the distribution refers to the mappings of different objects to different hosts, and not to the distribution of any individual object. We propose in this paper an alternative model called Individually Distributed Object (IDO) which allows a single large object to be distributed over a network, thus providing a high level interface for the exploitation of parallelism inside the computation of each object which was left out of the distributed objects model. Moreover, we propose a set of functionally orthogonal operations for the objects which allow the objects to be recursively divided, combined, and communicate over recursively divided address space. Programming by divide-and-conquer is therefore effectively supported under this framework. The Recursive Individually Distributed Object (RIDO) has been adopted as the primary parallel programming model in the Brokered Objects for Ragged-network Gigaflops (BORG) project at the Applied Physics Laboratory of Johns Hopkins University, and applied to large-scale real-world problems.


Local Operation Common Object Request Broker Architecture Cyclic Reduction Apply Physics Laboratory High Level Interface 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A. V. Aho, J. E. Hopcroft, and J. D. Ullman. The Design and Analysis of Computer Algorithms. Addision-Wesley, 1974.Google Scholar
  2. 2.
    Tom Axford. The Divide-and-Conquer Paradigm as a Basis for Parallel Language Design, pages 26–65. John Wiley and Sons, Inc., 1992. edited by Kronsjo, Lydia and Shumsheruddin, Dean.Google Scholar
  3. 3.
    J. Backus. Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Communications of the ACM, 21(8):613–641, August 1978.zbMATHMathSciNetCrossRefGoogle Scholar
  4. 4.
    K. E. Batcher. Sorting networks and their applications. In Proceedings of the AFIPS Spring Joint Computer Conference, volume 32, pages 307–314, 1968.Google Scholar
  5. 5.
    CESDIS. Beowulf project at cesdis. Google Scholar
  6. 6.
    T. H. Corman, C. E. Leiserson, and R. L. Rivest. Introduction to Algorithms. MIT Press, 1990.Google Scholar
  7. 7.
    D.J. Donohue, H-C. Ku, and D.R. Thomson. Application of iterative moment-method solution to ocean surface radar scattering. IEEE Transactions on Antennas and Propagation, 46(1):121–132, January 1998.CrossRefGoogle Scholar
  8. 8.
    Jack Dongarra. Linear library liberaries for high-performance computer: A personal perspective. IEEE Parallel & Distributed Technology, (Premiere Issue): 17–24, February 1993.Google Scholar
  9. 9.
    W. H. Press et al. Numerical Recipes—The Art of Scientific Computing. Cambridge University Press, 1986.Google Scholar
  10. 10.
    Y. Wang et al. The 3dp: A processor architecture for three dimensional applications. Computer, IEEE, 25(1):25–38, January 1992.Google Scholar
  11. 11.
    Sergei Gorlatch and Christian Lengauer. Parallelization of divide-and-conquer in the bird-meertens formalizm. Technical Report MIP-9315, Universitat Passau, Dec. 1993.Google Scholar
  12. 12.
    Object Management Group, editor. CORBA Specifications. Scholar
  13. 13.
    W. D. Hillis and G. L. Steele Jr. Data parallel algorithms. Communications of the ACM, 29(12):1170–1183, December 1986.CrossRefGoogle Scholar
  14. 14.
    R. W. Hockney. The potential calculation and some applications. Methods in Computational Physics, 9:135–211, 1970.Google Scholar
  15. 15.
    Ralph E. Johnson. Frameworks=components+patterns. Communications of the ACM, 40(10):39–42, October 1997.CrossRefGoogle Scholar
  16. 16.
    S. Lennart Johnsson. Cyclic reduction on a binary tree. Computer Physics Communication 37 (1985), pages 195–203, 1985.MathSciNetCrossRefGoogle Scholar
  17. 17.
    R. E. Ladner and M. J. Fischer. Parallel prefix computation. Journal of the ACM, 27(4):831–838, 1980.zbMATHMathSciNetCrossRefGoogle Scholar
  18. 18.
    V. Lo and et al. Mapping divide-and-conquer algorithms to parallel architectures. Technical Report CIS-TR-89-19, Dept. of Computer and Info. Science, University of Oregon, January 1990.Google Scholar
  19. 19.
    Jayadev Misra. Powerlist: A structure for parallel recursion. ACM Transactions on Programming Languages and Systems, 16(6), November 1994.Google Scholar
  20. 20.
    Z. G. Mou. Divacon: A parallel language for scientific computing based on divide-and-conquer. In Proceedings of the Third Symposium on the Frontiers of Massively Parallel Computation, pages 451–461. IEEE Computer Society Press, October 1990.Google Scholar
  21. 21.
    Z. G. Mou. A Formal Model for Divide-and-Conquer and Its Parallel Realization. PhD thesis, Yale University, May 1990.Google Scholar
  22. 22.
    Z. G. Mou. The elements, structure, and taxonomy of divide-and-conquer. In Theory and Proactice of Higher-Order Parallel Programming, Dagstul Seminar Report 169, pages 13–14, February 1997.Google Scholar
  23. 23.
    Z. G. Mou and Paul Hudak. An algebraic model for divide-and-conquer algorithms and its parallelism. The Journal of Supercomputing, 2(3):257–278, November 1988.CrossRefGoogle Scholar
  24. 24.
    F. P. Preparata and J. Vuillemin. The cube-connected cycles: A versatile network for parallel computation. Communications of the ACM, 8(5):300–309, May 1981.MathSciNetCrossRefGoogle Scholar
  25. 25.
    Roger Sessions. Com and Dcom: Microsofts’s Vision of Distributed Objects. John Willey and Sons, 1987.Google Scholar
  26. 26.
    Jon Siegel. Omg overview: Corba and the oma in enterprise computing. Communications of the ACM, 41(10):37–43, October 1998.CrossRefGoogle Scholar
  27. 27.
    D. R. Smith. Applications of a strategy for designing divide-and-conquer algorithms. Science of Computer Programming, 8:213–229, 1987.zbMATHCrossRefGoogle Scholar
  28. 28.
    Harold S. Stone. Parallel tridiagonal equation solvers. ACM Transactions on Mathematical Software, 1(4), 12 1975.zbMATHCrossRefGoogle Scholar
  29. 29.
    H. H. Wang. A parallel method for tridiagonal equations. ACM Transactions on Mathematical Software, 7(2):170–183, June 1981.zbMATHCrossRefGoogle Scholar
  30. 30.
    David S. Wise. Matrix algebra and applicative programming. In Functional Programming Languages and Computer Architecture, Lecture Notes in Computer Science, pages 134–153. Springer, 1987.Google Scholar

Copyright information

© Springer-Verlag 1999

Authors and Affiliations

  • Z. George Mou
    • 1
  1. 1.Applied Physics LaboratoryJohns Hopkins UniversityUSA

Personalised recommendations