On our AMD dual Opteron system running SuSE SLES 8 with

gcc version 3.2.2 (SuSE Linux)

and with R built with `./configure --without-blas' I get

> eigen(cbind(1, 3:1, 1:3))
$values
[1]  5.000000e+00  1.000000e+00 -4.440892e-16

$vectors
          [,1]       [,2]       [,3]
[1,] 0.5773503 -0.8451543 -0.9428090
[2,] 0.5773503 -0.1690309  0.2357023
[3,] 0.5773503  0.5070926  0.2357023

-roger

Martin Maechler wrote:
I'm only now realizing that we have severe problems with R on our
AMD 'Opteron' and 'Athlon64' clients running Redhat Enterprise
with all 64-bit libraries (AFAICS).

The Lapack problem happens for R-patched and R-devel both on
the Opteron and the Athlon64.

Here are platform details:

o  "gcc -v" and "g77 -v" both end with the line
   gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-34)

o  I've used ...../configure --without-blas

1) Opteron ("deb7", a dual-processor compute server):

  - uname -a :
    Linux deb7 2.4.21-9.0.3.ELsmp #1 SMP Tue Apr 20 19:44:29 EDT 2004 x86_64 x86_64 
x86_64 GNU/Linux
  - /proc/cpuinfo  contains (among much more)
    vendor_id       : AuthenticAMD
    cpu family      : 15
    model           : 5
    model name      : AMD Opteron(tm) Processor 248

2) Athlon64 (a simple "new generation" client - to become my desktop soon):
- uname -a :
Linux setup-12 2.4.21-15.0.2.EL #1 Wed Jun 16 22:41:44 EDT
2004 x86_64 x86_64 x86_64 GNU/Linux


  - /proc/cpuinfo  contains
    vendor_id       : AuthenticAMD
    cpu family      : 15
    model           : 14
    model name      : AMD Athlon(tm) 64 Processor 2800+

----------------

Now the Lapack problem, easily seen from the base eigen()
example:

    > eigen(cbind(1, 3:1, 1:3))
    $values
    [1]  5.7015621  1.0000000 -0.7015621

    $vectors
              [,1]       [,2]       [,3]
    [1,] 0.4877939 -0.7181217 -0.9576161
    [2,] 0.6172751 -0.3893848  0.2036804
    [3,] 0.6172751  0.5767849  0.2036804

which is simply plainly wrong and eigen(cbind(1, 3:1, 1:3), EISPACK=TRUE)
gives the correct eigen values c(5, 1, 0) and corresponding
eigenvectors.


IIRC, we've already dealt with a Lapack problem, and that
workaround (built into R-devel's Makefiles) has been to use
-ffloat-store for the compilation of src/modules/lapack/dlamc.f

----------

Thank you for hints / suggestions.

Others with 64-bit platforms might also try to see what
eigen(cbind(1, 3:1, 1:3)) gives there.


Martin Maechler

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-devel


______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-devel

Reply via email to