Jak počítat rychle na JU

Zpět na hlavní stránku

Obecné návody ke spuštění aplikací

Podrobné návody ke spuštění aplikací které nejsou v modulech a je o ně větší zájem

Pokud Vám aplikace budou nebo nebudou fungovat, dejte nám prosím vědět. Jde o to, jestli se maji "zmrazit", protože fungují nebo je třeba je opravit.

Obecné návody pro práci na clusteru

Žádost o zdroje

Než začnete spouštět svoji aplikaci, musíte nejdřív požádat o výpočetní zdroje pomocí příkazu qsub. Stručný a podrobný návod k využití PBS; je nutné si projít alespoň ten stručný návod.

Žádost o zdroje je na základě toho jak dlouhý výpočet bude Vaše aplikace provádět. To se standartně realizují přidáváním úloh do front (přepínač -q) short (fronta do 2 hodin), normal (do 24 hodin) a long (neomezeno). Jaké fronty jsou Vám dostupné zjistíte ZDE. Druhá část žádosti určuje požadované vlastnosti strojů (přepínač -l), např. nodes=1 (jeden uzel), ppn=2 (2 procesory), jcu (jen clustr hermes).

Přihlaste se na čelní uzel hermes.prf.jcu.cz a zde požádáte o zdroje, např o:

Jakmile odešlete příkaz qsub PBS Vám po chvíli přidělí konkrétní počítač (počítače) na kterým budete moci spouštět Vaše aplikace a rovnou Vás na konkrétní stroj i přihlásí.

Žádost o zdroje můžete napsat i do jednoduchého skriptu, např. pro MrBayese a privilegovanou frontu

$ cat mb.sh // vypis skriptu
#!/bin/sh
#PBS -N MrBayes
#PBS -q jcu
#PBS -l nodes=3:ppn=4:jcu
#PBS -m e
#PBS -Wgroup_list=jcu
. /packages/run/modules-2.0/init/sh
module add modules ics.muni.cz
module add mpich-p4
cat $PBS_NODEFILE
mpiexec /software/mrbayes-3.1.2/bin/mb-mpi configuracni_soubor_vstupnich_dat

Samotný výpočet pak jednoduše spustíte přímo na hermesovi (výpočet samozřejmě proběhne na přidělených strojích):

$ qsub mb.sh

Pokud Vaše výpočty trvají delší dobu než 24 hodin (do 30 dnů), můžete požádat o přístup do privilegované frontu jcu (žádost s odůvodněním směřujte na Kontakt). Privilegovaná fronta pracuje tak, že jakmile přidáte Vaši úlohu do fronty jcu, na klastru hermes se nespustí dřív žadné další úlohy než Vaše úloha (pozn. je-li klastr plně vytížen, Vaše privilegovaná úloha se spustí, jakmile skončí ostatní úlohy; ty ale skončí nejpozději do 24 od jejich spuštění).

Byl-li Vám zřízen přístup do privilegované fronty Vaši úlohu pro 4 procesory (run.sh) přidáte např.

$ qsub -q jcu -N run.sh -l nodes=1:ppn=4:jcu -Wgroup_list=jcu

Standartně se Vám aplikace ukončí po odpojení terminálu, proto je vhodné časově náročné úlohy spustět příkazem nohup na záčátku (info k nohup nebo kdekoliv jinde), např.

$ nohup mpiexec /software/mrbayes-3.1.2/bin/mb-mpi configuracni_soubor_vstupnich_dat &

Aplikace s grafickým rozhraním

Po přidělení zdrojů pomocí příkazu qsub bude příkazová řádka přesměrována na nějaký konkrétní stroj. Adresu toho stroje zjistíte pomocí příkazu:

$ hostname

který Vám buď vrátí celý název stroje, nebo jen jeho část. Zbylou část adresy najdete na ZDE v části produkční anebo testovací PBS. Nyní se musíte znovu přihlásit na přidělený stroj (původní okno NEzavírejte, ukončili byste tím a Vaši žádost o zdroje) a v tomhle okně spusťte Vaši aplikaci. Toto nové přihlášení bude exportovat obrazovku na Váš počítač odkud se hlásíte.

V linuxu se to dělá pomocí:

$ ssh -X adresa_stroje

kde adresa stroje je např. hermes01-1.prf.jcu.cz.

Ve windows je situace trochu složitější. Nejdřív se naistalujte xserver XMING a potom zvlášť Putty. Návod jak postupovat při instalaci a docílit exportování obrazovky na Váš stroj je ZDE.

Práce s moduly

Práce s moduly je snadná (nemusíte nic stahovat ani kompilovat). Výpis dostupných modulů (aplikací) spustíte příkazem

$ module avail

Výpis modulů které máte už přiděleny k aktuální relaci

$ module list

Přidávání modulů ze seznamu dostupných pomocí module avail provedete příkazem

$ module add nazev_modulu

Samotný modul spustíte většinou příkazem s jeho názvem.

Paralelní víceprocesorové úlohy

Buď máte vlastní aplikaci napsanou pro paralelní prostředí nebo používáte nějaký modul (nebo zkompilovanou aplikaci) která používá MPI, potom Vám stačí požádat o více zdrojů, případně si přidat příslušný modul aplikace a MPI, a spustit Vaši aplikaci pod MPI:

$ module add mpich-p4

$ module add vybraná_alikace

$ mpiexec spoušteč_aplikace

Info o paralelních aplikacích v Metacentru.

Návody na konkrétní aplikace

ACT 7 a Artemis 10

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje. Tato aplikace má grafické rozhraní, proto si musíte exportovat obrazovku. Po přihlášení na přidělený stroj s exportovaným displayem se act spustí (Artemis spustíte stejným příkazem, kde místo act nakonci bude art):

$ module add jdk-1.6.0

$ /software/act-7/act

Pokud se Vám aplikace zdá pomalá můžete si ji stáhnout a spouštět ve svém adresáři.

$ qsub -q normal -I -l nodes=1:ppn=1:jcu

$ wget http://www.sanger.ac.uk/Software/ACT/v7/act_compiled_v7.tar.gz

$ tar xvf act_compiled_v7.tar.gz

Potom se musíte ještě jednou přihlásit s exportovaným displayem, aplikaci spustit (Artemis spustíte ./art místo ./act):

$ cd artemis

$ module add jdk-1.6.0

$ ./act

Beast 1.4.8

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje. Tato aplikace má grafické rozhraní, proto si musíte exportovat obrazovku. Po přihlášení na přidělený stroj s exportovaným displayem se Beast spustí:

$ module add jdk-1.6.0

$ /software/beast-1.4.8/bin/beast

Pokud se Vám aplikace zdá pomalá můžete si ji stáhnout a spouštět ve svém adresáři.

$ qsub -q normal -I -l nodes=1:ppn=1:jcu

$ wget http://beast-mcmc.googlecode.com/files/BEASTv1.4.8.tgz

$ tar xvf BEASTv1.4.8.tgz

Potom se musíte ještě jednou přihlásit na přidělený stroj s exportovaným displayem, a plikaci spustit:

$ cd BEAST.v1.4.8/bin/

$ module add jdk-1.6.0

$ ./beast

GARLI 0.9.6

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje a spusťte aplikaci.

$ LD_LIBRARY_PATH=/software/ncl-2.1.06/lib/ncl/:$LD_LIBRARY_PATH

$ export LD_LIBRARY_PATH

$ module add mpich-p4

$ /software/garli-0.96/bin/Garli0.96b8 //pro 1 procesor

$ mpiexec /software/garli-0.96/bin/Garli0.96b8 //pro počet procesorů o které požádáte v qsub

Pokud se Vám aplikace zdá pomalá nebo nefunguje, protože jste se přihlášeni na jiný stroj (s jinou architekturou), můžete si ji stáhnout a spouštět ve svém adresáři. Nejdříve je třeba stáhnout si a naistalovat NCL, do nějakého adresáře (zde vas_NCL_instalacni_adresar)

$ wget http://downloads.sourceforge.net/ncl/ncl-2.1.06.tar.gz

$ tar xvf ncl-2.1.06.tar.gz

$ cd ncl-2.1.06

$ module add mpich-p4

$ ./configure --prefix=vas_NCL_instalacni_adresar

$ make

$ make install

Nyní můžeme naistalovat Garli, který si stáhneme ZDE.

$ tar xvf garli-0.96b8.tar.gz

$ cd garli-0.96b8

$ module add mpich-p4

$ ./configure --prefix=nejaky_vas_adresas_pro_garli --with-ncl=vas_NCL_instalacni_adresar

$ make

$ make install

Spuštění aplikace je pomocí

$ LD_LIBRARY_PATH=vas_NCL_instalacni_adresar/lib/ncl:$LD_LIBRARY_PATH

$ export LD_LIBRARY_PATH

$ nejaky_vas_adresas_pro_garli/bin/Garli0.96b8

LDDist 1.3.2

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje a spusťte aplikaci.

$ /software/lddist-1.3.2/PLD

V případě, že si budete chtít sami zkompilovat vlastní verzi. Musíte mít nejdřív nainstalovaný balík bioperl. V bežném případě, že nemáte na stroje rootovské opravnění, je třeba po spuštění perl Makefile.PL upravit v souboru Makefile proměnou PREFIX na adresář kam můžete zapisovat. Pak spustíte make a make install. Následně před spuštěním je třeba upravit PLD.PL soubor tak, že před hlavičky use Bio.... napíšete cestu k nainstalovanému bioperl a lddist. Začátek souboru PDL.PL pak vypadá třeba následovně:

#!/usr/bin/perl -w
use lib "/software/bioperl-1.4/bin/local/share/perl/5.8.8";
use lib "/software/lddist-1.3.2/bin/local/lib/perl/5.8.8";
use Bio::AlignIO;
use Getopt::Std;
use LDDist;

Mathematica 7

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje. Tato aplikace má grafické rozhraní, proto si musíte exportovat obrazovku. Aplikaci spustíte:

$ /software/mathematica-ju7/bin/mathematica

Řešení případných problémů s fonty pro linux a pro windows.

MrBayes 3.1.2

Máte 2 možnosti využití toho programu, buď pracovat s obyčejnou verzí, která je sto využít jen jeden procesor, anebo chcete využít více strojů a procesorů a tím si urychlit výpočet. MrBayes je už dostupný i v modulech.

PhyloBayes 2.3c

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje a spusťte aplikaci.

$ /software/phylobayes-2.3c/data/pb

Pokud se Vám aplikace zdá pomalá nebo nefunguje, protože jste se přihlášeni na jiný stroj (s jinou architekturou), můžete si ji stáhnout a spouštět ve svém adresáři.

$ wget http://www.lirmm.fr/mab/IMG/gz/phylobayes2.3c.tar.gz

$ tar xvf phylobayes2.3c.tar.gz

$ ./phylobayes2.3c/data/pb

PhyML 3.0

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje a spusťte aplikaci

$ /software/phyml-3.0/src/phyml

Pokud se Vám aplikace zdá pomalá nebo nefunguje, protože jste se přihlášeni na jiný stroj (s jinou architekturou), můžete si ji stáhnout a spouštět ve svém adresáři.

$ wget http://phyml.googlecode.com/files/phyml.tar.gz

$ tar xvf phyml.tar.gz

$ cd phyml/src

$ ./configure

$ make

$ ./phyml

Structure 2.2.3

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje a spusťe aplikaci

$ module add jdk-1.6.0

$ /software/structure-2.2.3/bin/structure.exe

Pokud se Vám aplikace zdá pomalá nebo nefunguje, protože jste se přihlášeni na jiný stroj (s jinou architekturou), můžete si ji stáhnout a spouštět ve svém adresáři.

$ wget http://pritch.bsd.uchicago.edu/software/structure22/structure2.2.3.i386.tar.gz

$ tar xvf structure2.2.3.i386.tar.gz

$ module add jdk-1.6.0

$ install cilovy_adresar

$ cilovy_adresar/bin/structure.exe

TNT 1.1

Přihlaste se na čelní stroj (hermes), požádejte o výčetní zdroje a spusťe aplikaci

$ /software/tnt-1.1/tnt

Pokud se Vám aplikace zdá pomalá nebo nefunguje, protože jste se přihlášeni na jiný stroj (s jinou architekturou), můžete si ji stáhnout a spouštět ve svém adresáři.

$ mkdir tnt

$ cd tnt

$ wget http://www.zmuc.dk/public/phylogeny/tnt/tnt.tar.gz

$ tar xvf tnt.tar.gz

$ ./tnt