Current benchmark data was generated on Tue Mar 25 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.)
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 1197ms | 3.3ms | 96.2MB | 1130ms | 53ms | pypy 3.10.16 |
crystal | 1.cr | 1276ms | 8.3ms | 64.0MB | 1257ms | 0ms | crystal 1.15.1 |
python | 1.py | timeout | 0.0ms | 40.8MB | 4967ms | 17ms | cpython 3.13.2 |
python | 1.py | timeout | 0.0ms | 40.5MB | 4740ms | 250ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 97ms | 2.2ms | 68.7MB | 67ms | 17ms | pypy 3.10.16 |
crystal | 1.cr | 105ms | 2.2ms | 10.9MB | 90ms | 0ms | crystal 1.15.1 |
python | 1.py | 487ms | 1.2ms | 11.9MB | 460ms | 13ms | pyston 3.8.12 |
python | 1.py | 726ms | 15ms | 12.6MB | 713ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 1280ms | 15ms | 107.2MB | 1230ms | 37ms | pypy 3.10.16 |
crystal | 1.cr | 1381ms | 34ms | 19.6MB | 1307ms | 57ms | crystal 1.15.1 |
python | 1.py | 2668ms | 8.1ms | 25.1MB | 2643ms | 10ms | cpython 3.13.2 |
python | 1.py | timeout | 0.0ms | 17.4MB | 4980ms | 10ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 71ms | 3.7ms | 7.1MB | 50ms | 10ms | crystal 1.15.1 |
python | 1.py | 221ms | 0.4ms | 86.7MB | 183ms | 23ms | pypy 3.10.16 |
python | 1.py | 239ms | 1.7ms | 20.3MB | 220ms | 10ms | cpython 3.13.2 |
python | 1.py | 663ms | 2.7ms | 16.8MB | 637ms | 10ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 59ms | 1.7ms | 6.4MB | 43ms | 0ms | crystal 1.15.1 |
python | 1.py | 252ms | 2.8ms | 83.3MB | 213ms | 27ms | pypy 3.10.16 |
python | 1.py | 360ms | 4.5ms | 12.5MB | 343ms | 0ms | cpython 3.13.2 |
python | 1.py | 2006ms | 3.3ms | 9.6MB | 1990ms | 0ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 22ms | 0.7ms | 5.1MB | 10ms | 0ms | crystal 1.15.1 |
python | 1.py | 105ms | 0.1ms | 63.3MB | 73ms | 17ms | pypy 3.10.16 |
python | 1.py | 125ms | 28ms | 12.3MB | 100ms | 0ms | cpython 3.13.2 |
python | 1.py | 349ms | 1.6ms | 8.8MB | 337ms | 0ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 555ms | 3.0ms | 3.4MB | 450ms | 90ms | crystal 1.15.1 |
crystal | 1.cr | 694ms | 0.6ms | 14.4MB | 573ms | 107ms | crystal 1.15.1 |
python | 1.py | 1866ms | 18ms | 88.8MB | 1820ms | 33ms | pypy 3.10.16 |
python | 5-m.py | 2278ms | 15ms | 65.4MB | 3513ms | 857ms | pypy 3.10.16 |
python | 5-m.py | 2482ms | 19ms | 12.5MB | 3550ms | 1030ms | pyston 3.8.12 |
python | 1.py | 3030ms | 3.8ms | 8.1MB | 3020ms | 0ms | pyston 3.8.12 |
python | 5-m.py | 3399ms | 44ms | 13.5MB | 4503ms | 963ms | cpython 3.13.2 |
python | 1.py | 4712ms | 79ms | 8.8MB | 4703ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 59ms | 0.3ms | 3.4MB | 40ms | 7ms | crystal 1.15.1 |
crystal | 1.cr | 75ms | 1.4ms | 4.8MB | 57ms | 7ms | crystal 1.15.1 |
python | 1.py | 249ms | 2.9ms | 63.3MB | 220ms | 13ms | pypy 3.10.16 |
python | 1.py | 317ms | 7.5ms | 8.1MB | 303ms | 0ms | pyston 3.8.12 |
python | 5-m.py | 321ms | 4.6ms | 12.5MB | 420ms | 147ms | pyston 3.8.12 |
python | 5-m.py | 405ms | 4.6ms | 13.5MB | 490ms | 133ms | cpython 3.13.2 |
python | 5-m.py | 450ms | 2.3ms | 65.4MB | 730ms | 327ms | pypy 3.10.16 |
python | 1.py | 484ms | 3.0ms | 8.8MB | 473ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 2.0ms | 0.5ms | 2.8MB | 0ms | 0ms | crystal 1.15.1 |
python | 1.py | 12ms | 0.8ms | 7.6MB | 0ms | 0ms | pyston 3.8.12 |
python | 1.py | 14ms | 1.2ms | 8.6MB | 10ms | 0ms | cpython 3.13.2 |
python | 1.py | 30ms | 1.2ms | 51.4MB | 10ms | 10ms | pypy 3.10.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 1690ms | 21ms | 287.8MB | 323ms | 510ms | crystal 1.15.1 |
python | 1.py | 2282ms | 194ms | 26.9MB | 1117ms | 1593ms | pyston 3.8.12 |
python | 1.py | 2580ms | 481ms | 27.6MB | 1630ms | 1610ms | cpython 3.13.2 |
python | 1.py | 4863ms | 221ms | 103.4MB | 2960ms | 1227ms | pypy 3.10.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 1083ms | 4.6ms | 21.3MB | 230ms | 290ms | pyston 3.8.12 |
python | 1.py | 1174ms | 104ms | 22.5MB | 320ms | 273ms | cpython 3.13.2 |
crystal | 1.cr | 1190ms | 102ms | 59.1MB | 37ms | 83ms | crystal 1.15.1 |
python | 1.py | 1547ms | 248ms | 85.3MB | 713ms | 237ms | pypy 3.10.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 0-unsafe.cr | 37ms | 1.3ms | 2.9MB | 30ms | 0ms | crystal 1.15.1 |
crystal | 1.cr | 65ms | 2.1ms | 2.9MB | 57ms | 0ms | crystal 1.15.1 |
python | 2.py | 147ms | 1.7ms | 58.3MB | 127ms | 10ms | pypy 3.10.16 |
python | 1.py | 184ms | 4.8ms | 59.3MB | 160ms | 10ms | pypy 3.10.16 |
python | 1.py | 721ms | 2.1ms | 8.9MB | 707ms | 0ms | pyston 3.8.12 |
python | 2.py | 846ms | 12ms | 8.5MB | 837ms | 0ms | pyston 3.8.12 |
python | 1.py | 1125ms | 14ms | 9.3MB | 1113ms | 0ms | cpython 3.13.2 |
python | 2.py | 1331ms | 3.3ms | 9.0MB | 1320ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 0-unsafe.cr | 103ms | 1.4ms | 2.9MB | 90ms | 0ms | crystal 1.15.1 |
crystal | 1.cr | 186ms | 1.8ms | 2.9MB | 177ms | 0ms | crystal 1.15.1 |
python | 2.py | 345ms | 4.6ms | 59.2MB | 320ms | 10ms | pypy 3.10.16 |
python | 1.py | 383ms | 1.7ms | 60.3MB | 360ms | 10ms | pypy 3.10.16 |
python | 1.py | 2123ms | 11ms | 8.9MB | 2107ms | 0ms | pyston 3.8.12 |
python | 2.py | 2478ms | 14ms | 8.5MB | 2463ms | 0ms | pyston 3.8.12 |
python | 1.py | 3384ms | 51ms | 9.3MB | 3370ms | 0ms | cpython 3.13.2 |
python | 2.py | 4191ms | 262ms | 9.0MB | 4180ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 0-unsafe.cr | 17ms | 0.5ms | 2.9MB | 10ms | 0ms | crystal 1.15.1 |
crystal | 1.cr | 31ms | 1.7ms | 2.9MB | 20ms | 0ms | crystal 1.15.1 |
python | 2.py | 108ms | 2.1ms | 57.9MB | 83ms | 10ms | pypy 3.10.16 |
python | 1.py | 124ms | 2.8ms | 58.7MB | 97ms | 13ms | pypy 3.10.16 |
python | 1.py | 350ms | 0.8ms | 8.5MB | 337ms | 0ms | pyston 3.8.12 |
python | 2.py | 388ms | 2.7ms | 8.1MB | 380ms | 0ms | pyston 3.8.12 |
python | 1.py | 535ms | 0.5ms | 9.0MB | 520ms | 0ms | cpython 3.13.2 |
python | 2.py | 638ms | 8.7ms | 8.6MB | 623ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 864ms | 6.5ms | 64.0MB | 843ms | 10ms | crystal 1.15.1 |
python | 1.py | 2242ms | 13ms | 202.7MB | 2123ms | 100ms | pypy 3.10.16 |
python | 1.py | timeout | 0.0ms | 93.6MB | 4953ms | 30ms | cpython 3.13.2 |
python | 1.py | timeout | 0.0ms | 130.4MB | 4930ms | 53ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 157ms | 3.4ms | 22.1MB | 143ms | 0ms | crystal 1.15.1 |
python | 1.py | 384ms | 3.7ms | 105.2MB | 320ms | 47ms | pypy 3.10.16 |
python | 1.py | 3229ms | 20ms | 37.2MB | 3203ms | 13ms | cpython 3.13.2 |
python | 1.py | timeout | 0.0ms | 48.4MB | 4963ms | 23ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 344ms | 4.8ms | 3.3MB | 333ms | 0ms | crystal 1.15.1 |
crystal | 1.cr | 345ms | 2.6ms | 3.3MB | 333ms | 0ms | crystal 1.15.1 |
python | 2.py | 1357ms | 7.5ms | 57.9MB | 1330ms | 10ms | pypy 3.10.16 |
python | 1.py | 2662ms | 11ms | 57.2MB | 2640ms | 10ms | pypy 3.10.16 |
python | 1.py | timeout | 0.0ms | 8.8MB | 4990ms | 0ms | cpython 3.13.2 |
python | 2.py | timeout | 0.0ms | 8.8MB | 4990ms | 0ms | cpython 3.13.2 |
python | 1.py | timeout | 0.0ms | 8.3MB | 4990ms | 0ms | pyston 3.8.12 |
python | 2.py | timeout | 0.0ms | 8.1MB | 4990ms | 0ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 38ms | 1.5ms | 3.1MB | 30ms | 0ms | crystal 1.15.1 |
crystal | 2.cr | 38ms | 0.5ms | 3.1MB | 30ms | 0ms | crystal 1.15.1 |
python | 2.py | 179ms | 2.5ms | 57.9MB | 157ms | 10ms | pypy 3.10.16 |
python | 1.py | 310ms | 12ms | 57.0MB | 287ms | 10ms | pypy 3.10.16 |
python | 1.py | 934ms | 14ms | 8.3MB | 920ms | 0ms | pyston 3.8.12 |
python | 2.py | 1326ms | 45ms | 8.1MB | 1313ms | 0ms | pyston 3.8.12 |
python | 1.py | 3035ms | 123ms | 8.6MB | 3020ms | 0ms | cpython 3.13.2 |
python | 2.py | 3207ms | 87ms | 8.8MB | 3197ms | 0ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 301ms | 3.6ms | 8.1MB | 290ms | 0ms | crystal 1.15.1 |
crystal | 1.cr | 440ms | 6.5ms | 42.3MB | 430ms | 0ms | crystal 1.15.1 |
python | 1.py | 2644ms | 5.0ms | 369.5MB | 2577ms | 57ms | pypy 3.10.16 |
python | 2.py | 3165ms | 30ms | 633.0MB | 2990ms | 157ms | pyston 3.8.12 |
python | 1.py | timeout | 0.0ms | 321.1MB | 4960ms | 30ms | cpython 3.13.2 |
python | 2.py | timeout | 0.0ms | 633.6MB | 4830ms | 153ms | cpython 3.13.2 |
python | 2.py | timeout | 0.0ms | 959.7MB | 4717ms | 270ms | pypy 3.10.16 |
python | 1.py | timeout | 0.0ms | 320.4MB | 4933ms | 50ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 77ms | 2.1ms | 4.4MB | 67ms | 0ms | crystal 1.15.1 |
crystal | 1.cr | 91ms | 3.7ms | 13.0MB | 80ms | 0ms | crystal 1.15.1 |
python | 1.py | 554ms | 4.7ms | 135.2MB | 517ms | 23ms | pypy 3.10.16 |
python | 2.py | 754ms | 4.9ms | 164.2MB | 710ms | 27ms | pyston 3.8.12 |
python | 1.py | 1144ms | 17ms | 86.0MB | 1117ms | 10ms | pyston 3.8.12 |
python | 2.py | 1460ms | 5.5ms | 164.8MB | 1417ms | 30ms | cpython 3.13.2 |
python | 2.py | 1589ms | 53ms | 290.2MB | 1500ms | 77ms | pypy 3.10.16 |
python | 1.py | 2736ms | 37ms | 86.8MB | 2710ms | 10ms | cpython 3.13.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 1886ms | 42ms | 6.2MB | 1853ms | 17ms | crystal 1.15.1 |
python | 4.py | 1912ms | 9.2ms | 8.9MB | 1870ms | 27ms | pyston 3.8.12 |
python | 4.py | 1956ms | 14ms | 9.3MB | 1890ms | 47ms | cpython 3.13.2 |
python | 4.py | 2197ms | 12ms | 89.4MB | 2153ms | 30ms | pypy 3.10.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 4.py | 453ms | 3.4ms | 8.6MB | 443ms | 0ms | pyston 3.8.12 |
python | 4.py | 463ms | 0.7ms | 9.1MB | 450ms | 0ms | cpython 3.13.2 |
crystal | 1.cr | 479ms | 12ms | 5.0MB | 463ms | 0ms | crystal 1.15.1 |
python | 4.py | 551ms | 4.4ms | 83.8MB | 517ms | 20ms | pypy 3.10.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 3792ms | 11ms | 4.5MB | 3783ms | 0ms | crystal 1.15.1 |
python | 8.py | timeout | 0.0ms | 14.8MB | 30ms | 10ms | cpython 3.13.2 |
python | 8.py | timeout | 0.0ms | 95.8MB | 803ms | 87ms | pypy 3.10.16 |
python | 8.py | timeout | 0.0ms | 14.2MB | 40ms | 10ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 952ms | 1.2ms | 4.3MB | 940ms | 0ms | crystal 1.15.1 |
python | 8.py | timeout | 0.0ms | 14.3MB | 47ms | 13ms | cpython 3.13.2 |
python | 8.py | timeout | 0.0ms | 96.3MB | 1323ms | 190ms | pypy 3.10.16 |
python | 8.py | timeout | 0.0ms | 13.6MB | 63ms | 20ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 248ms | 11ms | 3.8MB | 237ms | 0ms | crystal 1.15.1 |
python | 8-m.py | 1978ms | 5.9ms | 93.1MB | 6363ms | 257ms | pypy 3.10.16 |
python | 8.py | timeout | 0.0ms | 14.0MB | 90ms | 17ms | cpython 3.13.2 |
python | 8.py | timeout | 0.0ms | 13.2MB | 130ms | 40ms | pyston 3.8.12 |