skip to main content
10.1145/75108.75378acmconferencesArticle/Chapter ViewAbstractPublication PagesmetricsConference Proceedingsconference-collections
Article
Free access

The performance implications of thread management alternatives for shared-memory multiprocessors

Published: 01 April 1989 Publication History

Abstract

Threads (“lightweight” processes) have become a common element of new languages and operating systems. This paper examines the performance implications of several data structure and algorithm alternatives for thread management in shared-memory multiprocessors. Both experimental measurements and analytical model projections are presented.
For applications with fine-grained parallelism, small differences in thread management are shown to have significant performance impact, often posing a tradeoff between throughput and latency. Per-processor data structures can be used to improve throughput, and in some circumstances to avoid locking, improving latency as well.
The method used by processors to queue for locks is also shown to affect performance significantly. Normal methods of critical resource waiting can substantially degrade performance with moderate numbers of waiting processors. We present an Ethernet-style backoff algorithm that largely eliminates this effect.

References

[1]
M. Acc, etta, R. Baron, W. Bolosky, D. Golub, R. Rashid, A. Tevanian, and M. Young. Mach: A New Kernel Foundation For UNIX Developmerit. Proc. Swnn~r 1986 USb:NIX Technical Conference and Exhibi. tion, June 1986, pp. 93-112.
[2]
J. Archibald and J.L. Baer. Cache Coherence Protocols: Evaluation Using a Multiprcr.essor Simulation Model. ACM Transactions on Computer Systems, vol. 4, no. 4, Nov. 1986.
[3]
M.J. Bach and SJ. Buroff. Multiprocessor UNIX Operating Systems. AT~T Bell Laboratories Technical journal, vol. 63, no. 8, Oct. 198,4, pp. 1733-1749.
[4]
Brian Bershad, Edward Lazowska, and Henry Levy. PRESTO: A System for Object-Oriented Parallel Programming. Software: Practice and E~erience, vol. 18, no. 8, Aug. 1988, pp. 713-732.
[5]
Brian Bershad, Edward Lazowska, Henry Levy, and David Wagner. An O~eM/n Environment for Building Parallel Programming Systems. Proc. SIGPLAN PPEALS 1988, pp. 1-9.
[6]
Kenneth W. Dritz and James M. Boyle. Beyond "Speedup": Performance Analysis of Parallel Programs. Technical Report ANL-87-7, Mathematics and Computer Science Division, Argonne National Laboratory, Feb. 1987.
[7]
Derek Eager, Edward Lazowska, and John Zahorjan. Adaptive Load Sharing in Homogeneous Distributed Systems. IEEE Transactions on Software Engineering, vol. 12, no. 5, May 1986, pp. 662-675.
[8]
Jan Edler, Jim Lipkis, and Edith Schonberg. Process Management for Highly Parallel UNIX Systems. UltracomputerNote #136, April 1988.
[9]
C.A.R. Hoare. Communicating Sequential Processes. Communications of the ACM, vol. 21, no. 8, Aug. 1978, pp. 666-677.
[10]
R. Holt. A Short Introduction to Concurrent Euclid. SIGPlANNotices, vol. 17, May 1982, pp. 60-79.
[11]
Eric Jul, Henry Levy, Norman Hutchinson, and Andrew Black. Fine- Grained Mobility in the Emerald System. ACM Transactions on Computer Systems, vol. 6, no. I, Feb. 1988, pp. 109-133.
[12]
B. Kumar and Timothy Gonsalves. Modelling and Analysis of Distributed Software Systems. Proc. 7th ACM Symposium on Operating Systems Principles, Dec. 1977, pp. 2-8.
[13]
B.W. Lampson and D.D. Redell. Experiences with Processes and Monitors in Mesa. Communications of the ACM, vol. 23, no. 2, Feb. 1980, pp. 104-i17.
[14]
Edward Lazowska, John Zahorjan, O. Scott Graham, and Kenneth Sevcik. Quantitative System Performance. Prentice-Hall, 1984.
[15]
Tom Lover and Shreekant Thakkar. The Symmetry Multiprocessor System. Proc. 1988 International Conference on Parallel Processing, pp. 303-310.
[16]
Robert Metcalfe and David Boggs. Ethernet: Distributed Packet Switching for Local Computer Networks. Communications of the ACM, vol. 19, no. 7, July 1976, pp. 395-404.
[17]
D.A. Mundie and D.A. Fisher. Parallel Processing in Ada. IEEE Computer, Aug. 1985, pp. 20-25.
[18]
Lionel Ni and Ching-Fern Wu. Design Trade-offs for Process Scheduling in Tightly Coupled Multiprocessor Systems. Proc. 1985 International Conference on Parallel Processing, pp. 63-70.
[19]
Michael Scott, Thomas LeBlanc, and Brian Marsh. Design Rationale for Psyche, a General Purpose Multiprocessor Operating System. Proc. 1988 International Conference on Parallel Processing, August, 1988.
[20]
. Sequent compmer Systems, Inc. Symmetry Technical Summary.
[21]
Charles Thacker, Lawrence Stewart, and Edward Satterthwaite Jr. Firefly: A Multiprocessor Workstation. IEEE Transactions on Computers, vol. 37, no. 8, Aug. 1988, pp. 909-920.
[22]
Mark Vandevoorde and Eric Roberts. WorkCrews: An Abstraction for Controlling Parallelism. Digital Equipment Corporation Systems Research Center, 1988.
[23]
David Wagner, Edward l.,a~wska, and Brian Bershad. Techniques for Efficient Shared-Menmry Parallel Simulation. Proc. Performance '89 / ACM SIGMETRICS 1989.
[24]
John Zahorjan, Edward Lazowska, and Derek Eager. Spinning Versus Blocking in Parallel Systems with Uncertainty. Proc. International Seminar on the Performance of Distributed and Parallel Systems, North Holland, De~ 1988.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGMETRICS '89: Proceedings of the 1989 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
April 1989
242 pages
ISBN:0897913159
DOI:10.1145/75108
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 April 1989

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

SIGMETRICS89
Sponsor:

Acceptance Rates

Overall Acceptance Rate 459 of 2,691 submissions, 17%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)166
  • Downloads (Last 6 weeks)19
Reflects downloads up to 01 Jan 2025

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

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media