On Mon, Apr 14, 2008 at 10:07:14AM +0100, Alberto Simoes wrote:
> Bob Rogers wrote:
> >   From: Alberto Simoes <[EMAIL PROTECTED]>
> >   >    3.  A semi-log plot would be easier to interpret.
> >
> >   Smash tried a log plot, but it wasn't easier to interpret. I am not
> >   sure what is a semi-log plot.
> >
> >Logarithmic on the Y axis, linear on the X.  (There may be a better term
> >for this, but if so, I can't think of it right now.)
> 
> Oh. That was what we done. It is easier to read values. It is more 
> difficult to understand growing speed (derivative) just looking into it.

The derivative ("growing speed") of the curves in the bintree 
benchmark says more about the complexity of the underlying
algorithm than the efficiency of the various implementations.

In the case of the bintree benchmark, a log plot would make it
easier to see what is really happening.  The linear Y-axis makes 
it appear as though things get progressively worse for Parrot 
for larger tree heights, but the ratio of Parrot's performance
to the others seems to remain fairly constant -- i.e., Parrot
0.6.0 takes roughly twice as long as Perl 5 for this benchmark, 
for any input size.  Thus the relationship between the two should
look more linear than curved.

In fact, for all of the benchmarks that are based on increasing
number of runs it might be more useful to display the results as
performance ratio rather than report absolute times.  For example, 
we could (arbitrarily) pick Perl 5 as having a performance of 100 
for any given input size, and if Parrot takes twice as long at that
same input its score would be 200, if Python takes 3/4ths as long 
its score would be 75.  This would allow the graphs to highlight
the efficiency of the implementations rather than the inherent
complexity of the underlying algorithms.  Of course, if any of
the implementations started to show substantially improved/degraded
performance at some given input size, such a graph would show
that also.

Pm

Reply via email to