mirror of https://github.com/golang/go.git
mat/big: more optimal Karatsuba threshold
benchmark old ns/op new ns/op delta BenchmarkHilbert 6253043 6267289 +0.23% BenchmarkMul 45355940 39490633 -12.93% R=r CC=golang-dev https://golang.org/cl/6355104
This commit is contained in:
parent
98ca655919
commit
6a135a0894
|
|
@ -236,7 +236,7 @@ func karatsubaSub(z, x nat, n int) {
|
||||||
// Operands that are shorter than karatsubaThreshold are multiplied using
|
// Operands that are shorter than karatsubaThreshold are multiplied using
|
||||||
// "grade school" multiplication; for longer operands the Karatsuba algorithm
|
// "grade school" multiplication; for longer operands the Karatsuba algorithm
|
||||||
// is used.
|
// is used.
|
||||||
var karatsubaThreshold int = 32 // computed by calibrate.go
|
var karatsubaThreshold int = 40 // computed by calibrate.go
|
||||||
|
|
||||||
// karatsuba multiplies x and y and leaves the result in z.
|
// karatsuba multiplies x and y and leaves the result in z.
|
||||||
// Both x and y must have the same length n and n must be a
|
// Both x and y must have the same length n and n must be a
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue