Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1423252

Re: [RFC PATCH-tip v2 2/6] locking/rwsem: Stop active read lock ASAP

From Peter Zijlstra <peterz@infradead.org>
Newsgroups linux.kernel
Subject Re: [RFC PATCH-tip v2 2/6] locking/rwsem: Stop active read lock ASAP
Date 2016-06-15 19:30 +0200
Message-ID <rKmNz-5ul-17@gated-at.bofh.it> (permalink)
References <rK5jH-2zl-5@gated-at.bofh.it> <rK5to-2E2-31@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Tue, Jun 14, 2016 at 06:48:05PM -0400, Waiman Long wrote:
> Currently, when down_read() fails, the active read locking isn't undone
> until the rwsem_down_read_failed() function grabs the wait_lock. If the
> wait_lock is contended, it may takes a while to get the lock. During
> that period, writer lock stealing will be disabled because of the
> active read lock.
> 
> This patch will release the active read lock ASAP so that writer lock
> stealing can happen sooner. The only downside is when the reader is
> the first one in the wait queue as it has to issue another atomic
> operation to update the count.
> 
> On a 4-socket Haswell machine running on a 4.7-rc1 tip-based kernel,
> the fio test with multithreaded randrw and randwrite tests on the
> same file on a XFS partition on top of a NVDIMM with DAX were run,
> the aggregated bandwidths before and after the patch were as follows:
> 
>   Test      BW before patch     BW after patch  % change
>   ----      ---------------     --------------  --------
>   randrw        1210 MB/s          1352 MB/s      +12%
>   randwrite     1622 MB/s          1710 MB/s      +5.4%
> 
> The write-only microbench also showed improvement because some read
> locking was done by the XFS code.

How does a reader only micro-bench react? I'm thinking the extra atomic
might hurt a bit.

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC PATCH-tip v2 0/6] locking/rwsem: Enable reader optimistic spinning Waiman Long <Waiman.Long@hpe.com> - 2016-06-15 00:50 +0200
  [RFC PATCH-tip v2 2/6] locking/rwsem: Stop active read lock ASAP Waiman Long <Waiman.Long@hpe.com> - 2016-06-15 01:00 +0200
    Re: [RFC PATCH-tip v2 2/6] locking/rwsem: Stop active read lock ASAP Peter Zijlstra <peterz@infradead.org> - 2016-06-15 19:30 +0200
      Re: [RFC PATCH-tip v2 2/6] locking/rwsem: Stop active read lock ASAP Davidlohr Bueso <dave@stgolabs.net> - 2016-06-16 04:20 +0200

csiph-web