Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • by Matts (1087) on 2002.05.18 11:22 (#8542) Journal
    Neat. What's the performance like? Any stats yet?
    • Re:Performance (Score:3, Interesting)

      There's some numbers in the May issue of The Perl Review. Off the top of my head, for equivalent things we see about a 4-5x speed increase over perl 5. (In trivial cases, with the JIT, we can see up to a 238x speed increase, but I wouldn't count on that for many things... :) Not counting regexes, where perl 5's Engine of Ultimate Evil wipes the floor with us. We're working on that, though.
      • Re:Performance (Score:3, Interesting)

        I meant specifically for hash and array access, setting, extending, etc. I've seen the overall performance figures for Parrot before.
        • Those numbers I don't have yet. This is just first cut stuff, and there's not been any tuning of, well, anything. (Though the numbers could be really good for all I know...)
        • Ran a quick test for hash times. Fetch only, this:

          $i = 1_000_000;
          do {
                $bar = $foo{'foo'};
          } while ($i);

          takes 2.21 sec usertime for perl 5, 1.4 sec usertime for parrot. The code needs some optimization still, as it's a bit slower than I'd like, but it's not bad for a first go.
          • Nice job.

            I assume that's also without JIT? And JIT would speed up the loop, I suspect.
            • Yup, that's without the JIT, since we don't yet have one for OS X. While the JIT may speed things up, my bet is it won't speed things up that much given that about 90% of the time for Parrot's spent in the hash variable's vtable. I'd expect some reworking of the hash code to be where the bigger win would be.