Welcome on-site!

Course punchline

  • Move from being a Linux novice to an UPPMAX expert.

Learning outcomes

  • Get overview of UPPMAX and NAISS

  • Work with your files in a LINUX environment

  • Learn to use the UPPMAX resources in a good way

  • Learn the basics in the Python programming language

Lesson material

Questions

  • Questions very much related to the present talk during the lessons

    • best posed directly by voice

  • Questions requiring more effort to explain or answer

Type along

  • You will be able to follow along using the built-in terminals in all OS:s.

    • Linux/Mac Terminal

    • Windows: Powershell or command prompt

  • For your day-to-day work you may benefit from other applications, see the Login session

Exercises

  • Exercises may be solved individually or in small groups in classroom

Example of arrangement on your screen

  • HackMD

  • lesson material

  • your own terminal

Lesson Modules

Linux I at 9-12 Monday

Links in the left menu

  • Overview

  • Logging in to UPPMAX

  • Linux basics

  • Using the command line

Intro to UPPMAX 13-16 Monday

Links in the left menu

  • Organisation

  • HPC computing

  • NAISS

  • Using software and tools

  • Submitting jobs to calculation nodes (intro)

  • Working on UPPMAX

  • Courses and workshops

  • Short intro to Bianca and NAISS-SENS for the interested

Linux II 9-12 Tuesday

Linux II pdf

  • Using the command line level 2

  • Input, output and pipes

  • Wildcards

  • The find command

  • Links

Linux III 13-16 Tuesday

Linux III pdf

  • The grep command

  • Using the command line level 3

  • Variables, parameters and $(…)

  • Filenames

Bash Scripts 9-12 Wednesday

BASH scripts pdf

  • Bash scripting, why’s and basics

  • Parameters

  • The IF statement

  • File tests

  • FOR and WHILE loops

  • Background processes and job control

Slurm at UPPMAX 13-16 Wednesday

Slurm pdf

  • The workload manager

  • Quick testing and debugging as interactive jobs

  • Monitoring and modifying jobs

  • Priority

  • Efficiency

  • Script and workflow examples

  • Parallel computing and GPU

  • Snakemake and nextflow

Python I 9-12 Thursday

Python material

  • Introduction

  • Getting started

  • Data types

  • Control flow statements

Python II 13-16 Thursday

Python material

  • Functions

  • Modules

  • Command line arguments and IO

  • Object-oriented Python (bonus)

Icebreaker in HackMD