source: TRACY3/trunk/tracy/tools/lance_tracy3_parallel.sh @ 11

Last change on this file since 11 was 3, checked in by zhangj, 12 years ago

Initiale import

  • Property svn:executable set to *
File size: 2.2 KB
Line 
1#!/bin/sh
2# 04 February 2012, Laurent S. Nadolski, Synchrotron SOLEIL
3#Option pour voir les details
4#set -x
5
6if [ $# -ne 1 ]         # si le nombre de parametres n'est pas 1
7then                    # affiche l'usage
8    echo Tracy3 not valid
9    echo Missing paremeter file
10    echo Use: $0 parameterfile
11    exit 1
12fi
13
14## create unique name for executable file
15NUM=`date '+%d%m%y%H%M%s'`
16DIR=$HOME/resultat_tracy/exe
17
18# take file name and remove .prm extension if exists
19INPUT_DIR=$PWD
20INPUT_FILE=$(basename $1 .prm).prm
21EXEC_DIR=/usr/local/applications/physmach/tracy3
22NOM=$EXEC_DIR/psoltracy3
23
24echo executable filename: $NOM
25echo input parameter filename: $INPUT_FILE
26
27JOB=psoltracy_script.$NUM
28
29#########################
30## creation du script PBS
31echo "#!/bin/bash
32#PBS -S /bin/bash
33#PBS -N ParallelTracy
34#PBS -j eo
35#PBS -l nodes=2:ppn=8
36#PBS -l mem=2000mb
37#PBS -l walltime=1000:00:00
38
39
40if [[ \$PBS_ENVIRONMENT = \"PBS_BATCH\" ]]; then
41 echo PBS_BATCH
42 N=\`cat \$PBS_NODEFILE |wc -l\`
43 echo \" ============================\"
44 echo \"Execution on:\"
45 cat \$PBS_NODEFILE
46 echo \" ============================\"
47else
48 echo \"Not a batch job !\"
49 exit
50fi
51
52# IMPORTANT : put here the absolute name of the executable
53set -x
54
55## execute command
56
57echo executable filename: $NOM
58echo input parameter filename: $INPUT_DIR/$INPUT_FILE
59
60### va dans /tmpdir/PBS du noeud ou le job est execute
61cd \$TMPDIR
62cp $INPUT_DIR/$INPUT_FILE  .
63
64### Excecute job soltracy parallel version
65ulimit -s unlimited
66time mpirun -n \$N -f \$PBS_NODEFILE -r ssh $NOM $INPUT_FILE
67
68### SAVE THE RESULTS
69DIRSAVE=\$HOME/resultat_tracy
70mkdir -p \$DIRSAVE/result.\$PBS_JOBID
71mv *.prm \$DIRSAVE/result.\$PBS_JOBID
72mv [^0-9]*.out \$DIRSAVE/result.\$PBS_JOBID  #not save the individual file
73mv [^0-9]*.dat \$DIRSAVE/result.\$PBS_JOBID  #not save the individual file
74
75
76### email pour dire ou sont les resultats du job
77CMD=\"mail -s \\\"Job \$PBS_JOBID\\\" \"\`cat $HOME/.forward\`
78ssh isei \"\$CMD\" <<EOF
79Hello $USER,
80
81Work is done!
82
83Please check results in \$DIRSAVE/result.\$PBS_JOBID
84
85Hoping to see you again in our computation universe
86
87Your friend ISEI
88EOF
89" > $JOB
90
91## creation du script PBS
92#########################
93
94### launch PBS command
95qsub -v INPUT_FILE=$1  $JOB
96
97### clean up
98rm $JOB 
Note: See TracBrowser for help on using the repository browser.