Does anyone here use the AMD Core Math Libraries (ACML) as their
underlying libraries for BLAS/LAPACK/etc. in SciPy? I have problems
with (at least) scipy.linalg.eigvals (Fernando discovered this at SciPy
on my laptop). For instance, the following crashes reliably with ACML,
but works fine with ATLAS versions of BLAS/LAPACK:
>>>from scipy.linalg import eigvals
>>>from numpy.random import rand
>>>a = rand(100,100)
>>>eigvals(a)
Anyone else have this problem? Is ACML known to be a bad thing to use
with SciPy?
Thanks,
Ryan
--
Ryan May
Graduate Research Assistant
School of Meteorology
University of Oklahoma
_______________________________________________
SciPy-user mailing list
SciPy...@scipy.org
http://projects.scipy.org/mailman/listinfo/scipy-user
No, but it's not an option that's as thoroughly tested as ATLAS, either. If you
could supply a gdb backtrace from the crash, that would help locate the problem.
--
Robert Kern
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
Works for me, no problems.
I use the gnu 64 bit version of acml; I think it's v 3.6.0
If you wish i can give a description of how I installed it.
-George.
Well, right now this is what I get (having updated scipy):
Python 2.5.1 (r251:54863, Jul 27 2007, 10:40:24)
[GCC 4.1.2 (Gentoo 4.1.2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from scipy.linalg import eigvals
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.5/site-packages/scipy/linalg/__init__.py",
line 8, in <module>
from basic import *
File "/usr/lib64/python2.5/site-packages/scipy/linalg/basic.py", line
17, in <module>
from lapack import get_lapack_funcs
File "/usr/lib64/python2.5/site-packages/scipy/linalg/lapack.py", line
18, in <module>
from scipy.linalg import clapack
ImportError: /usr/lib64/python2.5/site-packages/scipy/linalg/clapack.so:
undefined symbol: clapack_sgesv
>>> scipy.__version__
'0.5.2.1'
Any ACML users out there have any idea? This is on AMD64 w/
gfortran/int64 edition of ACML 3.6.1.
Ryan
--
Ryan May
Graduate Research Assistant
School of Meteorology
University of Oklahoma
Well, it appears that the missing symbol was due to some bad combination
of ACML _and_ ATLAS. Removing atlas and recompiling scipy/numpy
resolved it.
As far as the original crash goes, my problem was that I had the int64
version of ACML installed. So for you ACML users out there, don't use
the int64 version unless the code you're using actually uses INTERGER*8.