Learning idiomatic Elixir - Q1

Benchmarking is quite simple. You download the gist file I posted above and then run elixir benchmark.exs. :slight_smile: That’s it.

Name                    ips        average  deviation         median         99th %
100phlecs            2.88 M      347.02 ns  ±8200.44%         250 ns         417 ns
wanton7              2.47 M      405.02 ns  ±4260.02%         334 ns         500 ns
nikiiv2              1.57 M      635.55 ns  ±4499.36%         458 ns         875 ns
tomekowal            1.31 M      762.29 ns  ±2640.36%         667 ns         917 ns
nikiiv               1.29 M      777.10 ns  ±3606.33%         625 ns         917 ns
eksperimental        0.22 M     4460.79 ns   ±200.29%        4083 ns    11791.46 ns
stefanluptak       0.0737 M    13571.83 ns    ±26.25%       12917 ns       26416 ns

Comparison:
100phlecs            2.88 M
wanton7              2.47 M - 1.17x slower +58.00 ns
nikiiv2              1.57 M - 1.83x slower +288.53 ns
tomekowal            1.31 M - 2.20x slower +415.26 ns
nikiiv               1.29 M - 2.24x slower +430.07 ns
eksperimental        0.22 M - 12.85x slower +4113.77 ns
stefanluptak       0.0737 M - 39.11x slower +13224.80 ns

Memory usage statistics:

Name             Memory usage
100phlecs             2.02 KB
wanton7               0.56 KB - 0.28x memory usage -1.46094 KB
nikiiv2               0.79 KB - 0.39x memory usage -1.23438 KB
tomekowal             6.64 KB - 3.28x memory usage +4.62 KB
nikiiv                6.66 KB - 3.29x memory usage +4.63 KB
eksperimental        28.74 KB - 14.20x memory usage +26.72 KB
stefanluptak         10.99 KB - 5.43x memory usage +8.97 KB