概述¶
JetPack 6.1¶
Nvidia JetPack 6.1 是 JetPack 6 的最新生產版本。此版本集成了:CUDA 12.6、TensorRT 10.3、cuDNN 9.3、DLFW 24.09
您可以找到更多關於 JetPack 6.1 的詳細資訊
先決條件¶
確保您的 Jetson 開發者套件已刷寫最新的 JetPack 6.1。您可以在 sdk-manager 中找到更多關於如何刷寫 Jetson 開發板的詳細資訊
使用以下命令檢查當前 Jetpack 版本
apt show nvidia-jetpack
確保您已安裝 JetPack 開發元件。如果您需要在 Jetson 開發板上進行構建,則需要此步驟。
您只需安裝所需的開發元件:例如,tensorrt-dev 是所有 TRT 開發的元包,或者可以安裝所有元件。
確保您已安裝 CUDA 12.6(這應該透過 nvidia-jetpack 自動安裝)
# check the cuda version
nvcc --version
# if not installed or the version is not 12.6, install via the below cmd:
sudo apt-get update
sudo apt-get install cuda-toolkit-12-6
確保 /usr/local/cuda/lib64/ 目錄下存在 libcusparseLt.so
# if not exist, download and copy to the directory
wget https://developer.download.nvidia.com/compute/cusparselt/redist/libcusparse_lt/linux-sbsa/libcusparse_lt-linux-sbsa-0.5.2.1-archive.tar.xz
tar xf libcusparse_lt-linux-sbsa-0.5.2.1-archive.tar.xz
sudo cp -a libcusparse_lt-linux-sbsa-0.5.2.1-archive/include/* /usr/local/cuda/include/
sudo cp -a libcusparse_lt-linux-sbsa-0.5.2.1-archive/lib/* /usr/local/cuda/lib64/
構建 torch_tensorrt¶
安裝 bazel
wget -v https://github.com/bazelbuild/bazelisk/releases/download/v1.20.0/bazelisk-linux-arm64
sudo mv bazelisk-linux-arm64 /usr/bin/bazel
chmod +x /usr/bin/bazel
- 安裝 pip 和所需的 Python 包
# install pip
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
# install pytorch from nvidia jetson distribution: https://developer.download.nvidia.com/compute/redist/jp/v61/pytorch
python -m pip install torch https://developer.download.nvidia.com/compute/redist/jp/v61/pytorch/torch-2.5.0a0+872d972e41.nv24.08.17622132-cp310-cp310-linux_aarch64.whl
# install required python packages
python -m pip install -r toolchains/jp_workspaces/requirements.txt
# if you want to run the test cases, then install the test required python packages
python -m pip install -r toolchains/jp_workspaces/test_requirements.txt
構建並安裝 torch_tensorrt wheel 檔案
由於 torch_tensorrt 版本依賴於 torch 版本。JetPack 6.1 支援的 torch 版本來自 DLFW 24.08/24.09 (torch 2.5.0)。
請確保從 release/2.5 分支原始碼構建 torch_tensorrt wheel 檔案(TODO:lanl 在 release/ngc 分支可用後更新分支名稱)
cuda_version=$(nvcc --version | grep Cuda | grep release | cut -d ',' -f 2 | sed -e 's/ release //g')
export TORCH_INSTALL_PATH=$(python -c "import torch, os; print(os.path.dirname(torch.__file__))")
export SITE_PACKAGE_PATH=${TORCH_INSTALL_PATH::-6}
export CUDA_HOME=/usr/local/cuda-${cuda_version}/
# replace the MODULE.bazel with the jetpack one
cat toolchains/jp_workspaces/MODULE.bazel.tmpl | envsubst > MODULE.bazel
# build and install torch_tensorrt wheel file
python setup.py install --user