On Sun, 3 Jul 2022 07:56:18 +0000
Long Li <lon...@microsoft.com> wrote:

> > Subject: Re: [PATCH 01/17] net/mana: add basic driver, build environment and
> > doc
> > 
> > On Fri,  1 Jul 2022 02:02:31 -0700
> > lon...@linuxonhyperv.com wrote:
> >   
> > > + uint64_t max_mr_size;
> > > + rte_rwlock_t    mr_list_lock;
> > > +};  
> > 
> > Reader/Writer locks are slower for the usual uncontended case.
> > Unless you have a reader holding onto the lock for a long time, better to 
> > use
> > spin lock.
> > 
> > This is Linux wisdom (thank you paulmck), Windows seems to love 
> > reader/writer
> > locks.  
> 
> This lock is used mostly uncontended for readers and allow them concurrently 
> to access the list. It's rare that a writer might want to access it.
> 
> But changing it to spinlock will prevent multiple readers from accessing the 
> list at the same time. In this use case, is it beneficial to use spinlocks?

https://www.researchgate.net/figure/Costs-of-Simple-Spinlock-and-Distributed-Reader-Writer-Spinlock-To-write-acquire-the_fig1_244490342

Conclusion

        Breakeven curves for the locking primitives were
        computed, and the breakeven between simple spinlock
        and distributed reader-writer spinlock supports the rule of
        thumb that states that simple spinlock should be used in
        cases where the update ratio f is greater than the
        reciprocal of the number of CPUs, 1/nm.

Reply via email to