2005
DOI: 10.1007/11602569_6
|View full text |Cite
|
Sign up to set email alerts
|

Preemption Adaptivity in Time-Published Queue-Based Spin Locks

Abstract: The proliferation of multiprocessor servers and multithreaded applications has increased the demand for high-performance synchronization. Traditional scheduler-based locks incur the overhead of a full context switch between threads and are thus unacceptably slow for many applications. Spin locks offer low overhead, but they either scale poorly on large-scale SMPs (test-and-set style locks) or behave poorly in the presence of preemption (queue-based locks).Previous work has shown how to build preemption-toleran… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
32
0

Year Published

2005
2005
2020
2020

Publication Types

Select...
4
4
1

Relationship

1
8

Authors

Journals

citations
Cited by 34 publications
(32 citation statements)
references
References 34 publications
0
32
0
Order By: Relevance
“…A global monitor controls how many threads must block, while the remaining threads use time-published MCS locks [34]. The background thread of GLK is similar to this global monitor.…”
Section: Related Work Lock Algorithmsmentioning
confidence: 99%
“…A global monitor controls how many threads must block, while the remaining threads use time-published MCS locks [34]. The background thread of GLK is similar to this global monitor.…”
Section: Related Work Lock Algorithmsmentioning
confidence: 99%
“…The delete operation (Figure 8(a)) is the most complex operation of the OPTIK-based linked list, because it requires locking two nodes; the one being deleted and its predecessor node. Traversing the list (lines 11-15) keeps track of these two version numbers that are later used for locking with optik trylock version (lines [18][19][20][21][22][23]. If locking the predecessor node fails, the operation is restarted, otherwise the node to be deleted is locked.…”
Section: Optik-based Linked Listmentioning
confidence: 99%
“…Strict FIFO ordering and 10000x longer delays than the OS-supplied primitive combine to virtually freeze the system as it services a few tens of critical sections per second. Preemption-resistant variants [6] improve the situation by removing preempted threads from the FIFO queue, but can do little to prevent the lock holder from being preempted by its spinning successors. As we will see in Section 3, with preemption resistance performance only falls off rapidly instead of instantly once load exceeds 100%.…”
Section: Convoys and Preemption Resistancementioning
confidence: 99%
“…Other work suggests heuristics for optimizing the duration of spinning based on machine size and workload [3]. Recent research [6] has also addressed partially the negative interaction between spinning and thread preemptions due to OS activity. While these techniques are all helpful, however, they do not address the underlying sources of poor performance.…”
Section: Introductionmentioning
confidence: 99%