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

MCS vs Procyon vs MCL benchmark



Here's a copy of a recent msg I posted to the comp.lang.lisp newsgroup.
Mike Wirth
========================================================================
Newsgroups: comp.lang.lisp
Subject: Re: MCS: A portable object system for Common Lisp
Summary:
Expires:
References: <5048@gmdzi.gmd.de> <1991Jul3.161054.21922@cl.cam.ac.uk>
Sender:
Followup-To:
Distribution:
Organization: Rice University, Houston
Keywords:

In article <5048@gmdzi.gmd.de> kopp@gmdzi.gmd.de (Juergen Kopp) writes:
>The Meta Class System (MCS) is a portable object-oriented extension
>of Common Lisp. MCS is highly efficient and integrates the
>functionality of CLOS, the Common Lisp Object System, and TELOS
>...
>MCS is more efficient in time and space than comparable systems we
>know, including commercial CLOS implementations.
>...

To which John Carroll (jac@cl.cam.ac.uk) replied:
>I was somewhat surprised at this claim, considering that commercial CLOS
>implementations are able to take advantage of internal compiler hooks,
>knowledge of stack frame contents etc.

>So I thought I'd test it out using Procyon CL. ...

>Results (on a Mac IIci, CPU time and garbage generated)

>MCS (v1.3.1 / Procyon CL 2.1.4):    0.100 sec, 3200 bytes
>Procyon CLOS (2.1.4) :              0.100 sec, 0 bytes

I ran John Carroll's benchmark test, also on a Mac IIci (with and without a
Micron Technologies cache card), but using Apple's Macintosh Common Lisp 2.0
beta 1 patch 3, with its native CLOS.  Here are my results:

MCL 2.0b1p3 (cache card off)         0.072 sec (per 100 repetitions)
MCL 2.0b1p3 (cache card on)          0.039 sec (85% faster!)

Notes:  I used 10,000 repetitions, run multiple times, to get accurate answers.
On the first run only, 184 bytes of memory were allocated, thereafter zero.
John Carroll, did you use a cache card?

Mike Wirth
Petroleum Information Corp.
Houston, Texas
713-627-7180
713-963-0085 (fax)
mcw@rice.edu