Cgroupy

From MetaCentrum
Jump to: navigation, search

(English version)

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).

Warning.gif WARNING: Omezení využití CPU pomocí funkce cgropus může být uplatňeno pouze na stroje ve frontě uv@wagap-pro.cerit-sc.cz a na stroji upol128.

Warning.gif 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
  • memory - omezení paměti
  • memsw - omezení virtuální paměti

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.