This paper proposes a novel queue-based programming abstraction, Parallel Dispatch Queue (PDQ), that enables efficient parallel execution of fine-grain software communication protocols. Parallel systems often use fine-grain software handlers to integrate a network message into computation. Executing such handlers in parallel requires access synchronization around resources. Much as a monitor construct in a concurrent language protects accesses to a set of data structures, PDQ allows messages to include a synchronization key protecting handler accesses to a group of protocol resources. By simply synchronizing messages in a queue prior to dispatch, PDQ not only eliminates the overhead of acquiring/releasing synchronization primitives but also...
[[abstract]]A variety of techniques and tools exist to parallelize software systems on different par...
As network speeds increase, a major concern regarding communication protocols is their limited thr...
We introduce explicit multi-threading (XMT), a decentralized architecture that exploits fine-graine...
Distributed-memory parallel computers and networks of workstations (NOWs) both rely on efficient com...
It is widely recognized that execution of the higher-level protocol software can be an important per...
A paradigm is presented for the parallelization of coarse-grain engineering and scientific applicati...
Due to power constraints, future growth in computing capability must explicitly leverage parallelism...
A software distributed shared memory (DSM) system allows shared memory parallel programs to execute ...
An approach based on algebraic treatment of programs and advanced transition system operational sema...
This paper surveys parallelism in communication subsystems. Amodel that describes parallelism in ter...
Computing applications demand good performance from networking systems. This includes high-bandwidth...
Although barrier synchronization has long been considered a useful construct for parallel programmin...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
Over the last few years, the major chip manufactures have shifted from single core towards multicore...
We review a decade\u27s work on message passing MIMD parallel computers in the areas of hardware, so...
[[abstract]]A variety of techniques and tools exist to parallelize software systems on different par...
As network speeds increase, a major concern regarding communication protocols is their limited thr...
We introduce explicit multi-threading (XMT), a decentralized architecture that exploits fine-graine...
Distributed-memory parallel computers and networks of workstations (NOWs) both rely on efficient com...
It is widely recognized that execution of the higher-level protocol software can be an important per...
A paradigm is presented for the parallelization of coarse-grain engineering and scientific applicati...
Due to power constraints, future growth in computing capability must explicitly leverage parallelism...
A software distributed shared memory (DSM) system allows shared memory parallel programs to execute ...
An approach based on algebraic treatment of programs and advanced transition system operational sema...
This paper surveys parallelism in communication subsystems. Amodel that describes parallelism in ter...
Computing applications demand good performance from networking systems. This includes high-bandwidth...
Although barrier synchronization has long been considered a useful construct for parallel programmin...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
Over the last few years, the major chip manufactures have shifted from single core towards multicore...
We review a decade\u27s work on message passing MIMD parallel computers in the areas of hardware, so...
[[abstract]]A variety of techniques and tools exist to parallelize software systems on different par...
As network speeds increase, a major concern regarding communication protocols is their limited thr...
We introduce explicit multi-threading (XMT), a decentralized architecture that exploits fine-graine...