| Version 5 (modified by , 17 years ago) ( diff ) |
|---|
Warning: this installation is not yet complete!
- There is no pantasks support.
Versions of IPP on Odyssey
- Most people are using a copy of IPP build from the SVN development repository; this version is getting the most support.
- Other versions exist. For example, the 'default' version is still ipp-2.6.1 .
- The installation directories for IPP are under /odyssey/apps/ipp ; the source code resides under /odyssey/apps/src/ipp .
IPP User Setup on Odyssey for the SVN top-of-tree version
This is called the ipp-SVN_top version, and is the best-supported version of IPP on Odyssey.
- The general description of Odyssey is here: Odyssey_Cluster_Configuration
- The binaries for ipp-SVN_top reside in /odyssey/apps/ipp/ipp-SVN_top/psconfig, with source in /odyssey/apps/src/ipp/ipp-SVN_top .
- This system uses Modules for environment management, so there is a small change in setup compared to most IPP installations. Instead of the usual modification to .bashrc or .cshrc, for which the .cshrc version looks like:
if (-e /path/to/psconfig.csh) then alias psconfig "source /path/to/psconfig.csh" else alias psconfig "echo psconfig not available" endif
the following code suffices for both .bashrc and .cshrc:
module load hpc/ipp/ipp-SVN_top
- To finish setting up the shell environment, libcfitsio doesn't seem to work properly unless the environment variable CFITSIO points to the library itself. Thus the user's .bashrc should include:
module load hpc/ipp
export CFITSIO=${PSCONFDIR}/${PSCONFIG}/lib/libcfitsio.a
.cshrc should include:
module load hpc/ipp
setenv CFITSIO ${PSCONFDIR}/${PSCONFIG}/lib/libcfitsio.a}
There is no need to use a psconfig command with this version.
- Users must set up several config files in their home directories:
cd ${HOME}
cp /odyssey/apps/src/ipp/ipp-SVN_top/ipp/ippconfig/ipprc.config ./.ipprc
cp /odyssey/apps/src/ipp/ipp-SVN_top/ipp/ippconfig/dvo.site ./.ptolemyrc
Edit ${HOME}/.ipprc to uncomment the line near the top of the file which includes $HOME/.ippconfig in the config search path. These files can be customized to implement your preferred config options.
<b>DO NOT</b> set the environment variable PSCONFIG in your ${HOME}/.psconfigrc file. The <em>module load</em> command handles that for you; setting it separately in ${HOME}/.psconfigrc will interfere with the function of the <em>module</em> commands.
Build Notes for ipp-SVN_top
- The modulefile /odyssey/apps/modules-3.2.6/Modules/modulefiles/hpc/ipp/ipp-SVN_top is used to implement the 'module load' behavior described above.
- There is a file named source_me.csh in /odyssey/apps/src/ipp/ipp-SVN_top which sets appropriate environment variables for the build.
- Commands for a complete update and rebuild under tcsh would thus be:
cd /odyssey/apps/src/ipp/ipp-SVN_top/ipp source ../source_me.csh svn update cd psconfig psbuild -dev -rebuild -clean -optimize >& /tmp/psbuild.log
- Errors with messages like:
libtool: link: `/odyssey/apps/ipp/default.linrh64/lib/libgsl.la' is not a valid libtool archive
seem to be the result of broken libtool archive (.la) files left over from failed earlier compiles. The fix is to remove all .la files from both the /odyssey/apps/src/ipp/ipp-2.6.1 and /odyssey/apps/ipp/ipp-2.6.1/psconfig/default.linrh64 trees and do a 'psbuild -clean -rebuild -extbuild'.
- In ippconfig/recipes/ppStack.config, it's worthwhile to change TEMP.DIR from /tmp to /scratch. Some jobs seem
to bail because /tmp fills up, and the mess doesn't automatically get cleaned up when the job ends.
IPP User Setup for IPP 2.6.1 on Odyssey
This version is somewhat out-of-date. Note especially the fact that the 'module load' command must be followed by a 'psconfig' command for this version.
- The general description of Odyssey is here: Odyssey_Cluster_Configuration
- The binaries for ipp-2.6.1 reside in /odyssey/apps/ipp/ipp-2.6.1/psconfig, with source in /odyssey/apps/src/ipp/ipp-2.6.1 .
- This system uses Modules for environment management, so there is a small change in setup compared to most IPP installations. Instead of the usual modification to .bashrc or .cshrc, for which the .cshrc version looks like:
if (-e /path/to/psconfig.csh) then alias psconfig "source /path/to/psconfig.csh" else alias psconfig "echo psconfig not available" endif
the following code suffices for both .bashrc and .cshrc:
module load hpc/ipp
- To finish setting up the shell environment, the usual 'psconfig default' command is needed. In addition, libcfitsio doesn't seem to work properly unless the environment variable CFITSIO points to the library itself. Thus the user's .bashrc should include:
module load hpc/ipp
psconfig default
export CFITSIO=${PSCONFDIR}/default.linrh64/lib/libcfitsio.a
.cshrc should include:
module load hpc/ipp
psconfig default
setenv CFITSIO ${PSCONFDIR}/default.linrh64/lib/libcfitsio.a
- Users must set up several config files in their home directories:
cd ${HOME}
cp /odyssey/apps/src/ipp/ipp-2.6.1/ippconfig/ipprc.config ./.ipprc
cp /odyssey/apps/src/ipp/ipp-2.6.1/ippconfig/dvo.site ./.ptolemyrc
Edit ${HOME}/.ipprc to uncomment the line near the top of the file which includes $HOME/.ipp in the config search path. These files can be customized to implement your preferred config options.
<b>DO NOT</b> set the environment variable PSCONFIG in your ${HOME}/.psconfigrc file. The <em>module load</em> command handles that for you; setting it separately in ${HOME}/.psconfigrc will interfere with the function of the <em>module</em> commands.
Build Notes for IPP 2.6.1
- The modulefile /odyssey/apps/modules-3.2.6/Modules/modulefiles/hpc/ipp is used to implement the 'module load' behavior described above.
- Except for the substitution of 'module load' for the edits to ${HOME}/.cshrc and ${HOME}/.bashrc, the
installation proceeds exactly as described in the INSTALL file in /odyssey/apps/src/ipp/ipp-2.6.1 up through the end of step (3).
- As per CFITSIO, do:
export LDFLAGS=-L/odyssey/apps/ipp/ipp-2.6.1/psconfig/default.linrh64/lib
before doing the 'psbuild' command of INSTALL step (4). (Modify this appropriately if LDFLAGS is already defined).
- Errors with messages like:
libtool: link: `/odyssey/apps/ipp/default.linrh64/lib/libgsl.la' is not a valid libtool archive
seem to be the result of broken libtool archive (.la) files left over from failed earlier compiles. The fix is to remove all .la files from both the /odyssey/apps/src/ipp/ipp-2.6.1 and /odyssey/apps/ipp/ipp-2.6.1/psconfig/default.linrh64 trees and do a 'psbuild -clean -rebuild -extbuild'.
Known Problems
- It's unclear how to integrate pantasks with the queueing system.
- site.config needs to be kept up to date as additional data directories are established.
