5 ms·
I used brainfuck interpreter https://github.com/Beariish/bolt/blob/main/examples/bf.bolt https://github.com/Beariish/bolt/blob/main/examples/bf.bolt vs lua / lu
by megapoliss 1y ago
I used brainfuck interpreter https://github.com/Beariish/bolt/blob/main/examples/bf.bolt https://github.com/Beariish/bolt/blob/main/examples/bf.bolt
vs lua / luajit implementations from https://github.com/kostya/benchmarks https://github.com/kostya/benchmarks
Just checked with nbody:
- still 10 times slower than luajit
- 2 times slower than luajit -joff
- but 20% faster than lua 5.4
- but uses 47 Mb RAM vs 2.5 Mb for lua/luajit
- beariish 1y agoI appreciate the followup here. The brainfuck interpreter isn't meant to be a benchmark notably, it's a naive implementation for the sake of the example. I did spot some poor code in the Bolt version of nbody that can be changed (the usage of `.each()` in the hot loop is creating loads of temporary iterators, that's the memory difference.) luajit -joff does perform better even with this change, but I observe closer to 15% than a 2x difference
- megapoliss 1y agofor nbody 500000 on my i5-9300H CPU @ 2.40GHz - 487.41 millis / 2364 kb ram for luajit -joff - 770.17 millis / 41712 kb ram for bolt 770.17 / 487.41 ~~ 1.58 cpu, not 2x, but not 15% either 41712 / 2364 ~~ 17.64 ram