Alchemy seminar location:Orsay date:20 November 2009
Although parallel hardware has become ubiquitous, many
designers still use sequential programming languages,
which do not reveal the available parallelism in an application.
However, if an application satisfies some constraints then
a parallel specification can be derived automatically.
In particular, if the application can be represented in
the polyhedral model, then a polyhedral process network
can be constructed from the application that exposes the
task-level parallelism. The main challenge in this construction
is the computation of bounds on the buffers of the communication channels
between processes. We explain the main steps of the construction:
dataflow analysis prescribes the communication channels;
parametric counting determines the number of tokens in each channel
at any given time during the execution of a given schedule;
the computation of parametric upper bounds yields safe sizes
for all communication channel buffers.