From 5dce7964ef7c368d421c5a0c8738be06ed57ea0e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 4 Mar 2024 13:59:49 +0200 Subject: guix: cpu: Autodetect the x86-64-v4 microarchitecture. * guix/cpu.scm (gcc-architecture->micro-architecture-level): Sort gcc-architectures which have AVX512F support into x86-64-v4. Change-Id: I8af0ceb692eefec7433e1fd5149379244da799c4 --- guix/cpu.scm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index c5837ade7f..6891d9f266 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -296,14 +296,17 @@ correspond roughly to CPU, a record as returned by 'current-cpu'." "Return a matching psABI micro-architecture, allowing optimizations for x86_64 CPUs for compilers which don't allow for more focused optimizing." ;; Matching gcc-architectures isn't an easy task, with the rule-of-thumb being - ;; 'Haswell and higher' qualify for x86_64-v3. + ;; AVX512F+ for x86_64-v4, AVX+ for x86_64-v3. ;; https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex (match gcc-architecture ((or "graniterapids-d" "graniterapids" "tigerlake" "sapphirerapids" - "cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" "knl" - "skylake-avx512" "pantherlake" "clearwaterforest" "arrowlake-s" - "sierraforest" "alderlake" "skylake" "broadwell" "haswell" - "znver4" "znver3" "znver2" "znver1" "bdver4") + "cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" + "knl" "skylake-avx512" + "znver4") + "x86_64-v4") + ((or "pantherlake" "clearwaterforest" "arrowlake-s" "sierraforest" + "alderlake" "skylake" "broadwell" "haswell" + "znver3" "znver2" "znver1" "bdver4") "x86_64-v3") ((or "sandybridge" "tremont" "goldmont-plus" "goldmont" "silvermont" "nehalem" "bonnell" "core2" -- cgit v1.2.3