lkml.org 
[lkml]   [2015]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC][PATCH 00/13] percpu rwsem -v2
    On 06/22/2015 02:16 PM, Peter Zijlstra wrote:
    > Also, since Linus thinks lglocks is a failed locking primitive (which I whole
    > heartedly agree with, its preempt-disable latencies are an abomination), it
    > also converts the global part of fs/locks's usage of lglock over to a
    > percpu-rwsem and uses a per-cpu spinlock for the local part. This both provides
    > another (4th) percpu-rwsem users and removes an lglock user.

    I did a quick lockperf run with these patches on a 4 socket E5-4610 machine.
    These microbenches execercise the fs' locks a bit.

    I suspect I got the wrong tree. The patches did not apply cleanly. The resulting
    kernel boots fine and doesn't explode... so far...

    The results aren't looking too bad. Though building a kernel with 'make -j200'
    was extreme slow. I'll look into it tomorrow.

    https://git.samba.org/jlayton/linux.git/?p=jlayton/lockperf.git;a=summary

    flock01
    mean variance sigma max min
    4.1.0 11.7075 816.3341 28.5716 125.6552 0.0021
    percpu-rwsem 11.4614 760.1345 27.5705 132.5030 0.0026


    flock02
    mean variance sigma max min
    4.1.0 7.0197 1.1812 1.0868 10.6188 5.1706
    percpu-rwsem 9.3194 1.3443 1.1594 11.5902 6.6138


    lease01
    mean variance sigma max min
    4.1.0 41.8361 23.8462 4.8833 51.3493 28.5859
    percpu-rwsem 40.2738 20.8323 4.5642 49.6037 28.0704


    lease02
    mean variance sigma max min
    4.1.0 71.2159 12.7763 3.5744 77.8432 58.0390
    percpu-rwsem 71.4312 14.7688 3.8430 76.5036 57.8615


    posix01
    mean variance sigma max min
    4.1.0 121.9020 27882.5260 166.9806 603.5509 0.0063
    percpu-rwsem 185.3981 38474.3836 196.1489 580.6532 0.0073


    posix02
    mean variance sigma max min
    4.1.0 12.7461 3.1802 1.7833 15.5411 8.1018
    percpu-rwsem 16.2341 4.3038 2.0746 19.3271 11.1751


    posix03
    mean variance sigma max min
    4.1.0 0.9121 0.0000 0.0000 0.9121 0.9121
    percpu-rwsem 0.9379 0.0000 0.0000 0.9379 0.9379


    posix04
    mean variance sigma max min
    4.1.0 0.0703 0.0044 0.0664 0.6764 0.0437
    percpu-rwsem 0.0675 0.0007 0.0267 0.3236 0.0491


    cheers,
    daniel

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2015-06-22 20:41    [W:4.110 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site