-
Brad Fitzpatrick authored
Reduces process-wide heap (inuse_space) by 60kB by using a pointer to a fixed-sized array instead of a slice of a fixed size. Before: 119.44kB 23.43% 23.43% 147.88kB 29.01% golang.org/x/net/http2/hpack.addDecoderNode After: 59.72kB 13.28% 39.85% 87.94kB 19.56% golang.org/x/net/http2/hpack.addDecoderNode (This is all work from an init func in http2/hpack) Doesn't seem to affect runtime performance. Measured with: $ cat huffman_test.go package main import ( "testing" _ "golang.org/x/net/http2" ) func TestMem(t *testing.T) {} $ GODEBUG=memprofilerate=1 go test -memprofilerate=1 -memprofile=mem.prof -v . === RUN TestMem --- PASS: TestMem (0.00s) PASS ok huffmem 0.052s $ go tool pprof --inuse_space mem.prof Change-Id: I5e56a5a2682f1063c955b342b37e97ca4c303dab Reviewed-on: https://go-review.googlesource.com/127235Reviewed-by: Ian Lance Taylor <iant@golang.org>
32f9bdbd