Hi, I'm benchmarking my circuitbreaker implementation <https://docs.microsoft.com/en-us/azure/architecture/patterns/circuit-breaker> against others and decided to run my benchmarks against https://golang.org/dl/#unstable (using my mac).
I installed it following go get golang.org/x/build/version/go1.10beta1 The code makes heavy use of locks, goroutines, and atomics (it's a circuit pattern after all)! Before I get too deep trying to debug it, I was wondering if anything changed in go10 around how benchmarks are measured (maybe it's more accurate, not slower), or if the build we're using isn't optimized like the official releases are. The difference between "/1" and "/75" is how many goroutines are concurrently executing. > benchcmp go9_bench_results go10_bench_results benchmark old ns/op new ns/op delta BenchmarkCiruits/Mine/passing/DefaultConfig/1-8 867 1962 +126.30% BenchmarkCiruits/Mine/passing/DefaultConfig/75-8 461 823 +78.52% BenchmarkCiruits/Mine/passing/NoTimeout/1-8 329 1223 +271.73% BenchmarkCiruits/Mine/passing/NoTimeout/75-8 306 660 +115.69% BenchmarkCiruits/Mine/failing/DefaultConfig/1-8 190 625 +228.95% BenchmarkCiruits/Mine/failing/DefaultConfig/75-8 127 327 +157.48% BenchmarkCiruits/Mine/failing/NoTimeout/1-8 200 605 +202.50% BenchmarkCiruits/Mine/failing/NoTimeout/75-8 124 327 +163.71% BenchmarkCiruits/GoHystrix/passing/DefaultConfig/1-8 6752 9263 +37.19% BenchmarkCiruits/GoHystrix/passing/DefaultConfig/75-8 2656 2750 +3.54% BenchmarkCiruits/GoHystrix/failing/DefaultConfig/1-8 5819 6485 +11.45% BenchmarkCiruits/GoHystrix/failing/DefaultConfig/75-8 1820 1736 -4.62% BenchmarkCiruits/rubyist/passing/Threshold-10/1-8 1453 1876 +29.11% BenchmarkCiruits/rubyist/passing/Threshold-10/75-8 757 1454 +92.07% BenchmarkCiruits/rubyist/failing/Threshold-10/1-8 114 321 +181.58% BenchmarkCiruits/rubyist/failing/Threshold-10/75-8 245 2245 +816.33% BenchmarkCiruits/gobreaker/passing/Default/1-8 197 594 +201.52% BenchmarkCiruits/gobreaker/passing/Default/75-8 625 723 +15.68% BenchmarkCiruits/gobreaker/failing/Default/1-8 95.3 284 +198.01% BenchmarkCiruits/gobreaker/failing/Default/75-8 281 350 +24.56% BenchmarkCiruits/handy/passing/Default/1-8 1063 1364 +28.32% BenchmarkCiruits/handy/passing/Default/75-8 1350 1875 +38.89% BenchmarkCiruits/handy/failing/Default/1-8 1423 1316 -7.52% BenchmarkCiruits/handy/failing/Default/75-8 1688 1621 -3.97% -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.