All Odin benchmarks

Current benchmark data was generated on Thu May 04 2023, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][2 cores] Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz (Model 85)

* -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.)

binarytrees

Input: 18

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 4703ms 53ms 49.5MB 4670ms 17ms odin 2023

Input: 15

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 399ms 1.4ms 7.5MB 383ms 0ms odin 2023

helloworld

Input: QwQ

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 3.2ms 0.7ms 1.7MB 0ms 0ms odin 2023

knucleotide

Input: 2500000_in

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1-m.odin 979ms 28ms 46.2MB 1670ms 60ms odin 2023

Input: 250000_in

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 218ms 2.7ms 31.1MB 273ms 30ms odin 2023

lru

Input: 1000 1000000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 276ms 9.7ms 1.3MB 260ms 0ms odin 2023

Input: 1000 3000000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 811ms 7.7ms 1.3MB 800ms 0ms odin 2023

Input: 100 500000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 112ms 0.3ms 1.2MB 97ms 0ms odin 2023

mandelbrot

Input: 5000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 1450ms 0.8ms 4.7MB 1433ms 0ms odin 2023

Input: 1000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 63ms 1.8ms 1.8MB 50ms 0ms odin 2023

nbody

Input: 5000000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1-i.odin 570ms 14ms 1.2MB 557ms 0ms odin 2023
1.odin 2350ms 1.3ms 1.3MB 2340ms 0ms odin 2023

Input: 500000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1-i.odin 59ms 0.7ms 1.3MB 50ms 0ms odin 2023
1.odin 239ms 2.2ms 1.2MB 230ms 0ms odin 2023

nsieve

Input: 12

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
2.odin 1063ms 3.9ms 6.4MB 1040ms 0ms odin 2023
1.odin 1447ms 50ms 40.6MB 1413ms 17ms odin 2023

Input: 10

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 131ms 1.2ms 11.3MB 113ms 0ms odin 2023
2.odin 255ms 1.7ms 2.9MB 247ms 0ms odin 2023

spectral-norm

Input: 8000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 3555ms 0.9ms 2.8MB 3537ms 0ms odin 2023

Input: 4000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 891ms 0.4ms 2.1MB 880ms 0ms odin 2023

Input: 2000

code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
1.odin 226ms 0.1ms 1.8MB 217ms 0ms odin 2023