1.2 Theoretical Research in Parallel Computing 3
synchronously and have random access to the shared memory cells. Since the
user does not have to worry about synchronization, locality of data, commu-
nication capacity, delay effects or memory contention, the PRAM represents
an idealization of a parallel computation model.
On the other hand, PRAMs are very unrealistic from a technological point
of view; large machines with shared memory can only be built at the cost of
very slow shared memory access. Hence research in parallel systems basically
follows two directions today: finding efficient simulations of a PRAM on more
realistic models, or developing computational models for efficient parallel
algorithms on arbitrary parallel systems.
Finding efficient PRAM simulations has been pioneered by Mehlhorn and
Vishkin [MV84]. Valiant pioneered the development of computational models
for efficient parallel algorithms on arbitrary parallel systems by developing
the BSP model [Va90].
Although simulating the PRAM on parallel systems is convenient for the
user, even optimal simulations are in general much slower than optimal im-
plementations on these systems. Hence it would be more desirable to have
models that take into account issues like synchronization time, locality of
data, and delay effects as it is partly done in the BSP model. In order to
minimize these effects for the runtime of parallel algorithms, fast routing
hardware and routing strategies are highly needed. In recent years, much
work has been invested by the research community to find efficient hardware
models and routing strategies.
In case of hardware models, two types of parallel systems have been ex-
tensively studied: processors that communicate via a bus, and processors that
exchange information via point-to-point communication links.
The first type of parallel systems is non-scalable, since a bus is able to for-
ward only a fixed amount of messages at each time step. Hence such systems
can only can be used for efficient communication if the number of processors
connected to a bus is not too high. In fact, the slowdown of bus systems
w.r.t, the communication time is linear to the number of processors. For net-
works with point-to-point communication, the slowdown can be reduced to
grow only logarithmic to the number of processors. Hence, asymptotically,
networks with point-to-point communication are much more efficient than
bus topologies.
Many communication strategies have already been developed for specific
classes of network topologies. Of special interest are so-called universal rout-
ing strategies, that is, strategies that can be efficiently applied to arbitrary
network topologies. In addition to providing a unified approach to routing in
standard networks, the advantage of universal routing strategies is that they
are ideally suited to routing in irregular networks that are used in wide-area
networks and that arise when standard networks are modified or develop
faults. Furthermore, universal routing places no restrictions on the pattern
of communication that is being implemented (such as requiring that it form