[Shootout-list] Mandelbrot Set for CMUCL and SBCL 2nd try

Christophe TROESTLER del-con@tiscali.be
Thu, 31 Mar 2005 22:36:24 +0200 (CEST)


On Wed, 30 Mar 2005, Greg Buchholz <sleepingsquirrel@yahoo.com> wrote:
> 
> I downloaded CMUCL and Mr. Gingras previous implementation of the
> mandelbrot benchmark. [...]  output of the given program [...] it
> turns out that pixel #300 is the only failing pixel for N=400 .
> This was also the case for an original ocaml implementation [...]
> bug in the ocaml compiler.

There is no bug in the compiler.  The output difference was due to a
precomputation of some values which were stored (with 64 bits) then
used (with 80 bits).  Inlining the expressions made the entire
computation be performed in extended precision so the result was OK.

For n = 400, the pixel #300 correspond to c = i (the imaginary unit).
If c is computed without error, the iterations z -> z^2 + c should not
blow up.  However, with even a slight roundoff error (as it happened
with the different precisions), they do.

Hope it helps,
ChriS