Reducing the Overhead of Intra-Node Communication in Clusters of SMPs
This article presents the C++ library vShark which reduces the intra-node communication overhead of parallel programs on clusters of SMPs. The library is built on top of message-passing libraries like MPI to provide thread-safe communication but most importantly, to improve the communication between threads within one SMP node. vShark uses a modular but transparent design which makes it independent of specific communication libraries. Thus, different subsystems such as MPI, CORBA, or PVM could also be used for low-level communication. We present an implementation of vShark based on MPI and the POSIX thread library, and show that the efficient intra-node communication of vShark improves the performance of parallel algorithms.
Keywordsclusters of SMPs parallel programming models message passing between threads
Unable to display preview. Download preview PDF.
- 1.Demaine, E.D.: A Threads-Only MPI Implementation for the Development of Parallel Programs. In: Proc. of the 11th International Symposium on High Performance Computing Systems (HPCS 1997), Winnipeg, Manitoba, Canada, July 1997, pp. 153–163 (1997)Google Scholar
- 7.Hunold, S., Rauber, T., Rünger, G.: Multilevel Hierarchical Matrix Multiplication on Clusters. In: Proc. of the 18th Annual ACM International Conference on Supercomputing, ICS 2004, June 2004, pp. 136–145 (2004)Google Scholar
- 8.Pakin, S., Pant, A.: VMI 2.0: A Dynamically Reconfigurable Messaging Layer for Availability, Usability, and Management. In: The 8th International Symposium on High Performance Computer Architecture (HPCA-8), Workshop on Novel Uses of System Area Networks (SAN-1), Cambridge, Massachusetts, February 2 (2002)Google Scholar
- 9.Parkbench Committee Assembled by R. Hockney (Chairman) and M. Berry (Secretary). Parkbench report: Public international benchmarks for parallel computers. Scientific Programming 3(2), 101–146, (summer 1994)Google Scholar
- 10.Porras, J., Huttunen, P., Ikonen, J.: The Effect of the 2nd Generation Clusters: Changes in the Parallel Programming Paradigms. In: ICCS 2004. LNCS, vol. 3037, pp. 10–17. Springer, Heidelberg (2004)Google Scholar
- 12.Savant, J., Seidel, S.: MuPC: A Run Time System for Unified Parallel C. Technical report, Department of Computer Science, Michigan Technological University (September 2002)Google Scholar
- 13.Sun Microsystems Computer Company. Sun MPI 4.1 Programming and Reference Guide (March 2000)Google Scholar