Data Plane Development Kit (DPDK) is an open source community project developed to accelerate packet processing workloads running on a variety of CPU architectures including Arm.
DPDK enables the telecommunications industry to implement performance-sensitive applications like the 5G wireless base stations, equipment for mobile networks, and voice in purpose built and cloud native form factors.
DPDK source code, latest release, and documentation are hosted on dpdk.org. Besides providing the efficient packet processing framework, DPDK also packages a comprehensive number of sample applications to build from.
These sample applications provide an out-of-box experience for benchmarking and system assessments as well as providing the building blocks for Proof of Concept.
Support for latest Arm architecture features are included in DPDK drivers and libraries to maximize performance.
- Vector processing to increase data path throughput
- Lock-free algorithms are used in libraries to provide scalability across large number of cores in a SoC.
- C11 memory model is used wherever possible to leverage relaxed memory model for Arm architecture.
- Memory barriers have been tuned in drivers to be optimal for Arm platforms.
All these features help provide better instructions per cycle (IPC) and improve the overall performance.
Along with Arm, ecosystem partners such as Marvell, NXP and others contribute to the development and maintenance of DPDK.
Continuous Integration and Continuous Deployment (CI/CD) has been enabled for Arm. Now, every patch submitted to the DPDK mailing list is compiled and tested on Arm platforms, which ensures that DPDK code always works well on Arm platforms. Travis CI also enables a service where developers can validate their patches on Arm platforms.
|Not answered||access secure generic timer||0 votes||68 views||0 replies||Started 7 days ago by armsss||Answer this|
|Not answered||How do branch instructions influence the performance of Cortex-A77?||0 votes||81 views||0 replies||Started 9 days ago by hyf_sysu||Answer this|
|Suggested answer||Getting Dummy character while receiving UART data,How to fix it ?||0 votes||455 views||2 replies||Latest 10 days ago by Jerome Decamps - 杜尚杰||Answer this|
|Suggested answer||Sht11 interfacing with lpc1758||0 votes||130 views||1 replies||Latest 14 days ago by Andy Neil||Answer this|
|Suggested answer||Arm Cortex A57 controller||0 votes||287 views||1 replies||Latest 15 days ago by Tyler_p||Answer this|
|Not answered||M7 to NIC-400 connectivity via AXIM||0 votes||87 views||0 replies||Started 20 days ago by Ramaswamy Vishwanath||Answer this|
|Not answered||access secure generic timer Started 7 days ago by armsss||0 replies 68 views|
|Not answered||How do branch instructions influence the performance of Cortex-A77? Started 9 days ago by hyf_sysu||0 replies 81 views|
|Suggested answer||Getting Dummy character while receiving UART data,How to fix it ? Latest 10 days ago by Jerome Decamps - 杜尚杰||2 replies 455 views|
|Suggested answer||Sht11 interfacing with lpc1758 Latest 14 days ago by Andy Neil||1 replies 130 views|
|Suggested answer||Arm Cortex A57 controller Latest 15 days ago by Tyler_p||1 replies 287 views|
|Not answered||M7 to NIC-400 connectivity via AXIM Started 20 days ago by Ramaswamy Vishwanath||0 replies 87 views|