From 9eb12a0f2d0b6a8f21f4a32e9b582017104f2b8b Mon Sep 17 00:00:00 2001 From: Caspar van Leeuwen Date: Thu, 15 May 2025 12:04:45 +0200 Subject: [PATCH 1/7] Add icelake and cascadelake to archdetect --- init/arch_specs/eessi_arch_x86.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/init/arch_specs/eessi_arch_x86.spec b/init/arch_specs/eessi_arch_x86.spec index 46289bd4a9..d4245071e0 100755 --- a/init/arch_specs/eessi_arch_x86.spec +++ b/init/arch_specs/eessi_arch_x86.spec @@ -1,7 +1,10 @@ # x86_64 CPU architecture specifications +# The overview at https://github.com/InstLatx64/InstLatX64_Misc/tree/4802ff02415ed1ecdefddfd540615a27b617349c/SIMD_Euler may be helpful in defining this list # Software path in EESSI | Vendor ID | List of defining CPU features "x86_64/intel/haswell" "GenuineIntel" "avx2 fma" # Intel Haswell, Broadwell -"x86_64/intel/skylake_avx512" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl" # Intel Skylake, Cascade Lake +"x86_64/intel/skylake_avx512" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl" # Intel Skylake +"x86_64/intel/cascadelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 avx512_vnni" # Intel Cascade Lake +"x86_64/intel/icelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 avx512_vnni avx512_vbmi2" # Intel Icelake Lake "x86_64/intel/sapphirerapids" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 amx_tile" # Intel Sapphire/Emerald Rapids "x86_64/amd/zen2" "AuthenticAMD" "avx2 fma" # AMD Rome "x86_64/amd/zen3" "AuthenticAMD" "avx2 fma vaes" # AMD Milan, Milan-X From 60ea379888084121bd416b027428f826e62531fc Mon Sep 17 00:00:00 2001 From: Caspar van Leeuwen Date: Thu, 15 May 2025 12:08:49 +0200 Subject: [PATCH 2/7] Remove bf16 from icelake and cclake, it doesn't support it --- init/arch_specs/eessi_arch_x86.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/init/arch_specs/eessi_arch_x86.spec b/init/arch_specs/eessi_arch_x86.spec index d4245071e0..cf26e7f989 100755 --- a/init/arch_specs/eessi_arch_x86.spec +++ b/init/arch_specs/eessi_arch_x86.spec @@ -3,8 +3,8 @@ # Software path in EESSI | Vendor ID | List of defining CPU features "x86_64/intel/haswell" "GenuineIntel" "avx2 fma" # Intel Haswell, Broadwell "x86_64/intel/skylake_avx512" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl" # Intel Skylake -"x86_64/intel/cascadelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 avx512_vnni" # Intel Cascade Lake -"x86_64/intel/icelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 avx512_vnni avx512_vbmi2" # Intel Icelake Lake +"x86_64/intel/cascadelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_vnni" # Intel Cascade Lake +"x86_64/intel/icelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_vnni avx512_vbmi2" # Intel Icelake Lake "x86_64/intel/sapphirerapids" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 amx_tile" # Intel Sapphire/Emerald Rapids "x86_64/amd/zen2" "AuthenticAMD" "avx2 fma" # AMD Rome "x86_64/amd/zen3" "AuthenticAMD" "avx2 fma vaes" # AMD Milan, Milan-X From 099e44d18f375b1701f5a193209b02c2f1d17437 Mon Sep 17 00:00:00 2001 From: Caspar van Leeuwen Date: Thu, 15 May 2025 13:43:47 +0200 Subject: [PATCH 3/7] Add Cascadelake to archdetect tests --- .../cascadelake/AWS-Rocky8-8259CL.all.output | 1 + .../cascadelake/AWS-Rocky8-8259CL.cpuinfo | 24 +++++++++++++++++++ .../cascadelake/AWS-Rocky8-8259CL.output | 1 + 3 files changed, 26 insertions(+) create mode 100644 tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.all.output create mode 100644 tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.cpuinfo create mode 100644 tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.output diff --git a/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.all.output b/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.all.output new file mode 100644 index 0000000000..b34dcc1506 --- /dev/null +++ b/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.all.output @@ -0,0 +1 @@ +x86_64/intel/cascadelake:x86_64/intel/skylake_avx512:x86_64/intel/haswell:x86_64/generic diff --git a/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.cpuinfo b/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.cpuinfo new file mode 100644 index 0000000000..6bac63795e --- /dev/null +++ b/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.cpuinfo @@ -0,0 +1,24 @@ +Architecture: x86_64 +CPU op-mode(s): 32-bit, 64-bit +Byte Order: Little Endian +CPU(s): 16 +On-line CPU(s) list: 0-15 +Thread(s) per core: 2 +Core(s) per socket: 8 +Socket(s): 1 +NUMA node(s): 1 +Vendor ID: GenuineIntel +CPU family: 6 +Model: 85 +Model name: Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz +Stepping: 7 +CPU MHz: 2500.000 +BogoMIPS: 5000.00 +Hypervisor vendor: KVM +Virtualization type: full +L1d cache: 32K +L1i cache: 32K +L2 cache: 1024K +L3 cache: 36608K +NUMA node0 CPU(s): 0-15 +Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke avx512_vnni diff --git a/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.output b/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.output new file mode 100644 index 0000000000..b6f68edac7 --- /dev/null +++ b/tests/archdetect/x86_64/intel/cascadelake/AWS-Rocky8-8259CL.output @@ -0,0 +1 @@ +x86_64/intel/cascadelake From 9be7fce1290e34df5a41948c0e8f2e3cda66d97b Mon Sep 17 00:00:00 2001 From: Caspar van Leeuwen Date: Thu, 15 May 2025 13:46:10 +0200 Subject: [PATCH 4/7] Add icelake test for eessi_archdetect --- .../intel/icelake/AWS-Rocky8-8375C.all.output | 1 + .../intel/icelake/AWS-Rocky8-8375C.cpuinfo | 24 +++++++++++++++++++ .../intel/icelake/AWS-Rocky8-8375C.output | 1 + 3 files changed, 26 insertions(+) create mode 100644 tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.all.output create mode 100644 tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.cpuinfo create mode 100644 tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.output diff --git a/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.all.output b/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.all.output new file mode 100644 index 0000000000..07303e013a --- /dev/null +++ b/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.all.output @@ -0,0 +1 @@ +x86_64/intel/icelake:x86_64/intel/cascadelake:x86_64/intel/skylake_avx512:x86_64/intel/haswell:x86_64/generic diff --git a/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.cpuinfo b/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.cpuinfo new file mode 100644 index 0000000000..d089b56aee --- /dev/null +++ b/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.cpuinfo @@ -0,0 +1,24 @@ +Architecture: x86_64 +CPU op-mode(s): 32-bit, 64-bit +Byte Order: Little Endian +CPU(s): 16 +On-line CPU(s) list: 0-15 +Thread(s) per core: 2 +Core(s) per socket: 8 +Socket(s): 1 +NUMA node(s): 1 +Vendor ID: GenuineIntel +CPU family: 6 +Model: 106 +Model name: Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz +Stepping: 6 +CPU MHz: 2899.930 +BogoMIPS: 5799.86 +Hypervisor vendor: KVM +Virtualization type: full +L1d cache: 48K +L1i cache: 32K +L2 cache: 1280K +L3 cache: 55296K +NUMA node0 CPU(s): 0-15 +Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd ida arat avx512vbmi pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq rdpid md_clear flush_l1d arch_capabilities diff --git a/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.output b/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.output new file mode 100644 index 0000000000..ea242161b3 --- /dev/null +++ b/tests/archdetect/x86_64/intel/icelake/AWS-Rocky8-8375C.output @@ -0,0 +1 @@ +x86_64/intel/icelake From 300086c646eafd555b6f36e108f18b62b08016dc Mon Sep 17 00:00:00 2001 From: Caspar van Leeuwen Date: Thu, 15 May 2025 13:47:00 +0200 Subject: [PATCH 5/7] Adjust modified output for sapphire rapids with 'all' flag --- .../x86_64/intel/sapphirerapids/AWS-Rocky8-8488C.all.output | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/archdetect/x86_64/intel/sapphirerapids/AWS-Rocky8-8488C.all.output b/tests/archdetect/x86_64/intel/sapphirerapids/AWS-Rocky8-8488C.all.output index e7e1140e6c..8f8df1be7e 100644 --- a/tests/archdetect/x86_64/intel/sapphirerapids/AWS-Rocky8-8488C.all.output +++ b/tests/archdetect/x86_64/intel/sapphirerapids/AWS-Rocky8-8488C.all.output @@ -1 +1 @@ -x86_64/intel/sapphirerapids:x86_64/intel/skylake_avx512:x86_64/intel/haswell:x86_64/generic +x86_64/intel/sapphirerapids:x86_64/intel/icelake:x86_64/intel/cascadelake:x86_64/intel/skylake_avx512:x86_64/intel/haswell:x86_64/generic From 267cecb4e04e3c7affaf03b7a1bb259800e2b889 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 23 May 2025 15:57:03 +0200 Subject: [PATCH 6/7] use main in URL --- init/arch_specs/eessi_arch_x86.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/init/arch_specs/eessi_arch_x86.spec b/init/arch_specs/eessi_arch_x86.spec index cf26e7f989..6ff7c3f29e 100755 --- a/init/arch_specs/eessi_arch_x86.spec +++ b/init/arch_specs/eessi_arch_x86.spec @@ -1,5 +1,5 @@ # x86_64 CPU architecture specifications -# The overview at https://github.com/InstLatx64/InstLatX64_Misc/tree/4802ff02415ed1ecdefddfd540615a27b617349c/SIMD_Euler may be helpful in defining this list +# The overview at https://github.com/InstLatx64/InstLatX64_Misc/tree/main/SIMD_Euler may be helpful in defining this list # Software path in EESSI | Vendor ID | List of defining CPU features "x86_64/intel/haswell" "GenuineIntel" "avx2 fma" # Intel Haswell, Broadwell "x86_64/intel/skylake_avx512" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl" # Intel Skylake From 838f082ca7a02ce12c8c56e5cda642daeca0d786 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 23 May 2025 15:58:32 +0200 Subject: [PATCH 7/7] fix alignment by adding tabs --- init/arch_specs/eessi_arch_x86.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/init/arch_specs/eessi_arch_x86.spec b/init/arch_specs/eessi_arch_x86.spec index 6ff7c3f29e..4515db610a 100755 --- a/init/arch_specs/eessi_arch_x86.spec +++ b/init/arch_specs/eessi_arch_x86.spec @@ -3,8 +3,8 @@ # Software path in EESSI | Vendor ID | List of defining CPU features "x86_64/intel/haswell" "GenuineIntel" "avx2 fma" # Intel Haswell, Broadwell "x86_64/intel/skylake_avx512" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl" # Intel Skylake -"x86_64/intel/cascadelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_vnni" # Intel Cascade Lake -"x86_64/intel/icelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_vnni avx512_vbmi2" # Intel Icelake Lake +"x86_64/intel/cascadelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_vnni" # Intel Cascade Lake +"x86_64/intel/icelake" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_vnni avx512_vbmi2" # Intel Icelake Lake "x86_64/intel/sapphirerapids" "GenuineIntel" "avx2 fma avx512f avx512bw avx512cd avx512dq avx512vl avx512_bf16 amx_tile" # Intel Sapphire/Emerald Rapids "x86_64/amd/zen2" "AuthenticAMD" "avx2 fma" # AMD Rome "x86_64/amd/zen3" "AuthenticAMD" "avx2 fma vaes" # AMD Milan, Milan-X