translated by Google

Machine-translated page for increased accessibility for English questioners.

Running calculations

General information

This text regulates the conditions under which generic shared faculty machines can run processes that are more demanding on system resources (memory, CPU, disk operations, etc.) or are of a longer-term nature.

When running such processes, it is generally necessary to ensure that you do not have exclusive access to faculty machines and can be used by other users at the same time. Therefore, it is necessary to run such processes in a considerate manner, especially in order not to restrict the interactively working users. This can be achieved by following the instructions below.

For larger scale calculations (duration in days, multiple machines, CPU intensive), it is also necessary to report them with a brief justification and duration to address .

For uninterrupted short-term processes or interactive debugging of your programs, these instructions do not need to be applied. Also running calculations on Aura works in a different mode and does not apply all restrictions described here.

Facility managers keep an eye on the use of machines. In the case of alerts to the administrator, it is necessary to reduce the generated load. Processes that are not reported or overloaded by the machine (s) can be terminated without notice. Also, in case of repeated or more serious non-compliance with the instructions given here, administrators may temporarily block the account.

Restrictive measures

On machines in classrooms that are directly used in teaching (Nymfe23-74 and sometimes Luna01-12), it is undesirable to run calculations at the time of teaching or potential tests, ie generally between 07: 45-20: 15. In general, however, it is best to run calculations only at night if possible.

If the calculations are of a longer-term nature and are part of the research, final work, it is advisable to use Aura computing server for this purpose. If you do not have access to it, you can request that it be assigned to you at reasonable times .

For CPU-intensive processes, you need to set their lowest priority +19 by a command nice :

nice -n +19 ./program

It is also possible to restrict process thread running to specified CPU kernels only taskset :

taskset -c 1-2,4 ./program

If a running process generates a higher I / O load (random access, large) disk drive operations, it is appropriate to place the files with such access in a folder on the local disk ( /tmp ), not to your home directory ( /home/xlogin ) since it is available across the network via NFS and the volume on which the data is located is also used by other machines.

The amount of memory used by processes running from one instance of the shell can be limited by running a memory- ulimit -v as a prevention against exhaustion or overuse of memory. You can also set a limit for the consumed process time by using the command ulimit -t ; when the limit is exceeded, the process will be terminated by the KILL signal. Learn more about him and his other options help ulimit or system call documentation setrlimit .

Load monitoring

During calculations, it is advisable to continuously monitor the status, respectively. machine load (disk loading, memory, I / O, load, process state) for example, these tools are used:

  • top, htop - summary information about the system and its processes
  • ps ux - Listing of my process information
  • iostat - listing information about I / O operations
  • who - Listing of registered users (relevant only for classroom and halls machines)
  • df - Usage of disk volumes