Sebastian Riedel wrote:

Leopold Toetsch wrote:

Sebastian Riedel <[EMAIL PROTECTED]> wrote:
                     ^^^^
                  objective-ook? - SCNR

:)



Attached is a quick'n dirty parrotbench, instead of a complicated
test harness it uses bash to make time measurements, so that
new languages are very simple to add.


bash isn't really available on all systems, so it should better use one
of the time functions.


Attached is a new version using times()



Currently it's just a proof of concept but if you like it i will make
a better version with pretty printing, extended reports and stuff.


Good. Please have a look at lib/Parrot/Test.pm:_run_command and
Config.pm for executable names. Maybe a config file could simplify the
task (user can put in executable names once).


Working on it

The attached version should do most of the things you wanted.

[EMAIL PROTECTED]:~/parrot$ tools/dev/parrotbench.pl -regex oo -conf ../parrotbench.conf
parrot perl python ruby
oo1 100% 39% 23% -
oo2 100% 40% 22% -

I studied the config system, and now i wonder if it would make sense
to write a configure step to probe for enemies, or is that overkill?




Here's an example run:


$ perl tools/dev/parrotbench.pl -regex '(oo|str|mops).*' \
   -parrot='./parrot -j' -perl=`which perl` -python=`which python` \
   -ruby=`which ruby`
       parrot  perl    python  ruby
mops    0.260   96.140  9.830   9.860
oo1     1.700   0.820   0.510   -
oo2     8.410   4.60    2.400   -
stress  0.980   0.640   -       -
stress1 13.970  12.400  -       -
stress2 1.670   2.450   -       -
stress3 10.540  -       -       -

(Python and Ruby mops are running 1/10th of loops - files linked into
examples/benchmarks)

Nice. Yes please.

Any one out there, who speaks ruby and can translate tests, for which
we have a '.pl' file?.

Thanks,
leo



Cheers,
Sebastian

Cheers, Sebastian

Attachment: parrotbench.patch.gz
Description: application/tgz



Reply via email to