meta data stránky
  •  

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Následující verze
Předchozí verze
computing:cluster:fronty:matlab [2022/02/09 18:32] – vytvořeno Jan Pechcomputing:cluster:fronty:matlab [2022/03/24 06:40] (aktuální) – pridan nadpis Jan Masák
Řádek 1: Řádek 1:
 +====== Matlab ======
 +
 Jednoduché příklady na spuštění Matlab úloh najdete v adresáři /home/SOFT/modules/examples/Matlab/, který můžete zkopírovat do svého adresáře: Jednoduché příklady na spuštění Matlab úloh najdete v adresáři /home/SOFT/modules/examples/Matlab/, který můžete zkopírovat do svého adresáře:
   cp -r /home/SOFT/modules/examples/Matlab/ ./   cp -r /home/SOFT/modules/examples/Matlab/ ./
Řádek 4: Řádek 6:
   cd single   cd single
   sbatch slurm.sh   sbatch slurm.sh
-Ve frontovém systému se na jednom jádře spustil program, jehož běh trvá cca 20-40s (na této úloze jsou rychlejší stroje kraken-m1,...-m6).+se ve frontovém systému spustí na jednom jádře program, jehož běh trvá cca 20-40s (na této úloze jsou rychlejší stroje kraken-m1,...-m6).
  
-V adresáři "parallel" je totéž ipraveno pro úlohu paralelizovanou přes 8 jader v rámci jednoho uzlu. Skript pro sbatch je:+V adresáři "parallel" je podobný íklad pro úlohu paralelizovanou přes 8 jader v rámci jednoho uzlu. Skript pro sbatch je:
  
   #!/bin/bash   #!/bin/bash
Řádek 17: Řádek 19:
   matlab -nodisplay -r "montecarlo_parallel;quit;"   matlab -nodisplay -r "montecarlo_parallel;quit;"
      
-Spuštění Matlab úlohy přes více uzlů se v tuto chvíli ří.+Spuštění Matlab úlohy přes více uzlů není možné, protožnení zakoupen "Matlab Parallel Server". Ve spouštěcím skriptu je proto vždy nutné zachovat volbu 
 +  #SBATCH -N 1 
 +\\ 
 +\\ 
 +=== Paralelní úloha: parpool === 
 +Paralelní metody v programech Matlabu jsou inicializovány funkcí "parpool". Program využívající 8 jader musí v našem nastavení obsahovat 
 +  parpool('local', 8); 
 +Lze ale doporučit automatické načtení počtu Slurmem alokovaných jaderSlurm totiž hodnotu definovanou "#SBATCH -n" ukládá do systémové proměnné "SLURM_NTASKS", kterou Matlab umí načíst 
 +  sz = str2num(getenv('SLURM_NTASKS')); 
 +  parpool('local',sz);