libatlas/ATLAS-README

33 lines
1.8 KiB
Plaintext
Raw Permalink Normal View History

Because ATLAS relies on compile-time optimizations to obtain improved
performance over BLAS and LAPACK, the resulting binaries are closely
tied to the hardware on which they are compiled, and can likely result
in very poor performance on other hardware. For this reason,
including a package like ATLAS in openmamba requires some compromises.
Firstly, a binary ATLAS package must perform reasonably well on the
entire range of hardware on which it could potentially be installed.
Optimizing ATLAS for the most modern hardware can result in
significant performance penalties for users using the same package on
older hardware. Second, building from the same source package must
result in identical binaries for any computer of a particular
architecture. This is because the binaries installed on a user's
computer are built on a computer in the openmamba Extras build system,
which will have hardware different from the end user's hardware, and
quite possibly different from other available hardware in the build
system.
For i386 systems, 3 ATLAS subpackages are built for SSE1, SSE2, and SSE3 ix86
extensions, using architectural defaults obtained from PIII, Pentium 4 with
SSE2 extension and PENTIUM 4 with SSE3 extensions respectively.
This package is designed to build RPMs that are identical regardless
of where they are compiled and that provide reasonable performance on
a wide range of hardware. For users who want optimal performance on
particular hardware, custom RPMs can be built from the source package
by setting the RPM macro "enable_native_atlas" to a value of 1. This
can be done from the command line as in the following example:
rpmbuild -D "enable_native_atlas 1" --rebuild libatlas-@VER_REL@.src.rpm
This will cause the ATLAS build to use the achitectural default most
appropriate for the system on which the package is to be built.