• Ilya Tocar's avatar
    math: remove asm version of Dim · 19928933
    Ilya Tocar authored
    Dim performance has regressed by 14% vs 1.9 on amd64.
    Current pure go version of Dim is faster and,
    what is even more important for performance, is inlinable, so
    instead of tweaking asm implementation, just remove it.
    I had to update BenchmarkDim, because it was simply reloading
    constant(answer) in a loop.
    Perf data below:
    
    name   old time/op  new time/op  delta
    Dim-6  6.79ns ± 0%  1.60ns ± 1%  -76.39%  (p=0.000 n=7+10)
    
    If I modify benchmark to be the same as in this CL results are even better:
    
    name   old time/op  new time/op  delta
    Dim-6  10.2ns ± 0%   1.6ns ± 1%  -84.27%  (p=0.000 n=8+10)
    
    Updates #21913
    
    Change-Id: I00e23c8affc293531e1d9f0e0e49f3a525634f53
    Reviewed-on: https://go-review.googlesource.com/80695
    Run-TryBot: Ilya Tocar <ilya.tocar@intel.com>
    Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
    Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
    Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
    19928933
dim_arm.s 262 Bytes