/cluster_tools

Primary LanguageShellMIT LicenseMIT

Documentation and Tools for Accessing Compute Canada

Note for Windows: if you are on Windows you need to get a ssh terminal.

  • Any version of Windows 10 that is up to date enables ssh by default in cmd or in powershell. We recommend powershell because i) it is a modern terminal; ii) it is sufficient for cluster executions.
  • For anyone interested in incorporating a Unix/Linux environment on Windows, one of the most convenient ways is to use Windows Subsystem for Linux (WSL). See WSL for Windows installation instructions to get Ubuntu terminals in Windows.
  • There are other alternatives that support ssh on Windows such as Putty and MobaXTerm. MobaXTerm is officially supported by ComputeCanada. Both of them allow 3rd-party, light-weight access to the cluster, but you won't have a fully functional Unix/Linux environment. This would potentially cause problems when you manipulate the files. Instead of using these 3rd-party terminals, we recommend powershell on Windows.

Getting started

  1. Establish an ssh supporting environment
  2. Apply for a Compute Canada Account
    • If you are a grad student, RA, etc. you will need a faculty sponsor, who will need a ComputeCanada account themselves
    • You will need them to provide you their ComputeCanada CCRI which is a form like abc-123-01
  3. Follow Setup Instructions to establish connection to ComputeCanada servers
  4. Follow Remote Editing to allow Atom editor to edit files on the server. This step is optional unless you are going to run interactive julia jobs on the cluster.

You can utilize resources on the cluster in several ways:

  1. Run multi-core interactive jobs through command prompt:
    salloc --time=1:0:0 --nodes=1 --cpus-per-task=4
    see SLURM basics for more details.
  2. Run an Interactive Jupyter Job accessed from your local machine
  3. Run a GUI-supported interactive job (like MATLAB) with Virtual Network Computing
  4. Submit non-interactive jobs:
  5. (Unfinished) Run remote, interactive julia sessions with Atom and Juno environments.

Notes (Please Read):

  • As a large shared grid, ComputeCanada uses SLURM job scheduler (What is a scheduler?) to allocate resources.
  • By default ComputeCanada won't load any specific software like MATLAB or Julia. You need to load the modules by yourself.
  • Run only small scale tasks on the login node. Do not ask for lots of cores/memories and run heavy-duty jobs on the login nodes, or you may get penalized by ComputeCanada administrators.
  • ComputeCanada does not allow you to submit any SLURM job under your /home directory. Make sure you current working directory is in /project or /scratch on the server.

More on Compute Canada

Tools for UBC ARC Sockeye System

UBC ARC Sockeye is an internal computing cluster for UBC. The ways to utilize this cluster is similar to ComputeCanada, You need an ssh supporting environment as well. There are mainly two differences: 1) ARC Sockeye uses MFA, and therefore sftp is preferred in transferring data back and forth; 2) ARC Sockeye uses PBS job scheduler. More details are here Setup Instructions for ARC Sockeye