schmichael / codec-mw-bench

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

i saw funny performance with msgpack+multiwriter so i wrote a thing

Output on August 17th, 2018 (go1.10.3):

[git:master]~/go/src/github.com/schmichael/codec-mw-bench$ go test -bench=. -benchmem
goos: linux
goarch: amd64
pkg: github.com/schmichael/codec-mw-bench
BenchmarkJSON_Blake2b_Multi-4              20000             64133 ns/op          28.35 MB/s       12594 B/op        212 allocs/op
BenchmarkJSON_Blake2b_NoMulti-4            20000             69513 ns/op          26.15 MB/s       12114 B/op        208 allocs/op
BenchmarkJSON_MD5_Multi-4                  20000             68048 ns/op          26.48 MB/s       12290 B/op        212 allocs/op
BenchmarkJSON_MD5_NoMulti-4                20000             70763 ns/op          25.47 MB/s       12114 B/op        208 allocs/op
BenchmarkMsgpack_Blake2b_Multi-4           50000             38915 ns/op          36.46 MB/s        8464 B/op        214 allocs/op
BenchmarkMsgpack_Blake2b_NoMulti-4        100000             13987 ns/op         101.45 MB/s        5584 B/op         10 allocs/op
BenchmarkMsgpack_MD5_Multi-4               50000             37498 ns/op          37.41 MB/s        8148 B/op        214 allocs/op
BenchmarkMsgpack_MD5_NoMulti-4            100000             14653 ns/op          95.75 MB/s        5584 B/op         10 allocs/op
PASS
ok      github.com/schmichael/codec-mw-bench    16.071s

Thanks to @apparentlymart for pointing me to why: https://github.com/ugorji/go/blob/00b869d2f4a5e27445c2d916fa106fc72c106d4c/codec/encode.go#L1036-L1051

About

License:The Unlicense


Languages

Language:Go 100.0%