Want Better Perl 6 Sooner? Write Rakudo Benchmarks

Update: Your author disclaims the contents of this post and leaves it here only as a historical curiosity.

Last July, I wrote An
Accurate Comparison of Perl 5 and Rakudo Star. Despite almost seventeen
years of tuning and optimization, there's no huge difference between Perl 5's
startup time and memory consumption when compared feature-by-feature to Rakudo
Star.

The same holds true today. In fact, Rakudo's startup time in my most recent measurements is better than Perl 5.12.2—and bigger performance improvements are coming to Parrot in the next few months.

Perl 5.12.2's startup time, loading all of those modules exceptParrot::Embed is 0.627 seconds at best. Rakudo's startup time is 0.441 seconds at best. That means Rakudo starts 30% faster than a similarly configured Perl 5.

Rakudo's memory use is still higher; from the REPL, it uses 176,780/130,968
KB virtual and resident memory. Perl 5's usage is 141,204/47,884 at the
debugger. Memory parsimony is probably the next area of optimization for Parrot
and Rakudo.

Of course the Rakudo and Parrot developers can't optimize for your
needs without knowing your needs. Improving synthetic benchmarks may or may not
improve real programs. You can help these efforts by writing real programs, by
testing real programs, and by finding areas where real programs seem slower or
more memory hungry than they should. In particular, I believe the
parsing component of the Rakudo ecosystem has several undiscovered
bottlenecks which could yield notable improvements.