Body
Many common software packages are available as modules for you to load on the Mill Cluster, but you may need additional software to complete your research. The following are the common methods by which software can be installed for use.
Licensed or Very Common Software
Many pieces of software are subject to license agreements that restrict who may use them. These are in general only installed by staff and made available as modules with the necessary restrictions in place. If you find that such a program is necessary for your work, please create a ticket at help.mst.edu in the software category, making sure to include that you need to use the software on the Mill Cluster. Once we receive confirmation that the software is approved we will be able to install it for you as a module.
Similarly, if a software package is going to be used by many people we will usually install it as a module so that the same software isn’t installed many times, taking up extra storage space. If you think that the software you need falls into this category, please start by submitting a ticket requesting approval of the software (https://tdx.umsystem.edu/TDClient/48/Portal/Requests/ServiceDet?ID=1397)
Compiled Software
NOTE: DO NOT compile software on the Login Node.
Some software is user-compileable. We have modules available for common compiler suites like GCC and Intel. Many software compilations have additional dependencies, so be sure to check for other modules that you may need to load for things like MPI or Nvidia compatibility. Some other dependencies can be managed with Conda environments. Every software compilation is different, so an in-depth tutorial here would be fruitless, but there is plenty of documentation to be found online for the different tools if the instructions for your particular software are coming up short.
Installation with Conda
Conda is a package manager that is commonly used for python-based work, but is also useful for other research workflows including R. If you need multiple versions of certain dependencies for different downstream packages, Conda is the best way to manage having both versions available without extra complications.
Containers for Software
There are a few packages that are best installed as containers. While we do not support Docker on the Mill, we do support Apptainer (FKA Singularity). This is a comparable container engine, and containers that work with Docker can be converted easily for use with Apptainer.