ubuntu 22.04 -cuda12.8.2- holoscan-sdk-4.5-doca-ofed

1. 安装 cuda 12.8.2

1.1. 安装 build-essential

bash 复制代码
sudo apt-get update

sudo apt install -y build-essential make dkms pkg-config \
    libnl-3-dev libnl-route-3-dev libnuma-dev \
    python3-dev curl wget

先安装 build-essential 再安装 gcc-12,因为 cuda12.8.2需要gcc-12 才能安装成功。

1.2. 安装并启用 gcc-12

在 Ubuntu 22.04 中,GCC 12 已包含在官方仓库中,无需额外 PPA。以下是完整的安装与切换流程:

1. 安装 GCC 12
bash 复制代码
sudo apt update
sudo apt install -y gcc-12 g++-12

安装完成后,系统中会同时存在:

  • gcc / g++ → 指向 GCC 11(默认)
  • gcc-12 / g++-12 → 新安装的 GCC 12
2. 使用 update-alternatives 管理多版本(推荐)

将两个版本都注册到 alternatives 系统,然后自由切换:

bash 复制代码
# 注册 GCC 11(如果尚未注册)
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110 \
                         --slave /usr/bin/g++ g++ /usr/bin/g++-11 \
                         --slave /usr/bin/gcov gcov /usr/bin/gcov-11

# 注册 GCC 12
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 120 \
                         --slave /usr/bin/g++ g++ /usr/bin/g++-12 \
                         --slave /usr/bin/gcov gcov /usr/bin/gcov-12

切换默认版本:

bash 复制代码
# 交互式选择
sudo update-alternatives --config gcc

# 或者直接强制指定 GCC 12
sudo update-alternatives --set gcc /usr/bin/gcc-12
3. 验证版本
bash 复制代码
gcc --version
g++ --version

应显示 gcc (Ubuntu 12.x.x ...) 12.x.x

4. 仅对当前会话临时启用(不修改系统默认)

如果你不想改动系统默认编译器,仅在当前终端或构建任务中使用 GCC 12:

bash 复制代码
export CC=gcc-12
export CXX=g++-12

然后在同一终端中执行你的编译命令(如 makecmake 等)。


补充说明: 如果你后续需要编译依赖特定 GCC 版本的内核模块或驱动(如 NVIDIA 驱动、Mellanox OFED),建议保持系统默认为 GCC 11(与内核编译器版本一致),仅在需要时通过 CC=gcc-12 临时调用 GCC 12,以避免内核模块 ABI 兼容性问题。

1.3. 将 nouveau 列入黑名单

需要手动禁用 Nouveau,且应在运行 runfile 之前完成。 这是 NVIDIA 官方文档明确要求的步骤,不要依赖安装程序自动处理。

Nouveau 是开源的 NVIDIA 驱动,会与 runfile 中捆绑的 570.211.01 官方驱动冲突。官方 CUDA Quick Start Guide 在所有版本的 runfile 安装流程中,都将 "Disable the Nouveau drivers" 列为第一步 。


完整操作步骤(Ubuntu 22.04)

1. 检查 Nouveau 是否已加载

bash 复制代码
lsmod | grep nouveau

如果有输出,继续下一步;如果无输出,说明已禁用,跳到第 4 步。

2. 创建黑名单配置

bash 复制代码
cat <<EOF | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
options nouveau modeset=0
EOF

3. 重新生成 initramfs 并重启

bash 复制代码
sudo update-initramfs -u
sudo reboot

4. 进入文本模式(Runlevel 3)

重启后,在 GRUB 界面按 e 编辑启动项,在 linux 行末尾追加:

复制代码
3 nomodeset

然后按 Ctrl+X 启动。这会以纯文本模式进入系统,避免图形驱动冲突。

5. 停止显示管理器(如果仍在运行)

bash 复制代码
sudo systemctl stop gdm3   # 或 lightdm / sddm,视你的桌面环境而定

6. 运行 CUDA runfile

bash 复制代码
sudo sh cuda_12.8.2_570.211.01_linux.run --no-opengl-libs

建议加 --no-opengl-libs,因为你使用的是 V100(计算卡),不需要 OpenGL 图形库,可减少冲突。


为什么不建议让 runfile 自动处理?

NVIDIA 的 runfile 在检测到 Nouveau 运行时,确实会尝试自动生成 一个 /etc/modprobe.d/nvidia-installer-disable-nouveau.conf 黑名单文件 。但存在两个风险:

  1. 如果安装中途失败或被打断,系统已经禁用了 Nouveau 但尚未完成官方驱动安装,重启后可能黑屏,需进入救援模式手动删除该黑名单文件才能恢复 。
  2. 安装程序要求重启后才能继续,这会打断流程。手动预先处理可一次性完成。

因此,先手动 blacklist → 更新 initramfs → 重启进入文本模式 → 再执行 runfile 是最稳妥、符合官方文档的做法。

1.4. 安装 cuda 12.8.2

1.4.1. 下载并安装 cuda

下载页面

bash 复制代码
wget https://developer.download.nvidia.com/compute/cuda/12.8.2/local_installers/cuda_12.8.2_570.211.01_linux.run
sudo sh cuda_12.8.2_570.211.01_linux.run

2. 安装 ofed for cx-6 dx

主页网址

下载源码版:

bash 复制代码
wget https://www.mellanox.com/downloads/ofed/MLNX_OFED-24.10-5.1.6.1/MLNX_OFED_SRC-debian-24.10-5.1.6.1.tgz

这个 MLNX_OFED_SRC-debian-24.10-5.1.6.1.tgzDebian/Ubuntu 源码包 ,不是预编译二进制。解压后得到的 install.pl 是一个完整的 Perl 构建脚本,它会自动从 SOURCES/ 目录中的源码 tarball 构建 .deb 包,然后安装。


安装步骤

0. 安装cmake 3.31

首先手动安装cmake 3.31,否则,在安装 ofed时,会自动安装 ubuntu apt 仓库中的 3.22版本,在后边构建 holoscan-sdk 时,会发现版本太旧。

bash 复制代码
```wget https://github.com/Kitware/CMake/releases/download/v3.31.6/cmake-3.31.6.tar.gz
sudo apt install libssl-dev
tar zxf cmake-3.31.6.tar.gz
cd cmake-3.31.6/
./bootstrap --parallel=256
make -j
sudo make install
# 检查安装版本
hash -r
cmake --version

#### 1. 安装编译依赖

在运行脚本前,必须确保系统具备完整的编译环境:

```bash
sudo apt update
sudo apt install -y \
    build-essential dkms debhelper \
    autoconf automake libtool pkg-config \
    quilt fakeroot \
    libnl-3-dev libnl-route-3-dev libnuma-dev \
    libssl-dev libelf-dev \
    cmake python3-dev pandoc \
    linux-headers-$(uname -r)
2. 运行安装脚本

进入解压后的目录执行:

bash 复制代码
cd ~/install_mellanox/MLNX_OFED_SRC-24.10-5.1.6.1
sudo perl install.pl --all

常用选项说明(根据你的需求选择):

选项 含义
--all 安装所有可用包(默认推荐,包含内核模块、用户态库、工具)
--hpc 仅安装 HPC 所需最小集合(包含 UCX、OpenMPI、SHARP 等)
--basic 仅安装基础功能最小集合
--kernel-only 只编译安装内核模块(mlx5_core, mlx5_ib 等)
--user-space-only 只安装用户态库和工具
--force 强制安装,跳过冲突检查
--without-dkms 禁用 DKMS,直接为当前内核编译静态模块(不推荐,除非你有特殊需求)
--without-ucx 跳过 UCX 安装(你后续要手动编译 UCX 1.20.0,这里可以跳过避免冲突)

推荐命令(如果你后续要手动编译 UCX 1.20.0):

bash 复制代码
sudo perl install.pl --all --without-ucx
3. 脚本会自动执行什么

install.pl 会按以下流程工作:

  1. 检测系统 :读取 /etc/os-release 确认是 Ubuntu 22.04
  2. 卸载冲突包 :自动移除系统自带的 rdma-core, libibverbs1, librdmacm1 等包(避免与 OFED 版本冲突)
  3. 解析依赖 :根据选择的安装选项,从 SOURCES/ 中确定需要构建哪些包
  4. 编译构建 :对每个组件执行 dpkg-buildpackage,生成 .deb 包到 DEBS/ 目录
  5. 安装 :通过 dpkg -i 安装构建好的包
  6. 内核模块 :默认使用 DKMS ,编译 mlnx-ofed-kernel-dkms 等内核模块包,自动适配当前内核版本
4. 安装后验证
bash 复制代码
# 检查内核模块是否加载
lsmod | grep mlx5

# 查看 RDMA 设备状态
ibstat

# 查看 OFED 版本
ofed_info -s

# 测试 RDMA 性能(回环测试)
ib_write_bw -d mlx5_0 --roce

关键注意事项

1. 与 CUDA 12.8.2 的兼容性

这个脚本在安装过程中会检测 CUDA 环境。如果检测到已安装 CUDA,它会自动启用 ucx-cuda 等 GPU Direct RDMA 支持。确保 CUDA 驱动 570.211.01 已先安装

2. UCX 版本问题

SOURCES/ 中自带的是 ucx_1.18.0.orig.tar.gz,安装后系统 UCX 版本为 1.18.0。你后续需要手动编译 UCX 1.20.0 并安装到独立目录(如 /opt/ucx-1.20.0),这不会影响 OFED 的核心功能。

3. 构建时间

从源码构建全部组件需要 较长时间(取决于机器性能,通常 15-30 分钟),请耐心等待。

4. 内核升级

由于默认使用 DKMS ,后续如果升级内核(apt upgrade),DKMS 会自动重新编译内核模块,无需手动重装 OFED。

5. 如果构建失败

查看日志定位问题:

bash 复制代码
ls /tmp/OFED.*.logs/
cat /tmp/OFED.*.logs/general.log

总结命令(一键执行)
bash 复制代码
# 1. 准备依赖
sudo apt update
sudo apt install -y build-essential dkms debhelper autoconf automake libtool \
    pkg-config quilt fakeroot libnl-3-dev libnl-route-3-dev libnuma-dev \
    libssl-dev libelf-dev cmake python3-dev pandoc linux-headers-$(uname -r)

# 2. 进入目录并安装(推荐 --all,跳过自带 UCX 避免后续冲突)
cd ~/install_mellanox/MLNX_OFED_SRC-24.10-5.1.6.1
sudo perl install.pl --all --without-ucx

# 3. 重启使内核模块生效
sudo reboot

# 4. 验证
ibstat

如果你只需要最基础的 RDMA 功能(不需要 OpenMPI、SHARP 等),可以改用 sudo perl install.pl --basic

4. 选择适合 ofed 版本的 DOCA

根据你的环境(已安装 MLNX_OFED 24.10 + Ubuntu 22.04 + CUDA 12.8.2 + V100),应该选择:

DOCA 2.9.5 LTS(2026年6月发布)

这是唯一与你现有环境完全兼容的版本。


为什么选 DOCA 2.9.5 LTS?

版本 对应 OFED 与你的 OFED 24.10 兼容 CUDA 兼容 推荐
DOCA 2.9.5 LTS OFED 24.10-5 完全同源 ✅ CUDA 12.x 首选
DOCA 2.9.4 LTS OFED 24.10-4 ✅ 兼容 ✅ CUDA 12.x 备选
DOCA 2.9.0 OFED 24.10 初始版 ✅ 兼容 ✅ CUDA 12.x 旧版
DOCA 3.4.0 OFED 26.04 冲突 ❌ 要求 CUDA 13 不要选
DOCA 3.2.3 LTS OFED 26.04 冲突 ❌ 要求 CUDA 13 不要选

关键原因

  1. 同源驱动 :DOCA 2.9.x 是 OFED 24.10 的 DOCA 化版本,内核模块(mlx5_core, mlx5_ib)和用户态库(libibverbs, librdmacm)与已安装的 OFED 24.10 完全一致,不会冲突。
  2. CUDA 12 兼容:DOCA 2.9.x 支持 CUDA 12.x,而 DOCA 3.x 系列要求 CUDA 13(V100 也无法使用 CUDA 13 的新特性)。
  3. GPUNetIO 支持 :DOCA 2.9.5 包含 doca-gpunetio-dev,满足你后续编译 UCX 1.20.0 的需求。
  4. LTS 维护:2026年6月发布,包含最新的安全补丁和稳定性修复。

下载与安装步骤

1. 进入 DOCA 2.9.5 LTS 下载页面

点击归档页面中的:

NVIDIA DOCA 2.9.5 LTS Downloads (June 2026)

2. 下载 Ubuntu 22.04 的 Host 包

在该版本页面中,找到并下载:

复制代码
doca-host_2.9.5-xxx-ubuntu2204_amd64.deb

(或选择对应你内核版本的 doca-host 包)

3. 安装(推荐方式:先卸载源码 OFED,再装 DOCA 2.9.5)

由于你是通过 MLNX_OFED_SRC-24.10-5.1.6.1 源码编译安装的,包版本号与 DOCA 仓库的元数据可能不完全匹配,建议先卸载再重装

bash 复制代码
# 1. 卸载现有源码编译的 OFED 24.10
cd ~/install_mellanox/MLNX_OFED_SRC-24.10-5.1.6.1
sudo perl uninstall.sh --force

# 2. 安装 DOCA 2.9.5(包含等价的 OFED 24.10 驱动 + GPUNetIO)
sudo dpkg -i doca-host_2.9.5-xxx-ubuntu2204_amd64.deb
sudo apt-get install -f -y

# 3. 安装 GPUNetIO 开发库
sudo apt install -y doca-gpunetio-dev
4. 验证
bash 复制代码
# 确认 DOCA 版本
doca-info | head -20

# 确认 GPUNetIO 库
ls /opt/mellanox/doca/lib/libdoca_gpunetio*.so

# 确认 RDMA 设备正常
ibstat

如果坚持不卸载现有 OFED 24.10

如果你不想卸载已编译的 OFED 24.10,可以尝试仅安装 DOCA 2.9.5 的 GPUNetIO 组件(风险较高,可能遇到依赖冲突):

bash 复制代码
# 添加 DOCA 2.9 仓库
wget -qO - https://linux.mellanox.com/public/repo/doca/GPG-KEY-Mellanox.pub | \
    sudo gpg --dearmor -o /usr/share/keyrings/GPG-KEY-Mellanox.pub
echo "deb [signed-by=/usr/share/keyrings/GPG-KEY-Mellanox.pub] \
https://linux.mellanox.com/public/repo/doca/2.9.5/ubuntu22.04/x86_64 /" | \
    sudo tee /etc/apt/sources.list.d/doca.list
sudo apt update

# 尝试仅安装 GPUNetIO
sudo apt install -y doca-gpunetio-dev

如果 apt 报错依赖冲突,说明版本号不匹配,此时必须卸载源码 OFED 并改用 DOCA 2.9.5 完整安装


总结

你的需求 对应版本
已装 OFED 24.10 DOCA 2.9.5 LTS(同源驱动)
需要 GPUNetIO DOCA 2.9.5 LTS (含 doca-gpunetio-dev
CUDA 12.8.2 DOCA 2.9.5 LTS(DOCA 3.x 要求 CUDA 13)
V100 GPU DOCA 2.9.5 LTS(DOCA 3.x 的 GPUNetIO 针对 Ampere+ 优化,V100 本就受限)

不要点击 DOCA 3.4.0 或 DOCA 3.2.3 LTS,它们会导致驱动栈冲突。

5. 安装 DOCA 2.9.5 LTS

DOCA 2.9.5 LTS 下载主页

避免安装ofed自带的推荐模块 ucx,使用--no-install-recommends

bash 复制代码
wget https://www.mellanox.com/downloads/DOCA/DOCA_v2.9.5/host/doca-host_2.9.5-008000-24.10-ubuntu2204_amd64.deb
sudo dpkg -i doca-host_2.9.5-008000-24.10-ubuntu2204_amd64.deb
sudo apt-get update
sudo apt-get -y install doca-all

apt-cache depends doca-ofed | grep -E "Depends|Recommends" | grep -i ucx

doca 依赖 ucx,必须安装。索性doca-all 了。

6. 下载适合 cuda 12.8.2 的 TensorRT

bash 复制代码
wget -c https://developer.nvidia.com/downloads/compute/machine-learning/tensorrt/10.9.0/tars/TensorRT-10.9.0.34.Linux.x86_64-gnu.cuda-12.8.tar.gz

tar zxf TensorRT-10.9.0.34.Linux.x86_64-gnu.cuda-12.8.tar.gz
sudo mv TensorRT-10.9.0.34 /usr/local/

安装 protobuf

bash 复制代码
 wget https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protobuf-cpp-3.21.12.tar.gz
  tar -xzf protobuf-cpp-3.21.12.tar.gz
  cd protobuf-3.21.12
  
  cmake -S cmake -B build-cmake -G Ninja   -D CMAKE_BUILD_TYPE=Release   -D CMAKE_INSTALL_PREFIX=/usr/local   -D protobuf_BUILD_TESTS=OFF   -D BUILD_SHARED_LIBS=ON
  cmake --build build-cmake -j$(nproc)
  sudo cmake --install build-cmake
  sudo ldconfig
  ls /usr/local/lib/cmake/protobuf/

安装一个与 protobuf 3.21.2 版本匹配的 grpc

bash 复制代码
# 1. 安装编译依赖 
sudo apt-get install -y build-essential pkg-config \
  libssl-dev zlib1g-dev libc-ares-dev

# 2. 下载源码并编译安装

git clone --recurse-submodules -b v1.51.1 --depth 1 --shallow-submodules \
  https://github.com/grpc/grpc
cd grpc

cmake -S . -B cmake/build -G Ninja \
  -D CMAKE_BUILD_TYPE=Release \
  -D CMAKE_INSTALL_PREFIX=/usr/local \
  -D gRPC_INSTALL=ON \
  -D gRPC_BUILD_TESTS=OFF \
  -D gRPC_PROTOBUF_PROVIDER=package \
  -D gRPC_ZLIB_PROVIDER=package \
  -D gRPC_CARES_PROVIDER=package \
  -D gRPC_SSL_PROVIDER=package \
  -D gRPC_ABSL_PROVIDER=module \
  -D gRPC_RE2_PROVIDER=module

cmake --build cmake/build -j$(nproc)
sudo cmake --install cmake/build
sudo ldconfig

安装 yaml

bash 复制代码
git clone https://github.com/jbeder/yaml-cpp.git
cd yaml-cpp
git checkout 0.8.0

cmake -B build \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
    -DYAML_CPP_BUILD_TESTS=OFF \
    -DYAML_CPP_BUILD_TOOLS=OFF \
    -DYAML_BUILD_SHARED_LIBS=ON

cmake --build build -j$(nproc)
sudo cmake --install build
sudo ldconfig

安装 ucx v1.20.0

提前出示需要打补丁给 ucx v1.20.0 的内容。

在checkout后 v1.20.0 后,要做一个补丁,定义一个宏函数: READ_ONCE

cpp 复制代码
ruler@ruler-Super-Server:~/ex_holoscan/ucx$ git diff
diff --git a/src/uct/ib/mlx5/gdaki/gdaki.cuh b/src/uct/ib/mlx5/gdaki/gdaki.cuh
index b057bc3cf..850cccf32 100644
--- a/src/uct/ib/mlx5/gdaki/gdaki.cuh
+++ b/src/uct/ib/mlx5/gdaki/gdaki.cuh
@@ -12,6 +12,10 @@
 #include <doca_gpunetio_dev_verbs_qp.cuh>
 #include <cooperative_groups.h>

+#ifndef READ_ONCE
+#define READ_ONCE(x) (*(volatile typeof(x) *)&(x))
+#endif
+
 #define UCT_RC_GDA_RESV_WQE_NO_RESOURCE -1ULL
 #define UCT_RC_GDA_WQE_ERR              UCS_BIT(63)
 #define UCT_RC_GDA_WQE_MASK             UCS_MASK(63)
ruler@ruler-Super-Server:~/ex_holoscan/ucx$ git branch
* (HEAD detached at v1.20.0)
  master
ruler@ruler-Super-Server:~/ex_holoscan/ucx$

配置编译 ucx

cd /opt

bash 复制代码
# 1. 下载源码
git clone https://github.com/openucx/ucx.git

cd ucx/
git tag
git checkout v1.20.0
./autogen.sh

# 2. 创建构建目录
mkdir build && cd build

# 3. 配置(release 优化版本)
#    --with-cuda: 指定 CUDA 路径
#    --with-verbs / --with-rdmacm: 启用 IB/RoCE 传输
#    --enable-mt: 启用多线程支持
#    GDA 会自动通过 pkg-config 检测 doca-gpunetio
../contrib/configure-release \
    --prefix=/opt/ucx-1.20.0 \
    --with-cuda=/usr/local/cuda \
    --with-doca=/opt/mellanox/doca \
    --enable-gdrcopy \
    --with-verbs \
    --with-rc \
    --with-ud \
    --with-dc \
    --with-mlx5-dv \
    --with-dm


# 4. 编译安装
make -j$(nproc)
sudo make install

安装 gxf

bash 复制代码
# 1. 下载 GXF 5.7.1(x86_64, CUDA 12 版,仅约 5MB)
cd /tmp
curl -S -# -L -o gxf.tgz \
  "https://edge.urm.nvidia.com/artifactory/sw-holoscan-thirdparty-generic-local/gxf/gxf_5.7.1_20260713_86d402891_holoscan-sdk-cu12_x86_64.tar.gz"

# 2. 解压到 /opt/nvidia/gxf(--strip-components 2 是官方 Dockerfile 的同款用法)
sudo mkdir -p /opt/nvidia/gxf
sudo tar xzf gxf.tgz -C /opt/nvidia/gxf --strip-components 2

# 3. 验证 CMake 配置文件就位
ls /opt/nvidia/gxf/lib/cmake/GXF/GXFConfig.cmake

然后 holoscan-sdk 使用 gxf 的方式

多一条:-DGXF_DIR=/opt/nvidia/gxf/lib/cmake/GXF

bash 复制代码
cd ~/ex_holoscan/tmp01/holoscan-sdk
rm -rf build

cmake -S . -B build -G Ninja \
    -DCMAKE_BUILD_TYPE=Release \
    -DGXF_DIR=/opt/nvidia/gxf/lib/cmake/GXF \
    -Ducx_DIR=/opt/ucx-1.20.0/lib/cmake/ucx \
    # ...加上你原来用的其他 -D 参数

cmake --build build -j$(nproc)

参考:

https://github.com/NVIDIA-ISAAC-ROS/gxf

https://catalog.ngc.nvidia.com/orgs/nvidia/clara-holoscan/resources/gxf_x86_64_holoscan_sdk/-?_lr=1

https://edge.urm.nvidia.com/artifactory/sw-holoscan-thirdparty-generic-local/gxf/gxf_5.7.1_20260713_86d402891_holoscan-sdk-cu12_x86_64.tar.gz

安装V4L2

bash 复制代码
sudo apt-get update
sudo apt-get install -y libv4l-dev v4l-utils

安装 onnx runtime 带 gpu 加速

bash 复制代码
git clone --recursive https://github.com/microsoft/onnxruntime.git
cd onnxruntime
git checkout v1.16.3

# 编译(带 CUDA EP)
./build.sh --config Release --build_shared_lib --parallel --use_cuda --cuda_home /usr/local/cuda --cudnn_home /usr/local/cuda

# 安装到 /opt/onnxruntime
sudo mkdir -p /opt/onnxruntime
sudo cp -r build/Linux/Release/lib /opt/onnxruntime/
sudo cp -r build/Linux/Release/include /opt/onnxruntime/
sudo cp -r include/onnxruntime/core/session/* /opt/onnxruntime/include/ 2>/dev/null || true

export ONNXRuntime_ROOT=/opt/onnxruntime

下载 cuDNN 9.8

cudnn deb 发布地址

tarball web addr

DA 12.8.2 + TensorRT 10.9 对应的 cuDNN 版本为 cuDNN 9.7 或更高版本(9.8、9.10、9.13、9.24 均可)。

以下是官方兼容性矩阵的汇总:

组件 版本 说明
CUDA Toolkit 12.8.2 你当前已安装的版本
cuDNN ≥ 9.7.x 最低要求;推荐 9.8+
TensorRT 10.9.0.34 TAR 包文件名明确标注 cuda-12.8
NVIDIA Driver (Linux) ≥ 570.26 CUDA 12.8 的最低驱动要求
bash 复制代码
wget https://developer.download.nvidia.cn/compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-9.11.1.4_cuda12-archive.tar.xz

下载holoscan-sdk

bash 复制代码
git clone https://github.com/nvidia-holoscan/holoscan-sdk.git
cd holoscan-sdk/
git chekcout v4.5.0

构建 holoscan-sdk

bash 复制代码
cmake -S /home/ruler/ex_holoscan/tmp01/holoscan-sdk \
      -B /home/ruler/ex_holoscan/tmp01/holoscan-sdk/build/ \
      -G Ninja \
      -D CMAKE_BUILD_TYPE=Release \
      -D GXF_DIR=/opt/nvidia/gxf/lib/cmake/GXF \
      -D CUDAToolkit_ROOT:PATH="/usr/local/cuda" \
      -D HOLOSCAN_ENABLE_VIZ=OFF \
      -D HOLOSCAN_BUILD_EXAMPLES=OFF \
      -D HOLOSCAN_BUILD_TESTS=OFF \
      -D HOLOSCAN_DOWNLOAD_DATASETS=OFF \
      -D TensorRT_ROOT=/home/ruler/ex_holoscan/TensorRT-10.9.0.34 \
      -D ucx_DIR=/opt/ucx-1.20.0/lib/cmake/ucx
bash 复制代码
bash 复制代码
bash 复制代码
bash 复制代码
bash 复制代码
bash 复制代码
相关推荐
Smoothcloud润云3 天前
GPU租赁数据安全怎么做?
人工智能·算法·ai·aigc·gpu算力·gpu
对象存储与RustFS3 天前
别再只怪 GPU 了:2026 年 AI 训练/推理的存储瓶颈,以及 7 个被忽视的真相
开源·ai编程·gpu
Eloudy5 天前
国内加速 docker pull 下载 docker images,特别是 nvidia 的cuda image
docker·gpu·rdma
tiantianuser9 天前
NVME-oF IP 设计12 : Capsule是胶囊?
rdma·高速传输·roce v2·nvme of
tiantianuser9 天前
NVME-oF IP 设计14 : 简介NVMe oF IP特点
网络存储·rdma·高速存储·高速传输·nvme of
这是谁的博客?9 天前
【中阶·融合】如何隔离多租户 AI 推理平台的 GPU 资源:从 Namespace 到 MIG/Kata 的五层纵深防御
人工智能·ai·云原生·kubernetes·gpu·多租户·ai安全
Eloudy9 天前
全文笔记 - GPU-Initiated Networking for NCCL
gpu·rdma
liuyunshengsir10 天前
perftest 工具集ib_write_bw中的 RDMA Write 带宽测试工具手册
网络·rdma