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

Re: Unsolicited Plaudits



    On September 25, 1980, Mr. Shigeki Goto of the Electical 
Communication Laboratories (Nippon Telegraph and Telephone Co., in 
Tokyo) sent me a note of his results when comparing the timings
of two of his functions when run under ILISP, INTERLISP, and
MacLISP.  His machine, I believe, is a 20/50 running TOPS-20.
Here is an excerpt from his note (between doublequotes):

"    Mr. Nobuyasu Ohsato, one of my colleagues at Musashino
 ECL, has compared the execution speed of various LISP systems.
 The execution time in the table is shown in milliseconds.
 __________________________________________________________________
 |             |   Program       | UCILISP | INTERLISP | MACLISP |
 |-------------+-----------------+---------+-----------+---------|
 |             |   TARAI-4*      |   57.0  |    26.0   |  22.8   |
 |             |-----------------+---------+-----------+---------|
 | Interpreter | numerical SORT  |   53.9  |    63.7   |  55.0   |
 |             | of (1 2... 100) |         |           |         |
 |-------------+-----------------+---------+-----------+---------|
 |             |   TARAI-4*      |    2.90 |    15.0   |   0.69  |
 |             |-----------------+---------+-----------+---------|
 |  Compiler   | numerical SORT  |    5.62 |    22.8   |   1.46  |
 |             | of (1 2... 100) |         |           |         |
 |-------------+-----------------+---------+-----------+---------|
 (*) TARAI-4 is (TAK 4 2 0), where TAK is an interesting function
 defined by Mr. Ikuo Takeuchi.
 (DEFUN TAK (X Y Z)
	(COND ((GREATERP X Y)
	       (TAK (TAK (SUB1 X) Y Z) 
		    (TAK (SUB1 Y) Z X)
		    (TAK (SUB1 Z) X Y) ))
	      (T Y) ))
"
    I ran his TARAI-4 example on the MACSYMA Consortium KL-10, and observed 
a very-slightly faster timing for the interpreter's run -- 24.4 milliseconds --
so I suspect his machine is about 5% to 10% faster than MC.  But for
the compiled-code's run, I clocked  only .556 millisecond, rather than .690;  
possibly he merely overlooked the overhead of "setting-up and getting 
into" the computation to be timed, which omission is negligible when it 
is .134 out of 22.8, but not so insignificant when it is .134 out of .690.
   Yet, the most interesting observation is that the MacLISP-based computation
for TARAI-4 is about four times faster than the ILISP-based one, which itself 
is about four times faster than the INTERLISP one.  (Evidently, when compiling
the TAK function, the FIXNUM declaration was given, so that GREATERP and SUB1
therein were open-coded).  In fact, running in the slow check-everything mode 
(as opposed to the faster-but-less-error-checking mode), intrepreted MacLISP 
takes only 3/2 the time of ** compiled ** INTERLISP.

			-- JonL --  10/19/80