ACM Home Page
Please provide us with feedback. Feedback
Digital Library logoTake a look at the new version of this page: [ beta version ]. Tell us what you think.
Scheduler activations: effective kernel support for the user-level management of parallelism
Full text PdfPdf (2.04 MB)
Source ACM Transactions on Computer Systems (TOCS) archive
Volume 10 ,  Issue 1  (February 1992) table of contents
Pages: 53 - 79  
Year of Publication: 1992
ISSN:0734-2071
Authors
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 28,   Downloads (12 Months): 164,   Citation Count: 70
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/146941.146944
What is a DOI?

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.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
BARNES, J., AND HUT, P. A hierarchical O(N log N) force-calculation algorithm. Nature 324 (1986), 446-449.
4
 
5
6
7
 
8
DRAVES, R., AND COOPER, E. C Threads. Tech. Rep. CMU-CS-88-154, School of Computer Science, Carnegie Mellon Umv., June 1988.
 
9
EDLER, J., LIPKIS, J., AND SCHONBERG, E Process management for highly parallel UNIX systems. In Proceedings of the USEN{X Workshop on UNIX and Supercomputers (Sept. 1988), pp. 1-17.
 
9A
10
11
12
13
 
14
Lo, S.-P., AND GL~GOR, V. A comparative analysis of multiprocessor scheduling algorithms. In Proceedings of the 7th International Conference on Distributed Computing Systems (Sept. 1987), pp 356~363.
15
 
16
MOELLER-N~ELSEN, P., AND STAUNSTRUP, J. Problem-heap: A paradigm for multiprocessor algorithms. Parallel Comput. 4, I (Feb. 1987), 63-74.
 
17
18
19
20
 
21
TEVANIAN, A., RASHID, R., GOLUB, D., BLACK, D., CooPER, E., AND YOUNG, M. Mach Threads and the Unix Kernel: The battle for control. In Proceedings of the 1987 USENIX Summer Conference (1987), pp. 185-197.
 
22
23
 
24
25
 
26
WULF, W., LEVIN, R., AND HARmSON, S. Hydra/C. mmp: An Experimental Computer System. McGraw-Hill, New York, 1981.
27
 
28

CITED BY  70


REVIEW

"Teodor Rus : Reviewer"

Managing parallelism at the user level is essential to high-performance parallel computing on multiprocessor systems. The operating systems of most high-performance computer systems in use today, however, have been developed to handle parallel  more...

Collaborative Colleagues:
Thomas E. Anderson: colleagues
Brian N. Bershad: colleagues
Edward D. Lazowska: colleagues
Henry M. Levy: colleagues