> > Or am I missing something about the way Parrot is handling integer > > values ? > > fib is one of the few benchmarks that currently performs very badly due > to huge function call overhead (mainly L2 cache misses). I'm currently > working on a different call scheme, which eventually gets rid of these > problems.
Even with such problems, I was thinking that Parrot JIT will be faster than NekoVM which does not have a JIT yet. > For reasonable performance comparisons you would also compile an > optimized executable: > $ make realclean > $ perl Configure.pl --optimize > $ make I don't run sources from Parrot , I have PxPerl installed. > To see, if JIT really works (and how fast it is) > $ ./parrot -j examples/assembly/mops.pasm I get the following results : Elapsed time: 3.281000 M op/s: 60.957023 Looks like it means that JIT is not active. How can I activate it ? > The MOPS test shows the theoretical maximum of opcode dispatch, which > is one hardware CPU instruction / parrot instruction for JIT on i386 > and ppc. You can evaluate different run loops: > > $ ./parrot -S ... # switched core I get : M op/s: 101.574410 > $ ./parrot -C ... # direct threaded CGP core This one give the following error : Couldn't find init_func for core 6 > ... > In examples/mops you find more mops tests for different HLLs. So parrot have several version of the interpreter/jit embedded ? What are the current choices ? Thanks for your answers, Best, Nicolas