|Paolo Amoroso's weblog. Main interests: Lisp, astronomy (Moon), space exploration (Apollo and early manned programs)||Calendar of past entries | Related links|
Update on McCLIM's Beagle backend
Duncan Rose continues his work on McCLIM's Beagle backend for
OpenMCL with Cocoa. He moved around the window
flushing code in an attempt to improve performance (not completely
successful, it appears), played with
added modifier event code, did some initial steps towards running both
a CLX and a Beagle port at the same time, and a few more tweaks.
I am not a Mac user and I don't have access to OpenMCL. But I report this here because the information is buried in CVS commit logs, and the McCLIM mailing list is not archived. More precisely, the list archive is currently broken, and I didn't get any feedback on my proposal of subscribing Gmane.
In the file
Backends/beagle/README.txt of McCLIM's source
tree, Duncan writes:
KNOWN LIMITATIONS / TODO LIST
1. Speed! The current implementation is __slow__, especially when there is a large output history. Paolo's speed test takes 26 seconds and conses 16MB on my (admittedly slow) iMac compared to 1.5 seconds on a 2.4GHz Pentium IV and unknown (to me) consing.
What he generously calls a "speed test" is just the crude McCLIM stress test I described in the August 19 entry, i.e. making the CLIM listener draw the complete class hierarchy in the running Lisp image. Here is a typical run, including consing information, on my machine (the 2.8 GHz Pentium IV with Debian Woody mentioned above by Duncan) with CMUCL 19a-pre3 and current McCLIM CVS sources:
(time (clim-listener::com-show-class-subclasses t))
; Evaluation took: ; 1.21 seconds of real time ; 1.16 seconds of user run time ; 0.05 seconds of system run time ; 3,383,178,120 CPU cycles ; [Run times include 0.27 seconds GC run time] ; 3 page faults and ; 35,963,632 bytes consed.
But this test probably compares apples and oranges -- no pun intended -- and I'm not sure how reproducible it is. The class hierarchies of Lisp images running on different architectures, Lisp systems, graphics backends, and loaded subsystems, are likely to be significantly different.
Still, the test gives McCLIM a good shake. And it may be fun to compare the overall shapes of such class hierarchy graphs.
|Copyright © 2004 by Paolo Amoroso
Created with BlogMax
|About Lisp | Practical Common Lisp (learn Lisp) | Planet Lisp (blog agregator) | Common Lisp Directory (software and resources) | Why Lisp?|