Updated 2022-09-13
Phoenix Cluster Software Guide¶
Overview¶
- Make a request to add a new software here.
- The
pace-getexample
can give an example PBS script and job for some programs. - You can view the most up-to-date list of software on the Phoenix Cluster by
running
module spider
when logged into the cluster.
Example PBS batch scripts command line utility (pace-getexample
)¶
The pace-getexample
command is a command-line utility is now available to download example PBS batch scripts for frequently used PACE software modules. To see a list of currently available examples, type pace-getexample --list
and to see how to download and submit an example job to the queue, type pace-getexample --help
. Note, not all software modules have an example. We provided examples for the most used software modules (i.e., Tier 1) at PACE.
Available Modules after Slurm Migration¶
Visit our software list for all software available on PACE's Slurm clusters, including Phoenix after migration.
module spider¶
- The
module spider
command on a Cluster using RHEL7 can help you find a software and see important information about the software and its dependencies.
Using module spider to list all available modules¶
- Running
module spider
will list all softwares and what versions of them are available on the Cluster.
[svemuri8@login-hive1 ~]$ module spider
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
The following is a list of the modules and extensions currently available:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
abaqus: abaqus/2018, abaqus/2019
abinit: abinit/8.10.3-mva2
anaconda2: anaconda2/2019.07, anaconda2/2019.10
Python environment
anaconda3: anaconda3/2019.07, anaconda3/2019.10
Python environment
arpack-ng: arpack-ng/3.7.0-mva2
autoconf: autoconf/2.69
automake: automake/1.13.4, automake/1.16.1
bedtools2: bedtools2/2.27.1
blat: blat/35
boost: boost/1.70.0
bowtie2: bowtie2/2.3.5.1
cairo: cairo/1.16.0
charmpp: charmpp/6.9.0
cmake: cmake/3.9.4, cmake/3.15.1, cmake/3.15.5
comsol: comsol/5.4
cp2k: cp2k/6.1-mva2
cuda: cuda/10.0, cuda/10.1
lines 1-40
- Only 40 lines will be displayed at a time. You can hit Enter to view more lines or q to exit.
Using module spider to find specific software¶
- You can use
module spider [software name]
to find a particular software, view information about it, and see its dependencies.
[svemuri8@login-phoenix ~]$ module spider octave
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
octave: octave/4.4.1-mva2
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Properties:
You will need to load all module(s) on any one of the lines below before the "octave/4.4.1-mva2" module is available to load.
gcc/8.3.0 mvapich2/2.3.1
Help:
GNU Octave is a high-level language, primarily intended for numerical
computations. It provides a convenient command line interface for
solving linear and nonlinear problems numerically, and for performing
other numerical experiments using a language that is mostly compatible
with Matlab. It may also be used as a batch-oriented language.
PACE Meta Modules¶
Phoenix demonstrates PACE's new software repository. One feature of this repository is that compilers and MPI implementations will be upgraded periodically. However, it is understood that users may need to freeze on software versions for research.
New users are introduced to software via Lmod modules. One way to understand
how this works is to examine the pace
module.
module show pace # we designate a version of YYYY.MM
# part of output:
load("intel/19.0.3","mvapich2/2.3.1","gcc-compatibility/8.3.0")
Keeping up with compilers and MPIs is a part of PACE research, and enables users to determine optimizations and bug fixes with newer releases.
As can be seen above, we support software applications primarily under Intel and MVAPICH2 as first effort.
Default MPI Implementation and Compilers¶
PACE supports a variety of MPIs and compilers. However, building out entire ecosystems for every combination of MPI and compiler is not feasible. Hence, the PACE software team will respond to user needs; feedback is vital to shaping future software.
A current list of supported MPI and compiler combinations are in the default pace/2020.01
module, which is the default module for users that do not customize their module collections.
We primarily support:
- Intel 19 and MVAPICH2 2.3 (primary)
- By default, we load a gcc-compatibility module which allows for a GCC 8 library backend.
- GCC 8 and MVAPICH2 2.3 (secondary)
Other versions of GCC exist (7 and 9), as well as the system GCC 4.8.5 in
/usr/bin/gcc
, which can be used when all modules are unloaded. As needed,
PACE will provide support with other combinations; please note that familiar
libraries will not be automatically supported with the other compilers; contact us at
pace-support@oit.gatech.edu to discuss software needs.
Other MPIs and Access to MKL¶
We are working to support new compilers and MPIs on a case-by-case basis.
However, you have access to Intel MPI simply by unloading the MVAPICH2 module.
Additionally, the intel module includes support for MKL. MKL support for GCC modules is provided by using the mkl
module