Skip to main content

Parallel tree techniques and code optimization

  • Conference paper
  • First Online:
VLSI Algorithms and Architectures (AWOC 1986)

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

Included in the following conference series:

  • 165 Accesses

Abstract

In this paper we present an O(logn) parallel algorithm for the problem of generating optimum code for arithmetic expressions. The model of computation we use is the EREW P-RAM. The algorithm illustrates two general methods for the parallel manipulation of data stored in binary trees. The first (Compression Tree Method) extends the Parallel tree contraction method of Miller and Reif to the EREW P-RAM. The second is a modification of the Euler Path method.

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. B. Awerbuch, A Israeli and Y. Shiloach, "Finding Euler circuits in logarithmic parallel time," Proc. ACM Symp. on Theory of Computing 1984 pp. 249–257

    Google Scholar 

  2. M. Atallah and U. Vishkin, "Finding Euler tours in parallel," J. CSS, 29, 1984, pp. 330–337.

    Google Scholar 

  3. J. L. Baer and D. P. Bovet, "Compilation of arithmetic expressions for parallel computations," Information Processing 68 — North-Holland Publishing Company — Amsterdam, 1969, pp 340–346.

    Google Scholar 

  4. I. Bar-on and U. Vishkin, "Optimal parallel generation of a computation tree form," Proc. on para. comp. IEEE(1984), 490–495.

    Google Scholar 

  5. E. Dekel and S. Peng, "Optimal Parallel Algorithms for Binary Trees," TR — 213, Univ. of Texas at Dallas, Aug. 1985.

    Google Scholar 

  6. E. Dekel and S. Sahni, "Parallel generation of postfix and tree forms," ACM Trans. on Prog. Lang. and Sys., 5,3 (1983), pp 300–317.

    Google Scholar 

  7. E. Dekel and S. Sahni, "Binary trees and parallel scheduling algorithms," IEEE Trans. on Comp., Vol. C-32, No. 3, March 1983.

    Google Scholar 

  8. D. Dolev, E. Upfal and M. Warmuth, "Scheduling trees in parallel," " Proceeding of VLSI: Algorithms and Architectures. International Workship on parallel Computing and VLSI, Italy, 1984.

    Google Scholar 

  9. Charles N. Fischer, "On parsing and compiling arithmetic expressions on vector computers," ACM Trans. on Prog. Lang. and Syt. Vol. 2, No. 2, April 1980, pp 203–224.

    Google Scholar 

  10. H. Hellerman, "Parallel processing of algebraic expressions," IEEE Tran. on Electronic Computers, Vol. EC-15, No. 1, Feb. 1965, pp 82–91.

    Google Scholar 

  11. E. Horowitz and S. Sahni, "Fundamentals of computer algorithms," Computer Science Press, Inc, 1984.

    Google Scholar 

  12. David E. Muller and Franco P. Preparata, "Restructuring of arithmetic expressions for parallel evaluation," Journal of ACM, Vol. 23, No. 3, July 1976, pp 514–543.

    Google Scholar 

  13. Gary L. Miller and John H. Reif, "Parallel tree contraction and its applications," Proc. 26th Annual Symp. on Foundations of Comp. Sci. 1986, pp 478–489.

    Google Scholar 

  14. S. Ntafos, E. Dekel and S. Peng, "Compression trees and their application," TR-218, UTD Feb. 1986.

    Google Scholar 

  15. D. Nassimi and S. Sahni, "Finding connected components and connected one on a mesh-connected parallel computer," SIAM J. COMPUT. Vol. 9, No. November 1980.

    Google Scholar 

  16. Harold S. Stone, "One-pass compilation of arithmetic expressions for a parallel processor," Communications of the ACM, Vol. 10, No. 1, April 1967, pp 220–223.

    Google Scholar 

  17. R. Sethi and J. D. Ullman, "The generation of optimal code for arithmetic expressions," J. of ACM, 17, 4 (Oct. 1970), pp 715–728.

    Google Scholar 

  18. R.E. Tarjan and U. Vishkin, "Finding biconnected components and computing tree functions in logarithmic parallel time" FOCS 84

    Google Scholar 

  19. U. Vishkin, "Synchronous Parallel Computation — A Survey," TR-71, Dept. of Computer Science Courant Inst. NYU, 1983.

    Google Scholar 

  20. U. Vishkin, "Implementation of simultaneous memory address access in model that forbid it," TR-210, Israel Ins. of Tech., July, 1981.

    Google Scholar 

  21. J. C. Wyllie, "The complexity of parallel computation," Technical Report TR 79-387, Dept. of Computer Science, Cornell Univ., Ithaca, 1979.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Filia Makedon Kurt Mehlhorn T. Papatheodorou P. Spirakis

Rights and permissions

Reprints and permissions

Copyright information

© 1986 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Dekel, E., Ntafos, S., Peng, ST. (1986). Parallel tree techniques and code optimization. In: Makedon, F., Mehlhorn, K., Papatheodorou, T., Spirakis, P. (eds) VLSI Algorithms and Architectures. AWOC 1986. Lecture Notes in Computer Science, vol 227. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-16766-8_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-16766-8_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics