Abstract
Manual program parallelization and optimization may be necessary
to reach a decent portion of the target architecture's peak
performance when automatic tools fail at choosing the best
strategy. While a broad range of languages and libraries provide
convenient ways to express parallelism, the difficult, time
consuming and error-prone parallelism identification and
extraction task is mostly left under the programmer's
responsibility. To address this issue, we introduce a
visualization-based approach to ease parallelism extraction and
expression that leverages polyhedral compilation technologies.
Our interactive tool, Clint, maps direct manipulation of the
visual representation to polyhedral program transformations with
real-time semantics preservation feedback. We conducted two user
studies showing that Clint's visualization can be accurately
understood by both experts and non-expert programmers, and that
the parallelism can be extracted better from Clint's
representation than from the source code in many cases.
Users
Please
log in to take part in the discussion (add own reviews or comments).