Introduction
The Student HPC Platform has been enhanced to provide students with a more accessible and user-friendly computing environment. Starting from 1st August, 2023, users will have access to a new HPC Platform that includes an additional web environment.
While users can still use the traditional SSH access method, the new web-based interface offers a seamless and intuitive experience for developing and running applications. Built-in applications with Web GUI interfaces, such as Jupyter Notebook/JupyterLab and RStudio, make it easy for students to develop their applications via web browser.
The new platform also offers easy-to-use interfaces for accessing the HPC platform via web browser, including traditional SSH access and a GUI-based desktop. This provides students with the performance of CPU and GPU resources for applications in data visualization, simulations, data analytics, modelling, and more.
In addition, the new web portal offers easy file management capabilities, allowing users to upload, download, and manage their files and data quickly and efficiently without additional tools except for their web browser. The desktop experience is designed to be familiar to students, enabling them to work in an environment that they are comfortable with.
The HPC Platform is free for all PolyU students.
Hardware and Software Resource
(Effective from 1 Aug 2023)
Hardware
Total No of CPU Cores |
Over 650 cores |
Total Memory Size |
Over 10TB |
GPU Cards |
4 x NVIDIA RTX 3080 Ti |
Software
OpenHPC Stack
Category |
Component |
Description |
---|---|---|
Base OS |
Rocky Linux Release 8.6 x86_64 |
Rocky Linux is a community-driven, enterprise-grade, Linux distribution for open-source operating system. |
Compilers |
GNU 9.4.0/GNU 12.2.0 (gcc, g++, gfortran) |
gcc: An open-source compilation system widely used in software development for C programming language. g++: An open-source compiler specifically designed for compiling C++ code. gfortran: A command-line executable specifically designed for compiling Fortran code. |
Debugging and |
TAU Likwid Dimemas |
TAU: A performance profiling and analysis framework used for measuring and analyzing the performance Likwid: An open-source performance analysis and benchmarking toolset specifically designed for high-performance computing (HPC) systems. Dimemas: A performance analysis and simulation tool designed specifically for message-passing parallel applications running on distributed memory systems |
Development tools |
Autoconf Automake Libtool Valgrind |
Autoconf: A widely used tool in the software development process that helps automate the configuration Automake: A tool that forms part of the GNU build system, along with Autoconf and Make, to automate the generation of Makefiles for software projects. Libtool: A utility that helps simplify the process of building and using shared libraries in software projects. Valgrind: An open-source dynamic binary instrumentation framework that provides a suite of tools for debugging, profiling, and memory management analysis. |
IO libraries |
HDF5 NetCDF Adios |
HDF5: A file format and software library designed for managing and storing large and complex data sets. NetCDF: A file format and software library designed for storing and exchanging scientific data in a self-describing and platform-independent manner. Adios: A flexible and high-performance software framework specifically designed for managing and moving scientific data in high-performance computing (HPC) environments. |
MPI libraries |
OpenMPI |
OpenMPI (Open Message Passing Interface) is an open-source implementation of the Message Passing Interface (MPI) standard. MPI is a widely used communication protocol and programming model for developing parallel and distributed computing applications. MPICH (Message Passing Interface for CHannels) is another open-source implementation of the Message Passing Interface (MPI) standard. Similar to OpenMPI, MPICH provides a library and tools for developing parallel and distributed computing applications using the MPI programming model. |
Resource manager |
SLURM Munge |
SLURM (Simple Linux Utility for Resource Management) is an open-source, highly scalable, and widely used workload manager and job scheduler for high-performance computing (HPC) clusters. Munge is a security tool used in high-performance computing (HPC) environments to authenticate and authorize communication between different components of a cluster. |
Serial/Threaded/Parallel Libraries |
Boost FFTW Hypre PETSc Scalapack LAPACK OpenBLAS SuperLU Trilinos |
Boost: A collection of peer-reviewed, portable, and high-quality libraries that extend and enhance the capabilities of the C++ standard library. FFTW: A highly optimized software library for computing the discrete Fourier transform (DFT) and its variants in one, two, or three dimensions. Hypre: A high-performance software library designed to provide scalable solutions for the solution of large-scale scientific and engineering problems. PETSc: A widely-used software library for solving large-scale scientific and engineering problems Scalapack: A library of high-performance parallel linear algebra routines for distributed-memory architectures. LAPACK: A widely-used software library for performing numerical linear algebra computations on sequential architectures. OpenBLAS: An open-source implementation of the Basic Linear Algebra Subprograms (BLAS) library. It provides a high-performance set of routines for performing basic linear algebra operations. SuperLU:A software library for the direct solution of large, sparse linear systems of equations. Trilinos: An open-source software framework specifically designed to facilitate the development of scientific and engineering applications in the field of computational science and engineering. |
Software provisioner |
Lmod |
LMOD (Environment Modules) is a software tool used for managing and manipulating the user environment on Unix-like systems. |
Installed Applicatons
Application |
Versions |
Description |
---|---|---|
Anaconda3 |
2023.03-1 |
Anaconda is a popular open-source distribution of the Python and R programming languages. It provides a comprehensive ecosystem of packages, tools, and libraries that are widely used in data science, machine learning, and scientific computing. |
Apptainer | 1.1.8 | Apptainer is a free and open-source container platform that allows you to create and run applications in isolated images (also called “containers”) in a simple, portable, fast, and secure manner. |
CUDA | 12.1 | CUDA (Compute Unified Device Architecture) is a parallel computing platform and programming model developed by NVIDIA. It is designed to harness the computational power of NVIDIA GPUs (Graphics Processing Units) for general-purpose computing tasks, including data parallelism and parallel processing. |
CUDNN | 8.9.3.28 | CUDNN (CUDA Deep Neural Network) is a GPU-accelerated library developed by NVIDIA specifically designed to optimize deep neural network (DNN) computations. |
FSL | 6.0.6.5 | FSL is primarily focused on neuroimaging analysis and provides a wide range of tools and libraries for processing and analyzing structural and functional Magnetic Resonance Imaging (MRI) data. |
Go | 1.20.4 | Go (also known as Golang) is an open-source programming language developed by Google. It was created to address the need for a language that combines efficiency, simplicity, and readability, while providing strong support for concurrent programming and scalability. |
Gromacs |
2023.1 2023.1-GPU |
GROMACS (GROningen MAchine for Chemical Simulations) is a widely used open-source molecular dynamics (MD) simulation software package. It is designed to perform high-performance simulations of biomolecular systems, such as proteins, nucleic acids, and lipids, as well as other organic and inorganic molecules. |
JupyterLab | 3.6.3 | JupyterLab is an interactive development environment for Jupyter notebooks, code, and data exploration. It is an evolution of the classic Jupyter Notebook interface, providing a more flexible and powerful environment with a modular architecture. |
JupyterNotebook | 6.54 | Jupyter Notebook is an open-source web application that allows you to create and share documents containing live code, equations, visualizations, and narrative text. It provides an interactive computing environment, commonly used for data analysis, data visualization, machine learning, and scientific research. |
LAMMPS |
28Mar2023 28Mar2023-GPU |
LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) is an open-source molecular dynamics simulation software primarily designed for simulating large-scale systems with billions of particles. |
MATLAB | R2024a | MATLAB is a programming and numeric computing platform for engineering and scientific applications like data analysis, signal and image processing, control systems, wireless communications, and robotics. MATLAB includes a programming language, interactive apps, highly specialized libraries, and tools for automatically generating embedded code. |
NVHPC | 23.5 | NVHPC stands for NVIDIA HPC SDK, which is a comprehensive software development kit provided by NVIDIA for high-performance computing (HPC) applications. It is designed to optimize and accelerate scientific and technical computing workloads on NVIDIA GPU architectures. |
NWCHEM | 7.2.2 | NWChem is an open-source computational chemistry software package that is widely used for performing high-level quantum chemical calculations and simulations. |
Octave | 8.3.0 | Octave is an open-source numerical computing environment and programming language that is compatible with MATLAB. It provides a high-level programming language and a set of powerful tools for numerical analysis, data manipulation, and visualization. |
OpenFOAM | 11 | OpenFOAM (Open Field Operation and Manipulation) is an open-source computational fluid dynamics (CFD) software package. It provides a comprehensive set of tools and libraries for solving a wide range of fluid flow problems using numerical methods. |
ParaView | 5.11.2 | ParaView is an open-source data visualization and analysis software used for visualizing large datasets and conducting scientific visualization in various fields, including engineering, physics, geosciences, and computational biology. It provides a user-friendly interface and a wide range of tools for exploring, analyzing, and presenting data in 2D and 3D visualizations. |
Plumed | 2.9.0 | PLUMED (PLUgin for Molecular Dynamics) is an open-source software package designed to enhance molecular dynamics (MD) simulations by providing a flexible and powerful framework for the calculation of collective variables (CVs) and analysis of MD trajectories. |
Quantum Espresso | 7.2 | Quantum Espresso (QE) is an open-source software package for electronic structure calculations and materials modeling based on density functional theory (DFT). It provides a suite of tools and libraries for simulating the behavior and properties of materials at the quantum level. |
RStudio | 2023.06.0 Build 421 | RStudio is an integrated development environment (IDE) specifically designed for the R programming language. It provides a user-friendly interface and a set of powerful tools to facilitate R programming, data analysis, and reproducible research. |
Singularity | 3.11.3 | Singularity is an open-source containerization platform that enables the creation, distribution, and execution of portable and reproducible environments for scientific, high-performance computing (HPC), and data-intensive workloads. |
Tensorboard | 2.14.0 | Tensorboard is a visualization tool provided by TensorFlow, it is used for visualizing and understanding machine learning models and their training processes. |
TensorRT | 8.6.1 | TensorRT (TensorRT stands for Tensor Runtime) is a high-performance deep learning inference optimizer and runtime library developed by NVIDIA. It is designed to optimize and accelerate the inference phase of deep neural networks (DNNs) on NVIDIA GPUs. |
VMD | 1.9.3 | VMD (Visual Molecular Dynamics) is a molecular visualization and analysis software program used in the field of computational chemistry and structural biology. It allows researchers to visualize and analyze the three-dimensional structures of biological macromolecules such as proteins, nucleic acids, and lipids. |
VS Code | 1.90.1 | VS code is a popular open-source source code editor that is widely used by developers for writing, editing, and debugging code across various programming languages like Python. |
Yade | 2020.01a | Yade is an open-source software package that stands for "Yet Another Dynamic Engine." It is primarily used for discrete element method (DEM) simulations of granular materials and solid mechanics problems. |
Job Queue Configuration
Queue name |
No. of nodes |
No. of CPU cores per node |
Usable Memory (GB) per node |
No. of GPU cards |
Status |
h07q1 |
13 |
24 |
500 |
N/A |
In service |
h07q2 | 10 | 36 | 500 | N/A | In service |
h07gpuq1 |
1 |
24 |
250 |
4 |
In service |
Resource Limits
User Disk Quota: 70GB (12GB for pre-installed Python packages)
For General Job Submission:
Queue name |
Max no. of CPU Cores per job |
Max concurrent job able to be run per user |
Max concurrent job able to be submitted per user |
No. of GPU Cards per job |
Maximum run time limit for jobs (hrs) |
h07q1 |
24 |
2 |
3 |
N/A |
72 |
h07q2 |
36 |
2 |
3 |
N/A |
72 |
h07gpuq1 |
6 |
1 |
2 |
1 |
72 |
Desktop App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
36 |
4 |
8 |
h07q2 |
8 |
128 |
36 |
4 |
8 |
h07gpuq1 |
6 |
64 |
36 |
4 |
8 |
Jupyter Notebook/Lab App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
48 |
4 |
8 |
h07q2 |
8 |
128 |
48 |
4 |
8 |
h07gpuq1 |
6 |
64 |
36 |
4 |
8 |
MATLAB App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
48 |
4 |
32 |
h07q2 |
8 |
128 |
48 |
4 |
32 |
h07gpuq1 |
6 |
64 |
36 |
4 |
32 |
Octave App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
72 |
4 |
8 |
h07q2 |
8 |
128 |
72 |
4 |
8 |
ParaView App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
72 |
4 |
8 |
h07q2 |
8 |
128 |
72 |
4 |
8 |
RStudio App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
48 |
4 |
8 |
h07q2 |
8 |
128 |
48 |
4 |
8 |
h07gpuq1 |
6 |
64 |
36 |
4 |
8 |
Tensorboard App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
72 |
4 |
8 |
h07q2 |
8 |
128 |
72 |
4 |
8 |
VS Code App:
Queue name |
Max no. of CPU Cores per job |
Max no. of Memory (GB) per job |
Maximum runtime/ walltime (hours) |
Minimum CPU cores per job |
Minimum memory (GB) per job |
h07q1 |
8 |
128 |
48 |
4 |
8 |
h07q2 |
8 |
128 |
48 |
4 |
8 |
h07gpuq1 |
6 |
64 |
36 |
4 |
8 |