Installing Software on HPC
There are different ways that software modules can be installed on ARCC HPC Systems, including modules that are available to everyone and modules that are available to a specific project or user. When new software installation is needed, knowing whether the expected users are an individual, a team/lab, or a wider group of users across different projects, and the software installation complexity, can help to determine the best way to install the software.
Software Directory in /project
By default all new HPC projects get an extra directory named 'software' inside of /project/projectname created upon project creation. This directory has extra storage on top of the standard quota dedicated to it for the purpose of software installations. ARCC recommends that researchers use this directory as the location for installing software rather than in their /home directories.
Installation Permissions
sudo or root
If following some published installation instructions that say to use 'sudo' or 'root' to install software, please keep in mind that researchers do not have this permission and never will.
Anyone who has access to the project directory has the appropriate permissions to install software in the /software directory. Furthermore, if other project members also need to use the same software, installing it in /software means that it only needs to be installed once instead of only once.
execute permissions
After an installation is complete, occasionally the execute permissions may be tied to the user who installed it instead of all project members. This can be updated with the 'chmod' Linux command if needed.
Installation Methods
Most software installation methods are supported on ARCC HPC systems. That is if they are able to run on Linux.
Windows Only Applications
Attempting to install software made for the Windows operating system will often result to be unsuccessful, the use of emulators are also problematic and are therefore discouraged by ARCC.
Installing From Source/Binary
Installing software from source is possible on any of ARCC's HPC systems as long as they don't require sudo or root level permissions.
Installing Using Virtrual Environments or Containers
-
Using Containers
Learn how to use containerized applications on ARCC's HPC systems. This section covers apptainer basics, running containerized applications, and best practices for using containers on HPC.
-
Virtual Environments
Learn how to create and manage virtual environments on ARCC's HPC systems. This section covers Python virtual environments and Conda environments.
Learn More
Learn more about: