ESR VO Software
What software is available on EGEE resources, and how to use it
Introduction
The usual software environment on EGEE worker nodes is not very rich of software or scientific applications. One can expect to find the usual linux bunch of interpreted languages (shells, perl, python, tcl, ...) in an older version than fresh releases GNU compilers in major version 3 (gcc, g++) with the notable exception of g77 or gfortran, and a full java 1.5 SDK (currently updating to sdk1.6). I might forget some of them but that's roughly all. For instance, NETcdf and HDF libraries are usually absent and blas and lapack sometimes as well.
Jobs have the opportunity to download and even to compile some software that will be used for the job itself. In order to save bandwidth and CPU cycles, a way for VOs to once for all download, compile and make it available to users.
The VO software
Concepts
VOs have the opportunity to deploy softwares in the so called VO software area. It resides on each site on a shared filesystem accessible to all Worker Nodes, at a location contained in the VO_myvo_SW_DIR environment variable.
In these directories, the VO Software Managers can install software, (still using regular jobs), and as long as site configuration allows it. Except for some licensed software, the soft installed by one VO is also available to others, that is users are not restricted to use only software installed by their own VO...
In order to advertise that some soft has been installed at some site, the Software Managers also have the possibility to publish tags in the Glue Schema, the backbone of the Grid's Information System. They can be listed by users and used to select sites to which direct jobs.
How to use this software
These tags have a mandatory VO-voname- prefix, usually followed by the software name and version, like VO-esr-octave-3.0.0
To list the software installed by VO esr type lcg-infosites --vo esr tag on some UI. To see the full list of tags on sites where your VO can run jobs, use this command: lcg-info --vo myvo --list-ce --attrs Tag
Tags can be used in order to direct jobs that needs some software only to sites where Software Managers already deployed it. It is done through the Requirements clause of the Job Description. See gLite User Guide example 6.2.0.2.
Then, you need to know where the software is precisely installed under VO_myvo_SW_DIR. There also may be some customization to the environment (probably LD_LIBRARY_PATH) to use them. The next coming section lists the tags published by VO ESR as well as precise software locations and required environment updates.
ESR tags notes
It is usually necessary to add $VO_ESR_SW_DIR/lib to envirinment variable LD_LIBRARY_PATH. If the host OS is 64 bits architecture (ie $(uname -m) = x86_64) also add $VO_ESR_SW_DIR/lib64.
Better prefix the call of any command by its full path (e.g. $VO_ESR_SW_DIR/bin/rdseed)than by prepending $VO_ESR_SW_DIR to PATH. Additionnal recommandations are provided where appropriate.
induced software
not all dependencies are "tagged"; here's a more detailed list, probably not extensive.
Sometimes found in the WN OS installation (/usr/lib or /usr/lib64) and then used by VO installation, othewise installed in ($VO_ESR_SW_DIR/lib). This also means that you can expect a minimum release version equals to the one currently used with Scientific Linux 4.
- blas and lapack are prerequisites any version of octave.
- hdf 5, netcdf 3 and libfftw3 are installed where octave-3.O.O is advertised.
full tag list
- VO-esr-gcc4: gcc, g++, gfortran (suitable for F9X and F77) verion 4.2.0
- installed under $VO_ESR_SW_DIR/gcc4, i.e. compilers located at $VO_ESR_SW_DIR/gcc4/bin/gcc, $VO_ESR_SW_DIR/gcc4/bin/gfortran, $VO_ESR_SW_DIR/gcc4/bin/g++
- add $VO_ESR_SW_DIR/gcc4/lib to LD_LIBRARY_PATH to use the compilers, as well as produced software.
- If the host OS is 64 bits architecture (ie $(uname -m) = x86_64) also add $VO_ESR_SW_DIR/gcc4/lib64
- VO-esr-octave: octave 2.1.53, without any extensions.
- path: $VO_ESR_SW_DIR/bin/octave
- add $VO_ESR_SW_DIR/lib to LD_LIBRARY_PATH to use
- compiled with VO installed gcc4, see recommandation about env
- VO-esr-octave-3.0.0 octave 3.0.0 with hdf extensions, netcdf support provided by module octcdf. Installation of other modules from octave forge possible.
- path: $VO_ESR_SW_DIR/bin/octave-3.0.0
- compiled with VO installed gcc4, see recommandation about env
- also add $VO_ESR_SW_DIR/lib to LD_LIBRARY_PATH
- VO-esr-elmer Full elmer 5.3.2 libraries installed in $VO_ESR_SW_DIR/elmer-5.3.2
- compiled with VO installed gcc4, see recommandation about env.
- source $VO_ESR_SW_DIR/elmer-5.3.2/setup.sh before use (will not set gcc4 env, set gcc4 environment before sourcing setup.sh).
- Contact CSC support if additionnal details needed.
- VO-esr-geoscope statically compiled sofware requirering no addition to LD_LIBRARY_PATH
- SAC2000 under $VO_ESR_SW_DIR/bin/sac2000
set env. var. SACAUX to $VO_ESR_SW_DIR/share/sac2000 - rdseed version 2.7 under $VO_ESR_SW_DIR/bin/rdseed
version 2.6: $VO_ESR_SW_DIR/bin/rdseed2.6
- SAC2000 under $VO_ESR_SW_DIR/bin/sac2000
- VO-esr-metadata-1.2 OGSA-DAI 2 client java libraries and wrappers
- jar (java 1.4) files in $VO_ESR_SW_DIR/ogsadai/lib. If not using ESR wrappers, do:
for i in 'ls $VO_ESR_SW_DIR/ogsadai/lib/*.jar'; do CLASSPATH=$CLASSPATH:$i done export CLASSPATH="$CLASSPATH:."
-
- java required options options are:
-Xmx128m -Xbootclasspath/p:$VO_ESR_SW_DIR/ogsadai/lib/xalan.jar:$VO_ESR_SW_DIR/ogsadai/lib/xercesImpl.jar:$VO_ESR_SW_DIR/ogsadai/lib/xml-apis.jar -DX509_USER_PROXY=$X509_USER_PROXY128M is minimum required memory
-
- ESR CLI wrappers (automatically set appropriate environment) in $VO_ESR_SW_DIR/ogsadai/bin
- VO-esr-IDL-5.6 RSI IDL(tm) 5.6. Client license required.
- software under $VO_ESR_SW_DIR/bin/idl
- set IDL_DIR to $VO_ESR_SW_DIR/rsi/idl_5.6, and LM_LICENSE_FILE pointing to your license file
To be installed soon:
- grelc clients
- gdl (GNU idl interpreter)
