Abstract
OpenMP is a relatively new industry standard for programming parallel computers with a shared memory programming model. Given that clusters of workstations are a cost-effective solution for building parallel platforms, it would of course be highly interesting if the OpenMPmo del could be extended to these systems as well as to the standard shared memory architectures for which it was originally intended.
We present in this paper a fully compliant implementation of the OpenMP specification 1.0 for C targeting networks of workstations. We have used an experimental software distributed shared memory system called Coherent Virtual Machine to implement a run-time library which is the target of a source-to-source OpenMPt ranslator also developed in this project.
The system has been evaluated using an OpenMPm icro-benchmark suite as to evaluate the effect of some memory coherence protocol improvements. We have also used OpenMPv ersions of three Splash-2 applications concluding in reasonable speedups on an IBM SP2 machine. This also is the first study to investigate the subtle mechanisms of consistency in OpenMPon software distributed shared memory systems.
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
S. V. Adve, K. Gharachorloo, Shared memory consistency models: a tutorial, IEEE Computer, Volume: 29 Issue: 12, Dec. 1996 pp. 66–76. 199
C. Amza, A. L. Cox, S. Dwarkadas, P. Keleher, H. Lu, R. Rajamony, W. Yu and W. Zwaenepoel. TreadMarks: Shared Memory Computing on Networks of Workstations, IEEE Computer, Vol. 29, no. 2, pp. 18–28, February 1996. 195, 198
J. M. Bull, Measuring Synchronization and Scheduling Overheads in OpenMP, in Proceedings of the First European Workshop on OpenMP, Sept. 1999, pp. 99–105. http://www.it.lth.se/ewomp99. 201
Y. C. Hu, H. Lu, A. L. Cox, and W. Zwaenepoel, OpenMPf or Networks of SMPs, in Proceedings of IPPS/SPDP’99, April 1999, pp. 302–310. 204
S. Karlsson, et al., A Free OpenMP Compiler and Run-Time Library Infrastructure for Research on Shared Memory Parallel Computing, Technical Report, Deptartment of Microelectronics and Information Technology, KTH, Royal Institute of Technology, 2002. 196, 197
S. Karlsson, and M. Brorsson, Producer-push-a protocol enhancement to pagebased software distributed shared memory systems Proceedings of 1999 International Conference on Parallel Processing, September 1999, pp. 291–300. 195
S. Karlsson, and M. Brorsson, A comparative characterization of communication patterns in applications using MPI and shared memory on an IBM SP2, in Network-Based Parallel Computing. Communication, Architecture, and Applications. Second International Workshop, CANPC’ 98, January 1998 pp. 189–201. 196
P. Keleher, The CVM Manual, Technical report, Computer Science Deptartment, University of Maryland, May 1995. 195, 196, 198
K. Li, IVY: A shared Virtual Memory System for Parallel Computing. In Proceedings of 1988 International Conference on Parallel Processing, 1988, pp. 94–101. 195
H. Lu. Y. C. Hu, and W. Zwaenepoel. OpenMPon Networks of Workstations, in Proceedings of Supercomputing’98, Nov. 1998. 204
Message Passing Interface Forum, MPI: A Message-Passing Interface Standard, version 1.1, June 12, 1995. 196
H. W. Meuer, E. Strohmaier, J. J. Dongarra, and H. D. Simon, TOP500 Supercomputer Sites, 18th ed., Technical report, Lawrence Berkely National Laboratory LBNL-49122, Nov. 2001. 195
OpenMPcon sortium, OpenMP: A Proposed Standard API for Shared Memory Programming, White paper, http://www.openmp.org. 195
OpenMPcon sortium, OpenMP C and C++ Application Program Interface, Version 1.0, October 1998. 195, 204
E. W. Parsons, M. Brorsson and K. C. Sevcik, Predicting the Performance of Distributed Virtual Shared Memory Applications, IBM Systems Journal, Volume 36, No. 4, 1997, pp. 527–549. 196
R. Samanta, A. Bilas, L. Iftode, and J. P. Singh, Home-based SVM protocols for SMPc lusters: Design and performance, in Proceedings of the 4th IEEE Symposium on High-Performance Computer Architecture (HPCA-4), Las Vegas, Nevada, January 1998, pp. 113–124. 195
D. M. Sato, Design of OpenMPC ompiler for an SMP Cluster, in Proceedings of First European Workshop on OpenMP, Sept. 1999. http://www.it.lth.se/ewomp99. 204
D. J. Scales, K. Gharachorloo, and C. A. Thekkath, Shasta: A Low Overhead, Software-Only Approach for Supporting Fine-Grained Shared Memory, in Proceedings of the Seventh International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’96), October 1996, pp. 174–185. 195
J. P. Singh, A. Gupta and M. Levoy, Parallel Visualization Algorithms: Performance and Architectural Implications, IEEE Computer Magazine, July 1994, pp. 45–55. 195
T. Sterling, D. Becker, D. Savarese, et al., BEOWULF: A Parallel Workstation for Scientific Computation, in Proceedings of the 1995 International Conference on Parallel Processing (ICPP), Vol. 1, August 1995, pp. 11–14. 195
S. C. Woo, M. Ohara, E. Torrie, J. P. Singh, and A. Gupta. The SPLASH-2 Programs: Characterization and Methodological Considerations, in Proceedings of the 22nd International Symposium on Computer Architecture, Santa Margherita Ligure, Italy, June 1995, pp. 24–36. 200
Y. Zhou, L. Iftode, and K. Li, Performance evaluation of two home-based lazy release consistency protocols for shared virtual memory systems, in Proceedings of the 2nd Symposium on Operating System Design and Implementation, October 1996, pp. 75–88. 198
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Karlsson, S., Lee, SW., Brorsson, M. (2002). A Fully Compliant OpenMP Implementation on Software Distributed Shared Memory. In: Sahni, S., Prasanna, V.K., Shukla, U. (eds) High Performance Computing — HiPC 2002. HiPC 2002. Lecture Notes in Computer Science, vol 2552. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36265-7_19
Download citation
DOI: https://doi.org/10.1007/3-540-36265-7_19
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00303-8
Online ISBN: 978-3-540-36265-4
eBook Packages: Springer Book Archive