Practical parallel algorithms for personalized communication and integer sorting
- 1 January 1996
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Journal of Experimental Algorithmics
Abstract
A fundamental challenge for parallel computing is to obtain high-level, architecture independent, algorithms which efficiently execute on general-purpose parallel machines. With the emergence of message passing standards such as MPI, it has become easier to design efficient and portable parallel algorithms by making use of these communication primitives. While existing primitives allow an assortment of collective communication routines, they do not handle an important communication event when most or all processors have non-uniformly sized personalized messages to exchange with each other. We focus in this paper on the h-relation personalized communication whose efficient implementation will allow high performance implementations of a large class of algorithms. While most previous h-relation algorithms use randomization, this paper presents a new deterministic approach for h-relation personalized communication with asymptotically optimal complexity for h>p 2 . As an application, we present an efficient algorithm for stable integer sorting. The algorithms presented in this paper have been coded in Split-C and run on a variety of platforms, including the Thinking Machines CM-5, IBM SP-1 and SP-2, Cray Research T3D, Meiko Scientific CS-2, and the Intel Paragon. Our experimental results are consistent with the theoretical analysis and illustrate the scalability and efficiency of our algorithms across different platforms. In fact, they seem to outperform all similar algorithms known to the authors on these platforms.Keywords
This publication has 17 references indexed in Scilit:
- Complete exchange on the CM-5 and Touchstone DeltaThe Journal of Supercomputing, 1995
- Parallel algorithms for image histogramming and connected components with an experimental study (extended abstract)Published by Association for Computing Machinery (ACM) ,1995
- The SPLASH-2 programsPublished by Association for Computing Machinery (ACM) ,1995
- CCL: a portable and tunable collective communication library for scalable parallel computersIEEE Transactions on Parallel and Distributed Systems, 1995
- Direct Bulk-Synchronous Parallel AlgorithmsJournal of Parallel and Distributed Computing, 1994
- Integer sorting on a mesh-connected array of processorsInformation Processing Letters, 1993
- Balanced parallel sort on hypercube multiprocessorsIEEE Transactions on Parallel and Distributed Systems, 1993
- Optimal communication algorithms for hypercubesJournal of Parallel and Distributed Computing, 1991
- A bridging model for parallel computationCommunications of the ACM, 1990
- Optimum broadcasting and personalized communication in hypercubesIEEE Transactions on Computers, 1989