![]() |
|||
|
|
Silvius Rus - Research
Why a representation for array data flow?
Array data flow analysis is a core technique crucial to several
optimizations such as array privatization, constant propagation,
and invariant detection.
The Sstatic Single Aassignement form
has proved its utility as an explicit data flow representation for scalars.
Array SSA for arrays was proposed in a few forms but it has not had the
same success.
Is it a hard problem?
Precise array data flow information is often hard and sometimes impossible
to compute at compile-time. Memory reference patterns can be
computed within the program using arbitrarily complex algorithms
or can be composed based on values read from an input file.
What has been done before?
Most array data flow representations have been associated with a
particular compiler or a particular goal (such as privatization), therefore
they do not reach the abstraction level of SSA.
Array SSA has been proposed before as an explicit representation for
array data flow information. However, the previously proposed
representation cannot be used at compile-time because it does not
have an analytical representation for array regions.
Additionally, at run-time it incurs large time penalty because it
is proportional to the number of dynamic memory references.
What do we do?
We provide a scalable explicit array data flow representation of the program.
We use Uniform Sets of References to annotate def-use edges, thus
capturing, in a compact analytical form, data flow information that
is aggregated across arbitrarily large interprocedural contexts and
that is flow-control sensitive.
Moreover, our representation benefits from Hybrid Analysis technology
and provides lightweight run-time tests to provide accurate
data flow information to dynamic optimizations.
You can click here for a detailed description of Array SSA.
Parasol Home | Research | People | General info | Seminars | Resources Parasol Lab, 301 Harvey R. Bright Bldg, 3112 TAMU, College Station, TX 77843-3112 Contact Webmaster Phone 979.458.0722 Fax 979.458.0718
Department of Computer Science and Engineering | Dwight Look College of Engineering | Texas A&M University Privacy statement: Computer Science and Engineering Engineering TAMU |