For Head TAs
This topic contains information for head TAs that intend to use the cluster for a course that they are responsible for, including using JupyterHub for running Jupyter notebooks.
Please contact
our service desk with the information that we ask below to set up a course.
Provisions
- The course must be for or in the name of D-INFK.
- For plain CPU jobs we recommend going to Euler and use the free tier as we only have few CPU cores available, enough for Jupyter notebooks but not more.
Planning
Before we can even set up the environment for your course we need the following information.
1. Type of Usage
Currently the cluster provides three three different options to use the cluster resources:
- Interactive Jupyter sessions using GPUs. The constraining factor is the number of available GPUs.
- Interactive Jupyter sessions using CPUs. The constraining factor is available RAM.
- SLURM jobs using GPUs. The constraining factor is the number of available GPUs.
You can request one, a combination of two or all three of the above.
2. Course Tag
We need a tag for your course, either an abbreviation or something short,
aml
or
mixed_reality
would be fine.
The tag will be used for course folders and SLURM account names as well as for the access groups we will create. If you requested more than one option in
1 above then we will add additional course tags with
jupyter,
jobs or
cpu suffixes as needed.
3. Number of Students
We only have 256 GPUs for GPU courses and CPU nodes with 1536GB of RAM for CPU Jupyter sessions. We need to know how many students you anticipate in your course and how likely they will be all using the cluster at the same time.
For large classes that require a lot of time you may need to build teams where only one student can run a job or Jupyter notebook at any given time. In this case we need to know which students form a team. If you give us a ratio we can also automatically assign students to teams.
4. Maximum Runtime
Currently we have two different priorities for GPU job run time:
- interactive
- Has priority over jobs, maximum 60 minutes runtime, fills cluster completely if necessary. This is intended for running Jupyter notebooks or interactive sessions and nothing else.
- jobs
- Negotiable limit up to seven days, but jobs are preempted by
interactive
sessions and automatically restarted. Checkpointing is heavily recommended and you will need to teach your students.
For CPU jobs there is only one priority:
- interactive
- Maximum 120 minutes runtime. This is intended for running Jupyter notebooks or interactive sessions and nothing else. The server is killed when time runs out.
If your courses uses GPU jobs then consider what the longest runtime of a job of your students is going to be and let us know.
5. Total number of Job Hours for a Student or Team
How much time will a student or a team need to comfortably complete all exercises or projects of a semester? If you select more than one course tag in
1 then give us a number of hours per tag.
We do not want this number to be too high to encourage using the resources efficiently but a student or team will not be able to run new jobs if the amount of time is used up.
6. Data
What data will your students use or produce and how much?
Each course gets a folder
/cluster/courses/{course tag}
where you can put data sets or whatever the students need. This folder will be writable by the TAs and readable by the students.
Your students have 20GB home directory each and a directory under
/work/scratch
which can temporarily hold up to 100GB (see
here). If they need a storage location for large data or to collaborate with (in case of teams) then we can allocate space in
/work/courses
. In this case we need to know how much each user or team needs and what the total for the whole course is expected to be.
7. Software
We only install software that comes with Ubuntu. If you miss something then please let us know. Login nodes and compute nodes have the same software installed.
You can always compile your own software to
/cluster/courses/{course tag}
or provide python environments and have your students include a location there in their
$PATH
.
8. Additional Information
To complete the setup for production we also need the following but it's OK to supply this information at a later point of time:
- The list of additional TA login names.
- The initial list of student login names or mail addresses, for instance from eDoz.