NAISS Training Newsletter
No 27, 19 September 2024
– Published 19 September 2024
Welcome to the latest edition of the NAISS training newsletter. We newly have an introduction to the PDC systems, a hackathon on improved data handling of sensitive research data, Python for Scientific Computing and the Program Formalisms course.
Overview
NAISS training
- Mondays with Matlab - Nordic HPC workshops, 25 September 2024
- Online workshop: Introduction to Bianca: Handling Sensitive Research Data, 25 September 2024
- Online course: Introduction to PDC Systems, 27 September 2024
- Last chance: Online training course: “An introduction to shared memory parallel programming using OpenMP”, 25-27 September 2024
- Online workshop: Basic Singularity: Running and Building Singularity Containers, 16 October, 2024
- Online course: Introduction to running R, Python, Julia, and Matlab in HPC, 22-25 October 2024
- Online hackathon: Bianca In-Depth: Improve Your Handling of Sensitive Research Data, 11 November
- Online course: Python for Scientific Computing, 5-7 November
- Online course: Programming Formalisms, 18-22 November
CodeRefinery events
- Build Systems Course and Hackathon, October 8th-11th, 9:00-12:00 & October 15th-17th 10:00-16:00
ENCCS training
- Supercomputing for AI (In-person only), 24 September
- alpaka and openPMD Workshop and Hackathon, 23 - 25 Oct
- GPU programming using Python – A practical intro webinar, 24 October
- GPU Programming. Why. When. How (Online), 12-14 November
- Hybrid event: Quantum Autumn School 2024, 2-4 December
- Julia for High-Performance Scientific Computing (Online), 9-12 December
- Publicly available training material
- Training events from around Europe
NAISS training
Mondays with Matlab - Nordic HPC workshops, 25 September
Does your project involve large computations or training Machine Learning and Deep Learning models? Are you interested in speeding up your code by harnessing a High-Performance Computing (HPC) resource near you?
MathWorks is partnering with NAISS Sweden, DTU Denmark, CSC Finland, Sigma2 Norway, IHPC Iceland and RTU HPC, Latvia to bring you a three series workshop on parallel computing and AI using large compute resources –– including hands-on exercises where you will learn how to effectively use MATLAB and MATLAB Parallel Server to speed up your computations.
The third workshop in the series is still available for registration:
- Workshop 3 (23rd September, 24th September and 25th September 2024) will involve hands-on sessions where participants will get to submit jobs on an HPC cluster that is most relevant to them based on their country.
More information and access to registration is available on the Mondays with Matlab page (MathWorks).
NAISS users are recommended to attend Workshop 3 on the 25th of September (MathWorks).
Online workshop: Introduction to Bianca: Handling Sensitive Research Data, 25 September 2024
Are you just beginning to work with sensitive data in your research? If yes, welcome to a 1-day introduction to handling sensitive data on the UPPMAX cluster, Bianca. We will tell you about NAISS-SENS, how to login to Bianca, transfer files via wharf, basics of the SLURM workload manager and the module system.
The workshop is intended for beginner users of Bianca.
You do not need to be a member of a NAISS-SENS project in order to join the workshop. A SUPR course project will be available to all participants. The workshop will consist of both lectures and exercise sessions.
When: Wednesday, September 25
Where: online via Zoom
For more information and registration please visit the sensitive data workshop page (UPPMAX).
Online course: Introduction to PDC Systems, 27 September 2024
The “Introduction to PDC Systems” courses focus on basic and advanced methods for using the Dardel system at PDC. Amongst other things, they cover:
- necessary background information about high-performance computing,
- the supercomputing system or systems that are available at PDC (currently Dardel),
- how to apply to use PDC resources,
- how to get an account at PDC,
- how to log in to systems at PDC,
- how to run software on different nodes,
- how to store your data for easy access
Date and time: Friday 27th of September from 9:00 to 12:00
For more information and access to registration visit the PDC introduction course page (PDC).
Online course: Introduction to Linux, 16 September 2024
This 2-hour online course is an introduction to the Linux operating system (OS) that is used on most Swedish compute clusters, and is the most common OS in HPC clusters all over the planet. The course will consist of lectures, code-alongs, and interspersed exercises.
This NAISS course is meant for beginners to the Linux operating system, and is open to all users in Swedish academia.
Time and date: 16 September 2024, 09:00-11:00
More information and registration on the Linux introduction course page (HPC2N).
Online training course: “An introduction to shared memory parallel programming using OpenMP”, 25-27 September 2024
OpenMP provides an efficient method to write parallel programs in C, C++ and Fortran. OpenMP programs are suitable for execution on shared memory architectures such as modern multi core systems or a single compute node of the HPC clusters deployed by LUNARC, HPC2N and within NAISS.
This course will introduce participants to the shared-memory model for parallel programming and the OpenMP application-programming interface. In many cases OpenMP allows an existing serial program to be upgraded incrementally, starting with the parallelisation of the most time-consuming parts of the code. Typically OpenMP programs are easily ported from one shared memory multi processor system to another one.
Venue: Online
For more information and access to registration visit:
Online workshop: Basic Singularity: Running and Building Singularity Containers, 16 October, 2024
Collaboration between UPPMAX and HPC2N
The online workshop is an introduction to the basic concepts of containerised software environment solutions within the Singularity framework (Sylabs).
The online workshop is an introduction to the basic concepts of containerised software environment solutions within the Singularity framework
During the workshop you will have the opportunity to follow the interactive guide on
- how to run Singularity containers
- how to build your own
- good (and bad) practices on designing and building Singularity recipes
- build and/or host container remotely and what are the limitations
To fully benefit from the workshop, basic Linux system administration experience is highly desirable i.e. knowledge of package management and common tools for building and managing software: git, pip, conda, wget, curl, etc.
Please follow the instructions to install Singularity (GitHub) on your computer before the workshop.
When: Wednesday, October 16, 2024
Where: online via Zoom
For more information and registration, please visit the singularity workshop page (UPPMAX).
Online course: Introduction to running R, Python, Julia, and Matlab in HPC, 22-25 October 2024
Learn how to run R, Python, Julia, and Matlab at Swedish HPC centres, mainly using Rackham on UPPMAX as an example. We will show you how to find and load the needed modules, how to write a batch script, submitting jobs from inside Matlab, as well as how to install and use your own packages, and more. The course will consist of lectures interspersed with hands-on sessions where you get to try out what you have just learned.
This course will consist of four days. Each day starts at 9:00 and closes 15:00. One day for each language.
Participation is free and open to all current and prospective users of NAISS.
Time and date: 09:00 - 15:00, 22-25 October 2024
Location: online via Zoom
For more information and registration, see:
- the R, Python, Julia, and Matlab course page at HPC2N
- the R, Python, Julia, and Matlab course page at UPPMAX
- the R, Python, Julia, and Matlab course page at LUNARC
Online hackathon: Bianca In-Depth: Improve Your Handling of Sensitive Research Data, 11 November
Are you already working with sensitive data in your research and feel that your workflows can be improved? If yes, welcome to 1-day hackathon where you'll learn smarter ways of working on the Bianca cluster. We will tell you how to do file transfer from a terminal, advanced SLURM, using IDEs (e.g. RStudio), and installing custom software and packages.
To attend this event, we expect you to be able to login to Bianca, submit a simple Slurm batch job, and know the basics of file transfer. A NAISS-SENS course project will be available to all participants.
When: Monday, November 11, 9.00-16.00
Where: online via Zoom
For more information and registration please visit the Bianca hackathon page (UPPMAX).
Online course: Python for Scientific Computing, 5-7 November
Organized by Aalto University, CodeRefinery, and partners
This is a medium-advanced course in Python tools such as NumPy, SciPy, Matplotlib, and Pandas. It is suitable for people who have a basic understanding of basic Python and want to know some internals and important libraries for science. Read the learner personas to see if the course is right for you.
The course streamed via Twitch (the CodeRefinery channel) so that anyone may follow along without registration. There is a "Notes" link (collaborative edited notes) which is used for asking questions during the course.
The course is organized by Aalto Scientific Computing in collaboration with CodeRefinery, and multiple Nordic partners.
For more information and registration, please visit the Python course page (Aalto University).
Online course: Programming Formalisms, 18-22 November
Collaboration between UPPMAX and NBIS
This full 5-day course aims to give scientists, bioinformaticians and other research engineers with some experience in programming and scripting an understanding of the underlying principles of software development, design, and programming. The course aims to strengthen the understanding of more advanced programming concepts, ability to produce more reusable scripts through modular programming and to enable a better understanding of how to evaluate a script or programs performance.
We will cover a formal development process form start to finish. We use Test-Driven Development as a good example of a development process, requirements modeling, risk assessment and structured design.
Some of the topics covered are modular development and (code) reusability, testing and optimization.
We will cover theory with bridging practical examples and applications to enhance the theoretical understanding of the principles.
When: November 18-22, onboarding: November 15
For more information and registration, please visit the programming formalisms course page (UPPMAX).
CodeRefinery events
Build Systems Course and Hackathon, October 8th-11th, 9:00-12:00 & October 15th-17th 10:00-16:00
Hosted by PDC, ENCCS, CodeRefinery, CSC, and Aalto Scientific Computing
The development of modern computer hardware towards heterogeneous architecture that combines the compute capabilities of multicore central processing units (CPU) and graphics processing units (GPU), non-uniform memory access (NUMA), and high speed network interconnect, offers, on the one hand, the prospect of extreme computing power, and on the other hand, a challenge for developers and users of scientific software.
In this Build Systems Course and Hackathon you will learn how to make use of tools and frameworks for building and installing programs and libraries on modern personal computers and on supercomputers.
The event has two parts.
Part 1: Online course:
Tuesday 8 October - Friday 11 October 2024. 9:00-12:00
On the curriculum are:
- Introduction to compilers, linkers, and libraries
- The GNU make and autotools
- The CMake build system
- The Spack build system
- The EasyBuild build system
- SingularityCE / Apptainer
In the exercise sessions of the course you will get hands on experience on using these tools for a variety of open source scientific programs.
Part 2: Hackathon
The hackathon part of this event will be hosted at the KTH campus in Stockholm, Sweden, on three full days: Tuesday 15 October - Thursday 17 October 2024. The hackathon will be held in the conference rooms at the RISE office at the KTH campus, Drottning Kristinas väg 61, Stockholm.
The primary scope of the hackathon is for teams (consisting of one to five people) to work on their own code aiming to make it transferable to different computers using, for instance, the CMake build system, Spack, and containers.
Teams that would like to participate in the hackathon are welcome to submit an application. The organisers will review the applications and accept up to eight teams for participation. A team can have from one to five members. Preference will be given to teams working on scientific codes which are open source. In the application, please describe how the code is distributed, what the license for the code is, how the code can be built and installed currently, and how the team would like to extend the functionality of the code.
Note that participation in the hackathon is limited to a maximum of eight teams.
Links
- More information on part one and registration of the build systems course (PDC)
- More information on part two of the build systems course (PDC)
ENCCS training
Supercomputing for AI (In-person only), 24 September
Abstract: Supercomputing for AI is for researchers, data scientists, machine learning engineers, and others who perform computationally heavy AI workloads. Learn about how supercomputers can supercharge your R&D projects.
Detailed information at the supercomputing for AI page (ENCCS).
Time: Sept. 24, 13:00-17:00 (CET) (2024).
alpaka and openPMD Workshop and Hackathon, 23 - 25 Oct
Abstract: We are excited to invite you to a dynamic three-day workshop and hackathon focused on two powerful tools for high-performance computing: alpaka and openPMD. This event will bring together developers, researchers, and enthusiasts from diverse backgrounds to collaborate, learn, and innovate.
Detailed information at the alpaka and openPMD hackathon page (HLRS)
Time: Oct. 23-25, 09:00-17:30 (CET) (2024).
GPU programming using Python – A practical intro webinar, 24 October
Abstract: In this webinar, we focus on GPU-accelerated computing with Python. Starting from familiar Python libraries such as Numpy and Pandas, we will guide you step-by-step into the world of GPU programming. Discover how to harness the power of GPU accelerators using libraries such as CuPy, cuDF, PyCUDA, Jax, and Numba, with a focus on their unique features and capabilities for high-performance computing.
Detailed information at the GPU programming using python page (ENCCS).
Time: Oct. 24, 12:00-13:30 (CET) (2024).
GPU Programming. Why. When. How (Online), 12-14 November
Abstract: This workshop is based on a multilateral collaboration between GPU programming specialists from the Nordic countries. This workshop will cover basic aspects of GPU programming concepts and models including: GPU hardware and software ecosystem, GPU programming concepts & models, Directive-based models (OpenACC, OpenMP), Portable kernel-based models (Kokkos, OpenCL, SYCL, etc.), Non-portable kernel-based models I (CUDA, HIP), High-level language support (Python, Julia), Multi-GPU programming with MPI, Preparing code for GPU porting, Hand-on examples.
Detailed information at the GPU programming why when how page (ENCCS).
Time: Nov. 12-14, 09:00-16:00 (CET) (2024).
Hybrid event: Quantum Autumn School 2024, 2-4 December
Abstract: Experts from other organisations and industry will showcase the possibilities offered by quantum computing during the school. The school will cover more advanced topics and tutorials compared to QAS23, which serves as a good starting point for people interested in participating.
The QAS24 will include: 1)Overview of the main state-of-the-art QC hardware approaches; 2) Overview and update on recent developments in QC software stacks; 3) Integration of QC with classical computing: hybrid classical/quantum algorithms and HPC+QC systems; and 4) QC programming in high-level languages for scientific and industrial use cases.
Detailed information at the Quantum Autumn School page (ENCCS)
Time: Dec. 2-4, 09:00-17:00 (CET) (2024).
Julia for High-Performance Scientific Computing (Online), 9-12 December
Abstract: This workshop is an interactive online event, featuring live coding, demos, and practical exercises. We aim to equip you with the tools and knowledge to write efficient, high-performance code using Julia. In this four-half-day course, we will start with the basic features of Julia, and then delve into the specific topics on writing performant Julia code, multithreading, and distributed computing. Additionally, we will focus on Julia programming on HPC clusters using GPU accelerators, and the interfacing of Julia with other programing languages (C/C++, Fortran, Python, etc.).
Detailed information at the Julia workshop page (ENCCS).
Time: Dec. 9-12, 9:30-14:30 (CET) (2024).
Publicly available training material
ENCCS develops and maintains a library of training material on topics in HPC, AI and Quantum Computing which is suitable for self-paced learning, see the training library at ENCCS.
Training events from around Europe
Many HPC centres and National Competence Centres around Europe offer diverse HPC training workshops open to anyone in Europe, many of which are online. Upcoming workshops can be found at the European HPC Portal.