The Effect of Scheduling Discipline on Spin Overhead in Shared Memory Parallel Systems

Spinning, or busy waiting, is commonly employed in parallel processors when threads of execution must wait for some event, such as synchronization with another thread. Because spinning is purely overhead, it is detrimental to both user response time and system throughput. The effects of two environmental factors, multiprogramming and data-dependent execution times, on spinning are discussed, and it is shown how the choice of scheduling discipline can be used to reduce the amount of spinning in each case. >

[1]  Alan Weiss,et al.  Allocating Independent Subtasks on Parallel Processors , 1985, IEEE Transactions on Software Engineering.

[2]  John K. Ousterhout Scheduling Techniques for Concurrebt Systems. , 1982, ICDCS 1982.

[3]  James M. Boyle,et al.  Beyond "'Speedup": Performance Analysis of Parallel Programs , 1987 .

[4]  CONSTANTINE D. POLYCHRONOPOULOS,et al.  Guided Self-Scheduling: A Practical Scheduling Scheme for Parallel Supercomputers , 1987, IEEE Transactions on Computers.

[5]  Brian N. Bershad,et al.  PRESTO: A system for object‐oriented parallel programming , 1988, Softw. Pract. Exp..

[6]  David L. Black,et al.  The duality of memory and communication in the implementation of a multiprocessor operating system , 1987, SOSP '87.

[7]  John K. Ousterhout,et al.  Scheduling Techniques for Concurrent Systems , 1982, ICDCS.

[8]  Thomas E. Anderson,et al.  The performance implications of thread management alternatives for shared-memory multiprocessors , 1989, SIGMETRICS '89.

[9]  Michel Dubois,et al.  An approximate analytical model for asynchronous processes in multiprocessors , 1982, ICPP.

[10]  Leonard Kleinrock,et al.  Theory, Volume 1, Queueing Systems , 1975 .

[11]  Henry M. Levy,et al.  The Performance Implications of Thread Management Alternatives for Shared-Memory Multiprocessors , 1989, IEEE Trans. Computers.

[12]  Daniel P. Siewiorek,et al.  Parallel processing: the Cm* experience , 1986 .

[13]  Edward D. Lazowska,et al.  Speedup Versus Efficiency in Parallel Systems , 1989, IEEE Trans. Computers.

[14]  David J. DeWitt,et al.  The Crystal Multicomputer: Design and Implementation Experience , 1987, IEEE Transactions on Software Engineering.

[15]  Shreekant S. Thakkar,et al.  The Symmetry Multiprocessor System , 1988, ICPP.

[16]  Leonard Kleinrock,et al.  Queueing Systems - Vol. 1: Theory , 1975 .

[17]  Stephen S. Lavenberg,et al.  Mean-Value Analysis of Closed Multichain Queuing Networks , 1980, JACM.

[18]  Ming-Syan Chen,et al.  Processor Allocation in an N-Cube Multiprocessor Using Gray Codes , 1987, IEEE Transactions on Computers.