Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#####################################################
# Author : Simona Flavoni for NEMO
# Contact : sflod@locean-ipsl.upmc.fr
#
# Some scripts called by sette.sh
# fcm_job.sh : simple job to run NEMO with fcm
######################################################
#set -vx
set -o posix
#set -u
#set -e
#+
#
# ================
# fcm_job.sh
# ================
#
# --------------------------
# Simple job for NEMO tests
# --------------------------
#
# SYNOPSIS
# ========
#
# :: lauches the script $JOB_FILE interactive or batch, one task or MPI
#
# $ ./fcm_job.sh NUMBER_OF_PROCS JOB_FILE INTERACT_FLAG MPIRUN_FLAG
#
#
# DESCRIPTION
# ===========
#
# Simple job for SET TESTS for NEMO (SETTE)
#
#
#
# EXAMPLES
# ========
#
# ::
#
# $ ./fcm_job.sh NUMBER_OF_PROCS JOB_FILE INTERACT_FLAG MPIRUN_FLAG
#
# run a job with 1 processor SHORT test ( 5 days )
# using an interactive run without mpirun
#
# ./fcm_job.sh 1 SHORT yes no
#
#
# TODO
# ====
#
# option debug
#
#
# EVOLUTIONS
# ==========
#
# $Id: $
#
#
#
# * creation
#
#-
#
usage=" Usage : ./fcm_job.sh NUMBER_OF_PROCS JOB_FILE INTERACT_FLAG MPIRUN_FLAG"
usage=" example : ./fcm_job.sh 8 SHORT no/yes no/yes"
minargcount=4
if [ ${#} -lt ${minargcount} ]
then
echo "not enough arguments for fcm_job.sh script"
echo "control number of argument of fcm_job.sh in sette.sh"
echo "${usage}"
exit 1
fi
unset minargcount
if [ ! -f ${SETTE_DIR}/output.sette ] ; then
touch ${SETTE_DIR}/output.sette
fi
export NB_PROCS=$1
export JOB_FILE=$2
export INTERACT_FLAG=$3
export MPIRUN_FLAG=$4
################################################################
# RUN OPA
cd ${EXE_DIR}
if [ "${INTERACT_FLAG}" == "yes" ]; then
eval ${JOB_FILE}
else if [ "${INTERACT_FLAG}" == "no" ]; then
# submit job to batch system
if [ "${NB_PROC}" == "1" ]; then
eval ${BATCH_COMMAND_SEQ} ${JOB_FILE} ; echo ${BATCH_COMMAND_SEQ} ${JOB_FILE}
else
eval ${BATCH_COMMAND_PAR} ${JOB_FILE} ; echo ${BATCH_COMMAND_PAR} ${JOB_FILE}
fi
fi
fi