Re: FlexiBLAS as BLAS/LAPACK manager - Fedora 33 System-Wide Change proposal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dominik 'Rathann' Mierzejewski <dominik@xxxxxxxxxxxxxx> writes:

> What exact alternative are you proposing, then? Carrying downstream
> patches to all BLAS/LAPACK implementations like Debian? I don't think
> that's sustainable.

You don't need patches to be able to substitute an ABI-compatible
version (with the soname counting towards the ABI).  See the BLIS
packaging, though it should have more shims.
https://loveshack.fedorapeople.org/blas-subversion.html describes what I
used in production, but it probably should be updated.

>> (I don't know what the environment modules alternative is, since
>> that's one way of specifying the late binding.)
>
> Environment modules are user-selectable sets of environment variable
> values and require affected packages to be built in a specific way.
> https://docs.fedoraproject.org/en-US/packaging-guidelines/EnvironmentModules/

I meant I don't know what specific use of the environment is being
rejected, especially as I'm told that's what I need to use, but not
LD_LIBRARY_PATH.  (For what it's worth, I think typical use of modules
is mostly a sign of engineering failure, but it's a reasonable way for
users to flip a runtime path.)

>> BLAS isn't alone in presenting a substitute interface like that.  It
>> works well with a heterogeneous HPC cluster where you want different
>> BLAS implementations on different nodes (think KNL, A64FX).
>
> I'm not sure what you mean here. What "substitute interface" are you
> talking about?

I guess that should have been "substitutable".  I can dynamically
substitute reference BLAS with another implementation of libblas.so.3 as
I can substitute libgomp.so.1 with a shim over libiomp (to get OMPT, for
instance) -- and I realize I should have submitted a patch for that.
That assumes you don't use symbols in the one implementation which
aren't in the substitute, of course.

>> There will be hoops to jump through to get packages to configure when
>> they don't know about the library.
>
> From what I understand from the proposal, FlexiBLAS looks like vanilla
> BLAS and LAPACK to the consumers. No hoop jumping required.

?? libflexiblas.so(.3) doesn't look like libblas.so(.3).  I've had to
prat about in hostile build systems even to use openblas at times.

>>  If I want to use a library that's
>> not included, I'm in the same position.  It's not clear to me a priori
>> what happens if you try to use just BLIS even, given that OpenBLAS'
>
> From what I understand, if you select BLIS, then it'll be used for all
> symbols it implements and netlib reference will be used for the rest.

But I might want to use libflame, for instance.
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux