Mailinglist Archive: opensuse-buildservice (131 mails)

< Previous Next >
Re: [opensuse-buildservice] Problem with BLAS / LAPACK libraries
  • From: "David Strozzi" <david.strozzi@xxxxxxxxx>
  • Date: Mon, 4 Dec 2006 22:41:53 -0800
  • Message-id: <f21763420612042241q4fe8e5b8he59d7d710935f3ae@xxxxxxxxxxxxxx>
Hi Werner et al,

Sorry for having left this thread for a while. I'm revisiting blas / lapack
/ numpy / scipy.

I installed the new rpm's you made of blas and lapack, based on fedora core
6. No problems in yast. They seem to work fine, in that I can compile
numpy 1.0.1 from source. It finds the libs and is happy, once I tell it to
look in /lib64.

However, before moving on to the full scipy, I'd like to build numpy with
gfortran. By default it uses g77.

From what I can gather, people seem to think gcc 4, or at least gfortran,
isn't too stable yet. Again, this is just an impression from various
websites.

So I'm going to find out how to build numpy w/ gfortran, and then build
scipy w/ gfortran too. If anyone knows how to do this, please let me know.

Best,
David

On 11/25/06, Werner Hoch <werner.ho@xxxxxx> wrote:

Hi David,

On Saturday 25 November 2006 22:56, David Strozzi wrote:
> Thanks for replying. A general question is whether there's any
> optimized LAPACK available via the opensuse YaST system. For amd64
> there's the gotoBLAS, as well as AMD's core math library. Both may
> require registration so may not appropriate for the "pure"
> open-source version.

I think there are no optimised packages there.
Only on the wishlist ;-)
http://en.opensuse.org/Wishlist_Science

> On 11/25/06, Werner Hoch <werner.ho@xxxxxx> wrote:
> > On Saturday 25 November 2006 03:57, David Strozzi wrote:

> > Can you provide a small python script that shows the bug?
> >
> > Can you give some more information about your used SuSE Version and
> > architecture?
>
> My system - opensuse 10.1 on an amd athlon64. I've updated several
> packages.

I've the same here.

> Also, I should warn you that I've compiled python 2.5 and numpy 1.0
> myself, and am not using the opensuse rpm's. It may be that my setup
> is sufficiently non-standard that you shouldn't waste time on this!
>
> As for a python example, start up python and type "from scipy import
> *". This should load all the modules, functions, etc in scipy.
> Here's what I get:
>
> Python 2.5 (r25:51908, Sep 30 2006, 14:06:47)
> [GCC 4.1.0 (SUSE Linux)] on linux2
> Type "help", "copyright", "credits" or "license" for more
> information.
>
> >>> from scipy import *
>
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> File
> "/usr/local/lib/python2.5/site-packages/scipy/signal/__init__.py",
> line 9, in <modu le>
> from bsplines import *
> File
> "/usr/local/lib/python2.5/site-packages/scipy/signal/bsplines.py",
> line 3, in <modu le>
> import scipy.special
> File
> "/usr/local/lib/python2.5/site-packages/scipy/special/__init__.py",
> line 10, in <mo dule>
> import orthogonal
> File
> "/usr/local/lib/python2.5/site-packages/scipy/special/orthogonal.py",
> line 67, in < module>
> from scipy.linalg import eig
> File
> "/usr/local/lib/python2.5/site-packages/scipy/linalg/__init__.py",
> line 8, in <modu le>
> from basic import *
> File
> "/usr/local/lib/python2.5/site-packages/scipy/linalg/basic.py", line
> 17, in <module >
> from lapack import get_lapack_funcs
> File
> "/usr/local/lib/python2.5/site-packages/scipy/linalg/lapack.py", line
> 17, in <modul e>
> from scipy.linalg import flapack
> ImportError: /usr/lib64/libblas.so.3: undefined symbol:
> _gfortran_st_write

Got a similar result with the same commandline here. I'm usually only
using pylab from matplotlib.

> > I have the most recent blas and lapack opensuse builds (940). The
> >
> > > official suse-type webpage I got these from say they were
> > > compiled with egcs, which is a. wrong (egcs merged back into gcc
> > > a long time ago) and b. ill-defined (since g77 and gfortran are
> > > both part of gcc).
> >
> > Which package exactly are you using? One of those:
> > http://software.opensuse.org/download/science/SUSE_Linux_10.1/x86_6
> >4/
>
> BLAS:
> http://software.opensuse.org/download/science/SUSE_Linux_10.1/repodat
>a/repoview/blas-0-3.0-940.1.html
>
> LAPACK:
> http://software.opensuse.org/download/science/SUSE_Linux_10.1/repodat
>a/repoview/lapack-0-3.0-940.1.html
>
> I dl'ed the rpm's, used createrepo, and then installed locally via
> yast.

Ok. I've build some new packages in my home zone in the build service:

http://software.opensuse.org/download/home:/werner2101/SUSE_Linux_10.1/x86_64/

I've copied the complete package from Fedora Core 6 and recompiled it.
They included two additional patches with some missing functions.

After installing them I was able to include the python libs with
from scipy import *
and do some matrix manipulations and small calculations.

> > As you search the web, you see that it's part of the lore that
> >
> > > "Suse's BLAS is buggy, you have to compile yourself." Not good
> > > for Suse!
> >
> > Please provide URL's it's much easier to track them.
>
> Here's one example, google can provide more:
>
> http://article.gmane.org/gmane.comp.python.scientific.user/9665

Thanks.

> > While I'm on it, it's not clear what implementation of BLAS
> > opensuse
> >
> > > uses. My guess is it's the reference implementation from lapack's
> > > page on netlib, which is not optimized. Better ones exist, like
> > > gotoBLAS. Maybe that can be made a suse package?

Yes it's the netlib package. It's mentioned in the spec file of the rpm.

> > http://www.tacc.utexas.edu/resources/software/#blas
> > The package is not accessable from that page without login. Is
> > there a public place to get it?

> I don't know of one. The page you give is the right place to go to
> download. Seems academic users can d/l the source free, but
> commercial people should contact someone. Don't know where opensuse
> falls; maybe we can ask.

Ok. I think we should ask, what's the licence for it.

> > At the least it would help if it were spelled out exactly which
> >
> > > Fortran compiler was used to make opensuse's blas. If they can
> > > be compiled to allow multiple Fortran compilers to play nicely
> > > with them, even better.
> >
> > ??
>
> On the BLAS URL listed above, could you say whether you used g77 or
> gfortran to compile? If I then use the same when compiling scipy
> myself, maybe all will be well.

Ah, yes. The package description is wrong, it will be fixed with the new
one.

David, can you please test the new packages, too. I'll move them to the
science repo as soon as I get some positive feedback.
A slow implementation of blas is better than a broken one.

Regards
Werner
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx


< Previous Next >
This Thread
  • No further messages