[HEADSUP] Atlas changed libraries

Susi Lehtola jussilehtola at fedoraproject.org
Sun Sep 22 22:45:22 UTC 2013


On Sun, 22 Sep 2013 23:42:05 +0200
Kevin Kofler <kevin.kofler at chello.at> wrote:
> Susi Lehtola wrote:
> > I might mention that OpenBLAS (successor to GotoBLAS) is in Fedora,
> > which is often 2x faster than ATLAS. But, it's only available on
> > ix86 and x86_64. It does have runtime CPU detection, though for the
> > 20-odd CPUs supported.
> 
> That's great, but if programs are now going to link against -lsatlas
> rather than -llapack, they will not work with OpenBLAS. :-(

... huh?

ATLAS, OpenBLAS and (netlib reference) LAPACK are all mutually
incompatible packages.

If you linked with -L%{_libdir}/atlas -llapack -lf77blas -latlas, what
you ended up with is the ATLAS version (*not* the same as netlib
lapack!) of LAPACK and the ATLAS blas library, which reside in
 %{_libdir}/atlas/liblapack.so
 %{_libdir}/atlas/libf77blas.so
 %{_libdir}/atlas/libatlas.so
Alternatively, instead of -lf77blas you could use -lptf77blas which is
the threaded version. Now the packaging is just saner, so you only
need to link -latlas or -lsatlas to get all symbols.

If you linked with -lopenblas (or -lopenblaso or -lopenblasp), you get
the OpenBLAS lapack and blas libraries.

If you linked with -llapack -lblas, you get the reference netlib lapack
and blas libraries.
-- 
Susi Lehtola
Fedora Project Contributor
jussilehtola at fedoraproject.org


More information about the devel mailing list