
114 Introduction to Concurrency in Programming Languages
(often contiguous elements of an array) into the processor to perform a single
operation concurrently on each element. This eliminates the need to explicitly
iterate over the elements, and allows the hardware to perform in one instruc-
tion what was previously achieved iteratively with multiple instructions and
conditional control flow structure. Similarly, pipelining relies on the ability
to decompose complex operations into a sequence of simpler ones such that
multiple operations can execute concurrently at different levels of completion.
6.1.4 Dataflow
The von Neumann model of computation , based ...