Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/301104.301113acmconferencesArticle/Chapter ViewAbstractPublication PagesppoppConference Proceedingsconference-collections
Article
Free access

Transparent adaptive parallelism on NOWs using OpenMP

Published: 01 May 1999 Publication History

Abstract

We present a system that allows OpenMP programs to execute on a network of workstations with a variable number of nodes. The ability to adapt to a variable number of nodes allows a program to take advantage of additional nodes that become available after it starts execution, or to gracefully scale down when the number of available nodes is reduced. We demonstrate that the cost of adaptation is modest; the system allows a program to adapt at a moderate rate without much performance loss.Two ideas underlie the efficiency of our design. First, we recognize that OpenMP programs exhibit convenient adaptation points during their execution, points at which the cost of adaptation can be much reduced. Second, by allowing a process a certain grace period before it must leave a node, we insure that most adaptations can occur at these adaptation points, and thus at low cost. Migration of a process, a much more expensive method for providing adaptivity, is used only as a back-up solution, when the process cannot reach an adaptation point within the grace period.Our implementation consists of an OpenMP pre-processor that generates TreadMarks distributed shared memory (DSM) programs, and a version of TreadMarks modified to adapt to a variable number of nodes. Using a DSM as the underlying substrate facilitates the data (re-)distribution necessary after an adaptation.

References

[1]
S. E Amarasinghe, J. M. Anderson, M. S. Lam, and C. W. Tseng. An Overview of the SUIF Compiler for Scalable Parallel Machines. In Proceedings of the 7th SIAM Conference on Parallel Processing for Scientific Computing, pages 662-667, San Francisco, February 1995.]]
[2]
C. Amza, A.L. Cox, S. Dwarkadas, E Keleher, H. Lu, R. Rajamony, W. Yu, and W. Zwaenepoel. Treadmarks: Shared Memory Computing on Networks of Workstations. IEEE Computer, 29(2): 18-28, February 1996.]]
[3]
T.E. Anderson, D.E. Culler, and D.A. Patterson. A Case for NOW (Networks of Workstations). IEEE Micro, 15(2):54-64, February 1995.]]
[4]
R.D. Blumofe and P.A. Lisiecki. Adaptive and Reliable Parallel Computing on Network of Workstations. In Proceedings of the USENIX 1997 Annual Technical Symposium, pages 133-147, January 1997.]]
[5]
N. Carriero, E. Freeman, D. Gelernter, and D. Kaminsky. Adaptive Parallelism and Piranha. IEEE Computer, 28(1):40-49, January 1995.]]
[6]
K.M. Chandy and L. Lamport. Distributed Snapshots: Determining Global States of Distributed Systems. ACM Transactions on Computer Systems, 3(1):63-75, February 1985.]]
[7]
E Douglis and J. Ousterhout. Process Migration in the Sprite Operating System. In Proceedings of the 5th International Conference on Distributed Computing Systems, pages 18-25, September 1987.]]
[8]
G. Edjlali, G. Agrawal, A. Sussman, J. Humphries, and J. Saltz. Compiler and Runtime Support for Programming in Adaptive Parallel Environments. Scientific Programming, 6(2):215-227, Jan 1997.]]
[9]
P. J. Hatcher and M. J. Quinn. Data-parallel Programming on MIMD Computers. The MIT Press, Cambridge MA, 1991.]]
[10]
S. Ioannidis and S. Dwarkadas. Compiler and Run- Time Support for Adaptive Load Balancing in Software Distributed Memory Systems. In Languages, Compilers, and Run-Time Systems for Scalable Computers (Proc. 4th Intl. Workshop LCR'98), pages 107-122, Pittsburgh, PA, May 1998. Springer Verlag.]]
[11]
A. Itzkovitz, A. Schuster, and L. Shalev. Thread Migration and its Applications in Distributed Shared Memory Systems. Journal of Systems and Software, 42(1):71- 87, 1997.]]
[12]
D.B. Johnson and W. Zwaenepoel. Recovery in Distributed Systems Using Optimistic Message Logging and Checkpointing. Journal of Algorithms, 11 (3):462- 491, September 1990.]]
[13]
C. Koelbel, D. Loveman, G. Steele, and M. Zosel. The High Performance Fortran Handbook. The MIT Press, Cambridge, MA, 1994.]]
[14]
R. Konuru, S. Otto, and J. Walpole. A Migratable User- Level Process Package for PVM. Journal of Parallel and Distributed Computing, 40(1): 81-102, Jan 1997.]]
[15]
K. Li and P. Hudak. Memory Coherence in Shared Virtual Memory Systems. AcM Transactions on Computer Systems, 7(4):321-359, November 1989.]]
[16]
M. Litzkow, M. Livny, and M. Mutka. Condor # a Hunter of Idle Workstations. In Proc. 8th Intl. Conf. Distributed Computing Systems, pages 104-111, June 1988.]]
[17]
H. Lu, Y. C. Hu, and W. Zwaenepoel. OpenMP on Networks of Workstations. In Proc. Supercomputing '98, Orlando, FL, November 1998. ACM/IEEE.]]
[18]
N. Nedeljkovic and M.J. Quinn. Data-parallel Programming on a Network of Heterogeneous Workstations. Concurrency: Practice & Experience, 5(4):257- 268, June 1993.]]
[19]
D.A. Nichols. Using Idle Workstations in a Shared Computing Environment. In Proc. lOth ACM Symp. Operating Systems Principles, pages 5-12, November 1987.]]
[20]
OpenMP Group. http://www.openmp.org, 1997.]]
[21]
J.S. Plank, M. Beck, G. Kingsley, and K. Li. Libckpt: Transparent Checkpointing under Unix. In Proceedings of the 1995 Winter Usenix Conference, pages 213- 223, January 1995.]]
[22]
L. Wang, J. Stichnoth, and S. Chatterjee. Runtime Performance of Parallel Array Assignment: An Empirical Study. In Proc. Supercomputing '96, Pittsburgh, PA, November 1996. ACMflEEE.]]

Cited By

View all
  • (2016)Communication and Optimization Aspects of Parallel Programming Models on Hybrid ArchitecturesThe International Journal of High Performance Computing Applications10.1177/109434200301700100517:1(49-62)Online publication date: 26-Jul-2016
  • (2013)Adjusting process count on demand for petascale global optimizationParallel Computing10.1016/j.parco.2012.11.00139:1(21-35)Online publication date: 1-Jan-2013
  • (2009)Communication Bandwidth of Parallel Programming Models on Hybrid ArchitecturesProceedings of the 4th International Symposium on High Performance Computing10.1007/3-540-47847-7_37(401-412)Online publication date: 18-May-2009
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
PPoPP '99: Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
May 1999
192 pages
ISBN:1581131003
DOI:10.1145/301104
  • Chairmen:
  • Marc Snir,
  • Andrew A. Chien
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 May 1999

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PPoPP99
Sponsor:

Acceptance Rates

PPoPP '99 Paper Acceptance Rate 17 of 79 submissions, 22%;
Overall Acceptance Rate 230 of 1,014 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)71
  • Downloads (Last 6 weeks)10
Reflects downloads up to 19 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2016)Communication and Optimization Aspects of Parallel Programming Models on Hybrid ArchitecturesThe International Journal of High Performance Computing Applications10.1177/109434200301700100517:1(49-62)Online publication date: 26-Jul-2016
  • (2013)Adjusting process count on demand for petascale global optimizationParallel Computing10.1016/j.parco.2012.11.00139:1(21-35)Online publication date: 1-Jan-2013
  • (2009)Communication Bandwidth of Parallel Programming Models on Hybrid ArchitecturesProceedings of the 4th International Symposium on High Performance Computing10.1007/3-540-47847-7_37(401-412)Online publication date: 18-May-2009
  • (2007)Dynamicity in distributed applicationsParallel Computing10.1016/j.parco.2007.08.00133:12(822-845)Online publication date: 1-Dec-2007
  • (2005)Comparison of Parallel Programming Models on Clusters of SMP NodesModeling, Simulation and Optimization of Complex Processes10.1007/3-540-27170-8_31(409-425)Online publication date: 2005
  • (2005)Dynamic reconfiguration of grid-aware applications in ASSISTProceedings of the 11th international Euro-Par conference on Parallel Processing10.1007/11549468_84(771-781)Online publication date: 30-Aug-2005
  • (2003)Dyn-MPIProceedings of the 2003 ACM/IEEE conference on Supercomputing10.1145/1048935.1050156Online publication date: 15-Nov-2003
  • (2003)THROOM – Supporting POSIX Multithreaded Binaries on a ClusterEuro-Par 2003 Parallel Processing10.1007/978-3-540-45209-6_105(760-769)Online publication date: 2003
  • (2002)Compile/Run-Time Support for Thread MigrationProceedings of the 16th International Parallel and Distributed Processing Symposium10.5555/645610.661541Online publication date: 15-Apr-2002
  • (2002)CableS : thread control and memory management extensions for shared virtual memory clustersProceedings Eighth International Symposium on High Performance Computer Architecture10.1109/HPCA.2002.995716(263-274)Online publication date: 2002
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media