DOCA 参考应用程序
本页概述了在 NVIDIA® BlueField® 之上实现的 DOCA 参考应用程序。
本节中描述的所有 DOCA 参考应用程序均受 BSD-3 软件许可协议管辖。
DOCA 参考应用程序是一种教育资源,作为关于如何使用 DOCA API 在 NVIDIA BlueField 网络平台上进行编程的指南提供。
参考应用程序尚未准备好用于生产环境,仅应用作参考。
有关开发环境和安装的说明,请分别参阅DOCA 开发者指南和DOCA Linux 安装指南。
如有问题、意见和反馈,请通过 DOCA-Feedback@exchange.nvidia.com 联系我们。
安装
DOCA 应用程序安装在 /opt/mellanox/doca/applications
下,每个应用程序都有其自己的专用文件夹。每个目录都包含匹配应用程序的源代码和编译文件。
前提条件
DOCA SDK 参考(示例和应用程序)需要使用 meson,最低版本要求为 0.61.2。此版本已包含在大多数 Linux 发行版提供的软件包中,因此建议直接从软件包安装。
Ubuntu/Debian
$
sudo
aptinstall
mesonRHEL
$
sudo
yuminstall
meson
在极少数情况下,如果发行版提供的版本低于最低要求的 0.61.2 版本,则可以直接通过 pip 而不是通过软件包安装 meson。
$ sudo
pip3 install
meson==0.61.2
与软件包安装不同,如果通过 pip 安装,用户还应记住安装他们选择的编译器,因为它不会自动安装。
编译
由于应用程序与其源代码一起发布,因此开发者可能希望在开发过程中修改某些代码,然后重新编译应用程序。编译所需的文件如下:
/opt/mellanox/doca/applications/meson.build
– 包含所有应用程序的项目的主编译文件/opt/mellanox/doca/applications/meson_options.txt
– 编译过程的配置文件/opt/mellanox/doca/applications/<application_name>/meson.build
– 应用程序特定的编译定义
要重新编译所有参考应用程序
移动到应用程序目录
cd /opt/mellanox/doca/applications
准备编译定义
meson /tmp/build
编译所有应用程序
ninja -C /tmp/build
信息生成的应用程序位于
/tmp/build/
目录下,路径为/tmp/build/<application_name>/doca_<application_name>
。
针对 DOCA SDK 的编译依赖于环境变量,这些变量在每次用户登录时自动定义。有关更多信息,请参阅NVIDIA DOCA 故障排除指南中“Meson 抱怨缺少依赖项”部分。
开发者配置
重新编译应用程序时,meson 默认以“debug”模式编译它们。因此,二进制文件不会针对性能进行优化,因为它们将包含调试符号。为了进行比较,作为 DOCA 安装一部分发布的应用程序二进制文件以“release”模式编译。要以 debug 以外的其他模式编译应用程序,请查阅 Meson 的配置指南。
应用程序还为开发者提供了在现有 DOCA 日志级别之上使用 DOCA 日志的 TRACE
级别 (DOCA_LOG_TRC
) 的能力。在编译期间启用 TRACE
日志级别会激活发布编译中遗漏的各种开发者日志消息。可以通过 meson_options.txt
文件中的 enable_trace_log
或直接从命令行激活 TRACE
日志级别。
准备编译定义以使用跟踪日志级别
meson /tmp/build -Denable_trace_log=
true
编译应用程序
ninja -C /tmp/build