[dpdk-dev] [PATCH v9 0/2] Add VHOST PMD
Qiu, Michael
michael.qiu at intel.com
Wed Feb 24 03:45:14 CET 2016
Hi, Tetsuya
When I applied your v6 patch, I could reach 9.5Mpps with 64B packet.
But when apply v9 only 8.4 Mpps, could you figure out why has
performance drop?
Thanks,
Michael
On 2/9/2016 5:38 PM, Tetsuya Mukawa wrote:
> The patch introduces a new PMD. This PMD is implemented as thin wrapper
> of librte_vhost.
>
>
> PATCH v9 changes:
> - Fix a null pointer access issue implemented in v8 patch.
>
> PATCH v8 changes:
> - Manage ether devices list instead of internal structures list.
> - Remove needless NULL checking.
> - Replace "pthread_exit" to "return NULL".
> - Replace rte_panic to RTE_LOG, also add error handling.
> - Remove duplicated lines.
> - Remove needless casting.
> - Follow coding style.
> - Remove needless parenthesis.
>
> PATCH v7 changes:
> - Remove needless parenthesis.
> - Add release note.
> - Remove needless line wraps.
> - Add null pointer check in vring_state_changed().
> - Free queue memory in eth_queue_release().
> - Fix wrong variable name.
> - Fix error handling code of eth_dev_vhost_create() and
> rte_pmd_vhost_devuninit().
> - Remove needless null checking from rte_pmd_vhost_devinit/devuninit().
> - Use port id to create mac address.
> - Add doxygen style comments in "rte_eth_vhost.h".
> - Fix wrong comment in "mk/rte.app.mk".
>
> PATCH v6 changes:
> - Remove rte_vhost_driver_pmd_callback_registe().
> - Support link status interrupt.
> - Support queue state changed interrupt.
> - Add rte_eth_vhost_get_queue_event().
> - Support numa node detection when new device is connected.
>
> PATCH v5 changes:
> - Rebase on latest master.
> - Fix RX/TX routine to count RX/TX bytes.
> - Fix RX/TX routine not to count as error packets if enqueue/dequeue
> cannot send all packets.
> - Fix if-condition checking for multiqueues.
> - Add "static" to pthread variable.
> - Fix format.
> - Change default behavior not to receive queueing event from driver.
> - Split the patch to separate rte_eth_vhost_portid2vdev().
>
> PATCH v4 changes:
> - Rebase on latest DPDK tree.
> - Fix cording style.
> - Fix code not to invoke multiple messaging handling threads.
> - Fix code to handle vdev parameters correctly.
> - Remove needless cast.
> - Remove needless if-condition before rt_free().
>
> PATCH v3 changes:
> - Rebase on latest matser
> - Specify correct queue_id in RX/TX function.
>
> PATCH v2 changes:
> - Remove a below patch that fixes vhost library.
> The patch was applied as a separate patch.
> - vhost: fix crash with multiqueue enabled
> - Fix typos.
> (Thanks to Thomas, Monjalon)
> - Rebase on latest tree with above bernard's patches.
>
> PATCH v1 changes:
> - Support vhost multiple queues.
> - Rebase on "remove pci driver from vdevs".
> - Optimize RX/TX functions.
> - Fix resource leaks.
> - Fix compile issue.
> - Add patch to fix vhost library.
>
> RFC PATCH v3 changes:
> - Optimize performance.
> In RX/TX functions, change code to access only per core data.
> - Add below API to allow user to use vhost library APIs for a port managed
> by vhost PMD. There are a few limitations. See "rte_eth_vhost.h".
> - rte_eth_vhost_portid2vdev()
> To support this functionality, vhost library is also changed.
> Anyway, if users doesn't use vhost PMD, can fully use vhost library APIs.
> - Add code to support vhost multiple queues.
> Actually, multiple queues functionality is not enabled so far.
>
> RFC PATCH v2 changes:
> - Fix issues reported by checkpatch.pl
> (Thanks to Stephen Hemminger)
>
>
> Tetsuya Mukawa (2):
> ethdev: Add a new event type to notify a queue state changed event
> vhost: Add VHOST PMD
>
> MAINTAINERS | 4 +
> config/common_linuxapp | 6 +
> doc/guides/nics/index.rst | 1 +
> doc/guides/rel_notes/release_2_3.rst | 4 +
> drivers/net/Makefile | 4 +
> drivers/net/vhost/Makefile | 62 ++
> drivers/net/vhost/rte_eth_vhost.c | 911 ++++++++++++++++++++++++++++
> drivers/net/vhost/rte_eth_vhost.h | 109 ++++
> drivers/net/vhost/rte_pmd_vhost_version.map | 11 +
> lib/librte_ether/rte_ethdev.h | 2 +
> mk/rte.app.mk | 6 +
> 11 files changed, 1120 insertions(+)
> create mode 100644 drivers/net/vhost/Makefile
> create mode 100644 drivers/net/vhost/rte_eth_vhost.c
> create mode 100644 drivers/net/vhost/rte_eth_vhost.h
> create mode 100644 drivers/net/vhost/rte_pmd_vhost_version.map
>
More information about the dev
mailing list