Thread (9 messages) 9 messages, 2 authors, 2021-03-16

Re: [dpdk-dev] [PATCH 0/3] vhost: make virtqueue cache-friendly

From: Maxime Coquelin <hidden>
Date: 2021-01-25 17:30:39


On 12/22/20 2:56 PM, Maxime Coquelin wrote:
As done for Virtio PMD, this series improves cache utilization
of the vhost_virtqueue struct by removing unused field,
make the live-migration cache dynamically allocated at
live-migration setup time and by moving fields
around so that hot fields are on the first cachelines.

With this series, The struct vhost_virtqueue size goes
from 832B (13 cachelines) down to 320B (5 cachelines).

With this series and the virtio one, I measure a gain
of up to 8% in IO loop micro-benchmark with packed
ring, and 5% with split ring.

I don't have a setup at hand to run PVP testing, but
it might be interresting to get the numbers as I
suspect the cache pressure is higher in this test as
in real use-cases.

Maxime Coquelin (3):
  vhost: remove unused Vhost virtqueue field
  vhost: move dirty logging cache out of the virtqueue
  vhost: optimize vhost virtqueue struct

 lib/librte_vhost/vhost.c      | 14 +++++++--
 lib/librte_vhost/vhost.h      | 54 +++++++++++++++++------------------
 lib/librte_vhost/vhost_user.c | 25 ++++++++++++++++
 3 files changed, 64 insertions(+), 29 deletions(-)
Deferring to v21.05 release.

Maxime
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help