Re: [PATCH 2/2] x86, Makefile: Add new generic x86-64 settings v2/v3/v4

From: Tor Vic
Date: Tue Aug 17 2021 - 15:12:35 EST




On 17.08.21 18:36, Borislav Petkov wrote:
> On Tue, Aug 17, 2021 at 04:24:48PM +0200, torvic9@xxxxxxxxxxx wrote:
>> Add new generic x86-64 CPU tunings introduced with recent versions of
>> gcc and clang, as documented in x86-64-psABI [1].
>>
>> This is taken straight from graysky's CPU optimization patch with minor
>> modifications [2].
>>
>> [1] https://gitlab.com/x86-psABIs/x86-64-ABI/-/commit/77566eb03bc6a326811cb7e9a6b9396884b67c7c
>> [2] https://github.com/graysky2/kernel_compiler_patch
>>
>> Signed-off-by: Tor Vic <torvic9@xxxxxxxxxxx>
>> ---
>> arch/x86/Kconfig.cpu | 26 +++++++++++++++++++++++++-
>> arch/x86/Makefile.cpu | 6 ++++++
>> 2 files changed, 31 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/Kconfig.cpu b/arch/x86/Kconfig.cpu
>> index 814fe0d349b0..a2c872aa5a0b 100644
>> --- a/arch/x86/Kconfig.cpu
>> +++ b/arch/x86/Kconfig.cpu
>> @@ -294,6 +294,30 @@ config GENERIC_CPU
>> Generic x86-64 CPU.
>> Run equally well on all x86-64 CPUs.
>>
>> +config GENERIC_CPU_V2
>> + bool "Generic-x86-64-v2"
>> + depends on ( CC_IS_GCC && GCC_VERSION > 110000 ) || ( CC_IS_CLANG && CLANG_VERSION >= 120000 )
>> + depends on X86_64
>> + help
>> + Generic x86-64 CPU.
>> + Run equally well on all x86-64 CPUs with min support of x86-64-v2.
>> +
>> +config GENERIC_CPU_V3
>> + bool "Generic-x86-64-v3"
>> + depends on ( CC_IS_GCC && GCC_VERSION > 110000 ) || ( CC_IS_CLANG && CLANG_VERSION >= 120000 )
>> + depends on X86_64
>> + help
>> + Generic x86-64-v3 CPU with v3 instructions.
>> + Run equally well on all x86-64 CPUs with min support of x86-64-v3.
>> +
>> +config GENERIC_CPU_V4
>> + bool "Generic-x86-64-v4"
>> + depends on ( CC_IS_GCC && GCC_VERSION > 110000 ) || ( CC_IS_CLANG && CLANG_VERSION >= 120000 )
>> + depends on X86_64
>> + help
>> + Generic x86-64 CPU with v4 instructions.
>> + Run equally well on all x86-64 CPUs with min support of x86-64-v4.
>
> Every once in a while, patches like that pop up without any real numbers
> advocating for the additional and perhaps unnecessary complexity.
>
> If those -march switches don't bring any measureable improvements - and
> I highly doubt they do - you shouldn't waste time with submitting them.

In other words, I should back up these additions with benchmarks?
I have some slight doubts too, but I'll gladly do so and provide
some results with a v2.

>
> Thx.
>