Fork me on GitHub

MoarVM 2014.07

On Stack Replacement, for optimizing hot loops on the fly. Improved inlining and dead code elimination. Native calling improvements, with pointer manipulation and casts. Significant improvements to string performance in a number of use cases. Asynchrony and threading bug fixes. And more!


What is MoarVM?

Short for "Metamodel On A Runtime", MoarVM is a virtual machine built especially for Rakudo Perl 6 and the NQP Compiler Toolchain. While still being under very active development, MoarVM already stands out amongst the various Rakudo and NQP compilation targets by typically:

  • Running the Perl 6 specification test suite in the least time
  • Passing more of the Perl 6 specification tests than Rakudo Perl 6 on other backends
  • Having the lowest memory usage
  • Having the best startup time
  • Being fastest to build both NQP and Rakudo - and thus in theory your Perl 6 and NQP programs too!

For long-running workloads where startup time doesn't matter, or when you need tried-and-tested, mature threading support, Rakudo on the JVM is a better bet; its JIT compiler gets to work and makes quite a difference. For maximum module coverage, Rakudo on Parrot may have a small edge, but that is changing fast.