Omega Project Source Release, version 1.2 (August 2000)
We have released
version 1.2 of the Omega
Project software,
including:
-
The Omega library, a set of routines for manipulating linear constraints
over integer variables, Presburger formulas, and Integer tuple
relations and sets.
-
The code generation library,
a set of routines for generating code to scan the points in the
union of a number of convex sets. (requires the Omega library)
- The Omega calculator,
a text-based interface to the Omega library (requires both above
libraries)
- The Uniform library, a source to source parallelizing transformation
system, described in Wayne Kelly's Ph.D. dissertation.
-
Petit,
a educational/research tool for analyzing array data dependences
(needs all three libraries)
-
Or, just get everything,
in one big tar file.
Executables
We currently have the following versions available:
New or Recent Features
- Support for more modern compilers (up to g++ 2.95.2)
- Better documentation for, and control of, compile-time and run-time arguments (use petit -\?)
- Code generation for memory mappings
- Optional limitation of dependence analysis to a provably polynomial domain
- See also the official release notes
Documentation
Documentation (now increasingly out of date) includes:
The Omega library/calculator manipulates sets of integer tuples and
relations between integer tuples. Some examples include:
{ [i,j] : 1 <= i,j <= 10};
{ [i] ->[i,j] : 1 <= i < j <= 10};
{ [i,j] ->[j,j'] : 1 <= i < j < j' <= n};
The conditions describing a set or tuple can be an
formulas can described by an arbitrary Presburger formula.
Relations and sets can be combined using functions such as
composition, intersection, union and difference. It
also provides routines to generate code to iterate over
the points in an integer tuple set. The Omega library provides
a high-level, C++ interface to our routines. The Omega calculator
is a text-based interface to the Omega library.
The implementation of the Omega Calculator have been done
by a number of
people at the University of Maryland:
Wayne Kelly,
Vadim Maslov,
William Pugh,
Evan Rosser,
Tatiana Shpeisman,
Dave Wonnacott
As usual, the Omega Project is located at
omega@cs.umd.edu
Web Accessibility