|
ABSTRACT
Demand for programming environments to exploit clusters of symmetric multiprocessors (SMPs) is increasing. In this paper, we present a new programming environment, called ParADE, to enable easy, portable, and high-performance programming on SMP clusters. It is an OpenMP programming environment on top of a multi-threaded software distributed shared memory (SDSM) system with a variant of home-based lazy release consistency protocol. To boost performance, the runtime system provides explicit message-passing primitives to make it a hybrid-programming environment. Collective communication primitives are used for the synchronization and work-sharing directives associated with small data structures, lessening the synchronization overhead and avoiding the implicit barriers of work-sharing directives. The OpenMP translator bridges the gap between the OpenMP abstraction and the hybrid programming interfaces of the runtime system. The experiments with several NAS benchmarks and applications on a Linux-based cluster show promising results that ParADE overcomes the performance problem of the conventional SDSM-based OpenMP environment.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
[2] Message-passing Interface Forum, "MPI: A Message-Passing Interface Standard," International Journal of Supercomputer Applications and High Performance Computing, vol. 8, no. 3/4, Fall/Winter 1994, pp. 159-416.
|
| |
3
|
[3] OpenMP C and C++ Application Programming Interface, Version 1.0, http://www.openmp.org, Oct. 1998.
|
 |
4
|
|
| |
5
|
[5] Mitsuhisa Sato, Shigehisa Satoh, Kazuhiro Kusano, and Yoshio Tanaka, Design of OpenMP Compiler for an SMP Cluster, In Proceedings of European Workshop on OpenMP (EWOMP'99), Sep. 1999.
|
| |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
|
| |
10
|
[10] Lorna Smith and Paul Kent, "Development and Performance of a Mixed OpenMP/MPI Quantum Monte Carlo Code," Concurrency: Practice and Experience, vol. 12, no. 12, Dec. 2000, pp. 1121-1129.
|
| |
11
|
Dave Dunning , Greg Regnier , Gary McAlpine , Don Cameron , Bill Shubert , Frank Berry , Anne Marie Merritt , Ed Gronke , Chris Dodd, The Virtual Interface Architecture, IEEE Micro, v.18 n.2, p.66-76, March 1998
[doi> 10.1109/40.671404]
|
| |
12
|
[12] http://www.mpi-softtech.com
|
| |
13
|
|
| |
14
|
[14] Frank Mueller, "Distributed Shared-Memory Threads: DSM-Threads," Workshop on RunTime systems for Parallel Programming, Apr. 1997, pp. 31-40.
|
| |
15
|
[15] Markus Pizka and Christian Rehn, "Murks-A POSIX Threads Based DSM System," In Proceedings of The International Conference on Parallel and Distributed Computing Systems, Aug. 2001. pp. 642-648.
|
| |
16
|
[16] Yang-Suk Kee, Jin-Soo Kim, and Soonhoi Ha, "Atomic Page Update Methods for OpenMP-Aware Software DSM," submitted for publication.
|
| |
17
|
|
 |
18
|
|
| |
19
|
[19] J. M. Bull, "Measuring Synchronization and Scheduling Overheads in OpenMP," In Proceedings of European Workshop on OpenMP (EWOMP'99), Sep. 1999.
|
| |
20
|
|
| |
21
|
[21] David Bailey, TimHarris, William Saphir, Rob van der Wijngaart, Alex Woo, and Maurice Yarrow, "The NAS Parallel Benchmarks". Technical Report, NAS-95-020, 1995.
|
| |
22
|
[22] Joseph Robicheaux, http://www.openmp.org/samples/jacobi.f, 1998.
|
| |
23
|
[23] Bill Magro, Kuck, and Associates, http://www.openmp.org/samples/md.f, 1998.
|
|