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).

Reply via email to