1997
DOI: 10.1145/244764.244765
|View full text |Cite
|
Sign up to set email alerts
|

Scheduler-conscious synchronization

Abstract: Efficient synchronization is important for achieving good performance in parallel programs, especially on large-scale multiprocessors. Most synchronization algorithms have been designed to run on a dedicated machine, with one application process per processor, and can suffer serious performance degradation in the presence of multiprogramming. Problems arise when running processes block or, worse, busy-wait for action on the part of a process that the scheduler has chosen not to run.In this paper we describe an… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
55
0

Year Published

1998
1998
2005
2005

Publication Types

Select...
2
2
1

Relationship

2
3

Authors

Journals

citations
Cited by 71 publications
(55 citation statements)
references
References 35 publications
0
55
0
Order By: Relevance
“…Finally, several researchers have suggested operating system mechanisms that provide user applications with a limited degree of control over scheduling, allowing them to avoid [4,5,14,19,25] or recover from [1,2,31,33] inopportune preemption. Commercial support for such mechanisms, however, is neither universal nor consistent.…”
Section: Related Workmentioning
confidence: 99%
See 3 more Smart Citations
“…Finally, several researchers have suggested operating system mechanisms that provide user applications with a limited degree of control over scheduling, allowing them to avoid [4,5,14,19,25] or recover from [1,2,31,33] inopportune preemption. Commercial support for such mechanisms, however, is neither universal nor consistent.…”
Section: Related Workmentioning
confidence: 99%
“…Extending previous work [14], we distinguish three levels of APIs for user-level feedback to the kernel scheduler implementation: (I) Critical section protection (CSP): these APIs can bracket a block of code to request that a thread not be preempted while executing it. (II) Runtime state check: these APIs allow inquiries as to whether a thread is currently preempted.…”
Section: Scheduling and Preemptionmentioning
confidence: 99%
See 2 more Smart Citations
“…The literature provides a wealth of solutions for attacking the performance bottlenecks that arise from the interference between multiprocessing and multiprogramming [1,3,6]. However, little effort has been spent on the transparent integration of these solutions and multithreading programming models in a generic, model-independent manner.…”
Section: Introductionmentioning
confidence: 99%