Abstract
We introduce a generic problem component that captures the most common, difficult “kernel” of many problems. This kernel involves general prefix computations (GPC). GPC's lower bound complexity of Ω(n logn) time is established, and we give optimal solutions on the sequential model inO(n logn) time, on the CREW PRAM model inO(logn) time, on the BSR (broadcasting with selective reduction) model in constant time, and on mesh-connected computers inO(√n) time, all withn processors, plus anO(log2 n) time solution on the hypercube model. We show that GPC techniques can be applied to a wide variety of geometric (point set and tree) problems, including triangulation of point sets, two-set dominance counting, ECDF searching, finding two-and three-dimensional maximal points, the reconstruction of trees from their traversals, counting inversions in a permutation, and matching parentheses.
Similar content being viewed by others
References
M. J. Atallah, R. Cole, and M. T. Goodrich, Cascading divide-and-conquer: a technique for designing parallel algorithms,IEEE Symp. Found Comp. Sci., pp. 151–160 (1987).
M. J. Atallah and M. T. Goodrich, Efficient plane sweeping in parallel, Comp. Geom., pp. 216–225 (1986).
J. H. Reif and S. Sandeep, Optimal randomized parallel algorithms for computational geometry,IEEE Int. Conf. Parallel Processing, pp. 270–277 (1987).
R. Cole, Parallel merge sort,IEEE Symp. Found. Comp. Sci., pp. 511–516 (1986).
R. Cole and U. Vishkin, Faster optimal parallel prefix sums and list ranking,Ultracomputer Note 117, Comp. Sci. TR 277 (February 1987).
M. Fisher and L. Ladner, Parallel prefix computation,J. ACM 27:831–838 (1980).
H. Meijer and S. G. Akl, Optimal computation of prefix sums on a binary tree of processors,Int. J. Parallel Programming,16(2):127–136 (1987).
H. N. Gabow, J. L. Bentley, and R. E. Tarjhan, Scaling and related techniques for geometric problems,ACM Symp. Theory of Computing, pp. 135–143 (1984).
D. E. Wilard, New data structures for orthogonal range queries,SIAM J. Computing,14:232–253 (1985).
B. Chazelle, Slimming down search structures: a functional approacht to algorithm design,IEEE Symp. Found. Comp. Sci., pp. 165–174 (1985).
I. Bar-On and U. Vishkin, Optimal parallel generation of a computation tree forms,ACM Trans. Program. Lang. Syst.,7(2):384–357 (1985).
D. Sarkar and N. Deo, Parallel algorithms for parenthesis matching and generation of random balanced sequences of parenthesis, CS-TR-87-03, Univ. of Central Florida, Orlando (1987).
I. Stojmenović, Computational geometry on a hypercube,IEEE Int. Conf. Parallel Processing, pp. 100–103 (1988).
R. Cyper (IBM San Hose) and C. G. Paxton (MIT Lab for CS), Deterministic sorting in nearly logarithmic time on the hypercube and related computers (1990).
D. E. Knuth,The art of computer programming, I, Fundamental algorithms, Second edition, Addison-Wesley, Reading, Massachusetts (1973).
H. A. Burgdorff, S. Jajodia, F. N. Springsteel, and Y. Zalcstein, Alternative methods for the reconstruction of trees from their traversals,BIT,27(2):133–140 (1987).
G. H. Chen, M. S. Yu, and L. T. Liu, Two algorithms for constructing a binary tree from its traversals,Inform. Process. Lett.,28(6) (1988).
E. Makinen, Constructing a binary tree from its transversals,BIT,29:572–575 (1989).
H. Urrutia, personal communication (1988).
S. G. Akl, On the power of concurrent memory access, Computing and Information, (eds.), R. Janicki and W. W. Koczkodaj, North-Holland, Amsterdam, pp. 49–55 (1989).
S. G. Akl and G. R. Guenther, Broadcasting with selective reduction,Information Processing 89, Proc. of the IFIP 11th World Computer Congress, San Francisco, (ed.), G. X. Ritter, North-Holland, pp. 515–520 (1989).
D. Nassimi and S. Sahni, Finding connected components and connected ones on a meshconnected parallel computer,SIAM J. Comput.,9(4):744–757 (1980).
D. Nassimi and S. Sahni, Data broadcasting in SIMD computers,IEEE Trans. Comput.,C30(2):101–106 (1981).
C. D. Thompson and H. T. Kung, Sorting on a mesh-connected parallel computer,Comm. ACM,4(20):263–271 (1977).
J. D. Ullman,Computational aspects of VLSI, Comp. Sci. Press, Potomac, Maryland (1984).
F. Dehne,O(√n) algorithms for the maximal elements and ECDF searching problem on a mesh-connected parallel computer,Inform. Process. Lett.,22:303–306 (1986).
F. Dehne and I. Stojmenovic, AnO(√n) algorithm for the ECDF searching problem for arbitrary dimensions on a mesh of processors,Inform. Process. Lett.,28(2):67–70 (1988).
E. Merks, An optimal parallel algorithm for triangulating a set of points in the plane.,Int. J. Parallel Programming,15(5):399–411 (1986).
T. Hikita, Listing and counting subtrees of equal size of a binnary tree,Inform. Process. Lett.,17:225–229 (1983).
M. Solomon and R. A. Finkel, A note on enumearting binary trees,J. ACM,27:3–5 (1980).
M. J. Atallah and S. E. Hambrusch, Solving tree problems on a mesh-connected processor array,Information and Control,69:1–3; 168–187 (1986).
Author information
Authors and Affiliations
Additional information
work partially supported by NSF IRI/8709726
work partially supported by NSERC.
Rights and permissions
About this article
Cite this article
Springsteel, F., Stojmenović, I. Parallel general prefix computations with geometric, algebraic, and other applications. Int J Parallel Prog 18, 485–503 (1989). https://doi.org/10.1007/BF01381719
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF01381719