Displaying 20 results from an estimated 9000 matches similar to: "[PATCH] vhost: try avoiding avail index access when getting descriptor"
2020 Jun 03
1
[PATCH RFC 01/13] vhost: option to fetch descriptors through an independent struct
On 2020/6/3 ??5:48, Michael S. Tsirkin wrote:
> On Wed, Jun 03, 2020 at 03:13:56PM +0800, Jason Wang wrote:
>> On 2020/6/2 ??9:05, Michael S. Tsirkin wrote:
[...]
>>> +
>>> +static int fetch_indirect_descs(struct vhost_virtqueue *vq,
>>> + struct vhost_desc *indirect,
>>> + u16 head)
>>> +{
>>> + struct vring_desc desc;
2016 Dec 12
0
[PATCH] vhost: cache used event for better performance
When event index was enabled, we need to fetch used event from
userspace memory each time. This userspace fetch (with memory
barrier) could be saved sometime when 1) caching used event and 2)
if used event is ahead of new and old to new updating does not cross
it, we're sure there's no need to notify guest.
This will be useful for heavy tx load e.g guest pktgen test with Linux
driver
2016 Dec 12
0
[PATCH] vhost: cache used event for better performance
When event index was enabled, we need to fetch used event from
userspace memory each time. This userspace fetch (with memory
barrier) could be saved sometime when 1) caching used event and 2)
if used event is ahead of new and old to new updating does not cross
it, we're sure there's no need to notify guest.
This will be useful for heavy tx load e.g guest pktgen test with Linux
driver
2020 Jun 02
0
[PATCH RFC 01/13] vhost: option to fetch descriptors through an independent struct
The idea is to support multiple ring formats by converting
to a format-independent array of descriptors.
This costs extra cycles, but we gain in ability
to fetch a batch of descriptors in one go, which
is good for code cache locality.
When used, this causes a minor performance degradation,
it's been kept as simple as possible for ease of review.
A follow-up patch gets us back the performance
2020 Apr 07
0
[PATCH v7 17/19] vhost: option to fetch descriptors through an independent struct
The idea is to support multiple ring formats by converting
to a format-independent array of descriptors.
This costs extra cycles, but we gain in ability
to fetch a batch of descriptors in one go, which
is good for code cache locality.
When used, this causes a minor performance degradation,
it's been kept as simple as possible for ease of review.
A follow-up patch gets us back the performance
2020 Apr 07
0
[PATCH v8 17/19] vhost: option to fetch descriptors through an independent struct
The idea is to support multiple ring formats by converting
to a format-independent array of descriptors.
This costs extra cycles, but we gain in ability
to fetch a batch of descriptors in one go, which
is good for code cache locality.
When used, this causes a minor performance degradation,
it's been kept as simple as possible for ease of review.
A follow-up patch gets us back the performance
2020 Jun 03
0
[PATCH RFC 01/13] vhost: option to fetch descriptors through an independent struct
On Wed, Jun 03, 2020 at 03:13:56PM +0800, Jason Wang wrote:
>
> On 2020/6/2 ??9:05, Michael S. Tsirkin wrote:
> > The idea is to support multiple ring formats by converting
> > to a format-independent array of descriptors.
> >
> > This costs extra cycles, but we gain in ability
> > to fetch a batch of descriptors in one go, which
> > is good for code
2019 Oct 11
0
[PATCH RFC v1 1/2] vhost: option to fetch descriptors through an independent struct
The idea is to support multiple ring formats by converting
to a format-independent array of descriptors.
This costs extra cycles, but we gain in ability
to fetch a batch of descriptors in one go, which
is good for code cache locality.
To simplify benchmarking, I kept the old code
around so one can switch back and forth by
writing into a module parameter.
This will go away in the final
2019 Mar 06
0
[RFC PATCH V2 2/5] vhost: fine grain userspace memory accessors
This is used to hide the metadata address from virtqueue helpers. This
will allow to implement a vmap based fast accessing to metadata.
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vhost/vhost.c | 94 +++++++++++++++++++++++++++++++++++++++++----------
1 file changed, 77 insertions(+), 17 deletions(-)
diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
index
2019 Mar 07
0
[RFC PATCH V2 2/5] vhost: fine grain userspace memory accessors
On 2019/3/6 ??6:45, Christophe de Dinechin wrote:
>
>> On 6 Mar 2019, at 08:18, Jason Wang <jasowang at redhat.com> wrote:
>>
>> This is used to hide the metadata address from virtqueue helpers. This
>> will allow to implement a vmap based fast accessing to metadata.
>>
>> Signed-off-by: Jason Wang <jasowang at redhat.com>
>> ---
>>
2018 May 16
0
[RFC V4 PATCH 7/8] vhost: packed ring support
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vhost/net.c | 3 +-
drivers/vhost/vhost.c | 539 ++++++++++++++++++++++++++++++++++++++++++++++----
drivers/vhost/vhost.h | 8 +-
3 files changed, 513 insertions(+), 37 deletions(-)
diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c
index 30273ad..f55c82f8 100644
--- a/drivers/vhost/net.c
+++ b/drivers/vhost/net.c
@@
2019 Mar 06
1
[RFC PATCH V2 2/5] vhost: fine grain userspace memory accessors
> On 6 Mar 2019, at 08:18, Jason Wang <jasowang at redhat.com> wrote:
>
> This is used to hide the metadata address from virtqueue helpers. This
> will allow to implement a vmap based fast accessing to metadata.
>
> Signed-off-by: Jason Wang <jasowang at redhat.com>
> ---
> drivers/vhost/vhost.c | 94 +++++++++++++++++++++++++++++++++++++++++----------
> 1
2019 Mar 06
1
[RFC PATCH V2 2/5] vhost: fine grain userspace memory accessors
> On 6 Mar 2019, at 08:18, Jason Wang <jasowang at redhat.com> wrote:
>
> This is used to hide the metadata address from virtqueue helpers. This
> will allow to implement a vmap based fast accessing to metadata.
>
> Signed-off-by: Jason Wang <jasowang at redhat.com>
> ---
> drivers/vhost/vhost.c | 94 +++++++++++++++++++++++++++++++++++++++++----------
> 1
2017 Sep 22
0
[PATCH net-next RFC 2/5] vhost: introduce helper to prefetch desc index
This patch introduces vhost_prefetch_desc_indices() which could batch
descriptor indices fetching and used ring updating. This intends to
reduce the cache misses of indices fetching and updating and reduce
cache line bounce when virtqueue is almost full. copy_to_user() was
used in order to benefit from modern cpus that support fast string
copy. Batched virtqueue processing will be the first user.
2018 Jul 16
0
[PATCH net-next V2 6/8] vhost: packed ring support
This patch introduces basic support for packed ring. The idea behinds
packed ring is to use a single descriptor ring instead of three
different rings (avail, used and descriptor). This could help to
reduce the cache contention and PCI transactions. So it was designed
to help for the performance for both software implementation and
hardware implementation.
The implementation was straightforward,
2020 Jun 03
2
[PATCH RFC 01/13] vhost: option to fetch descriptors through an independent struct
On 2020/6/2 ??9:05, Michael S. Tsirkin wrote:
> The idea is to support multiple ring formats by converting
> to a format-independent array of descriptors.
>
> This costs extra cycles, but we gain in ability
> to fetch a batch of descriptors in one go, which
> is good for code cache locality.
>
> When used, this causes a minor performance degradation,
> it's been kept
2020 Jun 03
2
[PATCH RFC 01/13] vhost: option to fetch descriptors through an independent struct
On 2020/6/2 ??9:05, Michael S. Tsirkin wrote:
> The idea is to support multiple ring formats by converting
> to a format-independent array of descriptors.
>
> This costs extra cycles, but we gain in ability
> to fetch a batch of descriptors in one go, which
> is good for code cache locality.
>
> When used, this causes a minor performance degradation,
> it's been kept
2020 Apr 07
0
[PATCH v7 18/19] vhost: use batched version by default
As testing shows no performance change, switch to that now.
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
Signed-off-by: Eugenio P?rez <eperezma at redhat.com>
Link: https://lore.kernel.org/r/20200401183118.8334-3-eperezma at redhat.com
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
---
drivers/vhost/vhost.c | 251 +-----------------------------------------
2020 Apr 07
0
[PATCH v8 18/19] vhost: use batched version by default
As testing shows no performance change, switch to that now.
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
Signed-off-by: Eugenio P?rez <eperezma at redhat.com>
Link: https://lore.kernel.org/r/20200401183118.8334-3-eperezma at redhat.com
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
---
drivers/vhost/vhost.c | 251 +-----------------------------------------
2020 Jun 02
0
[PATCH RFC 02/13] vhost: use batched version by default
As testing shows no performance change, switch to that now.
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
Signed-off-by: Eugenio P?rez <eperezma at redhat.com>
Link: https://lore.kernel.org/r/20200401183118.8334-3-eperezma at redhat.com
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
---
drivers/vhost/vhost.c | 251 +-----------------------------------------