AbstractToday, synchronization of shared data structures in multithreaded software is mostly implemented using locks, which leads to difficult to understand and error-prone programs. Software Transactional Memory allows lock-free concurrent programming by handling the synchronization of shared variables implicitly. We show how to implement different instances of the widely-used taskpool pattern (global and private taskpools with and without task stealing) using both lock-based and lock-free synchronization mechanisms in the functional programming language Haskell. We examine their performance using two synthetic algorithms and LU decomposition and report our observations about parallel performance and the complexity of the implementation. O...
The Haskell programming language is an active laboratory for cutting edge ideas. Early in the evolut...
Among all classes of parallel programming abstractions, lock-free data structures are considered one...
. This paper considers the issue of dynamic task control in the context of a parallel Haskell implem...
AbstractToday, synchronization of shared data structures in multithreaded software is mostly impleme...
This work proposes to investigate the use of Software Transactional Memory (STM) as a programming al...
This dissertation presents a number of methods to build massively concurrent network applications in...
We present a lock-free version of the light-weight userleveltask management library called Wool, in ...
On shared memory multiprocessors, synchronization often turns out to be a performance bottleneck and...
Locks are used in shared memory parallel programs to achieve a variety of synchronization objectives...
Lock-free data objects have been proven to have many advantages over their lock-based counter-parts ...
The transition to multicore processors has brought synchronization, a fundamental challenge in compu...
We present a lock-free version of the light-weight userlevel task management library called Wool, in...
As new trends in computer architecture yield towards shared-memory chip multiprocessors (CMP), the r...
Abstract. Lock-free shared data structures in the setting of distributed computing have received a f...
It has often been suggested that functional languages provide an excellent basis for programming par...
The Haskell programming language is an active laboratory for cutting edge ideas. Early in the evolut...
Among all classes of parallel programming abstractions, lock-free data structures are considered one...
. This paper considers the issue of dynamic task control in the context of a parallel Haskell implem...
AbstractToday, synchronization of shared data structures in multithreaded software is mostly impleme...
This work proposes to investigate the use of Software Transactional Memory (STM) as a programming al...
This dissertation presents a number of methods to build massively concurrent network applications in...
We present a lock-free version of the light-weight userleveltask management library called Wool, in ...
On shared memory multiprocessors, synchronization often turns out to be a performance bottleneck and...
Locks are used in shared memory parallel programs to achieve a variety of synchronization objectives...
Lock-free data objects have been proven to have many advantages over their lock-based counter-parts ...
The transition to multicore processors has brought synchronization, a fundamental challenge in compu...
We present a lock-free version of the light-weight userlevel task management library called Wool, in...
As new trends in computer architecture yield towards shared-memory chip multiprocessors (CMP), the r...
Abstract. Lock-free shared data structures in the setting of distributed computing have received a f...
It has often been suggested that functional languages provide an excellent basis for programming par...
The Haskell programming language is an active laboratory for cutting edge ideas. Early in the evolut...
Among all classes of parallel programming abstractions, lock-free data structures are considered one...
. This paper considers the issue of dynamic task control in the context of a parallel Haskell implem...