Abstract
In this paper, we present techniques for translating and optimizing realistic OpenMP applications on distributed systems. The goal of our project is to quantify the degree to which OpenMP can be extended to distributed systems and to develop supporting compiler techniques. Our present compiler techniques translate OpenMP programs into a form suitable for execution on a Software DSM system. We have implemented a compiler that performs this basic translation, and we have proposed optimization techniques that improve the baseline performance of OpenMP applications on distributed computer systems. Our results show that, while kernel benchmarks can show high efficiency for OpenMP programs on distributed systems, full applications need careful consideration of shared data access patterns. A naive translation (similar to the basic translation done by OpenMP compilers for SMPs) leads to acceptable performance in very few applications. We propose optimizations such as computation repartitioning, page-aware optimizations, and access privatization that result in average 70% performance improvement on the SPEC OMPM2001 benchmark applications.
This material is based upon work supported in part by the National Science Foundation under Grant No. 9703180, 9975275, 9986020, and 9974976. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
OpenMP Forum, “OpenMP: A Proposed Industry Standard API for Shared Memory Programming,” Tech. Rep., Oct. 1997.
S. Dwarkadas P. Keleher H. Lu R. Rajamony W. Yu C. Amza, A.L. Cox and W. Zwaenepoel, “Treadmarks: Shared memory computing on networks of workstations,” IEEE Computer, vol. 29, no. 2, pp. 18–28, February 1996.
H. Lu, Y. C. Hu, and W. Zwaenepoel, “OpenMP on network of workstations,” in Proc. of Supercomputing’98, 1998.
Mitsuhisa Sato, Motonari Hirano, Yoshio Tanaka, and Satoshi Sekiguchi, “OmniRPC: A Grid RPC Facility for Cluster and Global Computing in OpenMP,” in Proc. of the Workshop on OpenMP Applications and Tools (WOMPAT2001), July 2001.
R. Crowell Z. Cvetanovic J. Harris C. Nelson J. Bircsak, P. Craig and C. Offner, “Extending OpenMP for NUMA Machines,” in Proc. of the IEEE/ACM Supercomputing’2000: High Performance Networking and Computing Conference (SC 2000), November 2000.
V. Schuster and D. Miles, “Distributed OpenMP, Extensions to OpenMP for SMP Clusters,” in Proc. of the Workshop on OpenMP Applications and Tools (WOMPAT’2000), July 2000.
T.S. Abdelrahman and T.N. Wong, “Compiler support for data distribution on NUMA multiprocessors,” Journal of Supercomputing, vol. 12, no. 4, pp. 349–371, oct. 1998.
High Performance Fortran Forum, “High Performance Fortran language specification, version 1.0,” Tech. Rep. CRPC-TR92225, Houston, Tex., 1993.
M. Booth and K. Misegades, “Microtasking: A New Way to Harness Multiprocessors,” Cray Channels, pp. 24–27, 1986.
Ayon Basumallik, Seung-Jai Min, and Rudolf Eigenmann, “Towards OpenMP execution on software distributed shared memory systems,” in Int’l Workshop on OpenMP: Experiences and Implementations (WOMPEI’02). May 2002, Lecture Notes in Computer Science, 2327, Springer Verlag.
Rudolf Eigenmann Greg Gaertner Wesley B. Jones Vishal Aslot, Max Domeika and Bodo Parady, “SPEComp: A New Benchmark Suite for Measuring Parallel Computer Performance,” in Proc. of WOMPAT 2001, Workshop on OpenMP Applications and Tools, Lecture Notes in Computer Science, 2104, July 2001, pp. 1–10.
William Blume, Ramon Doallo, Rudolf Eigenmann, John Grout, Jay Hoeflinger, Thomas Lawrence, Jaejin Lee, David Padua, Yunheung Paek, Bill Pottenger, Lawrence Rauchwerger, and Peng Tu, “Parallel programming with Polaris,” IEEE Computer, pp. 78–82, December 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Min, S.J., Basumallik, A., Eigenmann, R. (2003). Supporting Realistic OpenMP Applications on a Commodity Cluster of Workstations. In: Voss, M.J. (eds) OpenMP Shared Memory Parallel Programming. WOMPAT 2003. Lecture Notes in Computer Science, vol 2716. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45009-2_14
Download citation
DOI: https://doi.org/10.1007/3-540-45009-2_14
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40435-4
Online ISBN: 978-3-540-45009-2
eBook Packages: Springer Book Archive