apparent bug with cmucl compiles to sse2



Michel Talon wrote:
> Hello,
>
> while playing with matrix diagonalization on maxima cmucl,
> using jacobi technique on a macbook i found a problem. Compiling 
> eigens-by-jacobi.lisp produces eigens-by-jacobi.ssl2   which runs fast, but
> unfortunately gives false results. On another P4 machine the same gives
> eigens-by-jacobi.xf86 which also runs fast but with apparently correct
> results (i have checked with a Mathematica computation). According to cmucl
> documentation there is a way to disable the sse2 extensions when compiling,
> but i don't know how to access that under maxima with compile_file().
>   
One way is to remove (or move aside) the lisp-sse2.core file.  Then
cmucl will fall back to x87.  But you can't mix and match the sse2 and
x86 fasl files.  If you move the lisp-sse2.core out of the way, you'll
have to rebuild all of maxima.

Anyway, I ran your test after compiling eigens-by-jacobi.lisp for sse2. 
I get pretty much the same plot there as I do on a Sun sparc machine.

Can you tell me what the smallest and largest eigenvalues you get?   For
sse2, I get:
 - 2.045740417937529 and 2.876115587743105

These are exactly the same values on sparc.

What version of cmucl are you using?  I did the test using 2009-01.

Ray