skip to main content
10.1145/1048935.1050157acmconferencesArticle/Chapter ViewAbstractPublication PagesscConference Proceedingsconference-collections
Article

ParADE: An OpenMP Programming Environment for SMP Cluster Systems

Published:15 November 2003Publication History

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

  1. {1} David E. Culler, Jaswinder Pal Singh, and Anoop Gupta, Parallel Computer Architecture, Morgan Kaufmann, San Francisco, CA, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  3. {3} OpenMP C and C++ Application Programming Interface, Version 1.0, http://www.openmp.org, Oct. 1998.Google ScholarGoogle Scholar
  4. {4} Kai Li and Paul Hudak, "Memory coherence in shared virtual memory systems," ACM Transactions on Computer Systems, vol. 7, no. 4, Nov. 1989, pp. 321-359. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  6. {6} Ayon Basumallik, Seung-Jai Min, and Rudolf Eigenmann, "Towards OpenMP execution on software distributed shared memory systems," Int'l Workshop on OpenMP: Experiences and Implementations (WOMPEI'02), Lecture Notes in Computer Science, #2327, Springer Verlag, May, 2002, pp. 457-468. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. {7} Y. Charlie Hu, Honghui Lu, Alan L. Cox, and Willy Zwaenepoel, "OpenMP for Networks of SMPs," Journal of Parallel and Distributed Computing, vol. 60, no.12, Dec. 2000, pp. 1512-1530. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. {8} Hongzhang Shan, Jaswinder P. Singh, Leonid Oliker, and Rupak Biswas, "Message Passing and Shared Address Space Parallelism on an SMP Cluster," Parallel Computing, vol. 29, no. 2, Feb. 2003, pp. 167-186. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. {9} Franck Cappello and Daniel Etiemble, "MPI versus MPI + OpenMP on IBM SP for the NAS benchmarks," In proceedings of ACM/IEEE Conference on Supercomputing, Nov. 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarCross RefCross Ref
  11. {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, vol. 18, no. 2, Mar./Apr. 1998, pp. 66-76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. {12} http://www.mpi-softtech.comGoogle ScholarGoogle Scholar
  13. {13} L. Iftode. "Home-based Shared Virtual Memory". Ph.D. thesis, Princeton Univ., Aug. 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. {14} Frank Mueller, "Distributed Shared-Memory Threads: DSM-Threads," Workshop on RunTime systems for Parallel Programming, Apr. 1997, pp. 31-40.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  16. {16} Yang-Suk Kee, Jin-Soo Kim, and Soonhoi Ha, "Atomic Page Update Methods for OpenMP-Aware Software DSM," submitted for publication.Google ScholarGoogle Scholar
  17. {17} Brian N. Bershad, Matthew J. Zekauskas, and Wayne A. Sawdon, The Midway Distributed Shared Memory System, CMU Technical Report CMU-CS-93-119, School of Computer Science, Carnegie Mellon Univ., 1993. Google ScholarGoogle Scholar
  18. {18} Liviu Iftode, Jaswinder Pal Singh, and Kai Li, "Scope Consistency: A Bridge Between Release Consistency and Entry Consistency," ACM Symposium on Parallel Algorithms and Architectures (SPAA'96), Jun. 1996, pp. 277-287. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. {19} J. M. Bull, "Measuring Synchronization and Scheduling Overheads in OpenMP," In Proceedings of European Workshop on OpenMP (EWOMP'99), Sep. 1999.Google ScholarGoogle Scholar
  20. {20} Hee-Chul Yun, Sang-Kwon Lee, Joonwon Lee, Seungryoul Maeng, "An Efficient Lock Protocol for Home-based Lazy Release Consistency," International Workshop on Software Distributed Shared Memory System, May 2001, pp. 527-532. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  22. {22} Joseph Robicheaux, http://www.openmp.org/samples/jacobi.f, 1998.Google ScholarGoogle Scholar
  23. {23} Bill Magro, Kuck, and Associates, http://www.openmp.org/samples/md.f, 1998.Google ScholarGoogle Scholar

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    SC '03: Proceedings of the 2003 ACM/IEEE conference on Supercomputing
    November 2003
    859 pages
    ISBN:1581136951
    DOI:10.1145/1048935

    Copyright © 2003 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 15 November 2003

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • Article

    Acceptance Rates

    SC '03 Paper Acceptance Rate60of207submissions,29%Overall Acceptance Rate1,516of6,373submissions,24%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader