d74385
Notes on the packaged version of ATLAS
d74385
d74385
by Quentin Spencer
d74385
updated: October 4, 2005
d74385
d74385
updated by Deji Akingunola
d74385
October 15, 2008
d74385
d74385
updated by Deji Akingunola
d74385
June 15, 2011
d74385
d74385
updated by Frantisek Kluknavsky
d74385
Nov 20, 2012
d74385
d74385
Because ATLAS relies on compile-time optimizations to obtain improved
d74385
performance over BLAS and LAPACK, the resulting binaries are closely
d74385
tied to the hardware on which they are compiled, and can likely result
d74385
in very poor performance on other hardware.  For this reason,
d74385
including a package like ATLAS in Fedora requires some compromises.
d74385
Optimizing ATLAS for the most modern hardware can result in
d74385
significant performance penalties for users using the same package on
d74385
older hardware. A binary ATLAS package must perform reasonably well on the
d74385
entire range of hardware on which it could potentially be installed.
d74385
d74385
The result is a set of libraries that will not
d74385
necessarily achieve optimal performance on any given hardware but
d74385
should still offer significant performance gains over the reference
d74385
BLAS and LAPACK libraries on most hardware.  
d74385
d74385
In addition to the base 32bit build, subpackages are built for SSE, SSE2,
d74385
and SSE3 ix86 extensions.
d74385
d74385
On 64bit x86 systems the default atlas package was built with SSE3
d74385
optimization.
d74385
  
d74385
This packaging allows multiple installation of different atlas sub-packages
d74385
at the same time. The alternatives system (read 'man alternatives' for usage)
d74385
is used in the -devel subpackages to select the appropriate location for the 
d74385
architectural dependent header files.
d74385
 
d74385
For users who want optimal performance on
d74385
particular hardware, custom RPMs can be built from the source package
d74385
by setting the RPM macro "enable_native_atlas" to a value of 1. This
d74385
can be done from the command line as in the following example:
d74385
d74385
rpmbuild -D "enable_native_atlas 1" --rebuild atlas-3.8.3-1.src.rpm
d74385