A concurrent data-structure implementation is considered nonblocking if it meets one of three following liveness criteria: waitfreedom, lock-freedom, or obstruction-freedom. Devel...
Alexey Gotsman, Byron Cook, Matthew J. Parkinson, ...
In many concurrent programming languages programs are difficult to extend and modify. This is because changes in a concurrent program (either through modification or extension) re...
is a simple and elegant abstraction that allows concurrency to be expressed often through a relatively small rewrite of a sequential program. In the absence of side-effects, futur...
Using multi-GPU systems, including GPU clusters, is gaining popularity in scientific computing. However, when using multiple GPUs concurrently, the conventional data parallel GPU...
Pervasive programs should be context-aware, which means that program functions should react according to changing environmental conditions. Slicing, as an important class of code ...