Next Previous Contents

4.9 dish -- distribuované počítání výsledné animace

Stručný popis

dish-client, dish-vi, dish-get, dish-put, dish-num soustava shelových scriptů, pro spočítání animace ze spočítaného .bur s pomocí více počítačů.

Popis

Na serveru musí být přítomné scripty dish-vi, dish-get, dish-put, dish-num program job, pro vytváření .pov z .bur. Také je zde spočítaná animace .bur.

Na clientu musí být dish-client a povray. Script dish-client si vytvoří adresář tmp a do něj si bude ze serveru stahovat popisy scén, spočítané obrázky vrací serveru.

Čísla framů, která se mají spočítat, jsou v souboru dish.todo (na serveru). Všechna čísla jsou na jednom řádku oddělená mezerou.

Scripty dish-num a dish-vi vytváří soubor(lockfile) dish.lock, čímž je zajištěno, že při práci s dish.todo nedochází ke kolizím.

dish-client

Script dish-client využívá program ssh a proto je dobré umožnit clientům přístup k serveru bez autorizace (viz. man ssh).

Ve scriptu je také třeba upravit nastavení těchto proměnných,

SERVER

Uživatel a server na který se bude dish-client logovat a získavat z něj popisy scén jednotlivých framů. Např: vitas@vitas.kolej.mff.cuni.cz.

RDISH

Kde je adresář s dish-* na serveru

LDISH

Kde je adresář s dish-* na clientu

Taktéž je třeba upravit proměnnou prostředí PATH tak, aby vedla i k povray'ovi.

dish-get

tento script je volaný z dish-clienta, ale je spouštěn za pomocí ssh na straně serveru. Požádá dish-num o další číslo framu, vytvoří potřebné soubory, zataruje je. Vytiskne tři řádky: první příkaz, který se má spustit (obyčejně něco jako povray -ifile.pov -ofile.tga). Druhý řádek je seznam souborů, které se mají poslat zpět. Třetí řádek jsou soubory, které se po skončení tohoto výpočtu mohou smazat. Poté následují zatarované vstupní soubory.

dish-num

Vždy při žádosti clienta o práci script dish-num přečte první číslo ze souboru dish.todo a smaže ho.

dish-vi

Editovat soubor dish.todo je možné i za běhu výpočtu pomocí tohoto scriptu. Klávesa ``m'' je namapovaná na ``zapsaní čísla o jedna většího, než jaké je na místě kurzoru'', čehož lze s úspěchem využít při psaní dlouhého seznamu framu. Tj. stačí napsat ``1'' a pak jen přidržet ``m''.

dish-put

pouze příjme zatarovaný výsledek od dish-client'ta. A roztaruje jej.


Next Previous Contents