mirror of https://github.com/golang/go.git
When T is a scalar, there are no runtime calls required, which makes this a clear win. encoding/binary: WriteInts-8 958ns ± 3% 864ns ± 2% -9.80% (p=0.000 n=15+15) This also considerably shrinks a core fmt routine: Before: "".(*pp).printArg t=1 size=3952 args=0x20 locals=0xf0 After: "".(*pp).printArg t=1 size=2624 args=0x20 locals=0x98 Unfortunately, I find it very hard to get stable numbers out of the fmt benchmarks due to thermal scaling. Change-Id: I1278006b030253bf8e48dc7631d18985cdaa143d Reviewed-on: https://go-review.googlesource.com/26659 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Keith Randall <khr@golang.org> |
||
|---|---|---|
| .. | ||
| embed1.dir | ||
| private.dir | ||
| recursive1.dir | ||
| assertinline.go | ||
| bigdata.go | ||
| convert.go | ||
| convert1.go | ||
| convert2.go | ||
| embed.go | ||
| embed1.go | ||
| embed2.go | ||
| explicit.go | ||
| fail.go | ||
| fake.go | ||
| noeq.go | ||
| pointer.go | ||
| private.go | ||
| receiver.go | ||
| receiver1.go | ||
| recursive.go | ||
| recursive1.go | ||
| returntype.go | ||
| struct.go | ||