Spaces:
Running
on
Zero
Running
on
Zero
cd $(dirname $(dirname "$0")) || exit | |
ROOT_DIR=$(pwd) | |
PYTHON=python | |
TRAIN_CODE=train.py | |
DATASET=scannet | |
CONFIG="None" | |
EXP_NAME=debug | |
WEIGHT="None" | |
RESUME=false | |
GPU=None | |
while getopts "p:d:c:n:w:g:r:" opt; do | |
case $opt in | |
p) | |
PYTHON=$OPTARG | |
;; | |
d) | |
DATASET=$OPTARG | |
;; | |
c) | |
CONFIG=$OPTARG | |
;; | |
n) | |
EXP_NAME=$OPTARG | |
;; | |
w) | |
WEIGHT=$OPTARG | |
;; | |
r) | |
RESUME=$OPTARG | |
;; | |
g) | |
GPU=$OPTARG | |
;; | |
\?) | |
echo "Invalid option: -$OPTARG" | |
;; | |
esac | |
done | |
if [ "${NUM_GPU}" = 'None' ] | |
then | |
NUM_GPU=`$PYTHON -c 'import torch; print(torch.cuda.device_count())'` | |
fi | |
echo "Experiment name: $EXP_NAME" | |
echo "Python interpreter dir: $PYTHON" | |
echo "Dataset: $DATASET" | |
echo "Config: $CONFIG" | |
echo "GPU Num: $GPU" | |
EXP_DIR=exp/${DATASET}/${EXP_NAME} | |
MODEL_DIR=${EXP_DIR}/model | |
CODE_DIR=${EXP_DIR}/code | |
CONFIG_DIR=configs/${DATASET}/${CONFIG}.py | |
echo " =========> CREATE EXP DIR <=========" | |
echo "Experiment dir: $ROOT_DIR/$EXP_DIR" | |
if ${RESUME} | |
then | |
CONFIG_DIR=${EXP_DIR}/config.py | |
WEIGHT=$MODEL_DIR/model_last.pth | |
else | |
mkdir -p "$MODEL_DIR" "$CODE_DIR" | |
cp -r scripts tools pointcept "$CODE_DIR" | |
fi | |
echo "Loading config in:" $CONFIG_DIR | |
export PYTHONPATH=./$CODE_DIR | |
echo "Running code in: $CODE_DIR" | |
echo " =========> RUN TASK <=========" | |
if [ "${WEIGHT}" = "None" ] | |
then | |
$PYTHON "$CODE_DIR"/tools/$TRAIN_CODE \ | |
--config-file "$CONFIG_DIR" \ | |
--num-gpus "$GPU" \ | |
--options save_path="$EXP_DIR" | |
else | |
$PYTHON "$CODE_DIR"/tools/$TRAIN_CODE \ | |
--config-file "$CONFIG_DIR" \ | |
--num-gpus "$GPU" \ | |
--options save_path="$EXP_DIR" resume="$RESUME" weight="$WEIGHT" | |
fi |