diff --git a/README.Fedora b/README.Fedora deleted file mode 100644 index 09ab711..0000000 --- a/README.Fedora +++ /dev/null @@ -1,68 +0,0 @@ -Notes on the Fedora version of ATLAS - -by Quentin Spencer -updated: October 4, 2005 - -updated by Deji Akingunola -October 15, 2008 - -updated by Deji Akingunola -June 15, 2011 - -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 Fedora 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 Fedora 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. - -As of version 3.8.2 (in Fedora), ATLAS builds uses achitectural defaults, -are partial results of past searches when the compiler and architecture -are known, to discover the appropriate kernels used to build all the required -libraries. They make install time quicker and also ensure that good results are -obtained, since they typically represent several searches and/or user -intervention into the usual search so that maximum performance is found. -The result is a set of libraries that will not -necessarily achieve optimal performance on any given hardware but -should still offer significant performance gains over the reference -BLAS and LAPACK libraries on most hardware. The binary package -includes the atlas libraries as well as binary-compatible blas and -lapack libraries that should work as a drop-in replacement for the -standard ones (they are installed in /usr/lib{64}/atlas* rather than -/usr/lib{64}). - -For 32bit x86 systems, the default atlas package on was built using Pentium Pro -architectural defaults using just x87 math optimization. In addition to the -base 32bit build, 4 ATLAS subpackages are built for 3Dnow, SSE, SSE2, and SSE3 -ix86 extensions, using architectural defaults obtained from Athlon K7, PIII, -Pentium 4 with SSE2 extension and PENTIUM 4 with SSE3 extensions respectively. - -On 64bit x86 systems the default atlas package on was built with SSE2 optimization using architetural default made for AMD's HAMMER processor, and an additional -SSE3-enabled subpackage was built also using architetural default made for AMD's HAMMER processor. - -This packaging allows multiple installation of different atlas sub-packages -at the same time. The alternatives system (read 'man alternatives' for usage) -is used in the -devel subpackages to select the appropriate location for the -architectural dependent header files. - -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 atlas-3.8.3-1.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. diff --git a/README.dist b/README.dist new file mode 100644 index 0000000..5d60a7b --- /dev/null +++ b/README.dist @@ -0,0 +1,47 @@ +Notes on the packaged version of ATLAS + +by Quentin Spencer +updated: October 4, 2005 + +updated by Deji Akingunola +October 15, 2008 + +updated by Deji Akingunola +June 15, 2011 + +updated by Frantisek Kluknavsky +Nov 20, 2012 + +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 Fedora requires some compromises. +Optimizing ATLAS for the most modern hardware can result in +significant performance penalties for users using the same package on +older hardware. A binary ATLAS package must perform reasonably well on the +entire range of hardware on which it could potentially be installed. + +The result is a set of libraries that will not +necessarily achieve optimal performance on any given hardware but +should still offer significant performance gains over the reference +BLAS and LAPACK libraries on most hardware. + +In addition to the base 32bit build, subpackages are built for SSE, SSE2, +and SSE3 ix86 extensions. + +On 64bit x86 systems the default atlas package was built with SSE3 +optimization. + +This packaging allows multiple installation of different atlas sub-packages +at the same time. The alternatives system (read 'man alternatives' for usage) +is used in the -devel subpackages to select the appropriate location for the +architectural dependent header files. + +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 atlas-3.8.3-1.src.rpm + diff --git a/atlas.spec b/atlas.spec index 47e5179..8fe46aa 100644 --- a/atlas.spec +++ b/atlas.spec @@ -14,7 +14,7 @@ URL: http://math-atlas.sourceforge.net/ Source0: http://downloads.sourceforge.net/math-atlas/%{name}%{version}.tar.bz2 Source1: PPRO32.tgz #Source2: K7323DNow.tgz -Source3: README.Fedora +Source3: README.dist Source4: USII64.tgz Source5: USII32.tgz Source6: IBMz1032.tgz @@ -43,7 +43,7 @@ well as a few routines from LAPACK. The performance improvements in ATLAS are obtained largely via compile-time optimizations and tend to be specific to a given hardware -configuration. In order to package ATLAS for Fedora some compromises +configuration. In order to package ATLAS some compromises are necessary so that good performance can be obtained on a variety of hardware. This set of ATLAS binary packages is therefore not necessarily optimal for any specific hardware configuration. However, @@ -90,7 +90,7 @@ Linear Algebra Software). #description sse3 #This package contains the ATLAS (Automatically Tuned Linear Algebra #Software) libraries compiled with optimizations for the SSE3 -#extensions to the x86_64 architecture. The base ATLAS builds in Fedora for the +#extensions to the x86_64 architecture. The base ATLAS builds for the #x86_64 architecture are made for the SSE2 extensions. #package sse3-devel @@ -165,8 +165,8 @@ Group: System Environment/Libraries %description sse2 This package contains ATLAS (Automatically Tuned Linear Algebra Software) shared libraries compiled with optimizations for the SSE2 -extensions to the ix86 architecture. Fedora also produces ATLAS build with -SSE(1) and SSE3 extensions. +extensions to the ix86 architecture. ATLAS builds with +SSE(1) and SSE3 extensions also exist. %package sse2-devel Summary: Development libraries for ATLAS with SSE2 extensions @@ -201,7 +201,7 @@ Group: System Environment/Libraries %description sse3 This package contains the ATLAS (Automatically Tuned Linear Algebra Software) libraries compiled with optimizations for the SSE3. -Fedora also produces ATLAS build with SSE(1) and SSE2 extensions. +ATLAS builds with SSE(1) and SSE2 extensions also exist. %package sse3-devel Summary: Development libraries for ATLAS with SSE3 extensions @@ -598,7 +598,7 @@ fi %files %defattr(-,root,root,-) -%doc doc/README.Fedora +%doc doc/README.dist %dir %{_libdir}/atlas %{_libdir}/atlas/*.so %config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}.conf @@ -670,7 +670,7 @@ fi %files sse2 %defattr(-,root,root,-) -%doc doc/README.Fedora +%doc doc/README.dist %dir %{_libdir}/atlas-sse2 %{_libdir}/atlas-sse2/*.so %config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-sse2.conf @@ -689,7 +689,7 @@ fi %files sse3 %defattr(-,root,root,-) -%doc doc/README.Fedora +%doc doc/README.dist %dir %{_libdir}/atlas-sse3 %{_libdir}/atlas-sse3/*.so %config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-sse3.conf @@ -711,7 +711,7 @@ fi %ifarch s390 s390x %files z10 %defattr(-,root,root,-) -%doc doc/README.Fedora +%doc doc/README.dist %dir %{_libdir}/atlas-z10 %{_libdir}/atlas-z10/*.so %config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-z10.conf @@ -730,7 +730,7 @@ fi %files z196 %defattr(-,root,root,-) -%doc doc/README.Fedora +%doc doc/README.dist %dir %{_libdir}/atlas-z196 %{_libdir}/atlas-z196/*.so %config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-z196.conf @@ -760,6 +760,7 @@ fi - Modified makefile to include build-id. - Disabled cpu throttling detection again (sorry, could not work on atlas otherwise, feel free to enable yet again - atlas-throttling.patch). +- Removed mentions of "Fedora" to promote redistribution. - Modified parts of atlas.spec left in place, work still in progress, cleanup needed.