On 2017-05-10 18:01 +0200, Kay F. Jahnke wrote:
> @pabs
> 
> @wookey
> 
> > There is (as yet) no mechanism in packing to select packages by
> > hardware variant or optimisation. It has been mooted, and could be
> > done, but it's a big job, which would take years to roll out, and
> > no-one has stepped up to make it work. So for now your favourite
> > mechanism is not possible.
> 
> I had something simpler in mind. I had hoped that a debian package would
> provide some sort of target-side script which is run when the application
> deploys with the user. Then it would be easy to have a bit of code à la
> 
> #! /bin/bash
> 
> for instruction_set in mmx sse sse2 sse3 ssse3 sse4 sse4a sse4.1 sse4.2 avx
> avx2 avx512f avx512pf avx512er avx512cd
> do
>   if [[ $( lscpu | grep $instruction_set ) ]]
>   then
>     bestarch=$instruction_set
>   fi
> done
> 
> mv myprogram_$bestarch $target_bin/myprogram

OK. You can run a script on install which would do something like, and
would work under most circumstances.
https://www.debian.org/doc/debian-policy/ch-maintainerscripts.html

You should use a link rather than mv, and remember to tidy it up
correctly on removal. Note that such scripts should be idempotent.

Because it is install-time, not run-time, detection it would go wrong
in a range of circumstances, so is frowned-upon. (Installing images,
hardware which gets upgraded, keeping the OS image, cross-installing,
NFS-mounting, containers etc).

But yes, it is possible in the absence of more correct solutions. It
would be much better to run such a 'choose-binary' script at runtime
and have it run the right one as that would work in all the
circumstances I can think of offhand. 

How fat would 15 versions of the program be (on x86)? Do you really
need all 15? Might a subset suffice.,

> > Does this software only work on x86 or does it work on other
> > architectures, with other vector units (neon, altivec)? Remember to
> > consider more than just x86 when pondering this issue.
> 
> I am using Vc, so whatever Vc supports, my software supports as well. Vc is
> a generic C++ library to abstract away the architecture.  I've coded so that 
> my program will also run without using the vector units

OK. Looks like neon support is 'in development'. And you can run on
non-vectorised hardware (but only very slowly).

> Am 10.05.2017 um 13:56 schrieb Christian Seiler:
> 
> pardon me, but what's an RC bug?

'Release Critical'. i.e so bad the software is not good enough for
release in Debian stable with this bug.

Wookey
-- 
Principal hats:  Linaro, Debian, Wookware, ARM
http://wookware.org/

Attachment: signature.asc
Description: Digital signature

Reply via email to