Scalable parallel computational geometry for coarse grained multicomputers

We study scalable parallel computational geometry algorithms for the coarse grained multicomputer model: p processors solving a problem on n data items, were each processor has O(n/p)≫O(1) local memory and all processors are connected via some arbitrary interconnection network (e.g. mesh, hypercube, fat tree). We present O(Tsequential/p+Ts(n, p)) time scalable parallel algorithms for several computational geometry problems. Ts(n, p) refers to the time of a global sort operation. Our results are independent of the multicomputer’s interconnection network. Their time complexities become optimal when Tsequential/p dominates Ts(n, p) or when Ts(n, p) is optimal. This is the case for several standard architectures, including meshes and hypercubes, and a wide range of ratios n/p that include many of the currently available machine configurations. Our methods also have some important practical advantages: For interprocessor communication, they use only a small fixed number of one global routing operation, global sort, and all other programming is in the sequential domain. Furthermore, our algorithms use only a small number of very large messages, which greatly reduces the overhead for the communication protocol between processors. (Note however, that our time complexities account for the lengths of messages.) Experiments show that our methods are easy to implement and give good timing results.

[1]  Andrew Rau-Chaplin,et al.  Implementing Data Structures on a Hypercube Multiprocessor, and Applications in Parallel Computational Geometry , 1989, WG.

[2]  F. Leighton,et al.  Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes , 1991 .

[3]  Jyh-Jong Tsay,et al.  External-memory computational geometry , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[4]  C. Greg Plaxton,et al.  Deterministic sorting in nearly logarithmic time on the hypercube and related computers , 1990, STOC '90.

[5]  Leslie G. Valiant,et al.  A logarithmic time sort for linear size networks , 1982, STOC.

[6]  Richard P. Brent,et al.  AN IMPLEMENTATION OF A GENERAL-PURPOSE PARALLEL SORTING ALGORITHM , 1993 .

[7]  Mikhail J. Atallah,et al.  Multisearch techniques for implementing data structures on a mesh-connected computer (preliminary version) , 1991, SPAA '91.

[8]  John N. Tsitsiklis,et al.  Parallel and distributed computation , 1989 .

[9]  Charles E. Leiserson,et al.  Randomized Routing on Fat-Trees , 1989, Adv. Comput. Res..

[10]  John Hershberger,et al.  Finding the Upper Envelope of n Line Segments in O(n log n) Time , 1989, Inf. Process. Lett..

[11]  Jan van Leeuwen,et al.  The Measure Problem for Rectangular Ranges in d-Space , 1981, J. Algorithms.

[12]  Andrew Rau-Chaplin,et al.  Implementing Data Structures on a Hypercube Multiprocessor, and Applications in Parallel Computational Geometry , 1989, J. Parallel Distributed Comput..

[13]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

[14]  Kenneth E. Batcher,et al.  Sorting networks and their applications , 1968, AFIPS Spring Joint Computing Conference.

[15]  Mikhail J. Atallah,et al.  On the parallel decomposability of geometric problems , 1989, SCG '89.