bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: push parser implemenation


From: Akim Demaille
Subject: Re: push parser implemenation
Date: Fri, 7 Apr 2006 16:26:37 +0200


Le 7 avr. 06 à 16:04, Bob Rossi a écrit :
With -O2:

Benchmark: timing 50 iterations of push-pure, push-push, push-yacc,
yacc-pure, yacc-yacc...
push-pure: 30 wallclock secs (20.94 cusr +  0.88 csys = 21.82 CPU) @
2.29/s (n=50)
push-push: 34 wallclock secs (22.96 cusr +  0.95 csys = 23.91 CPU) @
2.09/s (n=50)
push-yacc: 30 wallclock secs (21.47 cusr +  0.91 csys = 22.38 CPU) @
2.23/s (n=50)
yacc-pure: 26 wallclock secs (17.78 cusr +  0.85 csys = 18.63 CPU) @
2.68/s (n=50)
yacc-yacc: 25 wallclock secs (18.50 cusr +  0.85 csys = 19.35 CPU) @
2.58/s (n=50)
            Rate push-push push-yacc push-pure yacc-yacc yacc-pure
push-push 2.09/s        --       -6%       -9%      -19%      -22%
push-yacc 2.23/s        7%        --       -3%      -14%      -17%
push-pure 2.29/s       10%        3%        --      -11%      -15%
yacc-yacc 2.58/s       24%       16%       13%        --       -4%
yacc-pure 2.68/s       28%       20%       17%        4%        --


I still don't know how to read those charts. I would assume that more
'wallclock' seems like it's slower. However, the 'Rate' makes the push
parser seem the fastest! What does that mean?

Rate is the number of times the test can be run in one second. The higher, the better. This table says stock yacc.c is 16% faster than your yacc.c in the default mode.

The grammar is the calculator's, and it's computing values. I guess most parsers do execute more demanding actions... I wouldn't really be able to judge whether we can drop 15% performances like this.


Is there an easy script I can run on my Linux/AMD machine to generate
these results?

Yes, the script I had attached. Here it is with the chidren stuff fixed.

Attachment: bench.pl
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]