Fair Usage Guidelines¶
The Deepthought HPC provides moderate use at no charge to Flinders University Colleges. This is enforced by the Fairshare System and is under constant tweaking and monitoring to ensure the best possible outcomes. The current split of resources between colleges is:
- 45 % for CSE
- 45 % for CMPH
- 10 % for General
For example, if the HPC had 1000 ‘shares’ that represent its resources, the following would be demonstrative of how they are allocated:
- 450 ‘shares’ for CSE
- 450 ‘shares’ for CMPH
- 100 ‘shares’ for General
Storage Usage Guidelines¶
See the page at: StorageGuidelines, for details on what storage is present and other details. A general reminder for HPC Storage:
- All storage is volatile and no guaranteed backup systems are in place
- Cleanup you /home and /scratch regularly
- Cleanup and /local storage you used at the end of each job
Software Support Guidelines¶
HPC Users are encouraged to compile and install their own software when they are comfortable to do so. This can be done freely on the compute nodes. The HPC Head-Node is a differnet hardware architecture to the compute nodes. You will most likely encounter SIG4, Illegal Instruction if you attempt to compile programs on the head-node for usage on the compute-nodes.
The HPC Support team cannot maintain and provide active support for every piece of software that users of the HPC may need. The following guidelines are an excerpt from our HPC Software Support Policy to summarise the key points. For more information on how the software can be loaded/unloaded on the HPC, head on over to the Module System.
Supported Software Categories¶
The following categories are how the HPC Team asses and manage the differing types of Software that are present on the HPC. For more information, each will have their own section.
- Core ‘Most Used’ Programs
- Licensed Software
- Transient Packages
- Interpreters / Scripting Interfaces
Core ‘Most Used’ Programs¶
Holds the most used packages on the HPC. The HPC Team monitors the loading and unloading of modules, so we can manage the lifecycle of software on the HPC. As an example, some of the most used program on the HPC are:
- Python 3.9
- CUDA 11.2 Toolkit
While not an exhaustive list of the common software, it does allow the team to focus our efforts and provide more in-depth support for these programs. This means they are usually first to be updated and have a wider range of tooling attached to them by default.
Licensed Software covers the massive packages like ANSYS (which, all installed is about 300 gigabytes) which are licensed either to the HPC specifically or obtained for usage via the University Site licenses. This covers things like:
- ANSYS Suite (Structures, Fluids, Electronics, PrepPost & Photonics)
Generally, these libraries are required as dependencies for other software, however there are some core libraries that are used more than others. As an example, the Geometry Engine - Open Source (GEOS) Library is commonly used by other languages (R, Python) to allow for Geo-Spatial calculations. Some of the common libraries include:
Most of these are useful in a direct manner only for software compilation or runtime usage.
Unless compiling your own software, you can safely ignore this section - the Module System takes care of this for you.
Generally we support the FOSS (Free Open Source Software) Toolchain, comprising of:
- GNU C, C++ & Fortran Compilers (gcc, g++ and gfortran)
- GNU Bin Utils
- Open MPI Library
- Open BLAS, LAPACK & ScaLAPACK
- FFTW Library
Listed here for completeness, these packages are install-time dependencies or other packages that do not fit within the above schema.
Interpreters like Python & R (Perl, Ruby, Scala, Lua etc.) are complex things and have their own entire ecosystems of packages, versioning and tools. These Scripting Interfaces (The technical term is ‘Interpreters’) are all managed as their own standalone aspect to the HPC.
Using Python as an example you have:
- The interpreter ‘Python’
- The package manager ‘Pip’
- The Meta-Manager ‘Conda’/’Mini-Conda’
- The Virtual Environments Manager ‘venv’
Each interacting in slightly different ways and causing other issues. To ensure that the HPC team can support a core set of modules the interpreters are only updated when:
- Security patches are needed
- A new Major Version is available
- A commonly requested feature requires an upgrade
Most major packages will be supported in a Latest - 1 fashion. Below show an example when a package would be updated in the quarterly package upgrade cycle.
- Latest Version: 2020a
- Installed Version: 2019a
- Supported Version: 2019b
As not all software follows such clean release patterns, the HPC Team will hold final say on updating a piece of software in the global module lists.
The HPC Team does their best to adhere to the following cycle for upgrades for software and associated systems.
|Software Category||Upgrade Cycle||Outage Required||Versioning Type|
|Core Supported Programs||Quarterly||No||N - 1|
|Core Licensed Programs||Bi-Yearly||No||N - 1|
|OS & Managerial Tools||Yearly||Yes||Latest|
|Scripting Interfaces||Quarterly||No||Major, Security & Feature Minor|