Cgroupy
Cgroups ( zkratka z control groups) je rys jádra operačního systému Linux, který umožňuje omezit spotřebu prostředků (paměti, procesoru, vstupně/výstupních operací, přístupů na síť) pro určitou skupinu procesů (viz heslo Cgroups na Wikipedii).
Cgropus can be applied only on machines with property set:
- cgroups=cpuacct https://metavo.metacentrum.cz/pbsmon2/props?property=cgroups%3Dcpuacct or
- cgroups=cpuset https://metavo.metacentrum.cz/pbsmon2/props?property=cgroups%3Dcpuset
WARNING: Využití funkce cgropus k násilnému omezení využívání CPU je doporučeno až jako poslední možnost. Většinu programů je možné omezit na úrovni kódu. Pokud máte problémy s omezením úlohy, napište nám na meta@cesnet.cz
Možné omezení cgroups jsou:
- cpuacct - omezení výkonu CPU
- cpuset - přiřazení konkrétních CPU #Toto je klíčový parametr pro PBS
Výchozí nastavení plánovače je, že cgroups nejsou použity, a je nutné o ně explicitně požádat při zadání úlohy, např. pro omezení spotřebu výpočetního výkonu procesoru:
qsub -l select=1:ncpus=1:cgroups=cpuset ...
Důvod tohoto nastavení je, že při použití cgroups úloha nemůže přidělené prostředky překročit, pouze bude počítat pomalu, a nezkušený uživatel nepozná, že by měl úloze přidělit více prostředků. Bez použití cgroups úloha přidělené prostředky překročit může, a uživatel dostane upozorňující e-mail, ve kterém je uvedeno, kolik prostředků úloha skutečně spotřebovala, a má možnost požadavky u dalších úloh upravit.