MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Scheduler ctivations: Effective Kernel Support for the User-bevel Management of Parallelism

Download:
Download as a PDF
by Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, Henry M. Levy
http://calab.kaist.ac.kr/courses/530/97/Readings/scheduler-act.pdf
Add To MetaCart

Abstract:

Threads are the vehicle for concurrency in many approaches to parallel programming. Threads can be supported either by the operating system kernel or by user-level library code in the application address space, but neither approach has been fully satisfactory. This paper addresses this dilemma. First, we argue that the performance of kernel threads is inherently worse than that of user-level threads, rather than this being an artifact of existing implementations; managing parallelism at the user level is essential to high-performance parallel computing. Next, we argue that the problems encountered in integrating user-level threads with other system services is a consequence of the lack of kernel support for user-level threads provided by contemporary multiprocessor operating systems; kernel threads are the wrong abstraction on which to support user-level management of parallelism. Finally, we describe the design, implementation, and performance of a new kernel interface and user-level thread package that together provide the same functionality as kernel threads without compromising the performance and flexibility advantages of user-level management of parallelism.

Citations

865 Actors: A Model of Concurrent Computation in Distributed Systems – Agha - 1986
262 The V distributed system – Cheriton - 1988
261 A methodology for implementing highly concurrent data objects – Herlihy - 1993
213 The Amber system: Parallel programming on a network of multiprocessors – Chase, Amador, et al. - 1989
205 Process Control and Scheduling Issues for Multiprogrammed SharedMemory Multiprocessors – Tucker, Gupta - 1989
143 Fire y: a Multiprocessor Workstation – Thacker, Stewart, et al. - 1988
134 A hierarchical O(N log N) force-calculation algorithm – Barnes, Hut - 1986
127 The Performance Implications of Thread Management Alternatives for Shared-Memory Multiprocessors – Anderson, Lazowska, et al.
115 E.P.Markatos. First-Class User-Level Threads – Marsh, Scott, et al. - 1991
108 Hydra/C.mmp: An Experimental Computer System – Wulf, Levin, et al. - 1981
97 Processor Scheduling in Shared Memory Multiprocessors – Zahorjan, McCann - 1990
93 Scheduling Support for Concurrency and Parallelism in the Mach Operating System – Black - 1990
78 Workcrews: an abstraction for controlling parallelism – Vandevoorde, Roberts - 1988
57 The Portable Common Runtime approach to interoperability – Weiser, Demers, et al. - 1989
55 The effect of scheduling discipline on spin overhead in shared memory parallel systems – Zahorjan, Lazowska, et al. - 1991
40 Synchronization primitives for a multiprocessor: A formal specification – Birrell, Guttag, et al. - 1987
38 Process management for highly parallel UNIX systems – Edler, Lipkis, et al. - 1988
36 Multi-model parallel programming in Psyche – Scott, LeBlanc, et al. - 1990
31 Concurrency features for the Trellis/Owl language – Moss, Kohler - 1987
24 A comparative analysis of multiprocessor scheduling algorithms – Lo, Gligor - 1987
21 Experience with Topaz TeleDebugging – Redell - 1988
19 Mach Threads and the Unix Kernel: The Battle for Control – Tevanian, Rashid, et al. - 1987
13 Performance of firefly rpc – Schroder, Burrows - 1990
11 Problem-Heap: A Paradigm for Multiprocessor Algorithms – Moller-Nielsen, Staunstrup - 1987
3 Empirical Studies of Competitive Spinning for a Shared�Memory Multiprocessor – Manasse�, Owicki - 1991
2 Multilisp: A language for concurrent symbolic computation – HAL, R - 1985