Re: F42 Change Proposal: Optimized Binaries for the AMD64 / x86_64 Architecture (v2) (self-contained)

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

 



On Sun, Jan 12, 2025 at 2:36 PM Zbigniew Jędrzejewski-Szmek
<zbyszek@xxxxxxxxx> wrote:
>
> On Sun, Jan 12, 2025 at 05:21:18PM +0100, Vitaly Zaitsev via devel wrote:
> > On 12/01/2025 13:02, Christoph Erhardt wrote:
> > > 1. Not all packages but only those whose maintainers explicitly opt in.
> >
> > Yes, at the first stage. But over time the number of packages can increase
> > significantly.
>
> I think any massive use of this scheme is unlikely. Note that we'd
> want to this only for packages where the optimized code yields
> noticeable benefits. There just aren't that many packages which do
> significant number crunching _and_ don't already use some kind of
> runtime cpu detection.
>
> > > 2. The duplication will affect only the executable ELFs - i.e. the
> > > contents of `/usr/bin` - shipped by these packages. There will be no
> > > duplication of shared libraries, data files or anything else.
> >
> > Shared libraries used by affected packages should also be rebuilt with these
> > optimizations. For example, Firefox has most of its logic in *.so files.
> >
> > > One effect this *will* have is a slightly increased latency for
> > > launching an affected program.
> >
> > How much?
>
> Benchmarks indicate 100–1000 μs.

My concern is that this defeats most methods of observability. It's
essentially the same as the double-fork problem we used to have with
system services. The stub will fork out and exec a new binary, which
means you lose track of the binary and can't reliably trace it.

To be honest, this only makes sense for ad-hoc stuff (like stuff
installed in the user's ~/bin or ~/.local/bin directories) rather than
something installed system-wide. For stuff installed into /usr, we
should just allow packages to be optionally built with the higher
microarchitecture level in addition to the base one and allow DNF to
sort and prefer packages accordingly.




--
真実はいつも一つ!/ Always, there's only one truth!
-- 
_______________________________________________
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
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[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