Introduction to High-Performance Computing: Glossary

Key Points

Introduction to HPC
  • Learn about CPUs, cores, cache and comparing your own machine with a HPC cluster

The Command Line Interface
  • Learn the basic commands

Text editors in Linux
  • Learn the basic commands to use nano, emacs and vim

Environment Modules
  • Use module avail to know all the modules on the cluster.

  • Use module load <module_name> to load the module that you need.

  • You can preload modules for each login by adding the load line on your $HOME/.bashrc

Compile code on the cluster
  • Compile code in several languages and using OpenMP and MPI

Job Submission (Torque and Moab)
  • It is a good idea to keep aliases to common torque commands for easy execution.

Software Containers (Singularity)
  • Singularity containers give you control on the software you want on a machine, helping you with reproducible executions.

Package and Environment Management (Conda)
  • With conda you are able to install a number of packages not available among the centrally managed packages

Version Control (git)
  • Version control systems were created to keep track of changes in a set of files.

  • They work better with text files

Transfer files in and out the cluster
  • Transfer files using Globus Online, sftp, and scp

Shell Scripting
  • Basic shell programming for HPC

Glossary

FIXME