D'abord, vérifions que j'ai bien compris les principes de base :
Si je comprends bien, les systèmes NUMA sont un réseau (asymétrique) de systèmes NUMA. nœuds où un nœud NUMA est généralement (mais pas toujours) un ensemble de CPU physiques. Dans un système NUMA, chaque nœud possède sa propre mémoire locale, et la mémoire des autres nœuds est disponible via un bus. La non-uniformité du réseau signifie que l'obtention de la mémoire étrangère entraîne un coût variable en fonction de la localité des deux nœuds impliqués dans une recherche de mémoire.
Maintenant, en supposant que j'ai bien compris, voici la sortie d'un vrai système Linux.
Le noyau supporte NUMA (a le support compilé dans au moins) :
$ grep NUMA /boot/config-`uname -r`
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y
CONFIG_ARCH_USES_NUMA_PROT_NONE=y
# CONFIG_NUMA_BALANCING_DEFAULT_ENABLED is not set
CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_AMD_NUMA=y
CONFIG_X86_64_ACPI_NUMA=y
CONFIG_NUMA_EMU=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y
CONFIG_ACPI_NUMA=y
Mais il n'y a qu'un seul nœud NUMA :
$ numactl -H
available: 1 nodes (0)
node 0 cpus: 0 1 2 3
node 0 size: 15955 MB
node 0 free: 5203 MB
node distances:
node 0
0: 10
Notez également qu'il n'existe qu'un seul chemin sur le bus NUMA, du nœud 0 au nœud 0 (il est intéressant de noter que la distance est de 10 et non de 0). Cela implique que tous les accès à la mémoire ont le même coût en termes de latence NUMA au moins.
Donc, puisqu'il n'y a qu'un seul nœud NUMA, il s'agit d'une machine SMP ordinaire, sans capacité NUMA, n'est-ce pas ? Je pense que oui.
Gracias.