Bug 1174259 - There is no atlas-sse3.x86_64 or atlas-sse3-devel.x86_64 only .i686 on Fedora 21
Summary: There is no atlas-sse3.x86_64 or atlas-sse3-devel.x86_64 only .i686 on Fedora 21
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: atlas
Version: 21
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Frantisek Kluknavsky
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1174256 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-12-15 14:02 UTC by Stuart R. DeGraaf
Modified: 2014-12-16 21:01 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-12-15 14:46:29 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Stuart R. DeGraaf 2014-12-15 14:02:10 UTC
Description of problem:

atlas-sse3 and atlas-sse3-devel for x86_64 are missing for Fedora 21. Only i686 is available

Version-Release number of selected component (if applicable):


How reproducible:

Very

Steps to Reproduce:
1.Install F21 Workstation XFCE x86_64
2.Do yum install atlas-sse3 atlas-sse3-devel
3.

Actual results:
Installs i686 version

Expected results:
x86_64 version

Additional info:
Package for x86_64 is apparently not available. Why?

Comment 1 Frantisek Kluknavsky 2014-12-15 14:25:55 UTC
*** Bug 1174256 has been marked as a duplicate of this bug. ***

Comment 2 Frantisek Kluknavsky 2014-12-15 14:46:29 UTC
Atlas.x86_64 and atlas-devel.x86_64 are (should be) with SSE3, no need for specialized *-sse3 subpackages. Old 64-bit processors with SSE2 without SSE3 exist, but they are rare these days and atlas upstream no longer explicitly supports them.

You probably care about performance, consider rebuilding atlas from source on your own machine.

Comment 3 Stuart R. DeGraaf 2014-12-15 23:41:07 UTC
(In reply to Frantisek Kluknavsky from comment #2)
> Atlas.x86_64 and atlas-devel.x86_64 are (should be) with SSE3, no need for
> specialized *-sse3 subpackages. Old 64-bit processors with SSE2 without SSE3
> exist, but they are rare these days and atlas upstream no longer explicitly
> supports them.
> 
> You probably care about performance, consider rebuilding atlas from source
> on your own machine.

Fair enough. However, the non-sse3/base F20 (and back to F15 or earlier)
atlas rpm contained all sorts of stuff that the F21 atlas rpm does not.
I've detailed that below. Where should I look for the missing stuff?
I need it to compile plasma.

On Fedora 20 we have:
$ rpm -qil atlas
Name        : atlas
Version     : 3.8.4
Release     : 13.fc20
Architecture: x86_64
Install Date: Sun 07 Dec 2014 12:04:57 PM EST
Group       : System Environment/Libraries
Size        : 11395870
License     : BSD
Signature   : RSA/SHA256, Thu 20 Nov 2014 06:53:34 AM EST, Key ID 2eb161fa246110
c1
Source RPM  : atlas-3.8.4-13.fc20.src.rpm
Build Date  : Tue 18 Nov 2014 10:14:25 AM EST
Build Host  : buildvm-07.phx2.fedoraproject.org
Relocations : (not relocatable)
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : http://math-atlas.sourceforge.net/
Summary     : Automatically Tuned Linear Algebra Software
Description :
The ATLAS (Automatically Tuned Linear Algebra Software) project is an
ongoing research effort focusing on applying empirical techniques in
order to provide portable performance. At present, it provides C and
Fortran77 interfaces to a portably efficient BLAS implementation, as
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
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,
the source package can be used to compile customized ATLAS packages;
see the documentation for information.
/etc/ld.so.conf.d/atlas-x86_64.conf
/usr/lib64/atlas
/usr/lib64/atlas/libatlas.so.3
/usr/lib64/atlas/libatlas.so.3.0
/usr/lib64/atlas/libcblas.so.3
/usr/lib64/atlas/libcblas.so.3.0
/usr/lib64/atlas/libclapack.so.3
/usr/lib64/atlas/libclapack.so.3.0
/usr/lib64/atlas/libf77blas.so.3
/usr/lib64/atlas/libf77blas.so.3.0
/usr/lib64/atlas/liblapack.so.3
/usr/lib64/atlas/liblapack.so.3.0
/usr/lib64/atlas/libptcblas.so.3
/usr/lib64/atlas/libptcblas.so.3.0
/usr/lib64/atlas/libptf77blas.so.3
/usr/lib64/atlas/libptf77blas.so.3.0
/usr/share/doc/atlas
/usr/share/doc/atlas/README.Fedora

Note the abundance of libraries, including cblas, clapack,
f77blas, lapack and pthreads versions.


On Fedora 21 we have:
$ rpm -qil atlas
Name        : atlas
Version     : 3.10.1
Release     : 16.fc21
Architecture: x86_64
Install Date: Sun 14 Dec 2014 07:01:03 PM EST
Group       : System Environment/Libraries
Size        : 22447409
License     : BSD
Signature   : RSA/SHA256, Mon 03 Nov 2014 11:49:33 AM EST, Key ID 89ad4e8795a43f
54
Source RPM  : atlas-3.10.1-16.fc21.src.rpm
Build Date  : Fri 31 Oct 2014 12:49:38 PM EDT
Build Host  : buildhw-09.phx2.fedoraproject.org
Relocations : (not relocatable)
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : http://math-atlas.sourceforge.net/
Summary     : Automatically Tuned Linear Algebra Software
Description :
The ATLAS (Automatically Tuned Linear Algebra Software) project is an
ongoing research effort focusing on applying empirical techniques in
order to provide portable performance. At present, it provides C and
Fortran77 interfaces to a portably efficient BLAS implementation, as
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 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,
the source package can be used to compile customized ATLAS packages;
see the documentation for information.
/etc/ld.so.conf.d/atlas-x86_64.conf
/usr/lib64/atlas
/usr/lib64/atlas/libsatlas.so.3
/usr/lib64/atlas/libsatlas.so.3.10
/usr/lib64/atlas/libtatlas.so.3
/usr/lib64/atlas/libtatlas.so.3.10
/usr/share/doc/atlas
/usr/share/doc/atlas/README.dist

Note the dearth of libraries - only directly atlas stuff.
Where did the rest disappear to? The _text_ still refers
to the missing packages. Looks incomplete!

Comment 4 Frantisek Kluknavsky 2014-12-16 14:35:28 UTC
All the code is still in the package. Separate libraries are now linked together and you need only libsatlas.so.number (or libtatlas.so.number if you wish the threaded version). This should be simpler than before, one library and you have all the functionality you need. Of course, unfortunately, it breaks builds which expect other libraries to exist. You can delete those '-lf77blas -lcblas ...' flags, only -lsatlas is needed.

Merging of separate libraries together is upstream decision and will probably last for some time.

Comment 5 Frantisek Kluknavsky 2014-12-16 14:40:44 UTC
An easy, fast and dirty workaround can be symlinking
libatlas.so   -> libsatlas.so
libcblas.so   -> libsatlas.so
libclapack.so -> libsatlas.so
...

Comment 6 Stuart R. DeGraaf 2014-12-16 21:01:14 UTC
(In reply to Frantisek Kluknavsky from comment #4)
> All the code is still in the package. Separate libraries are now linked
> together and you need only libsatlas.so.number (or libtatlas.so.number if
> you wish the threaded version). This should be simpler than before, one
> library and you have all the functionality you need. Of course,
> unfortunately, it breaks builds which expect other libraries to exist. You
> can delete those '-lf77blas -lcblas ...' flags, only -lsatlas is needed.
> 
> Merging of separate libraries together is upstream decision and will
> probably last for some time.

Thank you for clearing that up. Much simpler. But I needed this tip to help me figure it out. Thanks!


Note You need to log in before you can comment on or make changes to this bug.