OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-dev message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [virtio-dev] Re: packed ring layout proposal v3




On 2017年09月13日 00:23, Willem de Bruijn wrote:
On Mon, Sep 11, 2017 at 3:47 AM, Jason Wang <jasowang@redhat.com> wrote:

On 2017年09月10日 13:06, Michael S. Tsirkin wrote:
This is an update from v2 version.
Changes:
- update event suppression mechanism
- add wrap counter: DESC_WRAP flag in addition to
    DESC_DRIVER flag used for validity so device does not have to
    write out all used descriptors.

Do we have benchmark result to show the advantage of DESC_DRIVER over e.g
avail/used index?
The KVM forum presentation has some numbers.

Yes. My question may be not accurate. I meant maybe we should benchmark packed ring layout without DESC_DRIVER but something like queue tail/head or producer/consumer (or whatever it called). Looks like most more nic does not use a flag inside descriptor to exam the descriptor ownership.


I'm not sure that synthetic benchmarks will provide much value, as we
understand the trade-off quite well.

The benefit of this model is improved best case performance, by having
a single cacheline read instead of two for the indirect used/avail ring model.

The drawback is worse worst case, as scanning the ring of descriptors
introduces more cacheline misses than scanning the compressed
used/avail ring.

Like I've replied, looks like the scanning is not friendly to batching or prefetching and can cause extra overheads.


This model is easier to implement in hardware and the common case is
likely close to the best case, so I think it makes sense.

Maybe, but we probably need inputs from hardware vendor guys.

Thanks


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]