diff --git a/.github/workflows/tests_archdetect.yml b/.github/workflows/tests_archdetect.yml index 94fcf68d17..18d08a9023 100644 --- a/.github/workflows/tests_archdetect.yml +++ b/.github/workflows/tests_archdetect.yml @@ -23,6 +23,8 @@ jobs: - aarch64/neoverse_n1/Azure-Ubuntu20-Altra - aarch64/neoverse_n1/AWS-awslinux-graviton2 - aarch64/neoverse_v1/AWS-awslinux-graviton3 + - aarch64/nvidia/grace/Jureca-Rocky95 + - aarch64/google/axion/GCP-axion # commented out since these targets are currently not supported in software.eessi.io repo # (and some tests assume that the corresponding subdirectory in software layer is there) # - ppc64le/power9le/unknown-power9le diff --git a/init/arch_specs/eessi_arch_arm.spec b/init/arch_specs/eessi_arch_arm.spec index c0d74bd4ad..5e5e1fd3f2 100755 --- a/init/arch_specs/eessi_arch_arm.spec +++ b/init/arch_specs/eessi_arch_arm.spec @@ -1,5 +1,7 @@ # ARM CPU architecture specifications (see https://gpages.juszkiewicz.com.pl/arm-socs-table/arm-socs.html for guidance) # CPU implementers: 0x41 (ARM), 0x46 (Fujitsu) - also see https://github.com/hrw/arm-socs-table/blob/main/data/socs.yml +# To ensure that archdetect produces the correct ordering, CPU targets should be listed from the most specific +# to the most general. In particular, if CPU target A is a subset of CPU target B, then A must be listed before B # Software path in EESSI | 'Vendor ID' or 'CPU implementer' | List of defining CPU features "aarch64/a64fx" "0x46" "asimdhp sve" # Fujitsu A64FX @@ -7,3 +9,5 @@ "aarch64/neoverse_n1" "0x41" "asimddp" # AWS Graviton2 "aarch64/neoverse_v1" "ARM" "asimddp svei8mm" "aarch64/neoverse_v1" "0x41" "asimddp svei8mm" # AWS Graviton3 +"aarch64/nvidia/grace" "0x41" "sve2 sm3 sm4 svesm4" # NVIDIA Grace +"aarch64/google/axion" "0x41" "sve2 rng sm3 sm4 svesm4" # Google Axion diff --git a/tests/archdetect/aarch64/google/axion/GCP-axion.all.output b/tests/archdetect/aarch64/google/axion/GCP-axion.all.output new file mode 100644 index 0000000000..66bc16c804 --- /dev/null +++ b/tests/archdetect/aarch64/google/axion/GCP-axion.all.output @@ -0,0 +1 @@ +aarch64/google/axion:aarch64/nvidia/grace:aarch64/neoverse_v1:aarch64/neoverse_n1:aarch64/generic diff --git a/tests/archdetect/aarch64/google/axion/GCP-axion.cpuinfo b/tests/archdetect/aarch64/google/axion/GCP-axion.cpuinfo new file mode 100644 index 0000000000..86924d55f6 --- /dev/null +++ b/tests/archdetect/aarch64/google/axion/GCP-axion.cpuinfo @@ -0,0 +1,8 @@ +processor : 0 +BogoMIPS : 2000.00 +Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm ssbs sb dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng +CPU implementer : 0x41 +CPU architecture: 8 +CPU variant : 0x0 +CPU part : 0xd4f +CPU revision : 1 diff --git a/tests/archdetect/aarch64/google/axion/GCP-axion.output b/tests/archdetect/aarch64/google/axion/GCP-axion.output new file mode 100644 index 0000000000..bb5a3a1ee7 --- /dev/null +++ b/tests/archdetect/aarch64/google/axion/GCP-axion.output @@ -0,0 +1 @@ +aarch64/google/axion diff --git a/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.all.output b/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.all.output new file mode 100644 index 0000000000..9a516a963f --- /dev/null +++ b/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.all.output @@ -0,0 +1 @@ +aarch64/nvidia/grace:aarch64/neoverse_v1:aarch64/neoverse_n1:aarch64/generic diff --git a/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.cpuinfo b/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.cpuinfo new file mode 100644 index 0000000000..cd5024170f --- /dev/null +++ b/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.cpuinfo @@ -0,0 +1,8 @@ +processor : 0 +BogoMIPS : 2000.00 +Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm ssbs sb dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh +CPU implementer : 0x41 +CPU architecture: 8 +CPU variant : 0x0 +CPU part : 0xd4f +CPU revision : 0 diff --git a/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.output b/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.output new file mode 100644 index 0000000000..5878b25414 --- /dev/null +++ b/tests/archdetect/aarch64/nvidia/grace/Jureca-Rocky95.output @@ -0,0 +1 @@ +aarch64/nvidia/grace