Software Installation Request Policy
RCAC will go to every reasonable effort to provide a broadly useful set of popular software packages for research cluster users. However, many domain-specific packages that may only be of use to single users or small groups of users are beyond the capacity of staff to fully maintain and support. Please consider the following if you require software that is not available via the module command:
- If your lab is the only user of a software package, RCAC staff may recommend that you install your software privately, either in your home directory or in your lab's Research Data Depot space. If you need help installing software, support staff may be able to provide limited help.
- As more users request a particular piece of software, RCAC may decide to provide the software centrally. Matlab, Python (Anaconda), NAMD, GROMACS, and R are all examples of frequently requested and used centrally-installed software.
- Python modules that are available through the Anaconda distribution will be installed through it. RCAC staff may recommend you install other Python modules privately.
- If required libraries or basic utilities are available from the operating system vendor (libpng, GTK, gzip, etc) they may be installed upon request using the Red Hat package manager.
If you're not sure how your software request should be handled or need help installing software please contact us.
RCAC provides a suite of broadly useful software for users of research computing resources. This suite of software includes compilers, debuggers, visualization libraries, development environments, and other commonly used software libraries. Additionally, some widely-used application software is provided.
"Devel" Recommended Environment
For each cluster, RCAC makes a recommendation regarding the compiler, math library, and MPI library. This is a proven stable compiler, math, and MPI library combination that is recommended if you have no specific requirements. To load the recommended set:
$ module load devel
The GNU Compiler (GCC) is provided via the module command on all clusters, and will be maintained at a common version compatible across all clusters. Third party software built with GCC will use this GCC version, rather than the GCC provided by the operating system vendor. To see available GCC compiler versions available from the module command:
$ module avail gcc
RCAC will build and maintain an integrated, tested, and supported toolchain of compilers, MPI libraries, data format libraries, and other common libraries. This toolchain will consist of:
- Compiler suite (C, C++, Fortran) (Intel and GCC)
- BLAS and LAPACK
- MPI libraries (OpenMPI, MVAPICH, Intel MPI)
Each of these software packages will be combined with the stable "devel" compiler, the latest available Intel compiler, and the common GCC compiler. The goal of these toolchains is to provide a range of compatible compiler and library suites that can be selected to build a wide variety of applications. At the same time, the number of compiler and library combinations is limited to keep the selection easy to navigate and understand. Generally the toolchain built with the latest Intel compiler will be updated at major releases of the compiler.
Commonly Used Applications
RCAC will go to every reasonable effort to provide a broadly useful set of popular software packages for research cluster users. Software packages such as Matlab, Python (Anaconda), NAMD, GROMACS, R, and others that are useful to a wide range of cluster users are provided via the module command.
Other Software Repositories
Some user communities may maintain copies of their domain software for others to use. For example, the Purdue Bioinformatics Core provides a wide set of bioinformatics software for use by any user of the clusters. RCAC recommends first checking the Bioinformatics repository before requesting or installing bioinformatics software.
To access and inventory this software:
$ module load bioinfo $ module avail
Changes to Provided Software
Changes to available software, such as the introduction of new compilers and libraries or the retirement of older toolchains, will be scheduled in advance and coordinated with system maintenances. This is done to minimize impact and provide a predictable time for changes. Advance notice of changes will be given with regular maintenance announcements and notices printed through "module load". Be sure to check maintenance announcements and job output for any upcoming changes.
Long Term Support
RCAC understands the need for a stable and unchanging suite of compilers and libraries. Research projects are often tied to specific compiler versions throughout their lifetime. RCAC will go to every reasonable effort to provide the "devel" environment and the common GCC compiler as a long term supported environment. These suites will stay unchanged for longer periods than the toolchain built with the latest available Intel compiler.