• Dmitriy Vyukov's avatar
    runtime: native xadd for 386/amd64 · 491aa157
    Dmitriy Vyukov authored
    benchmark                          old ns/op    new ns/op    delta
    BenchmarkSemaUncontended               37.40        34.10   -8.82%
    BenchmarkSemaUncontended-2             18.90        17.70   -6.35%
    BenchmarkSemaUncontended-4             11.90        10.90   -8.40%
    BenchmarkSemaUncontended-8              6.26         5.19  -17.09%
    BenchmarkSemaUncontended-16             4.39         3.91  -10.93%
    BenchmarkSemaSyntNonblock              38.00        35.30   -7.11%
    BenchmarkSemaSyntNonblock-2            83.00        46.70  -43.73%
    BenchmarkSemaSyntNonblock-4           124.00       101.00  -18.55%
    BenchmarkSemaSyntNonblock-8           124.00       116.00   -6.45%
    BenchmarkSemaSyntNonblock-16          148.00       114.00  -22.97%
    
    (on HP Z600 2 x Xeon E5620, 8 HT cores, 2.40GHz)
    
    R=golang-dev, rsc
    CC=golang-dev
    https://golang.org/cl/4755041
    491aa157
asm.s 12.3 KB