Replies: 2 comments
-
Worse, unlike ia32 which over time implemented a few major architectural improvements there are no well-defined successive improvements to the x86_64 architecture. The CPU vendors arbitrarily pick features to (not) include in new CPUs, and these x86_64-vn sets bunch together random completely unrelated CPU features. |
Beta Was this translation helpful? Give feedback.
0 replies
-
See also #2147 which discusses how ix86 micro-architectures are currently broken |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
This is related to #2022, but taking it from a different angle
Background
x86_64 or amd64 has evolved quite a bit over the past decade(s) and new CPUs support a plethora more instructions than the original amd64 variants, leading to potentially higher performance when utilizing these instructions. As of today, there are multiple x86_64 baselines, but the crux is that there were new CPUs being sold in 2021 that did not yet support x86_64v2 and a majority of the CPUs does not support x86_64v3 at all. This means that increasing the required minimum arch to x86_64v2 will cut off too many users and is generally unacceptable by community Linux distributions (see multiple discussions on fedora devel or recently on openSUSE-factory).
Rebuilding the whole distro multiple times for x86_64v1 and x86_64v2/v3 is a potential solution, but mostly pointless, as very few packages offer any performance benefit, so this would just cost a lot of resources. It would be much better to just rebuild a subset of performance critical packages, e.g. the kernel, glibc, blas, lapack, etc. for both x86_64v1 and x86_64v2, publish both and allow rpm to install it.
Way forward
I don't know how feasible such an approach is, but I believe that community distributions will need something like this to stay competitive with commercial distributions which can afford to not support older hardware, whereas community distros cannot just drop these nor have the resources to rebuild everything multiple times.
@ffesti Told me that architecture handling is quite the mess atm and would need to be reworked. What needs to be done here?
Beta Was this translation helpful? Give feedback.
All reactions