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.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
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
M. Atallah and U. Vishkin, "Finding Euler tours in parallel," J. CSS, 29, 1984, pp. 330–337.
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.
I. Bar-on and U. Vishkin, "Optimal parallel generation of a computation tree form," Proc. on para. comp. IEEE(1984), 490–495.
E. Dekel and S. Peng, "Optimal Parallel Algorithms for Binary Trees," TR — 213, Univ. of Texas at Dallas, Aug. 1985.
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.
E. Dekel and S. Sahni, "Binary trees and parallel scheduling algorithms," IEEE Trans. on Comp., Vol. C-32, No. 3, March 1983.
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.
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.
H. Hellerman, "Parallel processing of algebraic expressions," IEEE Tran. on Electronic Computers, Vol. EC-15, No. 1, Feb. 1965, pp 82–91.
E. Horowitz and S. Sahni, "Fundamentals of computer algorithms," Computer Science Press, Inc, 1984.
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.
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.
S. Ntafos, E. Dekel and S. Peng, "Compression trees and their application," TR-218, UTD Feb. 1986.
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.
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.
R. Sethi and J. D. Ullman, "The generation of optimal code for arithmetic expressions," J. of ACM, 17, 4 (Oct. 1970), pp 715–728.
R.E. Tarjan and U. Vishkin, "Finding biconnected components and computing tree functions in logarithmic parallel time" FOCS 84
U. Vishkin, "Synchronous Parallel Computation — A Survey," TR-71, Dept. of Computer Science Courant Inst. NYU, 1983.
U. Vishkin, "Implementation of simultaneous memory address access in model that forbid it," TR-210, Israel Ins. of Tech., July, 1981.
J. C. Wyllie, "The complexity of parallel computation," Technical Report TR 79-387, Dept. of Computer Science, Cornell Univ., Ithaca, 1979.
Author information
Authors and Affiliations
Editor information
Rights 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