[mcclim-devel] SBCL SLOW

Christophe Rhodes csr21 at cam.ac.uk
Mon Nov 7 16:09:34 UTC 2005


Irene DURAND <idurand at labri.fr> writes:

> The following McCLIM application (which uses threads through make-process)
> runs fine with both CMUCL-18e and OpenMCL but
> desesperatingly slow with SBCL 0.9.5.
>
> Each call to the command "Process" returns almost instantly with OpenMCl 
> and CMUCL
> but takes at least 5 seconds with SBCL.
>
> Did anyone notice a problem using threads with SBCL?

I haven't noticed anything like a five-second latency in thread startup.

> (let ((*n* 0))
>  (defun pause ()
>    (incf *n*)
>    (dotimes (i 100000000)
>      (1+ 1))
>    (format *standard-output* "f ~A done~%" *n*)
>  ))

Under normal operation, the loop in this function would be optimized
away.  Do you have anything in your personal or site-wide sbcl
initialization files, such as a global proclamation of a high debug
setting?  Or any other package which performs such a global
proclamation?

I tried your test, and each call to Process finished essentially
instantaneously.  A screenshot is available at
<http://www-jcsu.jesus.cam.ac.uk/~csr21/durand-test.png>.  Putting a
call to TIME around the call to (PAUSE) in COM-PROCESS gives output of
the form
  Evaluation took:
    0.125 seconds of real time
    0.121982 seconds of user run time
    0.001 seconds of system run time
    0 page faults and
    286,448 bytes consed.
which is perhaps a little high, but not completely ridiculous for
graphical output.

Cheers,

Christophe



More information about the mcclim-devel mailing list