Awesome Go performance
Collection of the Awesome™ Go libraries, tools, project around performance.
Contents
Assembly
- CAFxX/atomics - All the missing AMD64 atomic instructions.
Benchmarks
- benchstat - Benchstat computes and compares statistics about benchmarks.
- go-benchrun - Convenience wrapper around "go test" + "benchstat".
Concurrency
GC
- gcnotifier - Know when GC runs from inside your golang code.
Hardware
- klauspost/cpuid - Provides information about the CPU running the current program.
IO
- preallocate - File preallocation library
Math
- fastdiv - Fast division, modulus and divisibility checks in Go for divisors known only at runtime.
Profiling
- profefe - Continuous profiling data collecting.
Storage
- stringbank - Storing strings without GC overhead.
Testing
Articles
- The official HOW-TO on app diagnostics.
- Debugging performance issues in Go programs by Dmitry Vyukov (2014).