Introduction to Supercomputing
|
Learn about CPUs, cores, and cache, and compare your machine with an HPC cluster.
Identify how an HPC cluster could benefit your research.
|
Command Line Interface
|
The basic commands you must know are echo , cat , date , pwd , cd , mkdir , touch , cp , mv , rm . You will use these commands very often.
|
Python Scripting for HPC
|
|
Python Scripting for HPC
|
|
Adjurn
|
|
Terminal-based Text Editors
|
For editing files from the terminal there are several editor available
nano is an easy to use editor with commands that are shown on the bottom, good for beginners.
emacs is a full featured editor that relies on multiple key combinations to control its operation.
vi/vim is installed by default on every Linux system, it works by changing between ‘modes’
|
Software on HPC Clusters
|
Modules. Use module avail to know all the modules on the cluster.
Modules. Use module load <module_name> to load a module.
Conda. Use conda env list to list the available environments.
Conda. Use conda activate to activate a conda environment.
Singularity. Use singularity shell <container> to get a shell inside the container.
Singularity. Use singularity exec <container> <command> to execute a command or script inside the container.
|
Python Scripting for HPC
|
|
Python Scripting for HPC
|
|
Final remarks
|
|
Workload Manager: Slurm
|
The scheduler handles how compute resources are shared between users.
Everything you do should be run through the scheduler.
A non-interactive job is expressed as a shell script that is submitted to the cluster.
Try to adjust the wall time to around 10-20% more than the expected time the job should need.
It is a good idea to keep aliases to common torque commands for easy execution.
|
Terminal Multiplexing: tmux
|
|
Computational Partial Differential Equations
|
|
Adjurn
|
|
Introduction to Machine Learning
|
|
Introduction to Deep Learning
|
|
Computational Partial Differential Equations
|
|
Final remarks
|
|