Efficient Parallel Algorithms for Tree Accumulations

Abstract Accumulations are higher-order operations on structured objects; they leave the shape of an object unchanged, but replace elements of that object with accumulated information about other elements. Upwards and downwards accumulations on trees are two such operations; they form the basis of many tree algorithms. We present two E REW P RAM algorithms for computing accumulations on trees taking O(log n) time on O(n/log n) processors, which is optimal.

[1]  Edward M. Reingold,et al.  Tidier Drawings of Trees , 1981, IEEE Transactions on Software Engineering.

[2]  Guy E. Blelloch,et al.  Scans as Primitive Parallel Operations , 1989, ICPP.

[3]  Jeremy Gibbons,et al.  Computing Downwards Accumulations on Trees Quickly , 1996, Theor. Comput. Sci..

[4]  Jeremy Gibbons Upwards and Downwards Accumulations on Trees , 1992, MPC.

[5]  Richard P. Brent,et al.  The Parallel Evaluation of General Arithmetic Expressions , 1974, JACM.

[6]  Jeremy Gibbons Algebras for tree algorithms , 1991 .

[7]  Gary L. Miller,et al.  Parallel tree contraction and its application , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[8]  Selim G. Akl,et al.  Design and analysis of parallel algorithms , 1985 .

[9]  David G. Kirkpatrick,et al.  A Simple Parallel Tree Contraction Algorithm , 1989, J. Algorithms.

[10]  Richard Cole,et al.  Approximate and exact parallel scheduling with applications to list, tree and graph problems , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).