Insomnia: Getting Started
Getting Access
Access to the cluster is subject to formal approval by selected members of the participating research groups. See the HPC Service Webpage for more information on access options.
Introductory Linux Training and Resources
If you're not familiar with basic Linux commands and usage, or if you need a refresher on these topics, please refer to the following resources from our workshop series:
- Intro to Linux - Slides and Video Recording
- Intro to Shell Scripting - Slides and Video Recording
- Intro to High Performance Computing - Slides and Video Recording
For a list of recorded trainings and upcoming research computing workshops and events, please see:
https://www.cuit.columbia.edu/rcs/training
Logging In
You will need to use SSH (Secure Shell) in order to access the cluster. Windows users can use PuTTY or Cygwin. MacOS users can use the built-in Terminal application.
Users log in to the cluster's submit node, located at insomnia.rcs.columbia.edu or use the shorter form som.rcs.columbia.edu. If logging in from a command line, type:
$ ssh <UNI>@insomnia.rcs.columbia.edu OR $ ssh <UNI>@som.rcs.columbia.edu
where <UNI> is your Columbia UNI. Please make sure not to include the angle brackets ('<' and' >') in your command; they only represent UNI as a variable entity.
Once prompted, you need to provide your usual Columbia password.
Submit Account
You must specify your account whenever you submit a job to the cluster. You can use the following table to identify the account name to use.
Account | Full Name |
---|---|
5sigma | Biostatistics |
astro | Columbia Astrophysics Lab |
berkelbach | Chemistry |
cboyce | Chemical Engineering |
cklab | IEOR |
db | Computer Science |
e3b | Ecology, Evolution and Environmental Biology |
esma | SIPA-CGEP |
exposomics | MSPH Exposomics |
hill | Physics (Columbia Astrophysics Laboratory) |
houlab | Laboratory of Wenpin Hou |
ieortang | Industrial Engineering and Operations Research (IEOR) |
iicd | Irving Institute for Cancer Dynamics |
intelseedfree | Special group with access to a non-NVIDIA GPU seed node from Intel. email hpc-support@columbia.edu if interested in details. |
mcilvain | Grace McIlvain Lab |
mmsci | Multimessenger Science |
morpheus | Bianca Dumitrascu Lab |
msph | MSPH IT |
neuralctrl | Laboratory for Neural Engineering and Control |
ntar_lab | Biomedical Engineering (Morrison) |
pas_lab | Biological Sciences |
ueil | Biomedical Engineering (Konofagou) |
qmech | Quantum Mechanics/Applied Physics and Applied Math: Marianetti |
sscc | Social Science Computing Committee (ISERP, Econ, and CPRC) |
tekle_smith | Chemistry Dept - Tekle Smith group |
xulab | Earth and Environmental Engineering |
Your First Cluster Job
While best practice on all Columbia HPC group clusters, it is particularly important on Insomnia to move from the initial login node to a compute node before doing most work. Example:
srun --pty -t 0-2:00 -A <ACCOUNT> /bin/bash
Now you have moved from the login node to one of the compute nodes on the cluster. While simple things like editing a file or making new folders can be done on a login node, they can also be done on a compute node, and as you run more complicated jobs on Insomnia, some things simply will not work unless you are first on a compute node.
An example Submit Script
This script will print "Hello World", sleep for 10 seconds, and then print the time and date. The output will be written to a file in your current directory.
In order for this example to work you need to replace ACCOUNT with your group account name. If you don't know your account name the table in the previous section might help.
#!/bin/sh # # Simple "Hello World" submit script for Slurm. # # Replace ACCOUNT with your account name before submitting. # #SBATCH --account=ACCOUNT # Replace ACCOUNT with your group account name #SBATCH --job-name=HelloWorld # The job name #SBATCH -N 1 # The number of nodes to request #SBATCH -c 1 # The number of cpu cores to use (up to 32 cores per server) #SBATCH --time=0-0:30 # The time the job will take to run in D-HH:MM #SBATCH --mem-per-cpu=5G # The memory the job will use per cpu core echo "Hello World" sleep 10 date # End of script
Job Submission
If this script is saved as helloworld.sh you can submit it to the cluster with:
$ sbatch helloworld.sh
This job will create one output file name slurm-####.out, where the #'s will be replaced by the job ID assigned by Slurm. If all goes well the file will contain the words "Hello World" and the current date and time.
See further documentation we have about submitting jobs. For much more in-depth information, there is a Slurm Quick Start Guide on the web.