Difference between revisions of "Online training materials"
(→Python programming) |
(→Software development tools and helpers) |
||
Line 40: | Line 40: | ||
* The teaching materials on [http://swcarpentry.github.io/git-novice/ Version Control with Git] of the [https://software-carpentry.org/ software carpentry] courses provide a good introduction to version control and the git package. | * The teaching materials on [http://swcarpentry.github.io/git-novice/ Version Control with Git] of the [https://software-carpentry.org/ software carpentry] courses provide a good introduction to version control and the git package. | ||
* NeIC's [https://coderefinery.org/ CodeRefinery] [http://coderefinery.org/lessons/ lessons on version control with Git, automated testing, CMake, etc.] | * NeIC's [https://coderefinery.org/ CodeRefinery] [http://coderefinery.org/lessons/ lessons on version control with Git, automated testing, CMake, etc.] | ||
+ | * ARM provides [https://developer.arm.com/products/software-development-tools/hpc/arm-forge/videos video demos and tutorial]s for the DDT debugger and MAP performance profiler components of the Forge suite, for which SNIC has licenses. | ||
=== Parallel programming === | === Parallel programming === |
Revision as of 16:01, 18 January 2019
We provide an overview on publicly available training materials from SNIC related (e.g. SNIC centres) and external sources.
This pages is currently under construction and more contents will be added soon.
Basic use of HPC systems
Overview material about HPC systems
The HPC-Carpentry initiative has online training material for a 1-day introduction to HPC. It covers both Linux command line and SLURM.
UNIX and LINUX
Almost all current HPC system use UNIX or LINUX as their operating system. Basic UNIX/LINUX skills are essential for using such a system:
- Texas Advanced Computing Center (TACC) has produced a clear and general set of slides about HPC Linux.
- This video about Unix from 1982 is surprisingly relevant today, and can impart an understanding of the underlying philosophy behind the *NIX operating system.
- The teaching materials on the UNIX shell of the software carpentry courses are available online. They are suitable for self study.
Job schedulers
SLURM
SLURM is currently the most widely used job scheduler by the SNIC centres. Unless you are using software, whose GUI is well integrated into the scheduler, having some knowledge about it is required when working at a SNIC installation. On the SLURM website you can access the official SLURM documentation an FAQ and (video) tutorials. In addition the SNIC centres provide their own documentation, also describing local customisation:
- NSC's Introduction to batch jobs
- LUNARC's batch system guide
- UPPMAX's Slurm user guide
Programming and code development
Python programming
- The teaching materials on Python programming of the software carpentry courses are available online. They are suitable for self study and provide a good introduction for novices.
- Python course given by C3SE.
- SeSE course on Python for Matlab users
- BioExcel webinars on computational biomolecular research. Topics include best practices for using the Gromacs and CPMD codes.
Software development tools and helpers
- The teaching materials on Version Control with Git of the software carpentry courses provide a good introduction to version control and the git package.
- NeIC's CodeRefinery lessons on version control with Git, automated testing, CMake, etc.
- ARM provides video demos and tutorials for the DDT debugger and MAP performance profiler components of the Forge suite, for which SNIC has licenses.
Parallel programming
- General HPC training material from PRACE
- General HPC training material from XSEDE
Distributed memory programming with MPI
For MPI related training and documents see the resource section of our MPI page
For OpenMP related training materials refer to the resource section of the OpenMP page.
GPU programming
Online tutorials from Oak Ridge National Laboratory
Software
Quantum Espresso
- Link to the Quantum Espresso web page for tutorials and lectures from workshops.
VASP
- Link to 3-day VASP workshop at NERSC 2016, including videos of presentations and slides.
WIEN2k
- Link to material from WIEN2k workshop 2016 at McMasters University, with videos and presentation slides.
OpenFOAM
- Link to material from CFD course given in Chalmers.
CESM (Community Earth System Model)
- Link to material including practical sessions from the 2016 CESM Tutorial run by UCAR. See also Building CESM models on the NSC triolith system.
WRF ARW (Weather Research and Forecasting Model)
- Link to WRF ARW online tutorial made available by UCAR. See also Building and testing WRF on Triolith.
CASTEP
- Link to Online tutorials
CP2K
- Linkto HOWTOs
GULP
- Link to online manuals
Other topics
Data Management
The Data Management Seminar Online is a 3-hour seminar aimed at any UPPMAX or SNIC user who deals with large data volumes — many files, or large files, or both. The seminar focuses both on practical aspects and general best practices, e.g. how to use rsync to move files, where to place data, etc.
SNIC Science Cloud
The SNIC Science Cloud Workshop Material on Github takes 3-5 hours to complete, and teaches how to work with OpenStack-based Infrastructure-as-a-Service (IaaS).