Skip to content

Commit f44f3dd

Browse files
authored
Update model generation scenario (#7793) (#7797)
1 parent 4378e11 commit f44f3dd

File tree

3 files changed

+62
-40
lines changed

3 files changed

+62
-40
lines changed

qa/common/gen_jetson_trt_models

Lines changed: 26 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ HOST_BUILD_DIR=${HOST_BUILD_DIR:=/tmp/models_build}
4545
# Set the path to the host model output directory
4646
HOST_MODEL_DIR=${HOST_MODEL_DIR:="${HOST_BUILD_DIR}/${TRITON_VERSION}"}
4747
# Set the source directory to store executable source file to generate models
48-
HOST_SOURCE_DIR=$HOST_BUILD_DIR/gen_srcdir
48+
HOST_SRCDIR=${HOST_SRCDIR:=$HOST_BUILD_DIR/gen_srcdir}
4949

5050
# Set CI specific parameters
5151
DOCKER_GPU_ARGS=${DOCKER_GPU_ARGS:-$([[ $RUNNER_GPUS =~ ^[0-9] ]] && eval $NV_DOCKER_ARGS || echo "--gpus device=$CUDA_DEVICE" )}
@@ -69,10 +69,15 @@ HOST_VARIMPLICITSEQDESTDIR=$HOST_MODEL_DIR/qa_variable_sequence_implicit_model_r
6969
HOST_VARSEQDESTDIR=$HOST_MODEL_DIR/qa_variable_sequence_model_repository
7070

7171
# Clean up host working directory
72-
rm -fr $HOST_BUILD_DIR
72+
if [ -z "${CI}" ]; then
73+
rm -frv $HOST_BUILD_DIR ;
74+
else
75+
rm -frv $HOST_BUILD_DIR/*/plan*
76+
fi
77+
7378

7479
# Create the model output directories
75-
mkdir -p $HOST_SOURCE_DIR
80+
mkdir -p $HOST_SRCDIR
7681
mkdir -p $HOST_DESTDIR
7782
mkdir -p $HOST_DATADEPENDENTDIR
7883
mkdir -p $HOST_DYNASEQDESTDIR
@@ -90,21 +95,21 @@ mkdir -p $HOST_VARIMPLICITSEQDESTDIR
9095
mkdir -p $HOST_VARSEQDESTDIR
9196

9297
# Copy the executable source file to the host generate models source directory
93-
cp ./gen_ensemble_model_utils.py $HOST_SOURCE_DIR/.
94-
cp ./gen_common.py $HOST_SOURCE_DIR/.
95-
cp ./gen_qa_dyna_sequence_implicit_models.py $HOST_SOURCE_DIR/.
96-
cp ./gen_qa_dyna_sequence_models.py $HOST_SOURCE_DIR/.
97-
cp ./gen_qa_identity_models.py $HOST_SOURCE_DIR/.
98-
cp ./gen_qa_implicit_models.py $HOST_SOURCE_DIR/.
99-
cp ./gen_qa_models.py $HOST_SOURCE_DIR/.
100-
cp ./gen_qa_noshape_models.py $HOST_SOURCE_DIR/.
101-
cp ./gen_qa_ragged_models.py $HOST_SOURCE_DIR/.
102-
cp ./gen_qa_reshape_models.py $HOST_SOURCE_DIR/.
103-
cp ./gen_qa_sequence_models.py $HOST_SOURCE_DIR/.
104-
cp ./gen_qa_trt_data_dependent_shape.py $HOST_SOURCE_DIR/.
105-
cp ./gen_qa_trt_format_models.py $HOST_SOURCE_DIR/.
106-
cp ./gen_qa_trt_plugin_models.py $HOST_SOURCE_DIR/.
107-
cp ./test_util.py $HOST_SOURCE_DIR/.
98+
cp ./gen_ensemble_model_utils.py $HOST_SRCDIR/.
99+
cp ./gen_common.py $HOST_SRCDIR/.
100+
cp ./gen_qa_dyna_sequence_implicit_models.py $HOST_SRCDIR/.
101+
cp ./gen_qa_dyna_sequence_models.py $HOST_SRCDIR/.
102+
cp ./gen_qa_identity_models.py $HOST_SRCDIR/.
103+
cp ./gen_qa_implicit_models.py $HOST_SRCDIR/.
104+
cp ./gen_qa_models.py $HOST_SRCDIR/.
105+
cp ./gen_qa_noshape_models.py $HOST_SRCDIR/.
106+
cp ./gen_qa_ragged_models.py $HOST_SRCDIR/.
107+
cp ./gen_qa_reshape_models.py $HOST_SRCDIR/.
108+
cp ./gen_qa_sequence_models.py $HOST_SRCDIR/.
109+
cp ./gen_qa_trt_data_dependent_shape.py $HOST_SRCDIR/.
110+
cp ./gen_qa_trt_format_models.py $HOST_SRCDIR/.
111+
cp ./gen_qa_trt_plugin_models.py $HOST_SRCDIR/.
112+
cp ./test_util.py $HOST_SRCDIR/.
108113

109114
# Set TensorRT model generation script name
110115
TRT_MODEL_SCRIPT=trt_gen.cmds
@@ -129,7 +134,7 @@ CONTAINER_VARIMPLICITSEQDESTDIR=$CONTAINER_MODEL_DIR/qa_variable_sequence_implic
129134
CONTAINER_VARSEQDESTDIR=$CONTAINER_MODEL_DIR/qa_variable_sequence_model_repository
130135

131136
# Set script to generate TensorRT models
132-
cat >$HOST_SOURCE_DIR/$TRT_MODEL_SCRIPT <<EOF
137+
cat >$HOST_SRCDIR/$TRT_MODEL_SCRIPT <<EOF
133138
#!/bin/bash -xe
134139
# Make all generated files accessible outside of container
135140
umask 0000
@@ -160,14 +165,14 @@ python3 $CONTAINER_SOURCE_DIR/gen_qa_trt_data_dependent_shape.py --models_dir=$C
160165
chmod -R 777 $CONTAINER_MODEL_DIR
161166
EOF
162167
# Make the TensorRT model generation script executable
163-
chmod a+x $HOST_SOURCE_DIR/$TRT_MODEL_SCRIPT
168+
chmod a+x $HOST_SRCDIR/$TRT_MODEL_SCRIPT
164169
# Pull the TensorRT image
165170
docker pull $TENSORRT_IMAGE
166171
# Run the TensorRT model generation script inside the TensorRT container
167172
docker run \
168173
$DOCKER_GPU_ARGS \
169174
--rm --entrypoint $CONTAINER_SOURCE_DIR/$TRT_MODEL_SCRIPT \
170-
--mount type=bind,source=$HOST_SOURCE_DIR,target=$CONTAINER_SOURCE_DIR \
175+
--mount type=bind,source=$HOST_SRCDIR,target=$CONTAINER_SOURCE_DIR \
171176
--mount type=bind,source=$HOST_DESTDIR,target=$CONTAINER_DESTDIR \
172177
--mount type=bind,source=$HOST_DATADEPENDENTDIR,target=$CONTAINER_DATADEPENDENTDIR \
173178
--mount type=bind,source=$HOST_DYNASEQDESTDIR,target=$CONTAINER_DYNASEQDESTDIR \

qa/common/gen_qa_custom_ops

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,13 @@ DOCKER_GPU_ARGS=${DOCKER_GPU_ARGS:-$([[ $RUNNER_GPUS =~ ^[0-9] ]] && eval $NV_DO
4848

4949
###
5050
HOST_BUILD_DIR=${HOST_BUILD_DIR:=/tmp}
51-
HOST_SRCDIR=$HOST_BUILD_DIR/gen_srcdir
51+
HOST_SRCDIR=${HOST_SRCDIR:=$HOST_BUILD_DIR/gen_srcdir}
5252
HOST_DESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/qa_custom_ops
5353

54-
rm -fr $HOST_DESTDIR
54+
rm -frv $HOST_DESTDIR
5555
mkdir -p $HOST_DESTDIR/tf_custom_ops $HOST_DESTDIR/libtorch_custom_ops
5656

57-
rm -fr $HOST_SRCDIR
57+
rm -frv $HOST_SRCDIR
5858
mkdir -p $HOST_SRCDIR
5959

6060
cp ./gen_qa_custom_ops_models.py $HOST_SRCDIR/.
@@ -72,6 +72,8 @@ DESTDIR=/tmp/custom_ops
7272

7373
cat >$HOST_SRCDIR/$TFSCRIPT <<EOF
7474
#!/bin/bash -x
75+
# Make all generated files accessible outside of container
76+
umask 0000
7577
nvidia-smi -L || true
7678
nvidia-smi || true
7779
set -e
@@ -127,6 +129,8 @@ fi
127129

128130
cat >$HOST_SRCDIR/$PYTSCRIPT <<EOF
129131
#!/bin/bash -x
132+
# Make all generated files accessible outside of container
133+
umask 0000
130134
nvidia-smi -L || true
131135
nvidia-smi || true
132136
set -e

qa/common/gen_qa_model_repository

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ MODEL_TYPE=${MODEL_TYPE:-""}
6868

6969
###
7070
HOST_BUILD_DIR=${HOST_BUILD_DIR:=/tmp}
71-
HOST_SRCDIR=$HOST_BUILD_DIR/gen_srcdir
71+
HOST_SRCDIR=${HOST_SRCDIR:=$HOST_BUILD_DIR/gen_srcdir}
7272
HOST_DESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/qa_model_repository
7373
HOST_VARDESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/qa_variable_model_repository
7474
HOST_IDENTITYDESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/qa_identity_model_repository
@@ -95,15 +95,15 @@ HOST_TORCHTRTDESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/torchtrt_model_store
9595
HOST_SCALARMODELSDESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/qa_scalar_models
9696
HOST_IMAGEMODELSDESTDIR=$HOST_BUILD_DIR/$TRITON_VERSION/qa_dynamic_batch_image_model_repository
9797

98-
rm -fr $HOST_SRCDIR $HOST_DESTDIR $HOST_VARDESTDIR $HOST_TFPARAMETERSDESTDIR
99-
rm -fr $HOST_IDENTITYDESTDIR $HOST_IDENTITYBIGDESTDIR $HOST_SHAPEDESTDIR $HOST_SIGDEFDESTDIR
100-
rm -fr $HOST_SEQDESTDIR $HOST_DYNASEQDESTDIR $HOST_VARSEQDESTDIR
101-
rm -fr $HOST_ENSEMBLEDESTDIR $HOST_NOSHAPEDESTDIR $HOST_RESHAPEDESTDIR
102-
rm -fr $HOST_PLGDESTDIR $HOST_RAGGEDDESTDIR $HOST_FORMATDESTDIR $HOST_DATADEPENDENTDIR
103-
rm -rf $HOST_IMPLICITSEQDESTDIR $HOST_VARIMPLICITSEQDESTDIR $HOST_DYNASEQIMPLICITDESTDIR
104-
rm -rf $HOST_VARINITIALSTATEIMPLICITSEQDESTDIR $HOST_INITIALSTATEIMPLICITSEQDESTDIR
105-
rm -rf $HOST_SCALARMODELSDESTDIR
106-
rm -rf $HOST_IMAGEMODELSDESTDIR
98+
rm -frv $HOST_SRCDIR $HOST_DESTDIR $HOST_VARDESTDIR $HOST_TFPARAMETERSDESTDIR
99+
rm -frv $HOST_IDENTITYDESTDIR $HOST_IDENTITYBIGDESTDIR $HOST_SHAPEDESTDIR $HOST_SIGDEFDESTDIR
100+
rm -frv $HOST_SEQDESTDIR $HOST_DYNASEQDESTDIR $HOST_VARSEQDESTDIR
101+
rm -frv $HOST_ENSEMBLEDESTDIR $HOST_NOSHAPEDESTDIR $HOST_RESHAPEDESTDIR
102+
rm -frv $HOST_PLGDESTDIR $HOST_RAGGEDDESTDIR $HOST_FORMATDESTDIR $HOST_DATADEPENDENTDIR
103+
rm -frv $HOST_IMPLICITSEQDESTDIR $HOST_VARIMPLICITSEQDESTDIR $HOST_DYNASEQIMPLICITDESTDIR
104+
rm -frv $HOST_VARINITIALSTATEIMPLICITSEQDESTDIR $HOST_INITIALSTATEIMPLICITSEQDESTDIR
105+
rm -frv $HOST_SCALARMODELSDESTDIR
106+
rm -frv $HOST_IMAGEMODELSDESTDIR
107107
mkdir -p $HOST_SRCDIR
108108
mkdir -p $HOST_DESTDIR
109109
mkdir -p $HOST_VARDESTDIR
@@ -141,7 +141,7 @@ mkdir -p $HOST_ENSEMBLEDESTDIR/qa_reshape_model_repository
141141
mkdir -p $HOST_ENSEMBLEDESTDIR/qa_sequence_model_repository
142142
mkdir -p $HOST_ENSEMBLEDESTDIR/qa_variable_sequence_model_repository
143143

144-
rm -fr $HOST_SRCDIR
144+
rm -frv $HOST_SRCDIR
145145
mkdir -p $HOST_SRCDIR
146146

147147
cp ./gen_qa_models.py $HOST_SRCDIR/.
@@ -205,6 +205,8 @@ if [[ "aarch64" != $(uname -m) ]] ; then
205205

206206
cat >$HOST_SRCDIR/$OPENVINOSCRIPT <<EOF
207207
#!/bin/bash
208+
# Make all generated files accessible outside of container
209+
umask 0000
208210
nvidia-smi -L || true
209211
nvidia-smi || true
210212
set -e
@@ -264,6 +266,8 @@ fi # [[ "aarch64" != $(uname -m) ]]
264266
# ONNX
265267
cat >$HOST_SRCDIR/$ONNXSCRIPT <<EOF
266268
#!/bin/bash
269+
# Make all generated files accessible outside of container
270+
umask 0000
267271
nvidia-smi -L || true
268272
nvidia-smi || true
269273
set -e
@@ -339,6 +343,8 @@ fi
339343
# PyTorch
340344
cat >$HOST_SRCDIR/$TORCHSCRIPT <<EOF
341345
#!/bin/bash
346+
# Make all generated files accessible outside of container
347+
umask 0000
342348
nvidia-smi -L || true
343349
nvidia-smi || true
344350
set -e
@@ -402,6 +408,8 @@ fi
402408
# Tensorflow
403409
cat >$HOST_SRCDIR/$TFSCRIPT <<EOF
404410
#!/bin/bash
411+
# Make all generated files accessible outside of container
412+
umask 0000
405413
nvidia-smi -L || true
406414
nvidia-smi || true
407415
set -e
@@ -473,6 +481,8 @@ docker pull ${TENSORRT_IMAGE}
473481
TENSORRT_VERSION="$(docker inspect ${TENSORRT_IMAGE} --format '{{index .Config.Labels "com.nvidia.tensorrt.version"}}' | cut -d . -f -2)"
474482
cat >$HOST_SRCDIR/$TRTSCRIPT <<EOF
475483
#!/bin/bash
484+
# Make all generated files accessible outside of container
485+
umask 0000
476486
nvidia-smi -L || true
477487
nvidia-smi || true
478488
set -e
@@ -527,8 +537,9 @@ if [ $? -ne 0 ]; then
527537
exit 1
528538
fi
529539

530-
docker pull $TENSORRT_IMAGE
531-
docker run $DOCKER_GPU_ARGS --rm --entrypoint $SRCDIR/$TRTSCRIPT \
540+
if [ "$MODEL_TYPE" != "igpu" ] ; then
541+
docker pull $TENSORRT_IMAGE
542+
docker run $DOCKER_GPU_ARGS --rm --entrypoint $SRCDIR/$TRTSCRIPT \
532543
--mount type=bind,source=$HOST_SRCDIR,target=$SRCDIR \
533544
--mount type=bind,source=$HOST_DESTDIR,target=$DESTDIR \
534545
--mount type=bind,source=$HOST_VARDESTDIR,target=$VARDESTDIR \
@@ -548,7 +559,9 @@ docker run $DOCKER_GPU_ARGS --rm --entrypoint $SRCDIR/$TRTSCRIPT \
548559
--mount type=bind,source=$HOST_IMPLICITSEQDESTDIR,target=$IMPLICITSEQDESTDIR \
549560
$TENSORRT_IMAGE
550561

551-
if [ $? -ne 0 ]; then
552-
echo -e "Failed"
553-
exit 1
562+
if [ $? -ne 0 ]; then
563+
echo -e "Failed"
564+
exit 1
565+
fi
566+
554567
fi

0 commit comments

Comments
 (0)