DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/2] Vhost: unitfy receive paths
@ 2018-05-28 16:23 Maxime Coquelin
  2018-05-28 16:23 ` [dpdk-dev] [PATCH 1/2] vhost: unify Rx mergeable and non-mergeable paths Maxime Coquelin
  2018-05-28 16:23 ` [dpdk-dev] [PATCH 2/2] vhost: improve batched copies performance Maxime Coquelin
  0 siblings, 2 replies; 4+ messages in thread
From: Maxime Coquelin @ 2018-05-28 16:23 UTC (permalink / raw)
  To: dev, tiwei.bie, zhihong.wang; +Cc: Maxime Coquelin

Hi,

This series is preliminary work to ease the integration of
packed ring layout support. But even without packed ring
layout, the result is positive.

First patch unify both paths, and second one is a small
optimization to avoid copying batch_copy_nb_elems VQ field
to/from the stack.

With the series applied, I get modest performance gain for
both mergeable and non-mergeable casesi (, and the gain of
about 300 LoC is non negligible maintenance-wise.

Rx-mrg=off benchmarks:

+------------+-------+-------------+-------------+----------+
|    Run     |  PVP  | Guest->Host | Host->Guest | Loopback |
+------------+-------+-------------+-------------+----------+
| v18.05-rc5 | 14.47 |       16.64 |       17.57 |    13.15 |
| + series   | 14.87 |       16.86 |       17.70 |    13.30 |
+------------+-------+-------------+-------------+----------+

Rx-mrg=on benchmarks:

+------------+------+-------------+-------------+----------+
|    Run     | PVP  | Guest->Host | Host->Guest | Loopback |
+------------+------+-------------+-------------+----------+
| v18.05-rc5 | 9.38 |       13.78 |       16.70 |    12.79 |
| + series   | 9.38 |       13.80 |       17.49 |    13.36 |
+------------+------+-------------+-------------+----------+

Note: Even without my series, the guest->host benchmark with
mergeable buffers enabled looks suspicious as it should in
theory be alsmost identical as when Rx mergeable buffers are
disabled. To be investigated...

Maxime Coquelin (2):
  vhost: unify Rx mergeable and non-mergeable paths
  vhost: improve batched copies performance

 lib/librte_vhost/virtio_net.c | 366 ++++--------------------------------------
 1 file changed, 32 insertions(+), 334 deletions(-)

-- 
2.14.3

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-05-28 18:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-28 16:23 [dpdk-dev] [PATCH 0/2] Vhost: unitfy receive paths Maxime Coquelin
2018-05-28 16:23 ` [dpdk-dev] [PATCH 1/2] vhost: unify Rx mergeable and non-mergeable paths Maxime Coquelin
2018-05-28 18:33   ` Maxime Coquelin
2018-05-28 16:23 ` [dpdk-dev] [PATCH 2/2] vhost: improve batched copies performance Maxime Coquelin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).