[armedbear-devel] Maxima status: performance measurement
Robert Dodier
robert_dodier at yahoo.com
Mon Feb 1 15:44:34 UTC 2010
--- On Fri, 1/29/10, Erik Huelsmann <ehuels at gmail.com> wrote:
> Today, I ran Maxima through ABCL's profiler to see what's our current
> status. With our combined changes, we seem to have reduced the
> throughput time of the Maxima tests on my system from 2200 secs to
> roughly 1800 secs between October and now.
Great, thanks for the update.
Now that we seem to have squashed the special binding bugs,
maybe it's appropriate to think about making it run faster.
By the way I recently tested Maxima + ABCL on a Linux
box and found it about 3 times as slow as Clisp,
which in turn is about 3 times as slow as GCL
(which is the fastest Lisp for running Maxima from what
I know).
> These are the hotest spots now:
>
> 3.0 4352336 SIGN01
> 3.0 4354363 $SIGN
> 3.1 4531219 MEVALARGS
> 3.2 4633287 MREAD-RAW
> 3.2 4633902 MREAD
> 3.3 4740203 SIGN1
> 3.7 5402701 SIMPEXPT
> 4.4 6365392 $FLOAT
> 4.5 6469447 RECUR-APPLY
> 4.5 6521950 TEST-BATCH
> 5.8 8452081 SIMPLIFYA
> 8.4 12224550 NUD-CALL
> 11.3 16314266 DLSF
> 11.3 16362213 DLS
> 12.2 17658492 PRSMATCH
> 12.4 17982535 DGRF
> 12.5 18054353 DGR
> 20.6 29854294 PARSE-INFIX
> 22.3 32246473 MEVAL*
> 22.4 32372076 MEVALN
> 54.5 78912363 LED-CALL
> 55.5 80291167 PARSE
> 59.5 86114793 MEVAL1
> 60.7 87813616 MEVAL
> 64.2 92947288 MHEADER
> 65.2 94346436 STREAM-NAME
> 65.2 94346559 INSTREAM-NAME
> 65.2 94346854 PATHNAME
> 65.2 94347835 ADD-LINEINFO
Hmm, I guess the first column = seconds elapsed and
second column = # function calls?
This seems to show that functions in the parser
(MHEADER and all the rest below that in the list)
are using more time than any others.
The code to paste debugging info into parsed
expressions (ADD-LINEINFO and friends) is more than
a little bit strange ... I wouldn't be surprised if
it could be improved in some ways.
Thanks for your help!
Robert Dodier
More information about the armedbear-devel
mailing list