[R] make check-all failed on SLES8 for x86_64
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Tue Dec 14 20:02:42 CET 2004
"Liaw, Andy" <andy_liaw at merck.com> writes:
> Hi all,
>
> I've only now noticed that on our Opteron boxes running Suse Enterprise
> Server 8 that R-2.0.1 did not pass make chek-all. It bombed in
> tests/lapack.R at:
>
> > eigenok <- function(A, E, Eps = 1000 * .Machine$double.eps) {
> V <- E$vect
> lam <- E$values
> stopifnot(abs(A %*% V - V %*% diag(lam)) < Eps, .... [TRUNCATED]
>
> > Ceigenok <- function(A, E, Eps = 1000 * .Machine$double.eps) {
> V <- E$vect
> lam <- E$values
> stopifnot(Mod(A %*% V - V %*% diag(lam)) < Eps, .... [TRUNCATED]
>
> > sm <- cbind(1, 3:1, 1:3)
>
> > eigenok(sm, eigen(sm))
> Error: abs(A %*% V - V %*% diag(lam)) < Eps is not TRUE
>
> This is using:
> ~/R-2.0.1> gcc -v
> Reading specs from /opt/gcc33/lib64/gcc-lib/x86_64-suse-linux/3.3/specs
> Configured with: ../configure --enable-threads=posix --prefix=/opt/gcc33
> --with-local-prefix=/usr/local --infodir=/opt/gcc33/share/info
> --mandir=/opt/gcc33/share/man --libdir=/opt/gcc33/lib64
> --enable-languages=c,c++,f77,objc,java,ada --disable-checking
> --enable-libgcj --with-gxx-include-dir=/opt/gcc33/include/g++
> --with-slibdir=/lib64 --with-system-zlib --enable-shared
> --enable-__cxa_atexit x86_64-suse-linux
> Thread model: posix
> gcc version 3.3 20030312 (prerelease) (SuSE Linux)
>
> compiled with the following setting:
>
> R is now configured for x86_64-unknown-linux-gnu
>
> Source directory: .
> Installation directory: /usr/local
>
> C compiler: gcc -g -O2
> C++ compiler: g++ -g -O2
> Fortran compiler: g77 -g -O2
>
> Interfaces supported: X11, tcltk
> External libraries: readline
> Additional capabilities: PNG, JPEG
> Options enabled: R profiling
>
> Recommended packages: yes
>
> Actually, I've only noticed this when the samething happens on a RH-based
> box (same hardware), using:
> $ gcc -v
> Reading specs from /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/specs
> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
> --infodir=/usr/share/info --enable-shared --enable-threads=posix
> --disable-checking --with-system-zlib --enable-__cxa_atexit
> --enable-languages=c,c++,objc,java,f77 --host=x86_64-redhat-linux
> Thread model: posix
> gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-24)
>
> I'd very much appreciate any pointers!
Hmm. Not the first time we see eigen() in that role... First thing to
check is of course whether it is a case of "Eps too low" or true
miscomputation. For the record, it is not happening for me with SuSE
9.1 on Opteron:
> sm <- cbind(1, 3:1, 1:3)
> A <- sm
> E <- eigen(sm)
> V <- E$vect
> lam <- E$values
> abs(A %*% V - V %*% diag(lam))
[,1] [,2] [,3]
[1,] 0.000000e+00 1.110223e-16 3.354246e-16
[2,] 2.220446e-15 8.326673e-17 2.712063e-16
[3,] 8.881784e-16 0.000000e+00 3.267174e-16
> .Machine$double.eps
[1] 2.220446e-16
pd at linux:~> gcc -v
Reading specs from /usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/specs
Configured with: ../configure --enable-threads=posix --prefix=/usr
--with-local-prefix=/usr/local --infodir=/usr/share/info
--mandir=/usr/share/man --enable-languages=c,c++,f77,objc,java,ada
--disable-checking --libdir=/usr/lib64 --enable-libgcj
--with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib64
--with-system-zlib --enable-shared --enable-__cxa_atexit
x86_64-suse-linux
Thread model: posix
gcc version 3.3.3 (SuSE Linux)
Compile settings similar to yours, except that I have -O3.
--
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list