![]() |
|||
|
|
Silvius Rus - Research
Why a representation for the flow of values?
Knowledge about the values that a variable may take at a particular
point in the program is important to most compiler analysis techniques.
For instance, this can help decide whether a conditional branch
may be taken or not, which can in turn lead to various optimization
opportunities.
The values, and the relations among them
can be used to compare memory reference indices and prove
predicate implications, which leads
to solutions of symbolic data dependence equations.
For instance, when we intersect two
memory location sets,
we compare their values using VEG information. If they belong to
disjoint ranges, the result of the intersection is the empty set.
Is it a hard problem?
In general, the problem is undecidable. However, most programs follow
simple patterns that can be isolated and mapped to a known model, such
as a recurrence with closed forms.
What has been done before?
There are several previous models most of which rely on abstract interpretation.
What do we do?
We created the Value Evolution Graph, a scalable, interprocedural
representation of the symbolic flow of values within a program.
This representation is used extensively
by operations with
memory location sets during the
analysis of memory references.
Our representation uses (and improves on) a GSA path disambiguation
technique, which leads to more accurate value ranges than those produced by
abstract interpretation methods.
You can click here for a detailed description of the Value Evolution Graph representation, or read the papers listed below.
Silvius Rus, Dongmin Zhang, Lawrence Rauchwerger, "The Value Evolution Graph and its Use in Memory Reference Analysis," In Proc. IEEE Int.Conf. on Parallel Architectures and Compilation Techniques (PACT), pp. 243-254, Antibes Juan-les-Pins, France, Sep 2004.
Proceedings(ps, pdf, abstract)
Silvius Rus, Dongmin Zhang, Lawrence Rauchwerger, "Automatic Parallelization Using the Value Evolution Graph," In Wkshp. on Lang. and Comp.
for Par. Comp. (LCPC), West Lafayette, Indiana, Sep 2004.
Proceedings(ps, pdf, abstract)
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 | Dwight Look College of Engineering | Texas A&M University Privacy statement: Computer Science Engineering TAMU |