Closed
Description
Idamax and Ddot small are showing regressions between 1.6 and gotip.
brendan:~/Documents/mygo/src/github.com/gonum/blas/native$ go version
go version devel +7177cb9 Tue Mar 22 17:30:30 2016 +0000 darwin/amd64
Reproducing:
go get github.com/gonum/blas
go get github.com/gonum/floats
cd $GOPATH/src/github.com/gonum/blas/native
go test -bench DdotSmall -tags=noasm
go test -bench Ida -tags=noasm
While the Ddot regressions look small, there had been improvements as of the resolution of #14511 , so it's a significant regression since then. Ddot shows improvement between 1.6 and tip for the benchmarks with larger vector sizes (slices of size 100+ instead of 10).
DdotSmallBothUnitary-8 17.9ns ± 2% 18.9ns ± 1% +6.04% (p=0.000 n=10+10)
DdotSmallIncUni-8 22.1ns ± 1% 23.1ns ± 1% +4.87% (p=0.000 n=10+9)
DdotSmallUniInc-8 21.6ns ± 1% 21.6ns ± 1% ~ (p=0.455 n=10+9)
DdotSmallBothInc-8 21.6ns ± 1% 22.1ns ± 1% +2.73% (p=0.000 n=8+8)
IdamaxSmallUnitaryInc-8 31.6ns ±10% 36.5ns ± 4% +15.46% (p=0.000 n=10+8)
IdamaxSmallPosInc-8 27.5ns ±19% 44.0ns ±11% +59.75% (p=0.000 n=10+10)
IdamaxMediumUnitaryInc-8 1.59µs ± 4% 1.92µs ± 5% +20.81% (p=0.000 n=10+10)
IdamaxMediumPosInc-8 1.83µs ± 1% 2.17µs ± 2% +18.58% (p=0.000 n=9+10)
IdamaxLargeUnitaryInc-8 145µs ± 2% 192µs ± 2% +32.64% (p=0.000 n=10+10)
IdamaxLargePosInc-8 195µs ± 2% 218µs ± 2% +12.06% (p=0.000 n=10+10)
IdamaxHugeUnitaryInc-8 14.8ms ± 1% 19.8ms ± 1% +33.49% (p=0.000 n=10+10)
IdamaxHugePosInc-8 26.9ms ± 3% 27.9ms ± 1% +3.62% (p=0.000 n=10+9)