|
| 1 | +#!/bin/bash |
| 2 | +set -eu |
| 3 | + |
| 4 | +# UNO TRAIN SH |
| 5 | + |
| 6 | +# arg 1 CUDA_VISIBLE_DEVICES |
| 7 | +# arg 2 CANDLE_DATA_DIR |
| 8 | +# arg 3 CANDLE_CONFIG |
| 9 | + |
| 10 | +### Path to your CANDLEized model's main Python script### |
| 11 | +CANDLE_MODEL=uno_baseline_keras2.py |
| 12 | +IMPROVE_MODEL_DIR=${IMPROVE_MODEL_DIR:-$( dirname -- "$0" )} |
| 13 | +CANDLE_MODEL=${IMPROVE_MODEL_DIR}/${CANDLE_MODEL} |
| 14 | + |
| 15 | +if [ ! -f ${CANDLE_MODEL} ] ; then |
| 16 | + echo No such file ${CANDLE_MODEL} |
| 17 | + exit 404 |
| 18 | +fi |
| 19 | + |
| 20 | +# Make copy of $# before shifts |
| 21 | +ARGC=$# |
| 22 | + |
| 23 | +if (( $ARGC < 2 )) ; then |
| 24 | + echo "Uno/train.sh: Illegal number of parameters: given: ${ARGC}" |
| 25 | + echo "CUDA_VISIBLE_DEVICES and CANDLE_DATA_DIR are required" |
| 26 | + exit -1 |
| 27 | +fi |
| 28 | + |
| 29 | +CUDA_VISIBLE_DEVICES=$1 ; shift |
| 30 | +CANDLE_DATA_DIR=$1 ; shift |
| 31 | +CANDLE_CONFIG=0 |
| 32 | + |
| 33 | +if (( $ARGC == 2 )) ; then |
| 34 | + CMD=( python ${CANDLE_MODEL} ) |
| 35 | +elif (( $ARGC >= 3 )) ; then |
| 36 | + # If original $3 is a file, set candle_config and passthrough $@ |
| 37 | + CANDLE_CONFIG=$1 |
| 38 | + if [[ -f $CANDLE_CONFIG ]] ; then |
| 39 | + echo "Uno/train.sh: found CANDLE_CONFIG=$CANDLE_CONFIG" |
| 40 | + shift |
| 41 | + CMD=( python ${CANDLE_MODEL} --config_file $CANDLE_CONFIG $@ ) |
| 42 | + else # simply passthrough $@ |
| 43 | + CMD=( python ${CANDLE_MODEL} $@ ) |
| 44 | + fi |
| 45 | +fi |
| 46 | + |
| 47 | +# Report runtime arguments |
| 48 | +echo "using CUDA_VISIBLE_DEVICES ${CUDA_VISIBLE_DEVICES}" |
| 49 | +echo "using CANDLE_DATA_DIR ${CANDLE_DATA_DIR}" |
| 50 | +echo "using CANDLE_CONFIG ${CANDLE_CONFIG}" |
| 51 | + |
| 52 | +echo "train.sh: running command..." |
| 53 | +echo "CMD = ${CMD[@]}" |
| 54 | +echo |
| 55 | + |
| 56 | +# Set up environmental variables and execute the model! |
| 57 | +if env CUDA_VISIBLE_DEVICES=${CUDA_VISIBLE_DEVICES} \ |
| 58 | + CANDLE_DATA_DIR=${CANDLE_DATA_DIR} \ |
| 59 | + ${CMD[@]} |
| 60 | +then |
| 61 | + CODE=0 |
| 62 | + echo "train.sh: OK." |
| 63 | +else |
| 64 | + CODE=$? |
| 65 | + echo "train.sh: MODEL ERROR: code=$CODE" |
| 66 | +fi |
| 67 | + |
| 68 | +exit $CODE |
0 commit comments