On Fri, Mar 25, 2022 at 11:34:17PM +0100, Adam Borowski wrote:
> Hi!

Hi Adam!

>...
> * while a hard Depends: works for leafy packages, on a library it
>   disallows having alternate implementations that don't need the
>   library in question.  Eg, libvectorscan5 blocks a program that
>   uses it from just checking the regexes one by one.
> 
> Suggestions?

glibc 2.33 added a modernized version of the old hwcaps.
If a package builds a library several times with different optimizations 
and installs them into the correct directories in the binary package, 
the dynamic linker will automatically select the fastest one supported 
by the hardware.

SIMDe (or similar approaches) could be used to build variant(s) of the 
library that have compile-time emulation of SIMD instructions in the 
lower baseline builds of vectorscan.

People using libvectorscan5 on modern hardware with SSE 4.2 would then 
get the properly optimized fast version, while people on older hardware 
would get a version that is slow but works.

For binaries, I have seen packages in the Debian Med (?) team that build 
several variants of a program and have a tiny wrapper program that chooses
the correct one at startup.

> Meow!

cu
Adrian

Reply via email to