[Bug 1177260] Switching python-numpy to plain BLAS causes significant performance regression
https://bugzilla.suse.com/show_bug.cgi?id=1177260 https://bugzilla.suse.com/show_bug.cgi?id=1177260#c45 --- Comment #45 from Stefan Br�ns <stefan.bruens@rwth-aachen.de> --- (In reply to Egbert Eich from comment #44)
(In reply to Stefan Br�ns from comment #42)
(In reply to Egbert Eich from comment #29)
@Stefan Br�ns: I've finally fixed what you've suggested in comment #4 - all flavors of OpenBLAS use the same SONAME so they can be used as plug-in replacements. You can find this in my home on OBS: home:eeich:branches:science/openblas - this also contains some cleanups. If I don't hear any objections I will submit it and later on push it to Factory.
What hasn't been done, yet, is to combine the lapack[e] & [c]blas libraries to a block as you've suggested in comment #11. This would again require to touch lapack and openblas.
This broke building for a lot of packages in SLE/Leap in the science project, as numpy is not build with the changed SONAME, and thus becomes unresolvable (the openblas from the science project shadows the package from the regular repository).
IMHO, this is an ABI breakage which has to be conditional. Only SLE/Leap 16/ALP should use the new name (and TW, of course).
For the time being, I have disabled openblas' "use_for_build" for Leap 15.4.
We can only have one thing: either retain the old SONAMEs or have a working update-alternatives on Leap. The only alternative I can thin of and hat I could look into is to create a libopenblas_pthread_compat package for SLE/Leap, with a libopenblas_pthread.so.0 created from openblas-pthread/libopenblas.so.0 and using patchelf to 'fix' the SONAME. The default has been to use the pthread variant of openblas. Since the dependency is on libopenblas_pthreads.so.0, it should be pulled in by zypper.
I think for Leap/SLE 15, the old SONAME is actually the better option. Otherwise, you need a full rebuild (at least the parts which directly or indirectly use openblas), othwerwise you may end up with a binary which links to openblas.so and openblas_pthreads.so at the same time. If you don't do a rebuild, you may end up with a user using the openmp openblas.so via update alternatives, and openblas_pthreads.so. I a quite sure this will not work. -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com