上篇请参阅“DPDK技术原理与架构”,本篇为下篇。介绍基于 DPDK 进行应用开发和环境配置时,应用程序性能的影响因素以及相应的优化调整方法。这些因素并非必然劣化性能,可能因硬件能力、OS 版本、各类软硬环境参数配置等的差异产生较大波动,或者存在较大的不稳定性,相关的调优方法需要用户结合自身的VNF应用部署在实践中不断完善。
更多关于DPDK技术内容请参考“《中国电信DPDK技术白皮书v1.0》”。
中国电信DPDK技术白皮书v1.0
DPDK基础—认识DPDK技术
DPDK架构高清版
DPDK编程指南(中文版)
1、硬件结构的影响
DPDK 具有广泛的平台适应性,可以运行在整个 x86 平台,从主流服务器平台(从高性能或者高能效产品系列),到桌面或者嵌入式平台,也可以运行于基于 Power 或者其他架构的运算平台。图展示了一个通用双路服务器的内部架构,它包含了 2 个中央处理器,2个分离的内存控制单元来连接系统内存,芯片组会扩展出大量高速的 PCIe 2.0/3.0 接口,用于连接外设,如 10Gbps 或者 25Gbps 网卡外设。

2、OS版本及其内核的影响
不同的 Linux OS 发行版使用的 Linux 内核版本不一样,配置的 Linux OS服务也不一样。这些差异都会导致应用程序在网络报文处理能力上有所差别。
由于 Linux 内核还在不断演进,Linux 的发行版也数量众多,本文无法提供最佳 Linux内核版本和配置,而只能给出部分参考建议,如:关闭部分 OS 服务。在后续章节,我们选取了目前比较流行的 Linux 发行版进行了测试,并给出测试结果。

本文分析了DPDK性能的影响因素,包括硬件结构、OS版本及其内核、内存管理和CPU核间通信等,并给出了针对这些因素的优化调整方法。例如,通过处理器核隔离、关闭不必要的OS服务、内存多通道利用和无锁通信来提升性能。
最低0.47元/天 解锁文章
605

被折叠的 条评论
为什么被折叠?



