Skip to content

Commit 98dd5cf

Browse files
committed
Kickstart 2023 initial page
1 parent 26a2246 commit 98dd5cf

File tree

2 files changed

+361
-0
lines changed

2 files changed

+361
-0
lines changed

training/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ to suggest a new course, `please take this survey <https://link.webropol.com/s/s
2929

3030
Coderefinery Workshop Spring 2023 (21-23 and 28-30. March) <https://coderefinery.github.io/2023-03-21-workshop/>
3131
scip/workflows-2023
32+
scip/kickstart-2023
3233
Take the survey! Request a re-run of past courses / new courses <https://link.webropol.com/s/scipod>
3334
scip/index
3435

training/scip/kickstart-2023.rst

Lines changed: 360 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,360 @@
1+
=====================================================================
2+
June 2023 / Intro to Scientific Computing / HPC Summer Kickstart
3+
=====================================================================
4+
5+
.. important::
6+
7+
This page mostly has information from 2022. The page will be
8+
updated closer to time. The dates are confirmed to be 6-8 June
9+
2023 (T-Th). The schedule will be updated based on what we decide
10+
to focus on this year - if you have special topic requests, please
11+
let us know.
12+
13+
14+
Kickstart is a three × half day course for researchers to get
15+
started with high-performance computing (HPC) clusters.
16+
**The first day serves as a guide to your career:** a map to the types of
17+
resources that are available and skills you may need in your career,
18+
so that you can be prepared when you
19+
need more in the future. This part is especially suitable to new researchers or students trying to
20+
understand computational/data analysis options available to them. It
21+
won't go into anything too deep, but will provide you with a good
22+
background for your next steps: you will know what resources are
23+
available and know the next steps to use them.
24+
25+
**The second and third days take
26+
you from being a new user to being competent to run your code at a
27+
larger scale than you could before.**
28+
This part is good for any researcher who thinks they may need to
29+
scale up to larger resources in the next six months, in any field.
30+
Even if you don't use computing clusters, you will be better prepared
31+
to understand how computing works on other systems. If you are a
32+
student, this is an investment in your skills. By the end of the course you
33+
get the hints, ready solutions and
34+
copy/paste examples on how to find, run and monitor your applications,
35+
and manage your data.
36+
37+
If you are at Aalto University: the course is obligatory for all new
38+
Triton users and recommended to all interested in the field.
39+
40+
This course is part of :doc:`Scientific Computing in Practice <index>` lecture series
41+
at Aalto University, supported by many others outside Aalto, and offered to others as part of `CodeRefinery <https://coderefinery.org>`__.
42+
43+
44+
45+
Other universities
46+
------------------
47+
48+
**If you are not at Aalto University**, you can follow along with the
49+
course and will learn many things anyway. The course is designed to
50+
be as useful to people outside of Aalto, but some of the examples
51+
won't directly work on your cluster (most will, anyway we will give
52+
hints about adapting). Known sites partnering with this course:
53+
54+
* Regardless of where you are from, you may register using the
55+
registration form below to get emails about the course.
56+
* Participants from University of Helsinki can follow how to connect
57+
to their Kale/Turso cluster by following `their own instructions
58+
<https://wiki.helsinki.fi/pages/viewpage.action?pageId=408323613>`__.
59+
* Participants from University of Oulu: please follow instructions on
60+
`how to access the Carpo2 computing cluster <https://ict.oulu.fi/17120/?page&lang=en>`__.
61+
* Tampere: this course is recommended for all new Narvi users and also all
62+
interested in HPC. Most things should work with simply replacing triton
63+
-> narvi. Some differences in configuration are listed in
64+
`Narvi differences
65+
<https://narvi-docs.readthedocs.io/narvi/kickstart-diffs.html>`__
66+
* `CSC <https://csc.fi>`__ (Finland): Participants with `CSC user
67+
account <https://docs.csc.fi/accounts/>`__ can try examples also in
68+
CSC supercomputers, see the `overview of CSC supercomputers
69+
<https://docs.csc.fi/computing/overview/>`__ for details on
70+
connecting, etc.
71+
72+
If you want to get your site listed here and/or help out, contact us
73+
via the `CodeRefinery chat
74+
<https://coderefinery.github.io/manuals/chat/>`__ (#workshops stream).
75+
Our :doc:`hints for other sites' support staff
76+
</triton/tut/required-cluster-setup>` are available.
77+
78+
79+
80+
Practical information
81+
---------------------
82+
83+
This is an online hybrid of MOOC and interactive: everyone may attend
84+
the **livestream** at https://twitch.tv/coderefinery, no registration
85+
needed! This is the primary way to watch all sessions. **Zoom** is
86+
used for exercise sessions of partner audiences, and **HackMD** is
87+
used for a continuous Q&A session.
88+
89+
**Time, date:** 6 -- 8 June (Tue--Thu). 11:50-16:00 EEST
90+
91+
**Place:** Online via public livestream, Zoom exercise sessions for
92+
partners, and probably in-person discussion/practice rooms at some
93+
campus.
94+
95+
**Registration:** Please register at this link [TODO]. Attending
96+
individual sessions is fine.
97+
98+
**Cost:** Free of charge for FGCI consortium members including Aalto
99+
employees and students. Livestream is free to everyone.
100+
101+
**Additional course info at:** scip@aalto.fi
102+
103+
104+
105+
Schedule
106+
--------
107+
108+
**All times are EEST (Europe/Helsinki time)!**
109+
110+
The daily schedule will be adjusted based on the audience's questions.
111+
There will be frequent breaks and continuous questions time going on,
112+
this is the mass equivalent of an informal help session to get you
113+
started with the computing resources.
114+
115+
116+
.. admonition:: Subject to change
117+
118+
Schedule may still have minor updates, please check back for
119+
the latest.
120+
121+
* **Day #1 (Tue 6.jun):** Basics and background
122+
123+
* 11:50--12:00: Connecting time, basics, and icebreaker
124+
125+
* **12:00--12:10 Introduction, about the course** *Richard Darst and
126+
other staff* Materials: :doc:`../../training/kickstart/intro`
127+
128+
* **12:10--12:25: From data storage to your science** *Enrico
129+
Glerean and Simo Tuomisto*
130+
131+
Data is how most computational work starts, whether it is
132+
externally collected, simulation code, or generated. And these
133+
days, you can work on data even remotely, and these workflows
134+
aren't obvious. We discuss how data storage choices lead to
135+
computational workflows. Materials: `SciComp Intro
136+
<https://hackmd.io/@AaltoSciComp/SciCompIntro>`__
137+
138+
* **12:25--12:50: What is parallel computing? An analogy with
139+
cooking** *Enrico Glerean and Thomas Pfau*
140+
141+
In workshops such as this, you will hear lots about parallel
142+
computing and how you need it, but rarely get a understandable
143+
introduction to how they relate and which are right for you.
144+
Here, we give a understandable metaphor with preparing large
145+
meals. `Slides <https://docs.google.com/presentation/d/e/2PACX-1vQLTzWkRy7Du3jjPJ6Y9BqKczU_JcSTEL6XsndrNJ7ylzi4RWeEy8lhfWZQu_lpwbAKroh51qqLoPFG/pub>`__
146+
147+
* **13:00--13:25: Behind the scenes: the humans of scientific
148+
computing** *Richard Darst and ???*
149+
150+
Who are we that provide these services. What makes it such a
151+
fascinating career? Learn about what goes on behind the scenes
152+
and how you could join us.
153+
154+
* **13:25--13:50: How you actually install software on the cluster:
155+
an example case (Conda and Python)** *Simo Tuomisto and ???*
156+
157+
Software installation is one of the questions we most often get.
158+
Usually, on clusters, this happens via *environments*, which
159+
allows you to install specific software per-project. We'll give a
160+
demonstration of how these work in Python. Materials for demo:
161+
:doc:`/triton/apps/python-conda`
162+
163+
- **14:00--14:50: Secure Shell (ssh) tips and tricks** *Thomas Pfau
164+
and Enrico Glerean*
165+
166+
Remembering server address... Another login? Another password prompt?
167+
Again? Wouldn't it be nice to just have a key instead of a keycode that
168+
you need to type in? Here, we will show you how to set up your computer
169+
to easily connect to the server(s) you need. And we will explain the
170+
process from keys to config. While useful, this part is skippable if
171+
you are able to connect to Triton (next section).
172+
Materials: :doc:`/scicomp/ssh`
173+
174+
- **15:00--15:45: Connecting to a HPC cluster** *Thomas Pfau and
175+
Simo Tuomisto*
176+
177+
- Required if you are attending the Triton/HPC tutorials the
178+
following days, otherwise the day is done.
179+
- 15:00--15:20?: Livestream introduction to connecting
180+
- 15:??--??: Individual help time in Zoom (links sent to
181+
registered participants)
182+
- Material: :doc:`/triton/tut/connecting`
183+
184+
- Preparation for day 2:
185+
186+
Remember to read/watch the "shell crash course" (see "Preparation"
187+
below) if you are not yet confident with the command line. This
188+
will be useful for tomorrow.
189+
190+
* **Day #2 (Wed 7.jun):** Basic use of a cluster *(Richard Darst, Simo
191+
Tuomisto)*
192+
193+
- 11:50--12:00: Connecting time and icebreaker
194+
195+
- **12:00--12:05: Introduction to days 2-3**
196+
197+
- :doc:`/triton/tut/intro`
198+
199+
- **12:05--12:30: What can you do with a computational cluster?**
200+
201+
Several real examples of how people use the cluster (what you can
202+
do at the end of the course).
203+
204+
- Real example 1: Large-scale computing with array jobs
205+
- Real example 2: Large-scale parallel computing
206+
207+
- **12:30--15:00: Running your first jobs in the queue**
208+
209+
- :doc:`/triton/tut/interactive`
210+
- :doc:`/triton/tut/serial`
211+
- :doc:`/triton/tut/monitoring`
212+
213+
- **15:00--15:30: Other things you should know about the HPC environment**
214+
215+
- :doc:`/triton/tut/modules`
216+
- :doc:`/triton/tut/storage`
217+
- :doc:`/triton/tut/remotedata`
218+
219+
- **15:30--16:00: Q&A**
220+
221+
* **Day #3 (Thu 8.jun):** Advanced cluster use *(Simo Tuomisto, Richard
222+
Darst)*
223+
224+
- 11:50: Joining time/icebreaker
225+
226+
- **11:50--13:00: Simple parallelization with array jobs:**
227+
:doc:`/triton/tut/array`
228+
229+
- **13:00--14:00: Using more than one CPU at the same time:**
230+
:doc:`/triton/tut/parallel`
231+
232+
- **14:00--14:30: Laptops to Lumi**
233+
234+
You now know of basics of using a computing cluster. What if you
235+
need more than what a university can provide? CSC (and other
236+
national computing centers) have even more resources, and this is
237+
a tour of them. `Slides here <https://github.com/AaltoSciComp/scicomp-docs/raw/master/training/scip/CSC-services_062022.pdf>`__.
238+
239+
- **14:40--15:30: Running jobs that can utilize GPU hardware:** :doc:`/triton/tut/gpu`
240+
241+
- **15:30--16:00: Q&A**
242+
243+
244+
245+
Preparation
246+
-----------
247+
248+
We strongly recommend you are familiar with the Linux command line.
249+
Browsing the following material is sufficient:
250+
251+
* `Basic Linux shell and scripting
252+
<https://www.youtube.com/watch?v=ESXLbtaxpdI&list=PLZLVmS9rf3nN_tMPgqoUQac9bTjZw8JYc&index=3>`__
253+
(important) (or read/watch the shorter :doc:`crash course
254+
</scicomp/shell>` / `video <https://youtu.be/56p6xX0aToI>`__)
255+
256+
**How to attend:** Online workshops can be a productive format, but it
257+
takes some effort to get ready. Browse these resources:
258+
259+
* `Attending a livestream workshop
260+
<https://coderefinery.github.io/manuals/how-to-attend-stream/>`__,
261+
good to read in detail (ignore the CodeRefinery-specific parts).
262+
* `How to use HackMD to take answer questions and hold discussions <https://coderefinery.github.io/manuals/hackmd-mechanics/>`__.
263+
264+
265+
266+
267+
Technical prerequisites
268+
-----------------------
269+
270+
**Software installation**
271+
272+
* SSH client to connect to the cluster (+ be able to connect, see next
273+
point)
274+
* `Zoom <https://coderefinery.github.io/installation/zoom/>`__ (if
275+
attending breakout rooms)
276+
277+
278+
**Cluster account and connection verification:**
279+
280+
* Access to your computer cluster.
281+
282+
* Aalto: if you do not yet have access to Triton, :doc:`request an account
283+
</triton/accounts>` in advance.
284+
285+
* Then, connect and get it working
286+
287+
* Aalto (and possibly useful to others): try to :doc:`connect to
288+
Triton </triton/tut/connecting>` to be ready. Come to the
289+
Wednesday session for help connecting (required).
290+
291+
292+
293+
Next steps / follow-up courses
294+
------------------------------
295+
296+
Keep the :doc:`Triton quick reference </triton/ref/index>` close (or
297+
equivalent for your cluster).
298+
299+
Each year the first day has varying topics presented. We don't repeat
300+
these every year, but we strongly recommend that you watch some of
301+
these videos yourself as preparation.
302+
303+
Very strongly recommended:
304+
305+
* `When and how to ask for help
306+
<https://www.youtube.com/watch?v=5fgXXz3fzdM>`__ (very useful)
307+
* `Git intro
308+
<https://www.youtube.com/watch?v=r9AT7MqmLrU&list=PLZLVmS9rf3nOaNzGrzPwLtkvFLu35kVF4&index=5>`__ (useful)
309+
310+
Other useful material in previous versions of this course:
311+
312+
* Scientific Computing workflows at Aalto - concepts apply to other
313+
sites, too (optional): `lecture notes
314+
<https://hackmd.io/@AaltoSciComp/SciCompIntro>`__ and `video
315+
<https://www.youtube.com/watch?v=Oz37XAzWFhk>`__, :doc:`reference
316+
material </triton/usage/workflows>`.
317+
* Tools of scientific computing (optional): `lecture notes
318+
<https://hackmd.io/@AaltoSciComp/ToolsOfScientificComputing>`__ and
319+
`video <https://www.youtube.com/watch?v=kXYfxXEb0Go>`__
320+
321+
While not an official part of this course, we suggest these videos
322+
(co-produced by our staff) as a follow-up perspective:
323+
324+
* Attend a `CodeRefinery workshop <https://coderefinery.org>`__,
325+
which teaches more useful tools for scientific software
326+
development.
327+
* Look at `Hands-on Scientific Computing
328+
<https://hands-on.coderefinery.org>`__ for an online course to
329+
either browse or take for credits.
330+
* `Cluster Etiquette (in Research Software Hour)
331+
<https://www.youtube.com/watch?v=NIW9mqDwnJE&list=PLpLblYHCzJAB6blBBa0O2BEYadVZV3JYf>`__:
332+
The Summer Kickstart teaches what you *can* do from this course,
333+
but what *should* you do to be a good user.
334+
* `How to tame the cluster (in Research Software Hour)
335+
<https://www.youtube.com/watch?v=5HN9-MW7Tw8&list=PLpLblYHCzJAB6blBBa0O2BEYadVZV3JYf>`__.
336+
This mostly repeats the contents of this course, with a bit more
337+
discussion, and working one example from start to parallel.
338+
339+
340+
341+
Community standards
342+
-------------------
343+
344+
We hope to make a good learning environment for everyone, and expect
345+
everyone to do their part for this. If there is anything we can do to
346+
support that, let us know.
347+
348+
If there is anything wrong, *tell us right away* - if you need to
349+
contact us privately, you can message the host on Zoom or
350+
:doc:`contact us outside the course </help/index>`. This could be as
351+
simple as "speak louder / text on screen is unreadable / go slower" or
352+
as complex as "someone is distracting our group by discussing too
353+
advanced things".
354+
355+
356+
357+
Material
358+
--------
359+
360+
See the schedule

0 commit comments

Comments
 (0)