# Kickstart 2023 internal ## TODO 31/5 - [x] zoom room for studio (RD) - [ ] the picture where we are (TP) - [x] write icebreakrers from laste year (EG) - [ ] Intro: extra picture in https://scicomp.aalto.fi/training/kickstart/intro/ (TP) - [ ] From data storage to your science: page https://hackmd.io/@AaltoSciComp/SciCompIntro can be shrunk to the 2 images: "map" of the node, map of the network. EG can describe the figures, Simo can add interesting insights. Different parts of the map are useful for different part of a research project. (EG) - [ ] For kitchen part: check slides especially last slides and make clear that they are for "homework" for the learners (EG+TP + everyone else). See if we can avoid saying "thread". - [ ] How big is my calculation? materials ongoing (ST+TP) boxes and lego blocks - [ ] Interview: not much done, but [questions exist from last year](https://hackmd.io/5gzIxnGtSOqbABbPD1vvig). - [ ] Two new tutorials: i) slurm as queuing system ii) cluster from the shell. TODO: They should be linked from the page. (MS? RD?) - [ ] Move the connecting to cluster at 2pm, and then ~~filesdirectories~~Shell-On-A-Cluster tutorial and final motivational talk "what can be done with a cluster?". (RD? MS?) - [ ] day2 :: in the schedule, header "structure of a cluster" should actually be "slurm queing system" (the document name). Please update it. - [ ] Check OOD resources (enough for 50 users?) - [ ] Maybe a "talk show host" 3rd person in the room for day 2 and 3: Jarno and Mira can pop up / talk sometimes to raise something important on hackmd - [ ] day 3 parallel computing new exercises, can someone review them? - [ ] mpi shared memory exercise? if there's time. E.g. for these programs figure out what parallelization paradigm they use. - [ ] Maybe a demo of LLM retraining ## To Do / To Check - the "Preparation" and "Technical prerequisites" could be before the schedule - map of physical representation. There is one in the https://hackmd.io/@AaltoSciComp/SciCompIntro - exercises: we did not have enough. When do you use what we show? Can we involve the workflows a bit more as part of the exercises? - Can the cooking metaphors be used for this purpose? - real questions: how do you tell the code how much processors to use? how do you get the resources known to the application? THis is also missing from the docs - some programs take this parameter from the cli, some want a config file, some automatically use all the CPUs the script sees - the interactive-1 - Use the pi example much more - serial page - parallel page - array job page - etc... - right now pi is in the exercises, move to body also. - new Jupyter tutorial page (under "basic workflows") - page notes - cluster prerequisites: better title, move "building skills" to here. - connecting - using the cluster from the shell - applications - modules - storage: - remote data - Slurm - diner metaphor: you bring your own recipe. Prise depends on resources you request. - interactive: remove most of "slurm" basics from there. This is about the basics of interactive work - ex #2: remove c-d (move to parallel part) - serial - monitoring: mostly is good - ex#2 -> parallel-shared - array: overall good. Improve exercises. - Exercise: pi script, 10 random seeds, each saving to their own output file. You can use $SLURM_ARRAY_TASK_ID as the `--seed` parameter. - array - ex1: make last and advanced. Point is to see how each array job gets the same memory, array need same type of jobs. - ex4: make #1 - new ex: for different seeds, use program to combine outputs from array jobs - GPU: - remove the in-depth examples. - Add a pi example, using CUDA (still in Python) - CUDA compiling moved to a topical page - Codes that use CUDA: talk more about installing your own, conda, you don't need your own cuda, it's finicky abotu libraries, installing own cudatoolkit (for own codes), etc. - Monitoring section: split into two, short "monitoring" and new longer "common problems" section that has the rest of the section - Exercises - Write a batch script that usese py-gpu.py - remove some execsises / mark them advarted - parallel: too advanced, make it about pi example, advanced examples to exercises. - There points - Types of parallelism and why - Example and slurm args for each parallel method - importance of monitoring parallel - Remove most of the examples (move to topical pages), make them shorter ones. Add in `pi-multiprocessing.py`, `pi-openmp.py`, `pi-mpi.py`. Use `--cpus-per-task`, not `-c` (long arguments everywhere). - `srun` must now also always get `--cpus-per-task`, too. - "setting constraint for certain architecture" moved to new "resources" - Monitoring: "" - Run pi-mpi using OpenMP Sulrm arguments. Run pi-openmp using MPI arguments. Check efficiency and output. - new exercise: `pi.py --serial 0.5` and do a scaling test. ## Day 1 plan * 10m Intro about the course (RD, all) * map of this course * 15m Data storage to science (EG?, ST) * map of the tools available (a previous year: https://hackmd.io/@AaltoSciComp/SciCompIntro) * make a picture we can keep showing in each lesson to point out where we are * ![](https://i.imgur.com/7D3s0Vv.png) * 30m Cooking analogy (TP, EG) * 30m How big is my calculation? Measuring your needs. (ST, TP) * Understanding the scales of calculations * 30m Interview: Teemu (RD, TR) * 45m Connecting to Triton (win: ??, mac: ??, linux: ??) * Basics of SSH * Connecting to the cluster * 30m cluster-shell (RD, TR) * 30m What can you do with a cluster? ("two-real examples" RD, ST) ## Day 2/3 special topics (excluding all main tutorials) * day2: 30m Slurm queuing system (net tutorial) (TP, JR) * day2: 30m ~~Two real examples of using the cluster~~ day 1 * day3: 30m Laptops to Lumi (by CSC) * day3: 30m Q&A / panel discussion (all available) Chosen tools for connecting: VPN + ssh & SMB mounting. ## Emails ### BEFORE DAY 1 EMAIL Hello and thank you for registering to **"Intro to Scientific Computing (Tuesday 6) and to High Performance Computing (Wednesday 7, Thursday 8)"** This email contains all the useful information to get the best course experience. **HOW**: For this course, anyone can watch the stream online, even without registering (yes, we encourage you to share!). For questions, you can ask by writing via a collaborative document, and there are sometimes Zoom breakout sessions for those who want to be in touch with helpers from their organisation (only for Aalto, Helsinki, TUNI, Oulu). **READ: All learning materials linked from the schedule: https://scicomp.aalto.fi/training/scip/kickstart-2023/#schedule**, especially starting at the "Preparation" section. ## Tuesday 6/June You don't need anything pre-installed if you just watch, but the BASH shell would allow you to test the connection to the HPC cluster of your organisation as you will need it if you plan to attend also day 2 and 3. See the course page for information. **If you are not familiar with the Linux terminal, please check our crash course before the training https://scicomp.aalto.fi/scicomp/shell/** To join the session: - **Watch** via Twitch TV: https://www.twitch.tv/coderefinery - **Ask** questions via collaborative document: https://notes.coderefinery.org/scicomphpc2023 - **Live** help on Zoom: https://aalto.zoom.us/j/69608324491 (join the breakout room of your organization) **Sessions start at 12:00 sharp EEST** (convert to your timezone https://arewemeetingyet.com/Helsinki/2023-06-06/11:50/IntroToSciComp), but join at 11:50 for introductory information. ## Intro to HPC (Wednesday 07/June-Thursday 08/June) In order to get the most out of this course, you need an account on a computer cluster. We can only provide support for Aalto University, University of Helsinki, University of Oulu, TUNI clusters. Please see the course page (above) for instructions to request an account and get connected. See the course web page for more information on this session. **Sessions start at 12:00 sharp EEST** (convert to your timezone https://arewemeetingyet.com/Helsinki/2023-06-07/11:50/IntroToHPC), but join at 11:50 for introductory information. You may attend via Twitch (watch only) and ask questions via collaborative document. If you would like breakout rooms to do exercises with others, join Zoom as well (only for Aalto, Helsinki, TUNI, Oulu). To join this part: - **Watch** via Twitch TV: https://www.twitch.tv/coderefinery - **Ask** questions via collaborative document: https://notes.coderefinery.org/scicomphpc2023 - **Live** help on Zoom: https://aalto.zoom.us/j/69608324491 (join the breakout room of your organization) ## General If you are not from the organisations mentioned above, you are still welcome to join us and follow the sessions, and you will probably learn something. However, we cannot give you access to an HPC cluster. If you have a cluster at your university, most of the examples we are showing should also work in your institution cluster. If you have any question, please email **scip@aalto.fi**. See you on Tuesday! Aalto Scientific Computing ---- ### Announcement Subject: ASC summer kickstart / Introduction to Scientific computing and HPC Our usual summer course is on again. This course is designed for new and intermediate researchers to provide the basic skills for computational science: day 1 is a bunch of skills about using Linux and remote systems, and days 2-3 expand on that with real examples of using the Triton computer cluster. These topics are designed around what Aalto researchers actually need for their work. https://scicomp.aalto.fi/training/scip/kickstart-2023/ Please register for emails. This is our standard livestream course, where anyone in the world may attend, but also there is food and live support on-campus in LOCATION. Note: Day 1 is the same day as the CS Summer trip. This is unfortunate since we tried to coordinated and announced our dates in advance to the common departments. Unfortunately, this year we can't work around this. **This course is still especially important to your career** and useful for day 2-3. Videos will be made available the same evening, we recommend you watch these ### Mail to group leaders Hi all, June 6-8 Science-IT/Aalto Scientific Computing has our yearly "SciComp/HPC kickstart course". Please forward this email to members of your team, and new summer workers. Info + registrations: https://scicomp.aalto.fi/training/scip/kickstart-2023/ The course is designed around the real problems in computing/data/software that people of all levels, from summer worker to postdoc. It's especially designed for new summer workers. You might want to recommend your group members to attend, since it helps everyone: - There is nothing more valuable than time, and investing in better work tools helps everyone and everything. - The course's tools will help your group work together better. - Your group gets to know us better, so they are more likely to ask us for help when needed - again saving time. The course is livestream, so you can book a meeting room and your group can watch together, doing the exercises on your own projects. To make it better, after the course, invite us to a consultation with your group and we can start putting the tools we teach into practice. CS Note: we know that the first day is the same day as the CS summer trip. We reached out to departments well in advance, yet this happened still unfortunately, and we weren't able to reschedule this year (like we have done previous years). The first day still has important information for people of all levels, so videos are available the same evening. ---- # Email post day 1 Hello! Thank you for joining us today for our "Introduction to scientific computing", hopefully the talks were motivational and made you reflect on your workflows. Tomorrow, we start the main cluster work - you can easily join if you weren't in day 1 if you read below. If you missed something or if you want to re-watch it, you can find all sessions from today already available at https://www.twitch.tv/coderefinery (they will be archived on our YouTube channel https://www.youtube.com/channel/UCNErdFO1_GzSkDx0bLKWXOA) Tomorrow we (you!) will do more hands-on work, so please make sure you have tested the connection to the cluster of your university via terminal. We can provide real-time help for Aalto University, Univ. of Helsinki, Univ. of Oulu, TUNI. You should review these lessons, if you weren't able to fully finish them: - Connecting to the cluster (very important): https://scicomp.aalto.fi/triton/tut/connecting/ - Using the cluster from the shell (very important that you clone the hpc-examples repository and understand how to move about the cluster for tomorrow): https://scicomp.aalto.fi/triton/tut/cluster-shell/ - Shell crash course (optional, a bit more advanced than the previous link): https://scicomp.aalto.fi/scicomp/shell/ Tomorrow, you can join the Zoom 30min early (at 11:30) if you need help connecting or have any topics to discuss. You can also reach us at scip@aalto.fi. Here a reminder of the useful links for you: - Materials :book: : https://scicomp.aalto.fi/training/scip/kickstart-2023/ (linked from the "Schedule") - Watch via Twitch TV 📺: https://www.twitch.tv/coderefinery - Ask questions via collaborative document 📝: https://notes.coderefinery.org/scicomphpc2023 - Live help on Zoom 📞: https://aalto.zoom.us/j/69608324491 (join the breakout room of your organization) Join at 11:50 for introductory information, but sessions start at 12:00 sharp EEST (convert to your timezone https://arewemeetingyet.com/Helsinki/2023-06-06/11:50/IntroToSciComp). See you tomorrow at 11:50 EEST! Aalto Scientific Computing ---- # Email post day 2 Hello! Thank you for joining us today for our "Introduction to HPC", hopefully you understood the basics of slurm and what clusters are useful for. Tomorrow, we continue with parallel jobs, gpus, and some special guest from CSC will be talking about LUMI Supercomputer. It is ok to join if you missed the previous days, we are able to support you if you need help. If you want to re-watch today's or yesterday's session, you can find them both available at https://www.twitch.tv/coderefinery (they will be archived on our YouTube channel https://www.youtube.com/channel/UCNErdFO1_GzSkDx0bLKWXOA) Tomorrow, you can join the Zoom 30min early (at 11:30) if you need help with anything from today or have any topics to discuss. You can also reach us at scip@aalto.fi. Here a reminder of the useful links for you: - Materials :book: : https://scicomp.aalto.fi/training/scip/kickstart-2023/ (linked from the "Schedule") - Watch via Twitch TV 📺: https://www.twitch.tv/coderefinery - Ask questions via collaborative document 📝: https://notes.coderefinery.org/scicomphpc2023 - Live help on Zoom 📞: https://aalto.zoom.us/j/69608324491 (join the breakout room of your organization) Join at 11:50 for introductory information, but sessions start at 12:00 sharp EEST (convert to your timezone https://arewemeetingyet.com/Helsinki/2023-06-08/11:50/IntroToSciComp). See you tomorrow at 11:50 EEST! Aalto Scientific Computing --- ++ Emails of other admins sami.maisala@helsinki.fi;juha.a.helin@helsinki.fi;juhana.kammonen@helsinki.fi;tomi.hakkinen@tuni.fi;perttu.lantto@oulu.fi;jesse.korhonen@oulu.fi;akseli.mansikkamaki@oulu.fi