Current benchmark data was generated on Sun Dec 01 2024, 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.)
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1-m.js | 934ms | 12ms | 179.4MB | 1463ms | 247ms | bun 1.1.38 |
javascript | 1-m.js | 1245ms | 11ms | 292.8MB | 2167ms | 173ms | node 23.3.0 |
ocaml | 1.ml | 3047ms | 16ms | 132.6MB | 2977ms | 60ms | ocaml 5.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 95ms | 0.9ms | 78.8MB | 67ms | 30ms | bun 1.1.38 |
javascript | 1.js | 124ms | 1.3ms | 82.1MB | 123ms | 20ms | node 23.3.0 |
ocaml | 1.ml | 217ms | 3.2ms | 19.2MB | 200ms | 0ms | ocaml 5.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 1.8ms | 0.2ms | 4.9MB | 0ms | 0ms | ocaml 5.2.1 |
javascript | 1.js | 12ms | 0.4ms | 31.8MB | 0ms | 10ms | bun 1.1.38 |
javascript | 1.js | 31ms | 0.3ms | 51.9MB | 16ms | 4ms | node 23.3.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 183ms | 10ms | 6.4MB | 170ms | 0ms | ocaml 5.2.1 |
javascript | 2.js | 307ms | 1.5ms | 66.6MB | 293ms | 17ms | node 23.3.0 |
javascript | 1.js | 556ms | 4.1ms | 64.6MB | 543ms | 7ms | node 23.3.0 |
javascript | 2.js | 654ms | 2.5ms | 122.6MB | 690ms | 73ms | bun 1.1.38 |
javascript | 1.js | 879ms | 2.7ms | 110.8MB | 957ms | 87ms | bun 1.1.38 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 530ms | 20ms | 6.6MB | 517ms | 0ms | ocaml 5.2.1 |
javascript | 2.js | 850ms | 3.9ms | 71.8MB | 830ms | 23ms | node 23.3.0 |
javascript | 1.js | 1581ms | 2.8ms | 71.0MB | 1560ms | 17ms | node 23.3.0 |
javascript | 2.js | 1821ms | 23ms | 122.0MB | 1977ms | 60ms | bun 1.1.38 |
javascript | 1.js | 2555ms | 37ms | 110.8MB | 2857ms | 143ms | bun 1.1.38 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 78ms | 2.4ms | 5.9MB | 67ms | 0ms | ocaml 5.2.1 |
javascript | 2.js | 166ms | 2.5ms | 60.1MB | 163ms | 3ms | node 23.3.0 |
javascript | 1.js | 172ms | 16ms | 61.8MB | 157ms | 10ms | node 23.3.0 |
javascript | 1.js | 323ms | 4.0ms | 119.0MB | 360ms | 73ms | bun 1.1.38 |
javascript | 2.js | 352ms | 4.1ms | 125.4MB | 380ms | 47ms | bun 1.1.38 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1-m.js | 510ms | 1.8ms | 138.7MB | 657ms | 147ms | bun 1.1.38 |
javascript | 1.js | 538ms | 0.3ms | 134.0MB | 627ms | 60ms | node 23.3.0 |
ocaml | 1.ml | 1072ms | 10ms | 70.2MB | 1030ms | 27ms | ocaml 5.2.1 |
ocaml | 2.ml | 2064ms | 47ms | 91.7MB | 2007ms | 43ms | ocaml 5.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 124ms | 3.0ms | 86.3MB | 103ms | 37ms | bun 1.1.38 |
ocaml | 1.ml | 150ms | 2.7ms | 21.6MB | 127ms | 10ms | ocaml 5.2.1 |
javascript | 1.js | 162ms | 1.2ms | 101.8MB | 160ms | 37ms | node 23.3.0 |
ocaml | 2.ml | 362ms | 1.9ms | 27.6MB | 337ms | 7ms | ocaml 5.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 374ms | 0.9ms | 5.2MB | 363ms | 0ms | ocaml 5.2.1 |
javascript | 6.js | 460ms | 5.9ms | 59.6MB | 447ms | 7ms | node 23.3.0 |
javascript | 6.js | 672ms | 15ms | 44.9MB | 667ms | 3ms | bun 1.1.38 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 42ms | 1.3ms | 5.2MB | 30ms | 0ms | ocaml 5.2.1 |
javascript | 6.js | 77ms | 1.7ms | 59.5MB | 67ms | 3ms | node 23.3.0 |
javascript | 6.js | 87ms | 1.8ms | 44.9MB | 80ms | 10ms | bun 1.1.38 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6-m.js | 2167ms | 20ms | 117.7MB | 8173ms | 63ms | node 23.3.0 |
ocaml | 2.ml | 4487ms | 17ms | 6.6MB | 4477ms | 0ms | ocaml 5.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6-m.js | 643ms | 4.2ms | 117.0MB | 2300ms | 43ms | node 23.3.0 |
ocaml | 2.ml | 1126ms | 6.0ms | 5.9MB | 1117ms | 0ms | ocaml 5.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6-m.js | 262ms | 0.7ms | 112.9MB | 813ms | 47ms | node 23.3.0 |
ocaml | 2.ml | 284ms | 2.2ms | 5.2MB | 270ms | 0ms | ocaml 5.2.1 |