SuccessChanges

Summary

  1. x86: document the array of cpu features (details)
  2. x86: use a global is_hybrid flag (details)
  3. x86: remove the explicit apic_number in leaves 0xb/0x0f (details)
  4. gather-cpuid: note about future AMD 0x8000002[78] leaves (details)
  5. x86: Intel has a new "DieGrp" level in the CPUID doc (details)
  6. x86: only try to build die objects and unit/tile/module groups if we found some info (details)
  7. x86: update the loop break when reading topology cpuid leaves 0x1f/0x0b (details)
  8. x86: add support for AMD 0x80000026 CPUID leaf (details)
  9. tests/x86: add a amd zen4 genoa case for cpuid leaf 0x80000026 (details)
Commit e40c3aa6f91739e2711efb45cb75bf02e998dd30 by brice.goglin
x86: document the array of cpu features

By the way, we already get word 16 so save it too.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
Commit 9a54af46b9743cd45fecd3e6aadbdc81d06f7918 by brice.goglin
x86: use a global is_hybrid flag

The Intel hybrid feature bit is reserved on AMD, so define
our own flag that we'll update separately on AMD later.

By the way, restrict the Intel cpukinds code to Intel now
that it depends on that non-Intel-specific flag.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
Commit 57328e6c146d104be6b63dd7585937173f5a1037 by brice.goglin
x86: remove the explicit apic_number in leaves 0xb/0x0f

It's the number of logical procs in the next level,
but the type of that level isn't known in advance anyway
(contrary to what some comments were sort of saying,
which could confuse future changes).

And we don't use that number anyway, just keep it in debugging messages.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
Commit a224416f454e62dcca7d1c6288541a57d381c52d by brice.goglin
gather-cpuid: note about future AMD 0x8000002[78] leaves

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedutils/hwloc/hwloc-gather-cpuid.c (diff)
Commit e3247e63306ad466bc28d09c93f5d4fe2600917f by brice.goglin
x86: Intel has a new "DieGrp" level in the CPUID doc

Not sure what it corresponds to, keep it as an unknown level for now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
Commit 1623f38501fd3dd812a9d086beef7ec11aa23298 by brice.goglin
x86: only try to build die objects and unit/tile/module groups if we found some info

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
Commit 20c794500c810686b0c0099b1e099c7461ff9f6b by brice.goglin
x86: update the loop break when reading topology cpuid leaves 0x1f/0x0b

AMD supports 0x0b but they don't specify the same break condition.
Things worked fine in practice but a new AMD variant is coming,
so don't assume any implicit compatibility with Intel anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
Commit ae6f3cc63493190daee19ff062182980b3ebcd73 by brice.goglin
x86: add support for AMD 0x80000026 CPUID leaf

This new leaf is similar to Intel 0x0b (already supported on AMD)
and Intel 0x1f but it comes with AMD-specific levels (CCX="Complex"
and CCD=Die which doesn't have the same value as Intel die level).

This is supported on Zen4 (at least Genoa EPYCs) where there's
currently a single CCX per CCD, hence we get Dies (but no "Complex" groups).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modifiedhwloc/topology-x86.c (diff)
The file was modifiedinclude/private/private.h (diff)
The file was modifieddoc/hwloc.doxy (diff)
Commit c2b03ae6cd2ac563b09e0548a488e87e424b54dc by brice.goglin
tests/x86: add a amd zen4 genoa case for cpuid leaf 0x80000026

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/x86/AMD-19h-Zen4-2xEpyc-9654.xml
The file was addedtests/hwloc/x86/AMD-19h-Zen4-2xEpyc-9654.tar.bz2
The file was addedtests/hwloc/x86/AMD-19h-Zen4-2xEpyc-9654.test
The file was modifiedtests/hwloc/x86/Makefile.am (diff)