[dpdk-dev] 18.08 Intel Roadmap

O'Driscoll, Tim tim.odriscoll at intel.com
Wed Jun 6 09:34:21 CEST 2018


Now that the 18.05 release is complete, we need to update the roadmap for 18.08. The features that we plan to contribute are below. We'll submit a patch to update the roadmap page with this info.


Power Management: Turbo Core Thread Pinning - An API will be created to distinguish between regular cores and turbo cores. This will allow turbo cores to be used for tasks like packet distribution, with regular cores being used as worker cores.

Power Management: Traffic Pattern Aware Power Control - When a core is polling there's no easy way to determine how busy it actually is. This feature will provide a means for an application to determine how much work a core is actually performing, and to dynamically adjust power management based on that.

Power Management: 100% Busy Polling - This is similar to the previous item, but will provide a means of detecting traffic load and managing power that is transparent to the application.
                                                                        
Failure Handler for PCIe Hardware Hotplug - Phase 1 of device hotplug (enabling a device event monitoring framework) was added in 18.05. This will be extended by adding a failure handler which will provide a mechanism to handle any accesses to the device from the data path until such time as the removal is complete.

Virtio IN_ORDER Support - A new feature (IN_ORDER) has been added to the virtio spec, so that the performance can be improved when the requirement is met and assumptions can be made on ring manipulation. Support for this will be added to DPDK.

Allow Setup/Reconfiguration/Tear Down of Queues at Run Time - Currently, to configure a DPDK ethdev, the application specifies how many Tx and Rx queues to include prior to starting the device. This feature introduces a more dynamic approach where the application can also setup/reconfigure/tear down queues after the device has been started (on NICs where this is supported in hardware).

SoftNIC Restructuring - The SoftNIC will be modified to use the Packet Framework, which will make it more flexible and easier to add new functionality in future.

SoftNIC Support for NAT - Support for Network Address Translation (NAT44 & NAT66) was added to the Packet Framework in 18.05. This support will be added to the SoftNIC.

Virtual Device Hotplug - This will allow a DPDK primary process to create or remove a virtual device and have this change mirrored in an already-started secondary process by providing a framework to notify secondary processes when virtual devices are added or removed.

Intel(r) QuickAssist Technology Compression PMD - A new compression API was added in 18.05. Hardware acceleration of compression via an Intel(r) QuickAssist Technology PMD will be added.	

Vhost-User Extension to Improve vDPA - This will improve vHost Data Path Acceleration (vDPA) performance by extending the vhost-user protocol to allow the vhost-user backend to register memory-based host notifiers to QEMU. This requires changes to both DPDK and QEMU.

Unified Packet Fragmentation - There are currently two separate libraries for splitting large packets into smaller ones - IP Fragmentation for UDP packets and GSO for other packet types. This feature will add support for UDP fragmentation (using the IP Fragmentation library) to the GSO library, thus enabling applications to use a unified API to split all types of large packets.

3DES Support in AESNI_MB PMD - Support for 3DES will be added to the AESNI_MB PMD.

ISAL Compression PMD Enhancements - Support for Scatter Gather List (SGL) and other enhancements will be added to the ISAL (Intel(r) Intelligent Storage Acceleration Library) compression PMD.

Complete Intel PMD Support for New Descriptor Status APIs - Remaining Intel PMDs (E1000 VF and FM10K PF/VF) will be updated to support the new descriptor status APIs (rte_eth_rx_descriptor_status and rte_eth_tx_descriptor_status).


More information about the dev mailing list