Bug#696000: openblas: breaks numpy linalg.solve and numpy.dot on i386
Julian Taylor
jtaylor.debian at googlemail.com
Sat Dec 15 14:37:04 UTC 2012
Package: openblas
Version: 0.1.1-6
Severity: serious
when using python-numpy with openblas set als libblas.so.3 provider it gives wrong results in some situations on i386. amd64 seems to work.
It also works fine with libblas3 and libatlas.
It seems to only occur when you change between double and single precision in a single script.
$ apt-get install python-numpy libopenblas-base
$ update-alternatives --set libblas.so.3 /usr/lib/openblas-base/libopenblas.so.0
$ cat test.py
import numpy.linalg as linalg
from numpy import array, single, double, dot
# removing any lines here makes it work again
a = array([[1.,2.], [3.,4.]], dtype=double)
b = array([2., 1.], dtype=double)
x = linalg.solve(a, b)
r = dot(a, x)
a = array([[1.,2.], [3.,4.]], dtype=single)
b = array([2., 1.], dtype=single)
print dot(a, b)
$ python ./test.py
[ nan nan]
$ update-alternatives --set libblas.so.3 /usr/lib/libblas/libblas.so.3
$ python ./test.py
[ 4. 10.]
$ update-alternatives --set libblas.so.3 /usr/lib/atlas-base/atlas/libblas.so.3
$ python ./test.py
[ 4. 10.]
More information about the debian-science-maintainers
mailing list