Entanglement detection with near-zero cost
Recent research on parallel functional programming has culminated in a provably efficient
(in work and space) parallel memory manager, which has been incorporated into the MPL …
(in work and space) parallel memory manager, which has been incorporated into the MPL …
Disentanglement in nested-parallel programs
Nested parallelism has proved to be a popular approach for programming the rapidly
expanding range of multicore computers. It allows programmers to express parallelism at a …
expanding range of multicore computers. It allows programmers to express parallelism at a …
Efficient Parallel Functional Programming with Effects
Although functional programming languages simplify writing safe parallel programs by
hel** programmers to avoid data races, they have traditionally delivered poor …
hel** programmers to avoid data races, they have traditionally delivered poor …
Provably space-efficient parallel functional programming
Because of its many desirable properties, such as its ability to control effects and thus
potentially disastrous race conditions, functional programming offers a viable approach to …
potentially disastrous race conditions, functional programming offers a viable approach to …
Automatic parallelism management
On any modern computer architecture today, parallelism comes with a modest cost, born
from the creation and management of threads or tasks. Today, programmers battle this cost …
from the creation and management of threads or tasks. Today, programmers battle this cost …
Responsive parallelism with futures and state
Motivated by the increasing shift to multicore computers, recent work has developed
language support for responsive parallel applications that mix compute-intensive tasks with …
language support for responsive parallel applications that mix compute-intensive tasks with …
Competitive parallelism: Getting your priorities right
Multi-threaded programs have traditionally fallen into one of two domains: cooperative and
competitive. These two domains have traditionally remained mostly disjoint, with cooperative …
competitive. These two domains have traditionally remained mostly disjoint, with cooperative …
Responsive Parallelism with Synchronization
Many concurrent programs assign priorities to threads to improve responsiveness. When
used in conjunction with synchronization mechanisms such as mutexes and condition …
used in conjunction with synchronization mechanisms such as mutexes and condition …
Disentanglement with Futures, State, and Interaction
Recent work has proposed a memory property for parallel programs, called
disentanglement, and showed that it is pervasive in a variety of programs, written in different …
disentanglement, and showed that it is pervasive in a variety of programs, written in different …
Fairness in responsive parallelism
Research on parallel computing has historically revolved around compute-intensive
applications drawn from traditional areas such as high-performance computing. With the …
applications drawn from traditional areas such as high-performance computing. With the …