Running calculations
General information
This text governs the conditions under which processes that are more demanding on system resources (memory, CPU, disk operations, etc.) or are of a more long-term nature, etc., may be run on generally available shared faculty machines.
When running such processes, it is generally necessary to take care that you do not have exclusive access to the faculty machines and that other users can use them at the same time (this is particularly relevant for Aisa). Therefore, it is necessary to run such processes in a considerate manner, in particular so that interactive users are not restricted. This can be done by following the instructions below.
For larger scale computations (duration in days, multiple machines, CPU intensive) it is also necessary to report them with a brief justification and duration to .
In case of simultaneous work on many machines, avoid simultaneous transfer of voluminous data (
podman/ollama pull ... etc.), lest you effectively cause a DDoS (on the data source, network, storage, ...). Download the data to the machines sequentially, or preferably only once, and then distribute it between the machines, only within the LAN.
For non-repetitive short-term processes or when you are debugging your programs interactively, it is not necessary to apply these instructions. Also, running calculations on Aura and Arachne works in a different mode and not all the restrictions described here apply.
Faculty machine administrators continuously monitor machine usage. If administrators are alerted, the load generated needs to be reduced. Processes that are not reported or are placing excessive load on the machine(s) may be terminated without notice. Also, in the event of repeated or serious non-compliance with the instructions herein, administrators may proceed to temporarily block the account.
Restrictive measures
It is undesirable to run calculations on machines in classrooms that are directly used for teaching during class time or potential exam times, i.e. generally between 07:45-20:15. However, it is generally best to run calculations only at night if possible.
If the calculations are of a longer-term nature and are part of research or a thesis, it is advisable to use dedicated computing servers. If you do not have access to one, you can request one if warranted by contacting .
For CPU-intensive processes, you should set them to the lowest priority of +19, for example by using the command
nice:
nice -n +19 ./program
It is also possible to restrict the running of process threads to only specified CPU cores with the command
taskset:
taskset -c 1-2,4 ./program
If a running process generates a higher I/O load with disk operations (random access, large transfers), it is advisable to place files with such access in a folder on the local disk (
/tmp), not in the home directory (
/home/xlogin), since this is accessible over the network via NFS and the volume on which the data is located is also used by other machines.
It is important to avoid (near-)OOM states if your computations will be more memory intensive - see similar instructions for Aura/Arachne.
Load monitoring
During computations it is advisable to continuously monitor the state or load of the machine (disks full, memory, I/O, load, process state), for example the following tools are used for this purpose:
-
top, htop- summary information about the system and its processes -
ps ux- listing information about my processes -
iostat- listing information about I/O operations -
who- listing of logged-in users (relevant only for machines in classrooms and halls) -
df- disk volume capacity usage -
head /proc/pressure/*- PSI (Pressure Stall Information) monitoring