User Tools

Site Tools


calcul:cluster:exemples_batchs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
calcul:cluster:exemples_batchs [2015/10/15 11:49]
claude mercier
calcul:cluster:exemples_batchs [2015/10/21 16:34] (current)
claude mercier
Line 1: Line 1:
-Un script à envoyer sur le cluster va contenir les instructions sous la forme  +**Un script à envoyer sur le cluster va contenir les instructions sous la forme \\ 
-#​SBATCH ​  +#​SBATCH  ​intructions\\ 
-en debut de ligne du script (fichier.sh)+en debut de ligne du script (fichier.sh)**
  
-Ensuite on envoie le batch pour execution+**Ensuite on envoie le batch pour execution**
  
-cluster-head>​ sbatch fichier.sh+**cluster-head>​ sbatch fichier.sh**
  
-**exemple 1:** je veux 50 taches independantespeu m'​importe où elles vont s'exécuter+Quand le job est finiou s'execute, on peut voir la sortie dans le repertoire où on a lancé le job. 
 +Un fichier slurm-NNN.out contient la sortie (NNN numéro du job)
  
-''​+**exemple 1:** je veux 50 taches indépendantes,​ peu m'importe où elles vont s'exécuter 
 + 
 +<​code>​
 #!/bin/bash #!/bin/bash
  
Line 17: Line 20:
  
 srun mon_executable srun mon_executable
-''​+</​code>​
  
 (recuperation du numéro de tache avec la variable d'​environnement SLURM_PROCID) (recuperation du numéro de tache avec la variable d'​environnement SLURM_PROCID)
Line 23: Line 26:
 **exemple 2:** j'ai un code qui demarre plusieurs taches MPI, chaque tache se divisant en 8 avec openMP **exemple 2:** j'ai un code qui demarre plusieurs taches MPI, chaque tache se divisant en 8 avec openMP
  
-''​#!/bin/bash+<​code>​ 
 +#!/bin/bash
  
 #SBATCH --job-name=cosmocmc #SBATCH --job-name=cosmocmc
Line 55: Line 59:
 # une tache pour 8 processeurs. # une tache pour 8 processeurs.
 mpirun -n $n  ./cosmomc test_SZs.ini ​   mpirun -n $n  ./cosmomc test_SZs.ini ​  
-''​+</​code>​ 
 + 
 +**Exemple 3 :**  D'habitude je lance mes calculs en direct dans idl.  
 + 
 +<​code>​ 
 +#​!/​bin/​bash 
 + 
 +# je demande 1 noeud 
 +#SBATCH -N1 
 + 
 +#​informatif 
 +echo "On tourne sur: $SLURM_NODELIST"​ 
 + 
 +# idl va prendre autant de CPUs que disponibles 
 +# il lui faut un fichier de commandes à executer 
 +# (tout ce que vous taperiez si vous etiez devant) 
 +# soit le creer avant, soit  le creer a la volée 
 +# dans ce job 
 + 
 + 
 +cat > fichier_commande_idl.bat <<​EOF 
 + ​mk_an2star 
 +EOF 
 + 
 + 
 +idl fichier_commande_idl.bat 
 + 
 +# j'ai fini plus besoin du fichier.bat 
 +rm fichier_commande_idl.bat 
 + 
 +</​code>​ 
 + 
 + 
 + 
 +**Exemple 4:** mes calculs doivent s'​exécuter sur une machine avec coprocesseurs (K20 ou PHI) 
 + 
 +<​code>​ 
 +#​!/​bin/​bash 
 + 
 +####### je voudrais phi ou gpu indifferemment 
 +#SBATCH -p copro 
 + 
 +####### si on veut seulement gpu mettre -p K20 
 +####### si on veut seulement xeon phi, mettre -p PHI 
 + 
 +####### mon code utilise une fois lancé 8 processeurs (multithreadé)  
 +#SBATCH -n 8 
 + 
 +#SBATCH --job-name "​test_copro"​ 
 + 
 +echo "On tourne sur: $SLURM_NODELIST"​ 
 +echo "nb procs: $SLURM_JOB_CPUS_PER_NODE"​ 
 + 
 +############​slurm ajoute des variables qui cachent les coprocesseurs #####​CUDA_VISIBLE_DEVICES=NoDevFiles 
 +unset CUDA_VISIBLE_DEVICES 
 +unset GPU_DEVICE_ORDINAL 
 + 
 +cd ICL/​CapsBasic 
 +make clean 
 +make 
 +./​capsbasic 
 +./intelcaps
  
 +./capsbasic NVIDIA
 +./intelcaps NVIDIA
 +</​code>​
  
  
calcul/cluster/exemples_batchs.1444902572.txt.gz · Last modified: 2015/10/15 11:49 by claude mercier