summaryrefslogtreecommitdiff
path: root/omega/README
diff options
context:
space:
mode:
authordhuth <derickhuth@gmail.com>2014-11-21 13:35:20 -0700
committerdhuth <derickhuth@gmail.com>2014-11-21 13:35:20 -0700
commita1834b22c43c282442b0cb164767e6c877cf0e5b (patch)
treebedc5be7d1bdb8d32c1868caa496a8a1530d8d8a /omega/README
parentded84bb4aec7461738e7b7033d782a518e2c606b (diff)
parenteb9236c5353785472ae132f27e1cfb9f1e4264a5 (diff)
downloadchill-a1834b22c43c282442b0cb164767e6c877cf0e5b.tar.gz
chill-a1834b22c43c282442b0cb164767e6c877cf0e5b.tar.bz2
chill-a1834b22c43c282442b0cb164767e6c877cf0e5b.zip
Merge branch 'master' into doe
Diffstat (limited to 'omega/README')
-rw-r--r--omega/README96
1 files changed, 96 insertions, 0 deletions
diff --git a/omega/README b/omega/README
new file mode 100644
index 0000000..378f4bd
--- /dev/null
+++ b/omega/README
@@ -0,0 +1,96 @@
+Omega+ and CodeGen+ 2.2 open source release
+See LICENSE file for copyright information.
+
+Omega+ is a mathematical library for manipulating integer linear
+constraints over integer variables in first order logic, and
+operations on integer sets and their mappings. CodeGen+ is a code
+generation library by scanning the points in a union of polytopes.
+A command-line interface to libraries is also included.
+
+
+What is new?
+============
+
+version 2.2:
+ * Redesigned polyhedra scanning which generates higher quality code
+ than before especially for complex set of polyhedra.
+ * New SimpleHull for hull approximation (deprecate Hull).
+ * Command line editing and history support in calculator.
+
+version 2.1:
+ * Updated "effort" parameter's meaning in MMGenerateCode: value n
+ (n >= 0, default to 1) means that control overheads are removed
+ from all n-depth innermost loops.
+ * Enhanced stride handling in the code generation.
+ * Support code generation for a set of iteration spaces with different
+ dimensionality.
+ * New ConvexRepresentation that reduces the number of conjuncts in a union
+ (deprecate CheckForConvexPairs and CheckForConvexRepresentation).
+ * Handle floor/ceiling defined variables cleanly in output code.
+ * Use namespace omega for the library.
+ * New closure functions contributed by Klimek Tomasz (R^+ and R^@).
+
+version 2.0:
+ * Improved internal code generation interface so that it generates both
+ string and rose ouput now, and more easily extendable for new compiler
+ intermediate representations.
+ * Improved gist function so that integer modular constraints are handled
+ more gracefully.
+ * Merge duplicate if-conditions in generated code, which might still miss
+ a few opportunities due to the way AST is constructed.
+ * Correct output/input variable substitution for non-unimodular
+ mapping relations.
+ * Deprecate Omega's assert/Exit interface.
+ * Some fixing in calculator's parsing and interactive interface.
+
+version 1.2 (Omega Project):
+ * Support for code generation with memory mappings, as described in
+ Tina Shen's MASPLAS '98 paper. This is available in oc via the
+ tcodegen function; see examples/calc/mm* for examples.
+ * Use of the compile-time flags -DSTILL_CHECK_MULT=1 -DNDEBUG turns off
+ all assertions and chechk _except_ some checks for integer overflow
+ during variable elimination in the omega core. Unless you know a priori
+ that overflow cannot occur, you should use this instead of just plain
+ -DNDEBUG when optimizing.
+ * You can now use "assertUnsatisfiable relation" to cause oc to quit if
+ "relation" could be satisfiable. This is mainly useful when running oc
+ in a script.
+
+version 1.1 (Omega Project):
+ * An exact convex hull computation.
+ * An improved system for handling inexact relations, including taking
+ upper and lower bounds, checking for subsets, and checking tautologies.
+ * Better handling of existentially quantified variables: we can now
+ negate and generate code for sets like:
+ {[i]: 1 <= i <= n && exists (alpha: i <= 10*alpha <= i+k)}.
+ * An Example operator, that gives a sample solution to set or relation.
+
+version 0.90 (Omega Project):
+ * Initial release.
+
+
+DIRECTORIES
+===========
+
+omega/
+ omega_lib/ source files for the Omega+ library
+ code_gen/ source files for the CodeGen+ library
+ omega_calc/ source files for the calculator
+ examples/ script examples using calculator
+ c_code/ code examples for using libraries
+ bin/ links to executables: oc
+ lib/ links to libraries: libomega.a, libcode_gen.a
+ include/ links to header files
+
+
+DOCUMENTATION AND QUESTIONS
+===========================
+
+There are only old documents from the Omega Project under doc/ subdirectory
+for now.
+
+Software website:
+ http://www.chunchen.info/omega
+
+For questions, bug reports or suggestions, please contact:
+ mailto:riverofdreams@gmail.com