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

skip to main content
article
Free access

A dynamic processor allocation policy for multiprogrammed shared-memory multiprocessors

Published: 01 May 1993 Publication History

Abstract

We propose and evaluate empirically the performance of a dynamic processor-scheduling policy for multiprogrammed shared-memory multiprocessors. The policy is dynamic in that it reallocates processors from one parallel job to another based on the currently realized parallelism of those jobs. The policy is suitable for implementation in production systems in that:
—It interacts well with very efficient user-level thread packages, leaving to them many low-level thread operations that do not require kernel intervention.
—It deals with thread blocking due to user I/O and page faults.
—It ensures fairness in delivering resources to jobs.
—Its performance, measured in terms of average job response time, is superior to that of previously proposed schedulers, including those implemented in existing systems.
It provides good performance to very short, sequential (e.g., interactive) requests.
We have evaluated our scheduler and compared it to alternatives using a set of prototype implementations running on a Sequent Symmetry multiprocessor. Using a number of parallel applications with distinct qualitative behaviors, we have both evaluated the policies according to the major criterion of overall performance and examined a number of more general policy issues, including the advantage of “space sharing” over “time sharing” the processors of a multiprocessor, and the importance of cooperation between the kernel and the application in reallocating processors between jobs. We have also compared the policies according to other criteia important in real implementations, in particular, fairness and respone time to short, sequential requests. We conclude that a combination of performance and implementation considerations makes a compelling case for our dynamic scheduling policy.

References

[1]
AI,MQUIST, K., ANDERSON, R. J., AND LAZOWSKA, E.D. The measured performance of parallel dynamic programming implementations. In Proceedings of the 1989 International Conference on Parallel Processing (Aug. 1989).
[2]
ANDERSON, T.E. The performance of spin lock alternatives for shared-memory multiprocessors. IEEE Trans. Parall. Dzstrib. Syst. 1, 1 (Jan. 1990), 6 16.
[3]
ANDERSON, T. E., BERSHAD, B. N., LAZOWSKA, E. D., AND LEVY, H.M. Scheduler activations: Effective kernel support for the user-level management of parallelism. ACM Trans. Comput. Syst. 10, i (Feb. 1992).
[4]
BARNES, J., AND HUT, P. A hierarchical O(NlogN) force-calculation algorithm. Nature 24 (1986), 446-449.
[5]
BERSHAD, B. N., LAZOWSKA, E. D., AND LEVY, H.M. PRESTO: A system for object-oriented parallel programming. Sofhv. Pract. Exper. 18, 8 (Aug. 1988), 713-732.
[6]
BIRRELL, A. D. An introduction to programming with threads. DEC System Research Center, 1989.
[7]
EDLER, J., LmKIS, J., AND SCHONBERa, E. Process management for highly parallel UNIX systems. In Proceedings of the USENIX Workshop on UNIX and Supercomputers (Sept. 1988). USENIX.
[8]
Fox, G. C., JOHNSON, M. A., LYZENGA, G. A., OTTO, S. W., SALOMON, J. K., AND WALKER, D. W. Solving Problems on Concurrent Processors. Vol. 1. Prentice-Hall, Englewood Cliffs, N.J., 1988.
[9]
GRAUNKE, G., AND THAFa<AR, S. Synchronization algmSthms for shared-memory multiprocessons. IEEE Comput. 23, 6 (June 1990), 60 70.
[10]
GUPTA, A., TUCKER, A., AND STEVENS, L. Making effective use of shared-memory multiprocessors: The process centre} approach. Tech. Rep. CSL-TR-91-475A, 1991.
[11]
GUPTA, A., TUCKER, A., AND URUSmBARA, S. The impact of operating system scheduling policies and synchronization methods on the performance of parallel applications. In Proceedings of the 1991 ACM SIGMETRICS Conference (May 1991). ACM, New York.
[12]
KARLIN, A., L~, K., MANASSE, M. S., AND OWIOK~, S. Empirical studies of competitive spinning for a shared-memory multiprocessor. In Proceedings of the 13th ACM Symposium on Operating Systems Principles (Oct. 1991). ACM. New York.
[13]
LELAND, W., AND OTT, T. Load-balancing heuristics and process behavior. In Proceedings of PeT~brrnance '86 and 1986 ACM SIGMETRICS Conference (May 1986). ACM, New York.
[14]
LEUTENEGGER, S. V., AND VERNON, M.K. The performance of multiprogrammed multiprocessor scheduling policies. In Proceedzngs of the 1990 ACM SIGMETRICS Conference (May 1990). ACM, New York.
[15]
Lo, S.-P., AND GLIGOR, V. D. A comparative analysis of mult~processor scheduling algorithms. In Proceedzngs of the 7th International Conference on Dtstrzbuted Computzng Systems (Sept. 1987).
[16]
LOVETT, T., AND THAKKAR, S. The symmetry multiprocessor system. In Proceedings of the 1988 lnternatwnal Conference on Parallel Processing (Aug. 1988).
[17]
M^JUMDAR, S., EAGER, D. L., AND BUNT, R. L. Scheduling in multiprogTammed parallel systems. In Proceedings of the 1988 ACM SIGMETRICS Conference (May 1988). ACM, New York.
[18]
O~TSTERHOUT, J.K. Scheduling techniques for concurrent systems. In Proceedings of the 3rd Internatzonal Conference on D~str~buted Computing Systems (Oct. 1982).
[19]
POLYCHRONOPOULOS, C.D. Multiprocessing versus mult~programming. In Proceedings of the 1989 Internatzonal Conference on Parallel Processing (Aug. 1989).
[20]
REISER, M., AND LAVENBERG, S. S. Mean value analysis of closed mult~cham queuemg networks. J. ACM 27, 2 (Apr. 1980), 313-322.
[21]
SEVCIK, K C. Characterizations of parallelism in applications and their use in scheduling. In Proceedings of the 1989 ACM SIGMETRICS and Performance '89 Internatzonal Conference (May 1989). ACM, New York.
[22]
TUCKER, A., AND GUPTA, A. Process control and scheduling issues for multiprogrammed shared-memory multlprocessors In ProceedLngs of the 12th ACM Symposium on Operating Systems Pmnc~ples (Dec. 1989). ACM, New York.
[23]
THACKER, C. P., STEWART, L. C., AND SATTERTHWAITE, E. H., JR. Firefly: A mult~processor workstation. IEEE Trans Comput. 37, 8 (Aug. 1988), 909 920.
[24]
VASWANL R., AND ZAHOP~AN, J. The ~mplications of cache affinity on processor scheduling for multiprogrammed, shared memory multiprocessors. In Proceedzngs of the 13th ACM Symposium on Operating Systems Pr~nczples (Oct 1991). ACM, New York.
[25]
ZAHORJAN, J., AND MCCANN, C. Processor scheduling in shared memory multiprocessors. In Proceedings of the 1990 ACM SIGMETRICS Conference (May 1990). ACM, New York.
[26]
ZAHORJAN, J., LAZOWSKA, E. D., AND EAGER, D.L. The effect of scheduling d~scipline on spin overhead in shared memory parallel systems. IEEE Trans. Parall. Dzstrib. Syst. 2, 2 (Apr. 1991), 180-198.
[27]
ZAHOaJAN, J., LAZOWSKA, E. D., AND EAGER, D. L. Spinning versus blocking in parallel systems with uncertainty. In Proceedings of the International Symposium on Performance of Dzstributed and Parallel Systems (Kyoto, Japan, Dec. 1988).

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Computer Systems
ACM Transactions on Computer Systems  Volume 11, Issue 2
May 1993
95 pages
ISSN:0734-2071
EISSN:1557-7333
DOI:10.1145/151244
  • Editor:
  • Anita K. Jones
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 May 1993
Published in TOCS Volume 11, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. shared memory parallel processors
  2. threads
  3. two-level scheduling

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)68
  • Downloads (Last 6 weeks)12
Reflects downloads up to 02 Oct 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media