-
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
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
encode.go | ||
encode_test.go | ||
hpack.go | ||
hpack_test.go | ||
huffman.go | ||
tables.go | ||
tables_test.go |