-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathenvironment.sh
93 lines (78 loc) · 3.35 KB
/
environment.sh
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
#!/bin/bash
# SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: MIT
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
# export CUDA_VISIBLE_DEVICES=2
export TensorRT_HOME=/opt/TensorRT
export TensorRT_Lib=${TensorRT_HOME}/lib
export TensorRT_Inc=${TensorRT_HOME}/include
export TensorRT_Bin=${TensorRT_HOME}/bin
export CUDA_HOME=/usr/local/cuda-11
export CUDA_Lib=${CUDA_HOME}/lib64
export CUDA_Inc=${CUDA_HOME}/include
export CUDA_Bin=${CUDA_HOME}/bin
export CUDNN_Lib=/usr/lib/x86_64-linux-gnu
# resnet50/resnet50int8/swint
export DEBUG_MODEL=resnet50
# fp16/int8
export DEBUG_PRECISION=fp16
export DEBUG_DATA=example-data
export USE_Python=OFF
# check the configuration path
# clean the configuration status
export ConfigurationStatus=Failed
if [ ! -f "${TensorRT_Bin}/trtexec" ]; then
echo "Can not find ${TensorRT_Bin}/trtexec, there may be a mistake in the directory you configured."
return
fi
if [ ! -f "${CUDA_Bin}/nvcc" ]; then
echo "Can not find ${CUDA_Bin}/nvcc, there may be a mistake in the directory you configured."
return
fi
echo "=========================================================="
echo "|| MODEL: $DEBUG_MODEL"
echo "|| PRECISION: $DEBUG_PRECISION"
echo "|| DATA: $DEBUG_DATA"
echo "|| USEPython: $USE_Python"
echo "||"
echo "|| TensorRT: $TensorRT_Lib"
echo "|| CUDA: $CUDA_HOME"
echo "|| CUDNN: $CUDNN_Lib"
echo "=========================================================="
BuildDirectory=$(pwd)/build
if [ "$USE_Python" == "ON" ]; then
export Python_Inc=$(python3 -c "import sysconfig;print(sysconfig.get_path('include'))")
export Python_Lib=$(python3 -c "import sysconfig;print(sysconfig.get_config_var('LIBDIR'))")
export Python_Soname=$(python3 -c "import sysconfig;import re;print(re.sub('.a', '.so', sysconfig.get_config_var('LIBRARY')))")
echo Find Python_Inc: $Python_Inc
echo Find Python_Lib: $Python_Lib
echo Find Python_Soname: $Python_Soname
fi
export PATH=$TensorRT_Bin:$CUDA_Bin:$PATH
export LD_LIBRARY_PATH=$TensorRT_Lib:$CUDA_Lib:$CUDNN_Lib:$BuildDirectory:$LD_LIBRARY_PATH
export PYTHONPATH=$BuildDirectory:$PYTHONPATH
export ConfigurationStatus=Success
if [ -f "tool/cudasm.sh" ]; then
echo "Try to get the current device SM"
. "tool/cudasm.sh"
echo "Current CUDA SM: $cudasm"
fi
export CUDASM=$cudasm
echo Configuration done!