Current benchmark data was generated on Sun Jul 13 2025, full log can be found HERE
CONTRIBUTIONS are WELCOME!
* -m in a file name stands for multi-threading or multi-processing
* -i in a file name stands for direct intrinsics usage. (Usage of simd intrinsics via libraries is not counted)
* -ffi in a file name stands for non-stdlib FFI usage
* (You may find time < time(user) + time(sys) for some non-parallelized programs, the overhead is from GC or JIT compiler, which are allowed to take advantage of multi-cores as that's more close to real-world scenarios.)
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
1.go | 117ms | 2.1ms | 8.4MB | 107ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
1.go | 35ms | 1.1ms | 8.2MB | 30ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
3-m.go | 118ms | 0.9ms | 5.5MB | 380ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
3-m.go | 18ms | 1.5ms | 6.5MB | 30ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
1-http2.go | 120ms | 5.3ms | 60.3MB | 330ms | 80ms | go 1.24.5 |
2-m.go | 386ms | 12ms | 170.1MB | 687ms | 633ms | go 1.24.5 |
1-m.go | 388ms | 25ms | 176.1MB | 727ms | 580ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
1-http2.go | 23ms | 13ms | 25.6MB | 60ms | 15ms | go 1.24.5 |
2-m.go | 25ms | 25ms | 26.9MB | 35ms | 50ms | go 1.24.5 |
1-m.go | 70ms | 3.8ms | 36.7MB | 97ms | 97ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
7-m.go | 703ms | 41ms | 40.2MB | 2410ms | 30ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
7-m.go | 129ms | 2.0ms | 24.0MB | 343ms | 20ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
3.go | 121ms | 2.2ms | 3.5MB | 113ms | 0ms | go 1.24.5 |
3.go | 133ms | 1.4ms | 0.4MB | 127ms | 0ms | tinygo 0.38.0 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
8.go | 1128ms | 11ms | 8.6MB | 1117ms | 3ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
8.go | 266ms | 3.2ms | 8.6MB | 253ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
0-ffi.go | 93ms | 0.4ms | 5.2MB | 90ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
0-ffi.go | 25ms | 0.6ms | 5.1MB | 20ms | 0ms | go 1.24.5 |
code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|
4-m.go | 1905ms | 8.6ms | 5.5MB | 7413ms | 7ms | go 1.24.5 |
1.go | 3702ms | 11ms | 5.6MB | 3693ms | 0ms | go 1.24.5 |
1.go | timeout | 0.0ms | 0.5MB | 4990ms | 0ms | tinygo 0.38.0 |