Requirements:
- Perl
- Python
(version 2.4.x or higher)
- gcc
(with Fortran, needed for Open64 compile) with version 3.3.x or later
- GNU
make
- CVS
- Subversion
Aside from the subset of
binaries
for applying the tool to some test
problems there are no precompiled
binaries available. All of the
components are publicly available for
download as a tar file or for incremental updates and builds of the
verified version via subversion.
Installing sources from tar file:
The latest tar file was created on 2008-09-07
and can be downloaded as:
OpenAD_2008-09-07.tgz
Installing sources from subversion repositories:
The code development for the OpenAD components uses mercurial for
version control (see also the OpenAD wiki). Many systems do not have
mercurial installed and therefore we decided to replicate snapshots in
Subversion
repositories hosted at Rice University (except for the
C/C++ front end which is not needed for the
Fortran tool). The main reason for using the subversion repositories is
to permit incremental source code updates and therefore incremental
builds. There is a
prefab skeleton environment for retrieving and
building all components. It can be
downloaded with:
- svn
co http://hpc.svn.rice.edu/r/OpenAD/trunk/ OpenAD
then go into the directory which has just been create by the
svn command
retrieve the other components into the prefab skeleotn by
Build components:
Download and build steps:
- change
directory into the top level directory
cd
OpenAD
- set
the environment
for building and using the tools for
- users of the sh
family:
source
./setenv.sh
- users of the csh
family:
source
./setenv.csh
- All
Makefiles are
written in GNU-make style. Build all
components with:
make
To
update
the
sources to the latest version simply untar a new snapshot
or rerun the
bin/goad
script and repeat
steps 1 and 2 to rebuild the components.
If the automatic download with
goad
does
not work one can change directory into the prefab skeleton, manually
retrieve all
components separately:
- xerces
-
the
C++ XML parser version 2.8.0;
prepackaged tgz
files are available or do
svn
co http://hpc.svn.rice.edu/r/xercesc/tags/version-openad xercesc
- boost
- (we use the graph library and checkout only the sources)
version 1.34.1 from the main branch; retrieve using
cvs
-z3 -d:pserver:anonymous@boost.cvs.sourceforge.net:/cvsroot/boost co -r
Version_1_34_1
boost/boost
- angel
-
the automatic
differentiation nested
graph
elimination
library
cvs
-z3 -d:pserver:anonymous@angellib.cvs.sourceforge.net:/cvsroot/angellib
co angel
- the repositories listed below can be
obtained from Rice University's HPC subversion server.
The checkout can be done
with:
- Open64
- the
Fortran90 compiler (we compile and use only the front end), see also here
svn
co http://hpc.svn.rice.edu/r/open64/tags/version-openad Open64
- OpenAnalysis
- the code analysis tool, see also here
svn
co http://hpc.svn.rice.edu/r/open-analysis/tags/version-openad
OpenAnalysis
- OpenADFortTk
- the
OpenAD Fortran ToolKit
svn
co http://hpc.svn.rice.edu/r/OpenADFortTk/trunk
OpenADFortTk
- xaif
- the XML
Abstract Interface schema (and examples)
svn
co http://hpc.svn.rice.edu/r/xaif/trunk xaif
- xaifBooster
- the C++ AD
transformation
engine
svn
co http://hpc.svn.rice.edu/r/xaifBooster/trunk xaifBooster
- EDG/Sage3:
C/C++ front end; This is not needed for the fortran tool; As
of
this time please contact
us to
obtain a copy.