Rakudo takes a significant speed hit when in its own HLL
Patrick R. Michaud
pmichaud at pobox.com
Tue May 19 20:35:31 UTC 2009
I'm sending this to parrot-dev for now, but can also turn it into
a ticket. This past week Tene++ and I finished moving Rakudo into
its own HLL namespace, but we appear to take a huge performance hit
by doing so. As an example, running the "make spectest" target on
my machine takes 33m13 when Rakudo is running in the 'parrot' HLL,
but takes 50m26 when in the 'perl6' HLL. (Yes, that's 50% slower.)
Here's a much smaller benchmark that also demonstrates the difference
on my machine:
$ cat z
my $i = 1;
while $i <= 5000 { $i++; }
$ time ./perl6-parrot z
real 0m2.618s
user 0m2.532s
sys 0m0.076s
$ time ./perl6-hll z
real 0m5.826s
user 0m5.636s
sys 0m0.172s
$
Switching rakudo from one HLL to the other is fairly straightforward
right now -- simply change line 13 of perl6.pir from 'perl6' to
'parrot' and rebuild.
Any help or clues appreciated.
Pm
More information about the parrot-dev
mailing list