[SciPy-user] making an existing scipy installation use atlas libraries

Robert Kern robert.kern@gmail....
Mon Oct 8 11:36:52 CDT 2007


Lev Givon wrote:
> Received from Robert Kern on Sun, Oct 07, 2007 at 03:29:42PM EDT:
>> Lev Givon wrote:
>>> The scipy installation instructions for Linux relating to atlas
>>> (http://tinyurl.com/2kuwcy) appear to imply that one can force an existing
>>> scipy installation that was built against netlib blas and lapack to take
>>> advantage of subsequently installed atlas libraries by directing the
>>> library loader to point to the atlas-provided libblas.so and
>>> liblapack.so libraries rather than their netlib equivalents. Does this
>>> approach provide inferior performance compared to building numpy/scipy
>>> directly against atlas (i.e., such that the atlas objects are built
>>> into the cblas/clapack modules)?
>> ATLAS has a few other libraries that are needed besides its
>> libblas.so and liblapack.so.  You would essentially have to relink
>> the extension modules, not just change LD_LIBRARY_PATH.
> 
> True, but isn't it sufficient that those libraries (e.g., libatlas.so)
> are already linked to by the atlas-provided libblas.so and
> liblapack.so libraries?

Is it? Try it, and tell us. One problem you might run into is that ATLAS's BLAS
is usually in a file called libf77blas.so, not libblas.so, but maybe yours is
different. Dynamic linking is sufficiently finicky and platform-dependent that I
don't try to play games with it. It might work, but I doubt anyone has tried.

> After all, aren't the BLAS/LAPACK functions
> the only public interfaces to the atlas stuff that are accessed by
> programs/libraries that use them? Or do some of the extension modules
> you mentioned actually access other atlas-specific routines when built
> against atlas?

A scipy built against ATLAS will wrap the row-major versions of the functions
that it provides in addition to the FORTRAN column-major versions.

-- 
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


More information about the SciPy-user mailing list