On Wed, Jun 16, 2021 at 11:02:23PM +0200, Fabio Valentini wrote:
On Wed, Jun 16, 2021 at 9:52 PM Benjamin Beasley
<code(a)musicinmybrain.net> wrote:
>
> At the risk of overextending an already well-elaborated thread, I would like to
point out that my main workstation, for Fedora packaging and other purposes, has an Intel
Q6600 (Core 2 Quad) that does NOT meet the requirements for x86_64-v2. I built it in 2007,
and it has exceeded all expectations for how long it would remain useful. The desktop I
maintain for my parents uses an AMD Phenom II X4 965 processor, circa 2009-2010, and it
doesn’t support x86_64-v2 either—but it just keeps on working.
>
> Now, I can afford to replace my own workstation if I must—and I’m planning to do so
in another year or two when the rolling component shortages settle out a little—but I
suspect there are still many others like me, some of whom might not be in a position to
just sigh and buy new hardware. Even for those who can, the pandemic and the crypto crazes
have made it an exceptionally bad time to be forced into an upgrade.
So ... maybe the following approach would be a way forward that would
benefit everybody (TM):
1. stay with x86-64-baseline for Fedora for now (performance critical
software often has runtime CPU feature detection and dynamic dispatch
anyway)
2. identify "performance sensitive" libraries in Fedora that do not
have runtime CPU feature detection, and which would benefit from
having the instructions that are added with x86-64-v2 available (looks
like the the performance benefit of enabling this overall is small
(?), but maybe there are exceptions, where bumping from x86-64 to
x86-64-v2 would make a bigger difference for some library)
3. make it easy to build the libraries identified under 2. twice (or
three times, with x86-64-v3?) and install them in the locations where
the loader can find them (leveraging the new HWCAPS functionality)
A good idea. But in that case it'd make sense to raise the bar quite
a bit higher, and e.g. compile specifically for modern Intel CPUs
and e.g. AMD Ryzen. If we don't have to make the baseline acceptable
to everyone, we should make a big jump.
Zbyszek
> This approach would allow older machines to continue to run the latest
> Fedora just fine, while libraries that *would* benefit from more
> available CPU instructions would run faster for the people who have
> newer hardware.