Difference between revisions of "Online training materials"

From SNIC Documentation
Jump to: navigation, search
(MPI)
(VASP)
 
(53 intermediate revisions by 6 users not shown)
Line 1: Line 1:
We provide an overview on publicly available training materials from SNIC related (e.g. SNIC centres) and external sources.
+
{{online training material
 +
|description=Overview page on online training materials freely available
 +
|fields=HPC training
 +
}}
  
''This pages is currently under construction and more contents will be added soon.''
+
This page provides an overview on publicly available training materials available on the web.
 +
 
 +
'''SNIC can not take responsibility for the contents provided by external sources or on external web sites'''
  
 
== Basic use of HPC systems ==
 
== Basic use of HPC systems ==
 +
 +
=== Overview material about HPC systems ===
 +
 +
The [https://hpc-carpentry.github.io/ HPC-Carpentry initiative] has [https://hpc-carpentry.github.io/hpc-intro/ online training material for a 1-day introduction to HPC]. It covers both Linux command line and SLURM.
  
 
=== UNIX and LINUX ===
 
=== UNIX and LINUX ===
  
Texas Advanced Computing Center (TACC) has produced a clear and general set of [https://portal.tacc.utexas.edu/c/document_library/get_file?uuid=a0c33bf1-b2a4-48b4-a23d-fc8a79c887ec&groupId=13601 slides about HPC 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 [https://portal.tacc.utexas.edu/c/document_library/get_file?uuid=a0c33bf1-b2a4-48b4-a23d-fc8a79c887ec&groupId=13601 slides about HPC Linux].
 +
 
 +
* [https://www.youtube.com/watch?v=XvDZLjaCJuw 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 [http://swcarpentry.github.io/shell-novice/ the UNIX shell] of the [https://software-carpentry.org/ software carpentry] courses are available online.  They are suitable for self study.
  
[https://www.youtube.com/watch?v=XvDZLjaCJuw 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 Aalto Scientific Computing center offers an extensive ~3 day workshop on Linux shell and shell scripting. Material is available on [http://scicomp.aalto.fi/training/linux-shell-tutorial.html this page]  
  
 
=== Job schedulers ===
 
=== Job schedulers ===
Line 16: Line 31:
 
[https://www.schedmd.com/ SLURM] is currently the most widely used job scheduler by the [[centres|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 [https://slurm.schedmd.com/documentation.html official SLURM documentation] an [https://slurm.schedmd.com/faq.html FAQ] and [https://slurm.schedmd.com/tutorials.html (video) tutorials].
 
[https://www.schedmd.com/ SLURM] is currently the most widely used job scheduler by the [[centres|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 [https://slurm.schedmd.com/documentation.html official SLURM documentation] an [https://slurm.schedmd.com/faq.html FAQ] and [https://slurm.schedmd.com/tutorials.html (video) tutorials].
 
In addition the SNIC centres provide their own documentation, also describing local customisation:
 
In addition the SNIC centres provide their own documentation, also describing local customisation:
 
+
* HPC2N's [https://www.hpc2n.umu.se/batchsystem overview of batch system sub-pages]
 +
* LUNARC's [https://lunarc-documentation.readthedocs.io/en/latest/batch_system/ batch system guide]
 
* NSC's [https://www.nsc.liu.se/support/batch-jobs/introduction/ Introduction to batch jobs]
 
* NSC's [https://www.nsc.liu.se/support/batch-jobs/introduction/ Introduction to batch jobs]
* LUNARC's [http://lunarc-documentation.readthedocs.io/en/latest/batch_system/ batch system guide]
 
 
* UPPMAX's [http://uppmax.uu.se/support/user-guides/slurm-user-guide/ Slurm user guide]
 
* UPPMAX's [http://uppmax.uu.se/support/user-guides/slurm-user-guide/ Slurm user guide]
  
== Programming ==
+
== Programming and code development ==
 +
 
 +
=== Python programming ===
 +
* The teaching materials on [http://swcarpentry.github.io/python-novice-inflammation/ Python programming] of the [https://software-carpentry.org/ software carpentry] courses are available online. They are suitable for self study and provide a good introduction for novices.
 +
* SeSE course on [http://sese.nu/python-for-matlab-users-ht15/ Python for Matlab users]
 +
* BioExcel webinars on [http://bioexcel.eu/category/webinar/ computational biomolecular research]. Topics include best practices for using the Gromacs and CPMD codes.
 +
 
 +
=== Statistic package R ===
 +
 
 +
* The [https://software-carpentry.org/ software carpentry] [https://swcarpentry.github.io/r-novice-inflammation/ course material] on the [https://www.r-project.org/ R package] provides a first introduction.
 +
 
 +
=== Software development tools and helpers ===
 +
* 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.]
 +
* 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 ===
==== MPI ====
+
* General [http://www.training.prace-ri.eu/nc/training_courses/index.html HPC training material] from PRACE
For [[MPI]] related training and documents see the [https://docs.snic.se/wiki/MPI#Resources resource section] of our MPI page
+
* General [https://portal.xsede.org/online-training HPC training material] from XSEDE
 +
==== Distributed memory programming with MPI ====
 +
For [[MPI]] related training and documents see the [[MPI#Resources| resource section]] of our MPI page
 +
 
 +
==== Shared memory programming with OpenMP ====
 +
For [[OpenMP]] related training materials refer to the [[OpenMP#Resources|resource section]] of the OpenMP page.
 +
 
 +
==== GPU programming ====
 +
[https://www.olcf.ornl.gov/support/tutorials/ Online tutorials] from Oak Ridge National Laboratory
 +
 
 +
== Application Software ==
 +
=== AMBER ===
 +
* [http://ambermd.org/tutorials/ AMBER tutorials]
 +
=== Bowtie2 ===
 +
* [https://github.com/alvaralmstedt/Tutorials/wiki/Bowtie2-mapping Bowtie2 tutorial]
 +
=== CASTEP ===
 +
* Link to [http://www.castep.org/CASTEP/OnlineTutorials Online tutorials]
 +
=== CESM (Community Earth System Model) ===
 +
* Link to material including practical sessions from the [http://www.cesm.ucar.edu/events/tutorials/2016/coursework.html 2016 CESM Tutorial] run by UCAR. See also [[Building CESM models on the NSC triolith system]]
 +
=== CHARMM (Chemistry at HARvard Macromolecular Mechanics) ===
 +
* [https://www.charmm.org/charmm/documentation/ Documentation] of CHARMM.
 +
* [https://www.charmmtutorial.org/index.php/Full_example Full example] of a CHARMM simulation setup for a solvated protein.
 +
 
 +
=== CP2K ===
 +
* Linkto [https://www.cp2k.org/howto HOWTOs]
 +
=== GATK ===
 +
* [https://software.broadinstitute.org/gatk/documentation/quickstart Quickstart]
 +
* Link to [https://software.broadinstitute.org/gatk/documentation/topic?name=tutorials&v=3 Tutorials]
 +
=== GROMACS ===
 +
* [http://www.gromacs.org/Documentation/Tutorials Tutorial section] of the GROMACS website
 +
* [http://www.mdtutorials.com/gmx/ GROMACS tutorials] by Justin A. Lemkul from Virginia Tech
 +
=== GULP ===
 +
* Link to [http://gulp.curtin.edu.au/gulp/help/manuals.cfm online manuals]
 +
=== HOMER ===
 +
* [http://homer.ucsd.edu/homer/ HOMER tutorials]
 +
=== NAMD & VMD ===
 +
* [http://www.ks.uiuc.edu/Training/Tutorials/ Collection of tutorials] of TCBG website. Both NAMD and VMD tutorials are presented on this link.
  
==== OpenMP ====
+
=== OpenFOAM ===
For [[OpenMP]] related training materials refer to the [[OpenMP#Resources|resource section]] of the OpenMP entry, see [[OpenMP#Resources|here]].
+
* Link to material from [http://www.tfd.chalmers.se/~hani/kurser/OS_CFD/#YEAR_2016 CFD course given in Chalmers].
 +
* Link to material at [https://sourceforge.net/projects/openfoamplus/files/v1812/ OpenFOAM v1812 at Sourceforge].
  
== Software ==
 
 
=== Quantum Espresso ===
 
=== Quantum Espresso ===
* Link to the [http://www.quantum-espresso.org/tutorials/ Quantum Espresso web page for tutorials] and lectures from workshops.
+
* Link to the [https://www.quantum-espresso.org/resources/tutorials Quantum Espresso web page for tutorials and lectures] from workshops.
 +
=== Snakemake===
 +
* [https://snakemake.readthedocs.io/en/stable/tutorial/tutorial.html#tutorial Snakemake tutorial].
 
=== VASP ===
 
=== VASP ===
* Link to 3-day [http://www.nersc.gov/users/training/events/3-day-vasp-workshop/ VASP workshop at NERSC 2016], including videos of presentations and slides.
+
* Refer to the [https://www.vasp.at/wiki/index.php/The_VASP_Manual VASP wiki], in particular check out [https://www.vasp.at/wiki/index.php/VASP_workshop Workshops] and [https://www.vasp.at/wiki/index.php/Lectures_and_presentations Lectures], which include videos of presentations and slides.
 +
 
 
=== WIEN2k ===
 
=== WIEN2k ===
 
* Link to material from [http://susi.theochem.tuwien.ac.at/onlineworkshop/ WIEN2k workshop 2016 at McMasters University], with videos and presentation slides.
 
* Link to material from [http://susi.theochem.tuwien.ac.at/onlineworkshop/ WIEN2k workshop 2016 at McMasters University], with videos and presentation slides.
 +
=== WRF ARW (Weather Research and Forecasting Model) ===
 +
* Link to [http://www2.mmm.ucar.edu/wrf/OnLineTutorial/ WRF ARW online tutorial] made available by UCAR. See also [[Building and testing WRF on Triolith]].
  
 
== Other topics ==
 
== Other topics ==

Latest revision as of 12:24, 6 April 2020

Name Online training materials
Description Overview page on online training materials freely available

This page provides an overview on publicly available training materials available on the web.

SNIC can not take responsibility for the contents provided by external sources or on external web sites

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:

  • 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 Aalto Scientific Computing center offers an extensive ~3 day workshop on Linux shell and shell scripting. Material is available on this page

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:

Programming and code development

Python programming

Statistic package R

Software development tools and helpers

Parallel programming

Distributed memory programming with MPI

For MPI related training and documents see the resource section of our MPI page

Shared memory programming with OpenMP

For OpenMP related training materials refer to the resource section of the OpenMP page.

GPU programming

Online tutorials from Oak Ridge National Laboratory

Application Software

AMBER

Bowtie2

CASTEP

CESM (Community Earth System Model)

CHARMM (Chemistry at HARvard Macromolecular Mechanics)

CP2K

GATK

GROMACS

GULP

HOMER

NAMD & VMD

OpenFOAM

Quantum Espresso

Snakemake

VASP

WIEN2k

WRF ARW (Weather Research and Forecasting Model)

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).