Web Images Videos Maps News Shopping Google Mail more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion Very poor Lisp performance
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Follow-up To:
Add Cc | Add Follow-up to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers that you hear
 
Jon Harrop  
View profile   Translate to Translated (View Original)
 More options 13 Aug 2005, 18:24
Newsgroups: comp.lang.lisp
From: Jon Harrop <use...@jdh30.plus.com>
Date: Sat, 13 Aug 2005 18:24:25 +0100
Local: Sat 13 Aug 2005 18:24
Subject: Re: Very poor Lisp performance

Richard Fateman wrote:
> Time for running in Allegro CL 7.0 on a 933 MHz Pentium II.
> as given:

> ; cpu time (non-gc) 60,202 msec (00:01:00.202) user, 421 msec system
> ; cpu time (gc)     33,623 msec user, 10 msec system
> ; cpu time (total)  93,825 msec (00:01:33.825) user, 431 msec system
> ; real time  105,632 msec (00:01:45.632)
> ; space allocation:
> ;  967,240 cons cells, 3,719,472,272 other bytes, 4,472 static bytes

These times agree with my own.

> But converting all "single-float"  to double-float:

> ; cpu time (non-gc) 4,446 msec user, 120 msec system
> ; cpu time (gc)     2,524 msec user, 0 msec system
> ; cpu time (total)  6,970 msec user, 120 msec system
> ; real time  7,961 msec
> ; space allocation:
> ;  418,422 cons cells, 292,782,544 other bytes, 0 static bytes
> The compiler complained about the "shadow" statement
> warning: compile-file found "SHADOW" at the top-level --  see the
>           documentation for
>           comp:*cltl1-compile-file-toplevel-compatibility-p*

Very interesting - thanks for that. Unfortunately replacing single-float
with double-float causes SBCL to spew out a lot of error messages. I'll see
if I can figure out why and I'll try CMUCL.

> My guess is that much of the verbosity for the sbcl version could be
> struck out of the allegro cl version without any loss in speed, and that
> careful attention to other potential optimizations/ declarations could
> squeeze out better performance.

Right. Is Allegro CL free?

> It could be that this single/double issue relates to your AMD64 timings.
> Most of it may be converting single to double and back.

Yes. I've no idea what CL says about coercions. The other languages may well
be much more lax in this respect.

It is interesting that single vs double precision has such bizarre and (for
me) unexpected performance implications...

--
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google