Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!ames!ucbcad!ucbvax!decvax!decwrl!spar!malcolm From: malcolm@spar.UUCP Newsgroups: comp.lang.lisp Subject: Re: LISP floating point performance Message-ID: <441@spar.SPAR.SLB.COM> Date: Tue, 3-Mar-87 01:38:15 EST Article-I.D.: spar.441 Posted: Tue Mar 3 01:38:15 1987 Date-Received: Thu, 5-Mar-87 19:25:06 EST References: <16921@glacier.STANFORD.EDU> Reply-To: malcolm@spar.UUCP (Malcolm Slaney) Organization: Schlumberger Palo Alto Research - CASLAB Lines: 55 Summary: Fast Lisp Floating Point...its coming In article <16921@glacier.STANFORD.EDU> John B. Nagle writes: > Is there a Common LISP for SUN or VAXen which, given enough declarations, >will generate code for, say, a matrix multiply which does not contain any >subroutine calls, boxing, unboxing, storage allocation, type checking, tests, >stack manipulation, or other unwanted fooling around within the inner loop? >I'm not asking for the strength reductions for nested loops one expects from >a good FORTRAN compiler; just good clean code. [I sent this to Sun Spots many weeks ago and I'm still waiting to see it published....oh, well....lets try sending it out here. I don't know what Lucid did to get these numbers....all I'm concerned about is the speed compared to a Symbolics and to native C.] Lucid sent me a new Lisp Compiler that does floating point correctly. Here are the times to execute 10 1024 point fft's. Note that this version of the Lucid compiler will optionally generate code for the 68881. There is no support yet for the FPA. The times below are in seconds. Machine-> 160 260 Symbolics 160/FPA 260/FPA Language \/ ------------------------------------------------ Native 5.4 4.6 4.6 3.1 1.9 Lucid(New) 6.2 5.3 NA NA Lucid(Current) 74.0 43.1 NA NA Franz(Current) 81. 47. NA NA The entries labeled Native mean C on the Suns and Lisp on the Symbolics. There are two amazing pieces of news in these numbers. First, Lucid Lisp on a Sun/3-260 with a 68881 runs within 15% of a Symbolics without an IFU. I expect that when the IFU is factored in then the Symbolics will be about 50% faster. All this changes when (if?) the Sun Lisps' support the FPA. And then there are Sun-4s.... The second amazing news is that Lucid is now within 15% of the raw speed of the machine. I just talked to John Foderaro at Franz, Inc. and they are working on similar enhancements. If your Lisp of choice is Franz then you shouldn't have to wait long. This is a pre-pre-prerelease of the Lucid compiler. Many thanks to David Posner at Lucid and Eric Schoen at Schlumberger and Stanford for helping with these benchmarks. No, I don't know when the new compiler will be released. Cheers. Malcolm P.S. Like all benchmarks, your mileage may vary. These times record just CPU time on machines with enough memory so there was no paging.