The policies regarding the installation of software is on this page. In general, scientific software is installed as requested with the caveats noted in that section.
A list of installed software is kept at this page.
On Ocelote, many libraries like FFTW and MPICH came with the Cluster Manager. As a consequence, they have different naming from the other clusters. For example, module load blas on the older clusters will need to be module load blas/gcc/64. There are frequently versions of these libraries that have several compilation options, for example, blas was created with four different compilers on Ocelote.
Many popular software packages are installed and available as modules. There may be several versions of a package available.
|Display all the software and versions installed on the system|
|module list||Display the software you have loaded in your environment|
|module load modulename||Load a software module in your environment|
|module purge||Unload all the software modules from your environment|
|module unload modulename|
Unload a specific software package from your environment
|module help||Display a help menu for the module command|
To submit a request to have software installed on the UA HPC systems use the HPC Software Install Request form: http://uits.arizona.edu/forms/hpc-software-install-request
You can install software packages into your home directories with the space that is allocated to you with your HPC account. However you cannot install software that requires root permission, or use a method like "yum install" that accesses system paths.
Follow this link for detailed information on how to install your own software
Follow this link for more information on using Perl.
Follow this link for more information on using Python.
You can install your own R packages which is similar to using virtualenv with Python
MATLAB performs its own hardware discovery and it might try to access all the cores and the memory of the node even if the full node wasn't allocated. That will result in scheduler killing the job. To prevent that the full Ocelote node of 28 cores and 168GB of memory should be allocated to run a MATLAB job.
Like any other application, MATLAB has to be loaded as a module before you can use it. To see all the installed versions of the MATLAB use command module avail matlab.
The typical procedure for performing calculations on UA HPC systems is to run your program non-interactively on compute nodes. The easiest way to run MATLAB non-interactively is to use input/output redirection. This method uses Linux operators < and > to point MATLAB to the input file and tell where to write the output (see the example script). The other method is to invoke MATLAB from the PBS script and execute specified statement using -r option. For details please refer to the manual page of matlab command:
#!/bin/bash #PBS -N job_name #PBS -W group_list=group_name #PBS -q standard #PBS -l select=1:ncpus=28:mem=168gb:pcmem=6gb #PBS -l walltime=01:00:00 #PBS -l cput=28:00:00 cd $PBS_O_WORKDIR module load matlab matlab -nodisplay -nosplash < script_name.m > output.txt
The options -nodisplay and -nosplash in the example prevent MATLAB from opening elements of GUI. To view the full list of options for matlab command load the MATLAB module and type matlab -h in Linux prompt, or use the link above to the manual page on MathWorks website."
Apache Spark is a fast and general-purpose cluster computing system. However it has not been installed for support in a multi-node environment as yet. That functionality is planned for the future. It provides high-level APIs in Java, Scala, Python and R, and an optimized engine that supports general execution graphs. It also supports a rich set of higher-level tools including Spark SQL for SQL and structured data processing, MLlib for machine learning, GraphX for graph processing, and Spark Streaming.
The principles are similar for ElGato except that the intel and intel-mpi compilers are only available for the 2013 versions.
openmpi is available both for version 1.6.5 and version 1.8.1
El Gato has a separate web site with easy to follow instructions.
For AVX2 support, compile with the -xHOST option. Note that -xHOST alone does not enable aggressive optimization, so compilation with -O3 is also suggested. The -fast flag invokes -xHOST, but should be avoided since it also turns on interprocedural optimization (-ipo), which may cause problems in some instances.
For GNU compilers, AVX support is only available in version 4.6 or later. For AVX support, compile with -mavx