Gentoo Archives: gentoo-science

From: "Xavier Fernández i Marín" <xfim.ll@×××××.com>
To: gentoo-science@l.g.o
Subject: Re: [gentoo-science] Atlas giving wrong results on matrix multiplication
Date: Tue, 20 Sep 2011 05:19:40
Message-Id: 20110920051707.GC2337@deu.xfim
In Reply to: Re: [gentoo-science] Atlas giving wrong results on matrix multiplication by Andrea Arteaga
Andrea Arteaga vas escriure el dia dl, 19 set 2011:

> Dear Xavier, > > thank you for your email and sorry for the late reply. > In theory it should be useless to provide optimization flags when > compiling ATLAS, because it automatically uses and tests many flags, > but I could be wrong.
Yes, Atlas tries to find the best options. However, I was worried because I had -Ofast in CFLAGS, and thought that maybe some GCC optimizations were harming the binary.
> > How did you install ATLAS? From the science overlay? I suggest that > you update it. Now in the overlay we have sci-libs/atlas-3.9.49 > (~keyworded) [BTW, I will probably bump the version to 3.9.51 today]. > Could you install it and redo the test? Otherwise, could you shortly > explain how to reproduce the problem, so that I can try?
No, I simply use the atlas provided in the official gentoo branch. François sent an email pointing that there was a problem with 3.9-xx, and suggesting going bach to 3.8. This is what I did and it is working fine, without errors. So I assume that, effectively, it was something related to the 3.9 branch, rather than compiling options. A simplification of the code that was giving trouble is: -----8<--------------- B <- c(0, 4.9039) for (l in 10:100) { X <- cbind(1, matrix(rnorm(l, 0, 3), ncol=1)) X <- ics for (i in 1:1000) { M <- X %*% B w <- which(is.nan(M)) l <- length(w) if (l!=0) { print(paste("Length", l, "error(s) on", X[w,2], sep=" ")) } } } -----8<--------------- Thank you, -- - Xavier -