|
From: sfeam (E. Merritt) <eam...@gm...> - 2013-08-25 23:51:20
|
On Sunday, 25 August 2013, Juhász Péter wrote:
> For what it's worth, I did some informal testing on the performance of
> various versions with a synthetic test:
>
> perl -le 'print "set term $TERM";for(1..5000){print "plot x,
> ".(sin($_/1000))."*x; $PAUSE"}' > fos; time $GNUPLOT fos
>
> where $TERM was either wxt or x11, $PAUSE either "pause 0.005 or
> nothing, and $GNUPLOT an old 4.5 version from 2011, cvs from 2013-08-22,
> and current cvs.
>
> Times are in seconds.
>
> wxt wxt x11(*) x11
> nopause pause nopause pause
> 4.5 10.483 16.488 7.326 6.166
> cvs/23 9.595 16.645 3.597 6.410
> cvs/25 12.387 19.387 9.969 8.665
I get quite different results using your script.
Loop variable set to 1000
no pause or "pause 0.005"
average of two timing runs
4.4.4 4.6.3 cvs 25 Aug
=====================
wxt nopause 8.04 8.00 8.88
wxt pause 0.005 11.33 11.66 13.82
x11 nopause 8.78 8.47 6.37
x11 pause 0.005 8.80 8.50 8.04
qt nopause n/a 4.52 4.39
qt pause 0.005 n/a 6.11 8.49
Note: same script with pause 0.050 (1/20 sec) takes essentially
59 seconds whatever the terminal type.
1000 / 20 = 50 seconds, so I think the timer is doing exactly
what it is asked for.
The only thing I find surprising or unexpected here is that
qt is faster than both wxt and x11.
X11 with no pause is slightly faster than in earlier versions,
but I think that is likely due to Dima Kogan's speed optimizations.
> So it looks that yesterday's modifications do incur some performance
> penalty, both with and without pauses.
I can try again tomorrow on a different machine, but so far
I'm not seeing that.
Ethan
|