Quick Guide to NSCC ASPIRE2A

Quick Reference Guide

Quick Guide to NSCC ASPIRE2A

A practical reference for accessing and using the National Supercomputing Centre Singapore (NSCC) ASPIRE2A HPC cluster. Covers DUO 2FA, VPN, SSH, the module system, PBS job submission, and job monitoring.

Note: This guide was originally published in 2023 and has been updated in May 2026 with additional sections and improved formatting, with assistance from Claude (Anthropic).

Always check the NSCC Help Portal for the latest system-specific documentation and current system availability.

Step 1 — Set Up DUO Two-Factor Authentication

DUO 2FA is required before you can log in. Email the NSCC Helpdesk at [email protected] to request an enrolment invite.

Once you receive the invite, follow the enrolment guide from NSCC:

ASPIRE2A DUO Enrolment Guide (PDF)

Install the DUO Mobile app on your phone before beginning the enrolment.

Step 2 — Install and Connect the VPN

NSCC uses a CheckPoint VPN client. Download the standalone client from:

CheckPoint Remote Access VPN Downloads

Installation guides from NSCC:

PlatformGuide
WindowsASPIRE2A VPN Windows Guide (PDF)
macOSASPIRE2A VPN Mac Guide (PDF)

On macOS, the CheckPoint installer may also install a CheckPoint Firewall app. To remove it: rm -rf "/Applications/Check Point Firewall.app"

Step 3 — Connect via SSH

With the VPN connected, SSH into ASPIRE2A:

ssh -Y <userid>@aspire2a.nscc.sg

The -Y flag enables trusted X11 forwarding for GUI applications. Note that user IDs are case-sensitive (e.g. P82828 differs from p82828).

The Module System

ASPIRE2A uses Environment Modules to manage software. Compilers, MPI libraries, Python, CUDA, and other tools are loaded on demand rather than being available globally.

module avail                  # list all available modules
module avail python           # search for Python-related modules
module load python/3.9        # load a specific module
module list                   # list currently loaded modules
module unload python/3.9      # unload a module
module purge                  # unload all modules
module show python/3.9        # show what a module sets up

Add module load commands to your PBS job script to ensure the right environment is set when the job runs.

Submitting Jobs with PBS

Jobs are submitted via the PBS (Portable Batch System) scheduler using a job script. Create a file submit.pbs:

#!/bin/bash
#PBS -l select=1:ncpus=24:mpiprocs=24:mem=96g
#PBS -l walltime=02:00:00
#PBS -o log/
#PBS -j oe
#PBS -P 12345678
#PBS -q normal
#PBS -m bae
#PBS -M [email protected]
#PBS -N myjob

cd $PBS_O_WORKDIR || exit $?
[ -d log ] || mkdir log

module load python/3.9

# Run your job
python myscript.py

Submit, monitor, and cancel:

qsub submit.pbs           # submit the job
qstat                     # list all your jobs
qstat -u $USER            # list your jobs only
qstat -f <jobid>          # detailed info on a specific job
qdel <jobid>              # cancel a job

PBS Directives Reference

DirectiveMeaning
-l select=N:ncpus=M:mem=XgN nodes, M CPUs each, X GB RAM per node
-l select=...:ngpus=4Request 4 GPUs per node
-l walltime=HH:MM:SSMaximum job run time. Job is killed if exceeded.
-P <project_id>8-digit NSCC project code. Use personal-XXX for personal accounts.
-q normalQueue name (normal, gpu, short, etc.)
-m baeSend email at job begin (b), abort (a), and end (e)
-M [email protected]Email address for notifications
-N jobnameName the job (appears in qstat output)
-o log/Directory for stdout output file
-j oeMerge stdout and stderr into one output file

Job States

StateMeaning
QQueued — waiting for resources
RRunning
EExiting — job finishing up
HHeld — job suspended by user or admin

For full documentation, visit the NSCC Help Portal. For account issues or to request access, contact [email protected].