3 ms·
You're talking about Ruby MRI? Not the original MRI, but YARV. For this particular program, the performance of different language interpreters is: MRI (Ruby 1
by bakery2k 10y ago
You're talking about Ruby MRI?
Not the original MRI, but YARV. For this particular program, the performance of different language interpreters is:
MRI (Ruby 1.8) < CPython 3.5 < CPython 2.7, PUC Lua 5.1/5.3 < YARV (Ruby 1.9/2.3) < LuaJIT -joff
There is a factor of ~5x between the slowest and fastest of these interpreters. LuaJIT with the JIT enabled is ~10x faster than even its own interpreter.
- etiene 10y agoDoesn't that also use a JIT? Why are you comparing benchmarks versus PUC Lua instead of versus LuaJIT??
- bakery2k 10y agoDoesn't that also use a JIT? YARV? No. YARV is the current official Ruby interpreter - it replaced MRI in this role from Ruby 1.9 onwards.
- etiene 10y agoWeird... Sasada's presentation mentions a JIT, which is why I was confused. (http://www.atdot.net/yarv/rc2006_sasada_yarv_on_rails.pdf http://www.atdot.net/yarv/rc2006_sasada_yarv_on_rails.pdf page 15)
- jnbiche 10y agoWow, I'm not a Rubyist, so I had no idea about this. You all not only developed a faster, compliant interpreter, but Matz actually replaced MRI with an interpreter developed by a third-party as the reference Ruby interpreter? Huge props to him and the Ruby community for that. Unfortunately, as a Pythonista (although one whose paid work is mostly in JS these days), I can't imagine that happening in the Python community (not to our credit). Too much ego wrapped up in CPython.