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: I8af0ceb692eefec7433e1fd5149379244da799c4master
parent
b9f87817a1
commit
5dce7964ef
13
guix/cpu.scm
13
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
|
"Return a matching psABI micro-architecture, allowing optimizations for x86_64
|
||||||
CPUs for compilers which don't allow for more focused optimizing."
|
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
|
;; 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
|
;; https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex
|
||||||
(match gcc-architecture
|
(match gcc-architecture
|
||||||
((or "graniterapids-d" "graniterapids" "tigerlake" "sapphirerapids"
|
((or "graniterapids-d" "graniterapids" "tigerlake" "sapphirerapids"
|
||||||
"cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" "knl"
|
"cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm"
|
||||||
"skylake-avx512" "pantherlake" "clearwaterforest" "arrowlake-s"
|
"knl" "skylake-avx512"
|
||||||
"sierraforest" "alderlake" "skylake" "broadwell" "haswell"
|
"znver4")
|
||||||
"znver4" "znver3" "znver2" "znver1" "bdver4")
|
"x86_64-v4")
|
||||||
|
((or "pantherlake" "clearwaterforest" "arrowlake-s" "sierraforest"
|
||||||
|
"alderlake" "skylake" "broadwell" "haswell"
|
||||||
|
"znver3" "znver2" "znver1" "bdver4")
|
||||||
"x86_64-v3")
|
"x86_64-v3")
|
||||||
((or "sandybridge" "tremont" "goldmont-plus" "goldmont" "silvermont"
|
((or "sandybridge" "tremont" "goldmont-plus" "goldmont" "silvermont"
|
||||||
"nehalem" "bonnell" "core2"
|
"nehalem" "bonnell" "core2"
|
||||||
|
|
Reference in New Issue