Subject: Re: factorial of largish numbers
From: rpw3@rpw3.org (Rob Warnock)
Date: Wed, 05 Apr 2006 18:01:05 -0500
Newsgroups: comp.lang.lisp
Message-ID: <VN-dnUjhNO2s0anZRVn-gw@speakeasy.net>
Christophe Rhodes  <csr21@cam.ac.uk> wrote:
+---------------
| Alexander Schmolck <a.schmolck@gmail.com> writes:
| > will compute k(20000) just fine in any non-ancient version of python
| > (it is in fact several orders of magnitude faster than compiled
| > cmucl which I eventually ^C'ed and seems to be about the same speed
| > as clisp).
| 
| Be careful of what you are measuring.  You don't quote how you made
| your observations, but you might be running into a performance problem
| in cmucl, where the factorial is in fact computed acceptably fast, but
| printing of return value (by the REPL) takes a very long time.
+---------------

No, I tried his example in CMUCL, and observed that the printout
from TIME occurred *before* all the GC'ing started to print the value.
So he was indeed measuring what he thought he did.

That is, (TIME (DEFPARAMETER *F20K* (FACT 20000))) didn't GC at all
[though it did cons just over 900KB] and reported the same runtimes
as (TIME (FACT 20000)), whereas simply typing *F20K* to the REPL
GC'd *numerous* times before finally printing the value.  ;-}


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607