Among all classes of parallel programming abstractions, lock-free data structures are considered one of the most scalable and efficient because of their fine-grained style of synchronization. However, they are also challenging for developers and tools to verify because of the huge number of possible interleavings that result from fine-grained synchronizations. This paper address this fundamental problem between performance and verifiability of lock-free data structures. We present TXIT, a system that greatly reduces the set of possible interleavings by inserting transactions into the implementation of a lock-free data structure. We leverage hardware transactional memory support from Intel Haswell processors to enforce these artificial trans...
Abstract. Lock-free shared data structures in the setting of distributed computing have received a f...
On shared memory multiprocessors, synchronization often turns out to be a performance bottleneck and...
Concurrent data structures provide the means to multi-threaded applications to share data. Typical d...
Among all classes of parallel programming abstractions, lock-free data structures are considered one...
The transition to multicore processors has brought synchronization, a fundamental challenge in compu...
Mutual-exclusion locks are currently the most popular mechanism for interprocess synchronisation, la...
We are interested in implementing data structures on shared memory multiprocessors. A natural model ...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Building a library of concurrent data structures is an essential way to simplify the difficult task ...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
This paper considers the modeling and the analysis of the performance of lock-free concurrent datast...
\ua9 2017 by John Wiley & Sons, Inc. All rights reserved. Concurrent data structures are the data sh...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
In this paper we present two analytical frameworks for calculating the performance of lock-free data...
Lock-free data objects have been proven to have many advantages over their lock-based counter-parts ...
Abstract. Lock-free shared data structures in the setting of distributed computing have received a f...
On shared memory multiprocessors, synchronization often turns out to be a performance bottleneck and...
Concurrent data structures provide the means to multi-threaded applications to share data. Typical d...
Among all classes of parallel programming abstractions, lock-free data structures are considered one...
The transition to multicore processors has brought synchronization, a fundamental challenge in compu...
Mutual-exclusion locks are currently the most popular mechanism for interprocess synchronisation, la...
We are interested in implementing data structures on shared memory multiprocessors. A natural model ...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Building a library of concurrent data structures is an essential way to simplify the difficult task ...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
This paper considers the modeling and the analysis of the performance of lock-free concurrent datast...
\ua9 2017 by John Wiley & Sons, Inc. All rights reserved. Concurrent data structures are the data sh...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
In this paper we present two analytical frameworks for calculating the performance of lock-free data...
Lock-free data objects have been proven to have many advantages over their lock-based counter-parts ...
Abstract. Lock-free shared data structures in the setting of distributed computing have received a f...
On shared memory multiprocessors, synchronization often turns out to be a performance bottleneck and...
Concurrent data structures provide the means to multi-threaded applications to share data. Typical d...