Zpět na [[cs:bu-metacentrum-vyuziti|Botanický ústav & MetaCentrum, využití výpočetního výkonu]].
====== Práce na clusteru ======
{{ :konsole.png?200|}}
> :!: **Základní informace o práci v MetaCentru jsou v [[https://docs.metacentrum.cz/|jeho dokumentaci]].** Než se pustíte do práce na MetaCentru, přečtěte si dokumentaci a naučte se pracovat v linuxové příkazové řádce. :!:
Na MetaCentru (včetně našeho clusteru) [[https://docs.metacentrum.cz/basics/concepts/|se pracuje]] v linuxové příkazové řádce (uživatel [[https://docs.metacentrum.cz/access/log-in/|se přihlašuje]] přes **SSH**), noví uživatelé se s ní musí [[cs:zaklady-prikazove-radky|seznámit]]. Uživatel si připraví skript provádějící výpočet, který spustí pomocí příkazu ''qsub''.
Chce-li uživatel spustit úlohu explicitně na průhonickém clusteru, musí k příkazu ''qsub'' přidat parametr ''-q ibot'', popřípadě i ''-l cluster=carex'', ''-l cluster=draba'' nebo ''-l cluster=vinca'' nebo jinou specifikaci, kterou lze nastavit [[https://metavo.metacentrum.cz/pbsmon2/qsub_pbspro|v plánovači]]. Např.:
# Přihlášení na čelní uzel
ssh UZIVATEL@tilia.ibot.cas.cz
# Příprava úlohy...
# ...a její spuštění:
qsub ... -q ibot ...
qsub ... -l select=...:cluster=carex -l -q ibot ...
qsub ... -l select=...:cluster=draba -l -q ibot ...
qsub ... -l select=...:cluster=vinca -l -q ibot ...
qsub -l walltime=1:0:0 -q ibot -l select=1:ncpus=4:mem=4gb:scratch_local=1gb -m abe skript.sh
Všechny stroje podporují **hyperthreading**, nicméně plánovací systém rezervuje jen fyzická jádra. Chce-li uživatel využít hyperthreading, musí si rezervovat celý uzel, tedy něco jako:
qsub -l walltime=1:0:0 -q ibot -l select=1:ncpus=8:mem=500gb:scratch_local=5100gb:hyperthreading=True:cluster=carex -l place=exclhost -m abe skript.sh
qsub -l walltime=1:0:0 -q ibot -l select=1:ncpus=80:mem=1500gb:scratch_local=5100gb:hyperthreading=True:cluster=draba -l place=exclhost -m abe skript.sh
qsub -l walltime=1:0:0 -q ibot -l select=1:ncpus=16:mem=500gb:scratch_local=5100gb:hyperthreading=True:cluster=vinca -l place=exclhost -m abe skript.sh
Důležité jsou parametry ''hyperthreading=True'' a ''-l place=exclhost'', což rezervuje celý stroj. Plánovací systém potom nehlídá překročení zdrojů CPU a uživatel může využít hyperthreading bez omezení.
Uživatelé bez dostatečných znalostí práce v linuxové příkazové řádce by měli začít studiem, např. [[https://soubory.trapa.cz/linuxcourse/|Kurzem práce v příkazové řádce Linuxu nejen pro MetaCentrum]] [[https://trapa.cz/cs/|Vojtěcha Zeiska]].
----
Dále vizte [[cs:pristup|přístup k výpočetnímu clusteru Botanického ústavu pro zaměstnance a spolupracovníky BÚ]].