Current benchmark data was generated on Wed Feb 08 2023, 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 | 1922ms | 8.8ms | 217.4MB | 1770ms | 137ms | pypy 3.9.16 |
crystal | 1.cr | 2438ms | 1.7ms | 64.3MB | 2393ms | 23ms | crystal 1.7.2 |
python | 1.py | timeout | 0.0ms | 40.8MB | 4963ms | 17ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 40.3MB | 4950ms | 27ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 148ms | 2.4ms | 74.3MB | 113ms | 13ms | pypy 3.9.16 |
crystal | 1.cr | 185ms | 11ms | 11.0MB | 167ms | 0ms | crystal 1.7.2 |
python | 1.py | 776ms | 2.6ms | 11.9MB | 753ms | 7ms | pyston 3.8.12 |
python | 1.py | 1144ms | 6.2ms | 12.5MB | 1120ms | 3ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 1472ms | 22ms | 227.4MB | 1350ms | 107ms | pypy 3.9.16 |
crystal | 1.cr | 2418ms | 41ms | 20.3MB | 2357ms | 37ms | crystal 1.7.2 |
python | 1.py | timeout | 0.0ms | 20.1MB | 4973ms | 7ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 17.1MB | 4977ms | 3ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 136ms | 1.4ms | 7.2MB | 120ms | 3ms | crystal 1.7.2 |
python | 1.py | 312ms | 5.3ms | 87.6MB | 267ms | 27ms | pypy 3.9.16 |
python | 1.py | 913ms | 1.0ms | 19.9MB | 897ms | 3ms | cpython 3.11.2 |
python | 1.py | 989ms | 2.8ms | 16.9MB | 973ms | 0ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 95ms | 7.6ms | 6.4MB | 80ms | 3ms | crystal 1.7.2 |
python | 1.py | 706ms | 5.1ms | 78.4MB | 660ms | 27ms | pypy 3.9.16 |
python | 1.py | 1670ms | 7.4ms | 10.1MB | 1657ms | 0ms | cpython 3.11.2 |
python | 1.py | 2754ms | 4.2ms | 9.6MB | 2730ms | 3ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 32ms | 0.7ms | 5.3MB | 20ms | 0ms | crystal 1.7.2 |
python | 1.py | 196ms | 1.0ms | 73.2MB | 163ms | 13ms | pypy 3.9.16 |
python | 1.py | 310ms | 1.7ms | 9.4MB | 297ms | 3ms | cpython 3.11.2 |
python | 1.py | 482ms | 2.3ms | 8.9MB | 463ms | 3ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 873ms | 17ms | 3.1MB | 757ms | 100ms | crystal 1.7.2 |
crystal | 1.cr | 1124ms | 3.1ms | 14.6MB | 967ms | 137ms | crystal 1.7.2 |
python | 5-m.py | 3319ms | 2874ms | 76.1MB | 6847ms | 1390ms | pypy 3.9.16 |
python | 1.py | 3477ms | 32ms | 84.7MB | 3433ms | 23ms | pypy 3.9.16 |
python | 5-m.py | 3960ms | 31ms | 12.5MB | 5733ms | 1390ms | pyston 3.8.12 |
python | 1.py | 4684ms | 24ms | 7.9MB | 4667ms | 0ms | pyston 3.8.12 |
python | 5-m.py | 4713ms | 13ms | 13.6MB | 6807ms | 1347ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 8.6MB | 4977ms | 3ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 91ms | 0.9ms | 3.2MB | 73ms | 7ms | crystal 1.7.2 |
crystal | 1.cr | 117ms | 0.6ms | 4.5MB | 90ms | 17ms | crystal 1.7.2 |
python | 1.py | 425ms | 2.0ms | 73.7MB | 383ms | 23ms | pypy 3.9.16 |
python | 5-m.py | 479ms | 2.6ms | 12.6MB | 630ms | 173ms | pyston 3.8.12 |
python | 1.py | 495ms | 15ms | 7.9MB | 480ms | 0ms | pyston 3.8.12 |
python | 5-m.py | 559ms | 1.6ms | 13.5MB | 737ms | 167ms | cpython 3.11.2 |
python | 1.py | 715ms | 1.6ms | 8.7MB | 700ms | 0ms | cpython 3.11.2 |
python | 5-m.py | 932ms | 8.4ms | 76.0MB | 1000ms | 530ms | pypy 3.9.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 2.6ms | 0.5ms | 3.0MB | 0ms | 0ms | crystal 1.7.2 |
python | 1.py | 15ms | 0.7ms | 7.3MB | 10ms | 0ms | pyston 3.8.12 |
python | 1.py | 16ms | 1.3ms | 8.5MB | 10ms | 0ms | cpython 3.11.2 |
python | 1.py | 39ms | 0.9ms | 52.8MB | 12ms | 12ms | pypy 3.9.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 1999ms | 21ms | 33.2MB | 1513ms | 1027ms | pyston 3.8.12 |
python | 1.py | 2432ms | 32ms | 31.7MB | 1927ms | 1063ms | cpython 3.11.2 |
crystal | 1.cr | 3606ms | 81ms | 193.5MB | 693ms | 417ms | crystal 1.7.2 |
python | 1.py | timeout | 0.0ms | 123.9MB | 3880ms | 1013ms | pypy 3.9.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 1.py | 444ms | 7.4ms | 27.9MB | 337ms | 183ms | pyston 3.8.12 |
python | 1.py | 486ms | 14ms | 24.9MB | 383ms | 177ms | cpython 3.11.2 |
python | 1.py | 1219ms | 33ms | 95.5MB | 953ms | 227ms | pypy 3.9.16 |
crystal | 1.cr | 1299ms | 5.5ms | 43.4MB | 73ms | 63ms | crystal 1.7.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 0-unsafe.cr | 69ms | 3.1ms | 3.0MB | 57ms | 0ms | crystal 1.7.2 |
crystal | 1.cr | 113ms | 1.8ms | 3.0MB | 100ms | 0ms | crystal 1.7.2 |
python | 2.py | 284ms | 4.9ms | 70.9MB | 253ms | 13ms | pypy 3.9.16 |
python | 1.py | 313ms | 4.7ms | 72.0MB | 270ms | 27ms | pypy 3.9.16 |
python | 1.py | 1120ms | 2.0ms | 9.0MB | 1107ms | 0ms | pyston 3.8.12 |
python | 2.py | 1293ms | 9.6ms | 8.7MB | 1273ms | 3ms | pyston 3.8.12 |
python | 1.py | 1484ms | 19ms | 9.4MB | 1467ms | 0ms | cpython 3.11.2 |
python | 2.py | 1699ms | 14ms | 9.1MB | 1687ms | 0ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 0-unsafe.cr | 195ms | 4.7ms | 3.0MB | 180ms | 0ms | crystal 1.7.2 |
crystal | 1.cr | 324ms | 1.4ms | 3.0MB | 310ms | 0ms | crystal 1.7.2 |
python | 2.py | 667ms | 16ms | 71.1MB | 630ms | 23ms | pypy 3.9.16 |
python | 1.py | 711ms | 2.5ms | 72.3MB | 680ms | 13ms | pypy 3.9.16 |
python | 2-m.py | 3295ms | 2854ms | 9.2MB | 4943ms | 0ms | cpython 3.11.2 |
python | 1.py | 3305ms | 23ms | 9.0MB | 3287ms | 0ms | pyston 3.8.12 |
python | 2.py | 3823ms | 41ms | 8.6MB | 3810ms | 0ms | pyston 3.8.12 |
python | 1.py | 4427ms | 18ms | 9.3MB | 4410ms | 0ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 0-unsafe.cr | 36ms | 2.2ms | 2.9MB | 23ms | 0ms | crystal 1.7.2 |
crystal | 1.cr | 56ms | 0.1ms | 2.9MB | 47ms | 0ms | crystal 1.7.2 |
python | 2.py | 188ms | 6.7ms | 71.4MB | 157ms | 20ms | pypy 3.9.16 |
python | 1.py | 206ms | 1.7ms | 72.5MB | 170ms | 20ms | pypy 3.9.16 |
python | 1.py | 540ms | 9.0ms | 8.7MB | 527ms | 0ms | pyston 3.8.12 |
python | 2.py | 602ms | 4.0ms | 8.2MB | 583ms | 0ms | pyston 3.8.12 |
python | 1.py | 707ms | 4.4ms | 8.7MB | 693ms | 0ms | cpython 3.11.2 |
python | 2.py | 854ms | 5.2ms | 8.4MB | 837ms | 0ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 1790ms | 9.6ms | 64.3MB | 1750ms | 17ms | crystal 1.7.2 |
python | 1.py | 2976ms | 31ms | 230.6MB | 2797ms | 163ms | pypy 3.9.16 |
python | 1.py | timeout | 0.0ms | 92.9MB | 4933ms | 47ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 130.2MB | 4930ms | 50ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 320ms | 17ms | 22.1MB | 300ms | 7ms | crystal 1.7.2 |
python | 1.py | 453ms | 12ms | 149.9MB | 370ms | 63ms | pypy 3.9.16 |
python | 1.py | timeout | 0.0ms | 37.3MB | 4967ms | 17ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 41.4MB | 4967ms | 13ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 670ms | 3.5ms | 2.9MB | 657ms | 0ms | crystal 1.7.2 |
crystal | 2.cr | 694ms | 9.6ms | 3.0MB | 683ms | 0ms | crystal 1.7.2 |
python | 2.py | 2414ms | 33ms | 71.4MB | 2383ms | 17ms | pypy 3.9.16 |
python | 1.py | 4354ms | 39ms | 70.3MB | 4317ms | 17ms | pypy 3.9.16 |
python | 1.py | timeout | 0.0ms | 8.4MB | 4983ms | 0ms | cpython 3.11.2 |
python | 2.py | timeout | 0.0ms | 8.6MB | 4987ms | 0ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 8.4MB | 4983ms | 3ms | pyston 3.8.12 |
python | 2.py | timeout | 0.0ms | 7.9MB | 4973ms | 7ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 73ms | 1.3ms | 3.0MB | 60ms | 0ms | crystal 1.7.2 |
crystal | 2.cr | 79ms | 4.1ms | 2.9MB | 70ms | 0ms | crystal 1.7.2 |
python | 2.py | 309ms | 3.3ms | 71.0MB | 277ms | 17ms | pypy 3.9.16 |
python | 1.py | 499ms | 4.8ms | 70.3MB | 460ms | 20ms | pypy 3.9.16 |
python | 1.py | 1397ms | 19ms | 8.3MB | 1380ms | 0ms | pyston 3.8.12 |
python | 2.py | 1891ms | 7.9ms | 7.9MB | 1873ms | 3ms | pyston 3.8.12 |
python | 1.py | 3917ms | 146ms | 8.4MB | 3903ms | 0ms | cpython 3.11.2 |
python | 2.py | 4128ms | 39ms | 8.6MB | 4107ms | 0ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 513ms | 4.0ms | 7.8MB | 500ms | 0ms | crystal 1.7.2 |
crystal | 1.cr | 1150ms | 55ms | 41.9MB | 1130ms | 7ms | crystal 1.7.2 |
python | 1.py | timeout | 0.0ms | 321.1MB | 4883ms | 97ms | cpython 3.11.2 |
python | 2.py | timeout | 0.0ms | 633.7MB | 4543ms | 437ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 382.8MB | 4817ms | 160ms | pypy 3.9.16 |
python | 2.py | timeout | 0.0ms | 984.6MB | 4567ms | 407ms | pypy 3.9.16 |
python | 1.py | timeout | 0.0ms | 320.4MB | 4907ms | 73ms | pyston 3.8.12 |
python | 2.py | timeout | 0.0ms | 633.0MB | 4470ms | 513ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 2.cr | 117ms | 2.4ms | 4.1MB | 103ms | 0ms | crystal 1.7.2 |
crystal | 1.cr | 175ms | 1.0ms | 12.9MB | 160ms | 0ms | crystal 1.7.2 |
python | 1.py | 1274ms | 13ms | 207.0MB | 1197ms | 60ms | pypy 3.9.16 |
python | 2.py | 1351ms | 12ms | 164.3MB | 1267ms | 73ms | pyston 3.8.12 |
python | 2.py | 2045ms | 5.7ms | 164.8MB | 1947ms | 80ms | cpython 3.11.2 |
python | 2.py | 2170ms | 38ms | 210.3MB | 2020ms | 130ms | pypy 3.9.16 |
python | 1.py | 2641ms | 32ms | 86.0MB | 2583ms | 40ms | pyston 3.8.12 |
python | 1.py | 4357ms | 11ms | 86.7MB | 4297ms | 40ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
python | 4.py | 2886ms | 4.0ms | 9.0MB | 2840ms | 27ms | pyston 3.8.12 |
python | 4.py | 2892ms | 0.9ms | 9.5MB | 2843ms | 33ms | cpython 3.11.2 |
python | 4.py | 2991ms | 35ms | 125.0MB | 2913ms | 57ms | pypy 3.9.16 |
crystal | 1.cr | 3260ms | 137ms | 7.4MB | 3223ms | 20ms | crystal 1.7.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 703ms | 27ms | 5.8MB | 677ms | 10ms | crystal 1.7.2 |
python | 4.py | 705ms | 18ms | 9.1MB | 687ms | 0ms | cpython 3.11.2 |
python | 4.py | 713ms | 23ms | 8.8MB | 700ms | 0ms | pyston 3.8.12 |
python | 4.py | 774ms | 10ms | 77.2MB | 730ms | 23ms | pypy 3.9.16 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 2759ms | 1.3ms | 174.0MB | 2687ms | 57ms | crystal 1.7.2 |
python | 1.py | 3909ms | 20ms | 273.0MB | 3747ms | 143ms | pypy 3.9.16 |
python | 1.py | timeout | 0.0ms | 106.7MB | 4930ms | 57ms | cpython 3.11.2 |
python | 1.py | timeout | 0.0ms | 108.8MB | 4920ms | 60ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 287ms | 1.0ms | 32.1MB | 260ms | 10ms | crystal 1.7.2 |
python | 1.py | 537ms | 4.5ms | 95.5MB | 483ms | 40ms | pypy 3.9.16 |
python | 1.py | 932ms | 27ms | 30.5MB | 890ms | 23ms | pyston 3.8.12 |
python | 1.py | 982ms | 2.5ms | 31.9MB | 937ms | 30ms | cpython 3.11.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | timeout | 0.0ms | 4.0MB | 4977ms | 3ms | crystal 1.7.2 |
python | 8.py | timeout | 0.0ms | 16.5MB | 60ms | 17ms | cpython 3.11.2 |
python | 8.py | timeout | 0.0ms | 98.9MB | 643ms | 93ms | pypy 3.9.16 |
python | 8.py | timeout | 0.0ms | 17.5MB | 57ms | 20ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 1847ms | 33ms | 3.7MB | 1837ms | 0ms | crystal 1.7.2 |
python | 8.py | timeout | 0.0ms | 14.3MB | 133ms | 20ms | cpython 3.11.2 |
python | 8.py | timeout | 0.0ms | 103.4MB | 1023ms | 183ms | pypy 3.9.16 |
python | 8.py | timeout | 0.0ms | 17.1MB | 150ms | 33ms | pyston 3.8.12 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
crystal | 1.cr | 466ms | 4.6ms | 3.6MB | 453ms | 0ms | crystal 1.7.2 |
python | 8-m.py | 4367ms | 34ms | 102.1MB | 7580ms | 460ms | pypy 3.9.16 |
python | 8.py | timeout | 0.0ms | 15.9MB | 243ms | 33ms | cpython 3.11.2 |
python | 8.py | timeout | 0.0ms | 17.1MB | 333ms | 63ms | pyston 3.8.12 |