This series introduces in dpif-netdev an exact match cache for frequently used flows. It uses the RSS hash (currently implemented only for netdev-dpdk) to search the miniflow in an hash table.
While there might be still some tuning left to do, these patch provides significant performance improvements for the following simple testcase: CPU: Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz NIC: Intel Corporation Ethernet Controller 10-Gigabit X540-AT2 (rev 01) dual port (dpdk0, dpdk1) Bridge "br0" Port "dpdk1" Interface "dpdk1" type: dpdk Port "br0" Interface "br0" type: internal Port "dpdk0" Interface "dpdk0" type: dpdk Source connected to dpdk0, sink to dpdk1 1 flow 64 bytes UDP packets going from source to sink zero drop throughput: master: ~ 5.5 Mpps new patch: ~12.5 Mpps Daniele Di Proietto (4): dpif-netdev: Reduce netdev_flow_key size dpif-netdev: Reintroduce ref_cnt for dp_netdev_flow ofpbuf: Add ofpbuf_rss() dpif-netdev: Added exact match cache lib/dpif-netdev.c | 451 +++++++++++++++++++++++++++++++++++++++++++++--------- lib/netdev-dpdk.c | 3 +- lib/ofpbuf.h | 13 ++ 3 files changed, 391 insertions(+), 76 deletions(-) -- 2.0.0 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev