go-graphite / carbon-clickhouse

Graphite metrics receiver with ClickHouse as storage
MIT License
186 stars 47 forks source link

uploader: replace fnv32 with murmur3 in CMap for better perfomance #73

Closed msaf1980 closed 3 years ago

msaf1980 commented 3 years ago

Replace fnv32 with murmur3 hash function with better throughput.

$ go test -benchmem -run=^$ github.com/lomik/carbon-clickhouse/uploader -bench Benchmark
goos: linux
goarch: amd64
pkg: github.com/lomik/carbon-clickhouse/uploader
Benchmark_fnv32-6       43323050            28.0 ns/op         0 B/op          0 allocs/op
Benchmark_murmur32-6    78771030            13.6 ns/op         0 B/op          0 allocs/op