we are using ATLAS for our density-functional theory code SPHInX (electronic structure theory), and its just great! Its big advantage over other BLAS implementations is for "thin" matrices (M >> N), which occur quite commonly in our code.
Unfortunately, I have now encountered a problem for certain cases in zgemm when beta=0 (alpha=1, transA='N', transB='N', lda=M, ldb=K). We do not initialize C in this case, which usually works fine. For certain cases, e.g. m=32, n=120, k=240 (or k=21646, which is the original case), however, we sometimes get nans. We reproducibly get nans if C is initialized with nans.
a) if the BLAS standard says anything on whether I may use uninitialized C's for beta=0, and
b) if this nan-propagation is a known(=wanted?) behaviour of the ATLAS
The tech details:
ATLAS 3.8.3 (an older 3.7.26 seems to be fine)
Linux cmpc34 18.104.22.168-0.1-default #1 SMP 2008/02/10 20:01:04 UTC x86_64 x86_64 x86_64 GNU/Linux
Dual Core AMD Opteron(tm) Processor 270 2GHz
compiled with -fPIC with a gcc 4.2.3