On 4/3/21 9:51 pm, Filipe Laíns wrote:
On Thu, 2021-03-04 at 21:33 +1000, Allan McRae via arch-dev-public wrote:
On 3/3/21 10:54 am, Allan McRae via arch-dev-public wrote:
On 2/3/21 9:51 pm, Allan McRae wrote:
Hi all,
A new RFC has been opened here: https://gitlab.archlinux.org/archlinux/rfcs/-/merge_requests/2
Summary: Make -march=x86_64-v2 the default for our packages. This assumes the following instruction sets which are essentially available on all but the oldest AMD CPUs:
CMPXCHG16B, LAHF-SAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3
Please visit the above link for discussion.
Lets put discussion on this RFC on hold for a while. Clearly there is a reasonable amount of objection to making x86-64-v2 the default. While this mostly appears to be objection based on personal circumstances and not on the basis of whether this change is good for the distro, I will work within these limits.
A lot of comments have suggested adding x86-64-v2 and -v3 as additional architectures instead. I will revamp the the proposal to take that approach. Though, to do this automated would require more work it may be the push we need for a signing enclave to be set up.
Allan
Thank you. Though, I find this a bit dismissive of my feedback arguing that this would very likely not have any significant effect whatsoever in performance, and that it fails to solve the ISA extensions issue we have. While there was some feedback based on personal circumstances, I provided objective argumentation about how the proposal as is is probably not a good idea and not the best path forward.
As I said, I am reworking the RFC, so your comments are not ignored but instead just not addressed yet. You are correct that a lot of software where the gains are biggest already provide optimized paths. But there are still gains to be had, and not just in performance. When I recompiled my system with something similar to x86-64-v3, I gained significant battery life on my laptop on daily use. The power saving is likely more noticealbe than speed gains. As part of the updated RFC, I will get some benchmarks included. And I know some packages have multiple variants provided with different optimization level. But the user needs to find them to use them. Looking a pkgstats, that may happen for a decent proportion of tensorflow users, but the other packages not so much. And there are issues with discoverability, and choice of optimization levels. Allan