Today, Paolo Amoroso amoroso@mclink.it wrote:
I tried doing fresh--i.e. with no previous fasl files--builds from source with both the McCLIM stock system definition in system.lisp, and yours in mcclim.asd. In the former case I evaluated:
(time (asdf:operate 'asdf:load-op :clim-clx-user))
with the following results:
; Evaluation took: ; 105.52 seconds of real time ; 98.77198 seconds of user run time ; 5.588151 seconds of system run time ; 295,305,900,480 CPU cycles ; [Run times include 17.97 seconds GC run time] ; 76 page faults and ; 2,846,968,944 bytes consed. ; NIL
With your system definition I did two fresh builds:
(time (asdf:operate 'asdf:load-op :mcclim))
with these results:
; Evaluation took: ; 114.92 seconds of real time ; 107.795616 seconds of user run time ; 6.215055 seconds of system run time ; 321,613,490,332 CPU cycles ; [Run times include 19.19 seconds GC run time] ; 0 page faults and ; 2,926,042,568 bytes consed. ; NIL
; Evaluation took: ; 105.63 seconds of real time ; 100.02179 seconds of user run time ; 5.436173 seconds of system run time ; 295,608,660,228 CPU cycles ; [Run times include 18.29 seconds GC run time] ; 0 page faults and ; 2,927,419,672 bytes consed. ; NIL
I use the latest McCLIM CVS sources with CMUCL Snapshot 2005-01 under Slackware Linux 10.0, running on a 2.8 GHz Pentium IV with 2 GB of RAM.
So it worked (-:
Of course, with a fresh build, there won't be any performance improvements in build time - quite to the contrary, the additional dependency information adds a bit of overhead.
The real improvements happen if you happen to touch just one file in an already-built McCLIM installation, like setf-star.lisp that I mentioned (requires 14 fewer files to be rebuilt, compared to system.lisp), or repaint.lisp (7 fewer files).
By the way, I have put up an asdf-installable tarball of yesterday's McCLIM CVS checkout (non-anonymous CVS, though).
Testers, get it via ASDF-INSTALL by running:
(asdf-install:install "http://boinkor.net/lisp/mcclim/mcclim-2005-01-31.tar.gz")
on your favorite lisp REPL. One pitfall: remove old links to system.lisp from your asdf:*central-registry* directories. I had to remove symlinks called clim.asd, clim-clx.asd, clim-clx-user.asd and clim-listener.asd.
Nice test case after you installed it:
(asdf:oos 'asdf:load-op :clim-examples) (clim-demo::run-test 'clim-demo::method-browser)
and enter clim:note-sheet-grafted (-:
Cheers,