Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
all: remove unnecessary string([]byte) conversion in fmt.Sprintf yet …
…%s (Azure#663) Noticed from Orijtech's continuous benchmarking product "Bencher" per https://dashboard.github.orijtech.com/benchmark/3245b8e4bbbd44a597480319aaa4b9fe that there is a bunch of code in the wild that invokes: fmt.Sprintf("%s", string([]byte(...))) yet the "%s" format specifier in fmt has a purpose: %s the uninterpreted bytes of the string or slice as well as using the "%c" format specifier which led to big improvements across every dimension: * CPU time reduction by 11+% (ns/op) * throughput improvement by 13+% (MBs/op) * allocations reduction by 45+% (B/op) * number of allocations reduction by 18+% (alloc/op) Also (*bytes.Buffer).String is invoked when "%q" or "%s" is passed in so no need to use it.
- Loading branch information