dperf是百度近日开源的基于DPDK与用户态协定栈技术的一款高性能HTTP压测工具。本文领导DPDK老手们如何胜利迈出应用dperf的第一步:编译DPDK。DPDK大牛可疏忽此文或者看一眼build.md即可。
因为从DPDK-20开始,编译有较大的变动,DPDK编译系列分为两篇文章介绍。本篇文章介绍DPDK-19.11编译,DPDK-19以前版本的编译办法与DPDK-19.11雷同;另一篇文章介绍DPDK-20.11编译。
筹备工作
操作系统:举荐CentOS 7.9,内核版本4.X,5.X也能够,低版本内核反对Mellanox驱动比拟麻烦
DPDK:下载DPDK-19.11.10
查看网卡厂商与驱动型号(命令参考):
lspci | grep Ethernetethtool -i eth0
Mellanox网卡驱动编译(可选)
如果网卡不是Mellanox的,请跳过本节。
下载社区驱动rdma-core-stable-v22
编译
cd /root/rdma-core-stable-v22/build.sh
设置环境变量
RDMA_CORE_BUILD_DIR=/root/rdma-core-stable-v22/buildexport C_INCLUDE_PATH=$RDMA_CORE_BUILD_DIR/includeexport LIBRARY_PATH=$RDMA_CORE_BUILD_DIR/libexport LD_LIBRARY_PATH=$RDMA_CORE_BUILD_DIR/lib
配置DPDK
编辑config/common_base,视状况开启如下开关
#应用Mellanox网卡:CONFIG_RTE_LIBRTE_MLX5_PMD=y#应用华为网卡:CONFIG_RTE_LIBRTE_HNS3_PMD=yCONFIG_RTE_LIBRTE_HINIC_PMD=y#KVM虚拟机CONFIG_RTE_VIRTIO_USER=y#vmware虚拟机CONFIG_RTE_LIBRTE_VMXNET3_PMD=y
编译DPDK
#X86处理器上编译DPDKmake install T=x86_64-native-linuxapp-gcc -j16#ARM64处理器编译DPDKmake install T=arm64-armv8a-linuxapp-gcc -j16