《在 CentOS 上编译 DPDK 应用》

《在 CentOS 上编译 DPDK 应用》

1 简介

DPDK 依赖编译工具链、内核头文件、numa 库与 pciutils,编译环境准备好后即可构建 DPDK 及其示例应用。

2 安装依赖

yum -y install gcc gcc-c++ make kernel-devel numactl pciutils

3 编译 DPDK

# 下载源码(示例版本号按需替换) wget http://fast.dpdk.org/rel/dpdk-21.11.tar.xz tar -xf dpdk-21.11.tar.xz cd dpdk-21.11 # 使用 meson + ninja 编译并安装 meson setup build ninja -C build ninja -C build install ldconfig

4 编译示例应用

# 编译所有示例 meson configure build -Dexamples=all ninja -C build # 示例产物位于 build/examples/ ls build/examples/

5 在 Docker 中运行 DPDK

宿主机运行时常见限制(大页、设备挂载),容器方案示例:

# 通过 --privileged 与大页内存挂载启用 DPDK docker run --privileged \ -v /dev/hugepages:/dev/hugepages \ -v /sys/bus/pci/drivers:/sys/bus/pci/drivers \ dpdk-app

细节参考:https://github.com/redhat-performance/docker-dpdk

说明:pciutils-3.5.1-3.el7 这类具体版本号仅为示例,实际以仓库可用版本为准。

6 参考文档

阅读 — · 全站 —
🎸 我的歌单 0 首