Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/74850.74866acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
Article
Free access

Process control and scheduling issues for multiprogrammed shared-memory multiprocessors

Published: 01 November 1989 Publication History

Abstract

Shared-memory multiprocessors are frequently used in a time-sharing style with multiple parallel applications executing at the same time. In such an environment, where the machine load is continuously varying, the question arises of how an application should maximize its performance while being fair to other users of the system. In this paper, we address this issue. We first show that if the number of runnable processes belonging to a parallel application significantly exceeds the effective number of physical processors executing it, its performance can be significantly degraded. We then propose a way of controlling the number of runnable processes associated with an application dynamically, to ensure good performance. The optimal number of runnable processes for each application is determined by a centralized server, and applications dynamically suspend or resume processes in order to match that number. A preliminary implementation of the proposed scheme is now running on the Encore Multimax and we show how it helps improve the performance of several applications. In some cases the improvement is more than a factor of two. We also discuss implications of the proposed scheme for multiprocessor schedulers, and how the scheme should interface with parallel programming languages.

References

[1]
William C. Athas and Charles L. Seitz. Multicomputers: Message-passing concurrent computers. IEEE Computer, 21(8):9-24, August 1988.
[2]
BBN Laboratories Inc. Butterfly Parallel Processor Overview. 1986. BBN Report No. 6148.
[3]
Rohit Chandra, Anoop Gupta, and John Hennessy. COOL: A language for parallel programming. In Proceedings of the Second Workshop on Programming Languages and Compilers for Parallel Computing, University of Illinois, August 1989.
[4]
D.R. Cheriton. The V distributed operating system. Communications of the ACM, 31(2):105-115, February 1988.
[5]
Eric C. Cooper and Richard P. Draves. C threads. Technical Report CMU-CS-88-154, Department of Compul:er Science, Carnegie-Mellon University, 1988.
[6]
Thomas W. Doeppner, Jr. Threads: A system for the support of concurrent programming. Technical Report CS-8 7-11, Department of Computer Science, Brown University, 1987.
[7]
lan Edler, Jim Lipkis, and Edith Schonberg. Process management for highly parallel UNIX systems. Technical Report Ultracomputer Note 136, New York University, 1988.
[8]
Richard P. Gabriel and John McCarthy. Queue-based multiprocessing Lisp. In ACM Symposium on Lisp and Functional Programming, pages 25--4 3, 1984.
[9]
Anoop Gupta, Charles Forgy, Dirk Kalp, Allen Newell, and Milind Tambe. Parallel implementation of O PS5 on the Encore multiprocessor: Results and analysis. International Journal of Parallel Programming, 17(2), 1988.
[10]
Robert H. blalstead, Jr. Multilisp: A language for concurrent symbolic computation. ACM Transactions on Programming Languages and Systems, 7(4):501-538, October 1985.
[11]
John Hennessy et al. DASH: A directory-based scalable general-purpose shared-memory multiprocessor. In preparation, Computer Systems Laboratory, Stanford University, August 1989.
[12]
Edward D. Lazowska and Mark S. Squillante. Using processor-cache affinity in shared-memory multiprocessor scheduling, Department of Computer Science, University of Washington, Seattle, June 1989,
[13]
Alan Norton and Allan Silberger. Parallelization and perfomaance prediction of the Cooley-Tukey FFT algorithm for shared-memory architectures. Technical Report RC 1.1237, IBM Research Division, 1985.
[14]
John K. Ousterhout. Scheduling techniques for concurrent systems. In Third International Conference on Distributed Computing Systems, pages 22-30, 1982.
[15]
Jonathan Rose. LocusRoute: A parallel global router for standard cells. In Proceedings of the 25th ACM/IEEE Design Automation Conference, June 1988.
[16]
Larry Soule and Anoop Gupta. Characterization of parallelism and deadlocks in distributed digital logic simulation. In Proceedings of the 26th ACM/IEEE Design Automation Conference, June 1989.
[17]
Andrew W. Wilson, Jr. Hierarchical cache/bus architecture for shared memory multiprocessors. In Proceedings of the 14th Annual International Symposium on Computer Architecture, pages 244-251, 1987.
[18]
John Zahorjan, Edward D. Lazowska, and Derek L. Eagar. Spinning versus blocking in parallel systems with uncertaint3,. Technical Report 88-03-01, Department of Computer Science, University of Washington, 1988.

Cited By

View all
  • (2019)ShenangoProceedings of the 16th USENIX Conference on Networked Systems Design and Implementation10.5555/3323234.3323265(361-377)Online publication date: 26-Feb-2019
  • (2019)Dynamic Clustering Algorithms via Small-Variance Analysis of Markov Chain Mixture ModelsIEEE Transactions on Pattern Analysis and Machine Intelligence10.1109/TPAMI.2018.283346741:6(1338-1352)Online publication date: 1-Jun-2019
  • (2018)ArachneProceedings of the 13th USENIX conference on Operating Systems Design and Implementation10.5555/3291168.3291180(145-160)Online publication date: 8-Oct-2018
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SOSP '89: Proceedings of the twelfth ACM symposium on Operating systems principles
November 1989
224 pages
ISBN:0897913388
DOI:10.1145/74850
  • cover image ACM SIGOPS Operating Systems Review
    ACM SIGOPS Operating Systems Review  Volume 23, Issue 5
    Dec. 3–6, 1989
    223 pages
    DOI:10.1145/74851
    • Editor:
    • Roy Levin
    Issue’s Table of Contents
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 November 1989

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

SOSP89
Sponsor:

Acceptance Rates

Overall Acceptance Rate 131 of 716 submissions, 18%

Upcoming Conference

SOSP '24

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)102
  • Downloads (Last 6 weeks)8
Reflects downloads up to 10 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2019)ShenangoProceedings of the 16th USENIX Conference on Networked Systems Design and Implementation10.5555/3323234.3323265(361-377)Online publication date: 26-Feb-2019
  • (2019)Dynamic Clustering Algorithms via Small-Variance Analysis of Markov Chain Mixture ModelsIEEE Transactions on Pattern Analysis and Machine Intelligence10.1109/TPAMI.2018.283346741:6(1338-1352)Online publication date: 1-Jun-2019
  • (2018)ArachneProceedings of the 13th USENIX conference on Operating Systems Design and Implementation10.5555/3291168.3291180(145-160)Online publication date: 8-Oct-2018
  • (2018)A Scientific Foundation of Simulation Games for the Analysis and Design of Complex SystemsSimulation and Gaming10.1177/104687811876885849:3(279-314)Online publication date: 1-Jun-2018
  • (2016)Transparently Space Sharing a Multicore Among Multiple ProcessesACM Transactions on Parallel Computing10.1145/30019103:3(1-35)Online publication date: 7-Nov-2016
  • (2016)Portable and transparent software managed scheduling on accelerators for fair resource sharingProceedings of the 2016 International Symposium on Code Generation and Optimization10.1145/2854038.2854040(82-93)Online publication date: 29-Feb-2016
  • (2016)Combining performance and priority for scheduling resizable parallel applicationsJournal of Parallel and Distributed Computing10.1016/j.jpdc.2015.09.00787:C(55-66)Online publication date: 1-Jan-2016
  • (2016)Adaptive demand-aware work-stealing in multi-programmed multi-core architecturesConcurrency and Computation: Practice & Experience10.1002/cpe.361928:2(455-471)Online publication date: 1-Feb-2016
  • (2014)TACOScientific Programming10.1155/2014/42308422:3(223-237)Online publication date: 1-Jul-2014
  • (2014)Search-based testing using constraint-based mutationSoftware Testing, Verification & Reliability10.1002/stvr.150824:6(472-495)Online publication date: 1-Sep-2014
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media