hwloc lstopo Application
Le package logiciel Portable Hardware Locality (hwloc) fournit une abstraction portable (à travers les systèmes d'exploitation, les versions, les architectures, ...) de la topologie hiérarchique des architectures modernes, y compris les nœuds de mémoire NUMA, les sockets, les caches partagés, les cœurs et le multithreading simultané. Il rassemble également divers attributs système tels que les informations sur le cache et la mémoire ainsi que la localisation des dispositifs d'E/S tels que les interfaces réseau, les HCAs InfiniBand ou les GPU.
hwloc vise principalement à aider les applications à rassembler des informations sur des plateformes de calcul parallèle de plus en plus complexes afin de les exploiter de manière appropriée et efficace. Par exemple, deux tâches qui coopèrent étroitement devraient probablement être placées sur des cœurs partageant un cache. Cependant, deux tâches indépendantes gourmandes en mémoire devraient plutôt être réparties sur différents sockets afin de maximiser leur débit mémoire.
