[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PCL/CLOS performance



> I would caution people who are unhappy with PCL performance to take a look
> at what your underlying Common Lisp is doing. Depending on your Common
> Lisp, the performance of current PCL generic function invocation can
> vary from 3.5X to 15X a function call. There is much that can be done in 
> an implementation dependent manner to speed up PCL, however, it is
> unfair to say that CLOS or PCL is a dog just because the Common
> Lisp you happen to be using doesn't generate particularly good code
> at the moment. If you are otherwise happy with your Common Lisp, then
> talk to whoever is supporting it about improving code generation,
> otherwise, look into getting a new one. In the long run, I think
> everyone's Common Lisp should converge to about 2.0-2.5X a function
> call for a single argument dispatch message send, possibly faster, if
> the TICLOS implementation is any guide.

Well, (1) is it not the case that TICLOS is not PCL?  If so, it may
not say all that much about PCL performance.  (2) If a Common Lisp
is reasonably fast otherwise but slow for PCL, it is at least
reasonable to suspect PCL rather than the Common Lisp's code
generation.

Besides, not everyone can afford a super-CL.  The object system should
be such that it is not too hard to get performance from it comparable
to that of the rest of CL.