Skip to content
Success

Changes

Summary

  1. doxy: more links from/to the topo attributes section (details)
  2. completions: add info/calc/bind/distrib --restrict-flags (details)
  3. contrib/dist/publish_doc: display home page links (details)
  4. linux: add support for generic-initiator ACPI HMAT information (details)
  5. Move PGI compiler check before GNU (details)
  6. linux: fix comments about generic initiators (details)
  7. linux: add support for generic-initiator ACPI HMAT performance information (details)
  8. tests/linux: add a sysfs test with complex initiators/targets (details)
  9. tests/linux: remove fakememinitiators-1npc+1npc (details)
  10. contrib/android: fix the VERSION (details)
  11. contrib/android: also fix version individual major/minor/release numbers (details)
  12. contrib/android: also update the apk version (details)
  13. contrib/android: remove HWLOC_VERSION from private config.h (details)
  14. contrib/git-hooks: add a script for checking version numbers in pre-commit hooks (details)
  15. contrib/git-hooks: add a pre-commit hook template (details)
  16. bitmap: fix hwloc_bitmap_nr_ulongs() (details)
  17. tests/bitmap: check bitmaps with single 0 bit and single full ulong (details)
  18. contrib/ci.inria.fr: display the windows MSVC build environment (details)
  19. contrib/ci.inria.fr: run hwloc-info --support on cygwin too (details)
  20. lstopo/cairo: only set the line thickness once (details)
  21. contrib/android: update to apk 1.5.1 (details)
  22. contrib/android: cleanup RGB color parameter names (details)
  23. git-hooks/check-version: update to new android gradle version format (details)
  24. lstopo-ascii: Use last colors instead of first colors (details)
  25. memattrs: try to clarify that most initiators should be cpusets for now (details)
  26. memattrs: some doxygen fixes (details)
  27. linux: factorize some fd/path reading functions back (details)
  28. linux: rework read_path_by_length() return value (details)
  29. linux: use helpers for reading tid location (details)
  30. linux: use helpers for reading nvidia gpu numa nodes (details)
  31. linux: use helpers for reading os device numa node (details)
  32. linux: use helpers for reading the pci config space (details)
  33. tests/diff: fix the test when the first NUMA node is CPU less (details)
  34. core: abstract-out hwloc__tma_dup_infos() (details)
  35. API: add hwloc/cpukinds.h for exposing difference between cores (details)
  36. xml/import: factorize out the actual parsing on non-object-specific info attr (details)
  37. xml: add cpukinds import/export (details)
  38. tests/xml: add a case with cpukinds (details)
  39. lstopo: add --cpukinds option (details)
  40. x86: use the hybrid leaf to build a cpukinds based on the core type (details)
  41. linux: read cpufreq/cpuinfo_max_freq and base_frequency to create cpukinds (details)
  42. windows: use RtlGetVersion() for reliable version checks without manifest (details)
  43. windows: add cpukinds using the native efficiency class in Windows 10 (details)
  44. cpukinds: add some ranking/efficiency heuristics (details)
  45. cpukinds: deduplicate identical info names/values (details)
  46. doxy: add cpukinds info in topology attributes (details)
  47. tests/linux: add heterogenous frequencies to fakeheteronuma for cpukinds (details)
  48. tests/x86: add a test with fake cpukind information (details)
  49. utils/hwloc-calc: add --cpukind (details)
  50. utils/tests: check cpukinds in test-hwloc-calc (details)
  51. utils/hwloc-info: display which CPU kind(s) CPU-side objects are included in (details)
  52. utils/tests: check hwloc-info cpukinds output (details)
  53. API: add hwloc_cpukinds_register() (details)
  54. tests: add a cpukinds API test (details)
  55. utils/hwloc-annotate: add cpukind command (details)
  56. utils/tests: check cpukinds in hwloc-annotate (details)
  57. API: add a cpukind_efficiency bit in the discovery support array (details)
  58. lstopo/core: add cpukind attributes to object userdata (details)
  59. lstopo/draw: change the format of PU boxes for CPU kinds (details)
  60. linux/cpukinds: maxfreq isn't always maxfreq anymore (details)
  61. linux/cpukinds: sort by frequency before registering (details)
  62. API: bump HWLOC_API_VERSION to 0x00020400 (details)
  63. ci.inria.fr/browse_jenkins_logs.sh: update examples (details)
  64. contrib/android: fix the apk manifest name (details)
  65. contrib/android: save the app icon original files (details)
  66. contrib/android: fix sharing of graphic output (details)
  67. linux: use Linux 5.11 sysfs cpu types to detect Intel Atom/Core types (details)
  68. tests/linux: add Linux sysfs cpu types to fakeheterocpunuma (details)
  69. doxy: fix LinuxCPUTyle cpukind attribute description (details)
  70. VERSION: master is now 2.5 (details)
  71. cpukinds: fix the checking for duplicate values when ranking by info (details)
  72. distances: uniformize and document NUMALatency matrices (details)
  73. autogen: fix MacOS X Big Sur libtool.m4 bug by patching configure (details)
  74. utils/misc: remove a useless and harmless loop duplicate (details)
  75. utils/misc: improve the printing of distance matrices (details)
  76. core: fortify bridge downstream attribute use (details)
  77. git-hooks/check-versions: better error messages when Windows VERSION is outdated (details)
  78. NEWS: bring official 2.4.0 bullets in master (details)
  79. Fixed a memory leak when destroying hwloc_linux_cpufreqs objects. (details)
  80. distances: fix the import of large heterogeneous distance matrices (details)
  81. tests/xml/fakeheterodistances: enlarge matrices to test hetero-indexes on multiple lines (details)
  82. plugins.h: clarify that things may change when the component ABI is bumped (details)
  83. ci.inria.fr/sonar: update languages for recent sonarscanner releases (details)
  84. ci.inria.fr/sonar: output the sonar-scanner version (details)
  85. configure: add --with-cuda=<dir> (details)
  86. hwloc/opencl.h: fix AMD OpenCL device locality when PCI bus/device >= 128 (details)
  87. ci.inria.fr/sonarscanner: update exclusions (details)
  88. Fix GCC checks to use the vendor name (details)
  89. contrib/android: remove unused duplicate android manifest (details)
  90. x86: add a summary of PU/APIC/Core/Pkg/Node info in verbose debug (details)
  91. x86: fix full discovery enabling when FreeBSD/NetBSD backends only created PUs (details)
  92. x86: update general comments about this backend (details)
  93. doc: Add missing dependency (details)
  94. configure: pass -Werror when checking compiler options (details)
  95. autogen: use bash explicitly (details)
  96. configure: detect when a patched libtool was used (details)
  97. core: mark the topology as modified when we replace an object (details)
  98. core: fix inserting of custom groups replacing an existing ones (details)
  99. tests/groups: check the merging of identical groups with higher/smaller kinds (details)
  100. API: clarify the documentation of alloc/insert_group() (details)
  101. lstopo: hide --top groups whenever possible (details)
  102. core: add assertions about local/total memory in debug (details)
  103. utils/hwloc-ps.1: fix a ref to --disallowed (details)
  104. tests/shmem: cleanup the enabling of specific distance checks (details)
  105. tests/shmem: also test topologies with memattrs/cpukinds/io from XML (details)
  106. Fix check for IBM xl compilers for v13.1 and later. (details)
  107. Fix configury where most compilers will get mislabeled as 'gnu'. (details)
  108. utils/gather-cpuid: dump the 0x19 leaf (details)
  109. configure: don't define cuda common vars unless needed (opencl/nvml/cuda) (details)
  110. cpukinds: fix the checking for duplicate ranking values (details)
  111. tests/x86+linux: allow .env file to change the x86,linux order (details)
  112. tests/x86+linux: add a test combining x86 CoreType and linux cpufreq (details)
  113. tests/x86+linux: don't forget the new options file in make dist (details)
  114. linux: allow annotating cpukinds when PUs were discovered by another backend (x86) (details)
  115. linux: fix support for CPU0 being hotplugged (details)
  116. hwloc-ps: add --short-name (details)
  117. hwloc-ps: don't apply --pid-cmd to processes that will be filtered out (details)
  118. cuda/nvml/opencl/pci/rsmi: prefix error messages with "hwloc" (details)
  119. utils/common-ps: fix popen/pclose for Windows (details)
  120. configure: fix cuda common variable definition (details)
  121. NEWS: bring 2.4.1 bullets in master (details)
  122. utils/common-ps: refix popen/pclose for Windows/Cygwin (details)
  123. configure: move AC_ARG_VAR(MS_LIB) to hwloc-internal config (details)
  124. configure: typo in comments (details)
  125. doxy: add Cygwin to the FAQ about Windows builds (details)
  126. configure: cleanup cuda/cudart variables (details)
  127. configure: use LIBS variables for ibverbs/rsmi/nvml tests build (details)
  128. configure: use CPPFLAGS/CFLAGS/LIBS/LDFLAGS consistently (details)
  129. configure: add --with-cuda-version or use CUDA_VERSION to select CUDA pkg-config files (details)
  130. doxy: add a FAQ entry about CUDA configuration (details)
  131. cuda: don't warn if no device were found (details)
  132. API: add hwloc/windows.h for querying windows processor groups (details)
  133. tests: add a test for the windows processor group API (details)
  134. lstopo: add --windows-processor-groups (details)
  135. doxy: add links from interoperability items to dedicated API sections (details)
  136. windows: fix a leak in the initialization of processor group cpusets (details)
  137. windows: properly destroy the processor group cpuset array (details)
  138. lstopo: fix --windows-processor-groups name confusion (details)
  139. contrib/ci.inria.fr: add --windows-processor-groups to windows lstopo outputs (details)
  140. core: don't display "less critical" error messages by default (details)
  141. components: cleanup error messages (details)
  142. AIX: cleanup error messages (details)
  143. solaris: cleanup error messages (details)
  144. cpukinds: prefix the error message with "hwloc: " (details)
  145. pci: cleanup some error messages (details)
  146. linux/knl: cleanup error messages (details)
  147. linux: cleanup more error messages (details)
  148. linux+xml: cleanup some error messages about 32bits PCI domain (details)
  149. xml: add a missing verbose condition before a printf (details)
  150. xml: cleanup some error messages (details)
  151. core: cleanup error messages (details)
  152. NEWS: reorder items (details)
  153. rsmi: also limit rsmi shutdown calls on error (details)
  154. hwloc.ps: add --single-ancestor option (details)
  155. contrib/completion: add lstopo --windows-processor-groups (details)
  156. contrib/completion: add hwloc-ps --short-name (details)
  157. doxy: add a missing /ul tag (details)
  158. nvml/rsmi/gl: add NVML/RSMI/Display subtype of OS devices (details)
  159. API: add hwloc_get_obj_with_same_locality() (details)
  160. distances.h: typo in comments (details)
  161. utils: display PCI bus IDs in distance matrices (details)
  162. doxy: cite DRM card0/renderD128 devices in OS device examples (details)
  163. OpenCL: the OpenCL device type is a bitset (details)
  164. tests/ports/opencl: add missing CL_DEVICE_TYPE_DEFAULT (details)
  165. linux: add veX osdevices for NEC Vector Engine cards (details)
  166. lstopo/draw: render VE osdev memory and cores attributes (details)
  167. gather-topology: gather the "ve" class for NEC vector engine sysfs attributes (details)
  168. tests/linux: add a testcase with NEC Vector Engine (details)
  169. cuda.h: cleanup return values in the doc (details)
  170. cudart.h: cleanup return values in the doc (details)
  171. gl.h: cleanup return values in the doc (details)
  172. nvml.h: cleanup return values in the doc (details)
  173. opencl.h: cleanup return values in the doc (details)
  174. openfabrics-verbs.h: cleanup return values in the doc (details)
  175. rsmi.h: cleanup return values in the doc (details)
  176. doxy: specify that VectorEngine info attrs are for VectorEngine OS devices (details)
  177. Add a "levelzero" backend (details)
  178. config: check for __attribute__((constructor)) (details)
  179. levelzero: define ZES_ENABLE_SYSMAN=1 in the library constructor and Windows DllMain (details)
  180. levelzero: add hwloc/levelzero.h with helpers (details)
  181. tests: add a levelzero test (details)
  182. configure: add support for level-zero.pc (details)
  183. tests/rename: pass rsmi/nvml/cuda/opencl/levelzero CPPFLAGS (details)
  184. Make -ltermcap the last option for ncurses (details)
  185. distances: fix the restricting of heterogeneous distances (details)
  186. distances: add hwloc_distances_transform() (details)
  187. tests/distances: test hwloc_distances_transform() (details)
  188. distances.h: specify that we don't group by heterogeneous distances (details)
  189. distances: move forward declarations together (details)
  190. distances: rework internals of adding distances (details)
  191. plugins.h: export low-level distances add_create/add_values/add_commit functions to plugins (details)
  192. distances.h: replace add() with add_create(), add_values(), add_commit() (details)
  193. doxy: split the distances_add section into add and remove sections (details)
  194. tests: update to new distances add API (details)
  195. utils/annotate: update to new distances add API (details)
  196. utils/annotate: new distances may get a name now (details)
  197. utils/annotate: cleanup/improve get_unique_obj() (details)
  198. utils/annotate: add a new distances-transform command (details)
  199. utils/annotate: tests distances-transform command (details)
  200. pci: keep PCI-to-non-PCI bridges until the core filters them out (details)
  201. plugins.h: clarify the documentation of hwloc_pci_find_parent_by_busid() (details)
  202. plugins.h: export hwloc_pci_find_by_busid() to plugins (details)
  203. nvml: add a NVLinkBandwidth matrix (details)
  204. nvml: recognize and keep NVSwitches (details)
  205. rsmi: add the XGMIBandwidth matrix (details)
  206. doxy: talk about distances-transform in the GPU distances section (details)
  207. distances: allow to add distances with the heterogeneous kind (details)
  208. distances: one more ref to transform() in the comments (details)
  209. utils/manpages: fix some escaping (details)
  210. completions: add lstopo --thickness (details)
  211. utils/gather-topology.1: add --keep (details)
  212. hwloc-ps: --pid-cmd now supports "mpirank" and "env=<name>" (details)
  213. utils: uniformize the basenam'ing of the argv[0] in usage (details)
  214. utils/hwloc-annotate: add --version (details)
  215. utils/hwloc-ps: add --version (details)
  216. utils/hwloc-dump-hwdata: add --version (details)
  217. utils/hwloc-gather-cpuid: add --version (details)
  218. utils/hwloc-gather-topology: add --version (details)
  219. utils/hwloc-compress-dir: add --version (details)
  220. utils/hwloc-calc: properly support -h and --help (details)
  221. utils: show -h --help in usage (details)
  222. linux: fix support for NUMA node0 being offline (details)
  223. tests/linux: add a testcase with CPU#0 and NUMA node#0 offline (details)
  224. contrib/git-hooks: add a pre-commit hook checking options in manpage/completion (details)
  225. lstopo.1: add a (harmless) missing \fR (details)
  226. doc: add support for building the HTML doxygen on readthedocs.io (details)
  227. levelzero: add completion queue groups information (details)
  228. git-hooks/check-manpages-completions.pl: support git worktree (details)
  229. hwloc2.dtd: add name attribute for distances2hetero (details)
  230. utils/annotate: allow to replace distances objects with NULL to remove them (details)
  231. distances: add MERGE_SWITCH_PORTS and TRANSITIVE_CLOSURE transformations (details)
  232. utils/annotate: add merge-switch-ports and transitive-closure distances transformations (details)
  233. lstopo: add --distances-transform for basic transformation (details)
  234. tests/xml: add power8 distances between NVIDIA GPUs and Packages (details)
  235. utils/annotate: add a verbose error message (details)
  236. tests/annotate: check the replacing of cuda/opencl package/numa in GPU distances (details)
  237. NEWS cleanups (details)
  238. levelzero: fix device name numbering (details)
  239. cpukinds: don't require both coretype+frequency by default (details)
  240. cpukinds: remove arch-specific ranking strategy selection (details)
  241. lstopo.desktop: add Icon=hwloc (details)
  242. utils: add missing 0x in error messages about invalid flags (details)
  243. levelzero: prefix headers include path with level_zero/ (details)
  244. tests/ports: actually move levelzero headers to their new location (details)
  245. level_zero: fix #include in test and helper (details)
  246. lstopo/memattrs: remove a duplicate line-break on unrecognized initiator type (details)
  247. lstopo/memattrs: fix the displaying of object initiators (details)
  248. utils/calc: display unknown OS index as -1 (details)
  249. utils/info: don't display unknown memattr initiator OS index (details)
  250. lstopo/memattrs: cleanup object printing (details)
  251. utils/hwloc-calc: Fix erroneous index in help message (details)
  252. API: add HWLOC_TOPOLOGY_FLAG_RESTRICT_TO_{CPU,MEM}BINDING (details)
  253. API: add HWLOC_TOPOLOGY_FLAG_DONT_CHANGE_BINDING (details)
  254. contrib/windows: properly filter-in shmem.c (details)
  255. doxy: improve XGMI/NVLink distances replacing/transforming examples (details)
  256. doc: add a note about replacing objects in hwloc_distances_transform() (details)
  257. configure: use AC_CHECK_HEADERS instead of AC_HAVE_HEADERS (details)
  258. configure: use AS_HELP_STRING instead of AC_HELP_STRING (details)
  259. configure: use AC_ENABLE/DISABLE_SHARED/STATIC instead of AM_ (details)
  260. configure: use AC_LINK_IFELSE instead of AC_TRY_LINK (details)
  261. configure: use AC_COMPILE_IFELSE instead of AC_TRY_COMPILE (details)
  262. configure: don't call AC_PROG_CC_C99 on recent autoconf (details)
  263. VERSION: master is now 2.6 (details)
  264. shmem test: avoid using PATH_MAX inconditionally (details)
  265. hwloc_get_obj_with_same_locality: avoid using PATH_MAX inconditionally (details)
  266. windows: warn if we find processor groups on a 32bits windows (details)
  267. API: real-time tasks may also require the RESTRICT_TO_BINDING flag (details)
  268. rsmi: fix the XGMIPeers info attribute (details)
  269. NEWS: update 2.5.0 news bullets (details)
  270. lstopo/graphics: factorize the check for object cpukind styles (details)
  271. doxy: update cpukinds ranking env var possible values (details)
  272. cpukinds: try to clarify the doc about efficiency ranking (details)
  273. utils/calc: add an example with --cpukind (details)
  274. cpukinds: improve the documentation about native efficiencies (details)
  275. darwin: add cpukinds support using IOKit cpus information (details)
  276. linux/cpukinds: generalize the code to parse something else than cpufreq values (details)
  277. linux: use the optional "cpu_capacity" sysfs cpu file to rank cpukinds (details)
  278. linux/cpukinds: remove sysfs cpu type support (details)
  279. tests/linux: update fakeheterocpunuma to use cpu_capacity instead of cpu_types (details)
  280. pci: the HWLOC_PCI_LOCALITY file can contain comments (details)
  281. tests/gather: ignore missing DAXDevice NUMA info attr (details)
  282. lstopo/x11: fix autoresizing when window is maximized (details)
  283. doxy/calc.1: more words about nodeset outputs in the hwloc-calc descriptions (details)
  284. doxy+tools: more docs about cpukinds and ranking (details)
  285. levelzero: fix the management of unknown PCIe bandwidth (details)
  286. windows/dolib: print the entire lib command-line (details)
  287. pci: PCIe Gen6 will likely be 64GT/s as expected (details)
  288. lstopo.1: typo in --windows-processor-groups formatting (details)
  289. configure: look for cuda in /usr/local/cuda by default (details)
  290. configure/nvml: move some code inside a conditional (details)
  291. configure: cleanup pthread_mutex_lock checks (details)
  292. configure: add some messages between backend-specific checks (details)
  293. configure/rsmi: allow to specify the ROCm install path (details)
  294. utils/gather-cpuid: bring back pconfig (details)
  295. contrib/android: store the gradlew +x permission in GIT (details)
  296. contrib: cleanup/factorize scripts fot checking windows/android versions (details)
  297. android: don't ignore the greek (details)
  298. linux: use MPOL_PREFERRED_MANY when available (details)
  299. linux: expose cache os_index when available (details)
  300. x86: add a comment to remember why we don't expose cache os_index (details)
  301. hwloc.h: clarify that get_*bind function fill the caller-given bitmap (details)
  302. lstopo/draw: use a bitmask of backend flags instead of the no_half_lines field (details)
  303. lstopo/draw: add flag for backends returning approximative textwidth (details)
  304. lstopo/draw: don't always center-align factorized boxes and text (details)
  305. lstopo/draw: no need to save this (details)
  306. lstopo/draw: cleanup the management of memory-above children order (details)
  307. lstopo/draw: rename --children-order memoryabove into memory:above (details)
  308. lstopo/draw: some cleanups in the placement code (details)
  309. lstopo/draw: place I/O and Misc separately from CPU by default (details)
  310. lstopo/draw: allow to specify horiz/vert/rect layout for right/below io/misc (details)
  311. lstopo.1: improvement in the LAYOUT section (details)
  312. doxy: fix a typo (details)
  313. rsmi: add a "XGMIHops" matrix (details)
  314. rsmi: add missing error test in previous commit (details)
  315. configure: use ROCm config for detecting OpenCL (details)
  316. hwloc-calc.1: add an example for resctrl bitmap strings (details)
  317. NEWS: cite the XGMIHops matrix (details)
  318. linux: add "bxi0" OFED OS devices for Atos/Bull BXI HCAs (details)
  319. core: fix a corner case of reconnecting levels during the merging of identical level (details)
  320. core: rename hwloc_connect_io_misc_levels() (details)
  321. tests/linux: update outputs (details)
  322. tests/linux: cleanup fake PCI sysfs files for nvidia GPUs with NUMA nodes (details)
  323. pci: consider unclassified devices as important (details)
  324. gather-cpuid: update to AMD 0x80000021 leaf (details)
  325. x86: AMD Family 19h (Zen3) only reports 1 node per proc (details)
  326. x86: fix a comment in AMD quirk (details)
  327. x86: update the AMD L3 APIC ID sharing quirk for Family 19h (Zen3) (details)
  328. hwloc-annotate: typo in --help (details)
  329. doxy: improve the FAQ about asymmetric topologies (details)
  330. hwloc-annotate: add subtype command for setting/changing object subtype (details)
  331. hwloc-annotate: add a command to change cache/memory sizes (details)
  332. utils: add a test of building a custom heterogeneous topology (details)
  333. doxy: add a FAQ about creating a fake asymmetric/heterogeneous topology (details)
  334. utils: remove version infos from test-build-custom-topology (details)
  335. rsmi: add VRAM and GTT memory info attributes (details)
  336. doxy: add a FAQ entry about ROCm SMI configure options (details)
  337. doxy: fix DDR/DRAM mix in FAQ about build a custom topo (details)
  338. doxy+test-build-custom-topology: use the modern annotate command-line layout (details)
  339. VERSION: master is now 2.7 (details)
  340. doxy: L0 OS devices are of subtype COPROC, not GPU (details)
  341. dolib: don't use _snprintf when snprintf is available (details)
  342. core: fix a #if vs #ifdef for constructor attribute support (details)
  343. core: -no-undefined is now supported on Windows (details)
  344. private/misc.h: use HWLOC_HAVE_ATTRIBUTE_UNUSED instead of __HWLOC_HAVE_ATTRIBUTE_UNUSED (details)
  345. cpukinds: don't duplicate an empty array of cpukinds (details)
  346. contrib: add CMakeLists.txt under contrib/windows-cmake (details)
  347. git-hooks: check Windows-CMake version (details)
  348. contrib/ci.inria.fr: add a Windows-CMake job (details)
  349. doxy: improve the FAQ about building for Windows (details)
  350. .gitignore: update for test-build-custom-topology (details)
  351. configure.ac: fix copyright prefix character (details)
  352. build/windows: directly call MSLIB instead of going through our dolib (details)
  353. build: remove dolib.c (details)
  354. configure: remove CC_FOR_BUILD (details)
  355. contrib/android: cleanup cmake requirement (details)
  356. contrib/android: cleanup version code management (details)
  357. ci.inria.fr: check the cmake version too (details)
  358. git-hooks: add --update to android/check-versions.sh (details)
  359. git-hooks: add --update to windows/check-versions.sh (details)
  360. git-hooks: add --update to windows-cmake/check-versions.sh (details)
  361. contrib: add update-versions.sh (details)
  362. contrib/android: update/fix gradle-wrapper (details)
  363. utils: fix a MSVC warning about size_t/int casts (details)
  364. lstopo: fix some MSVC warnings about implicit casts (details)
  365. xml: fix a MSVC warning about cast (details)
  366. cpukinds: fix the sorting of cpukinds by ranking_value (details)
  367. xml/export/v1: fix distances export vs v1 memory group insert (details)
  368. API: clarify the documentation of hwloc_alloc_membind_policy() (details)
  369. doxy: use &lt;version&gt; instead of <version> (details)
  370. doxy: add "(FAQ)" after "Frequently Asked Questions" title (details)
  371. doxy: fix ROCm build anchor and add a crossref (details)
  372. doxygen: remove some obsolete config options to fix warnings (details)
  373. doxygen: a4wide support has been dropped (details)
  374. linux: don't look at packages if we're not the first PU of the core (details)
  375. linux: add "Cluster" groups for Linux 5.16+ cluster topology (details)
  376. linux: add HWLOC_DONT_MERGE_CLUSTER_GROUPS envvar (details)
  377. tests/linux: add a ARM kunpeng 920 with a cluster level between L2 and L3 (details)
  378. windows: improve debug printf about processor groups (details)
  379. windows: move some common definitions to private/windows.h (details)
  380. windows: cleanup the management of windows query structures (details)
  381. windows: support multiple processor Groups per NUMA (details)
  382. windows: support multiple processor Groups per cache (details)
  383. windows-cmake: publicize user-facing options (details)
  384. windows-cmake: Configure dynamically based on platform capabilities (details)
  385. windows-cmake: use setter methods, msvc-only options to allow non-msvc (details)
  386. windows-cmake: use modern install() method syntax (details)
  387. windows-cmake: hwloc object for deduplicated internal logic (details)
  388. windows-cmake: add tests (details)
  389. windows-cmake:CI: use CMake CTest (details)
  390. windows-cmake: add WIN32 option for GUI no-console (details)
  391. windows-cmake: search for LibXml2 (details)
  392. windows-cmake: auto-configure static-components.h (details)
  393. windows-cmake: optional cuda enabled (details)
  394. windows-cmake: conditional enable x86 component (details)
  395. windows-cmake: do not force lib filename prefix on MSVC (details)
  396. windows-cmake: make explicit options for libxml2,cuda,opencl (details)
  397. windows-cmake: better BUILD_SHARED_LIBS default (details)
  398. doxy: list all subtypes and add cross-refs in the obj attr section (details)
  399. hwloc-calc.1: improve the resctrl bitmask conversion (details)
  400. lstopo.1: fix some missing/misplaced closing \fB...\fR tags (details)
  401. lstopo: properly skip --top-color argument after processing (details)
  402. lstopo/draw: cleanup default object colors (details)
  403. lstopo/draw: cleanup line color management (details)
  404. lstopo/draw: rename colors into color_list (details)
  405. lstopo/draw: don't use the "misc" color for "group" (details)
  406. lstopo/draw: define a "palette" structure for all colors (details)
  407. lstopo/draw: add --palette grey for greyscale graphical output (details)
  408. lstopo/draw: add a white palette to disable all background colors (details)
  409. lstopo/draw: allow #xxyyzz in --binding/disallowed-color (details)
  410. lstopo/draw: cleanup --top-color (details)
  411. lstopo/draw: add --palette type=#rrggbb to tune colors (details)
  412. windows: don't create groups for windows processor groups by default (details)
  413. NEWS: clarify the NEWS entry about the new windows API (details)
  414. NEWS: move Windows entries together (details)
  415. windows: remove a unneeded check (details)
  416. windows: fix the source string when inserting processor group objects (details)
  417. windows: remove support for the old non-"Ex" GetLogicalProcessorInformation() (details)
  418. lstopo/windows: fix the initial window size by using the right fonts (details)
  419. contrib/windows-cmake: udpate private_config.h.in (details)
  420. NEWS: add bullet about many Windows CMake improvements (details)
  421. lstopo/draw: rename our RGB macros into LSTOPO_COLOR (details)
  422. levelzero: don't skip devices if sysman is missing (details)
  423. levelzero: only warn once if sysman is disabled (details)
  424. levelzero: update the management of vendor/device/brand/... strings (details)
  425. levelzero: add info attrs about type, nr slices, subslices, EUs and threads (details)
  426. levelzero: factorize the querying of CQ groups (details)
  427. levelzero: expose subdevices as sub-osdevices (details)
  428. level: fix the querying of subdevice properties (details)
  429. levelzero: fix the test for unknown modelname before adding info attrs (details)
  430. windows: update comments about new topology features in recent versions (details)
  431. levelzero: update some comments (details)
  432. levelzero: query memory and expose LevelZeroHBM/DDR/MemorySize info attrs (details)
  433. levelzero: remove Device in some info attr name (details)
  434. lstopo/draw: add some L0 attributes in osdevs (details)
  435. doxy: fix some typos in new LevelZero info attrs (details)
  436. doxy: small cleanups in LevelZero attrs (details)
  437. linux/cpukinds: ignore max frequencies is base frequency is known (details)
  438. NEWS cleanup before branching 2.7 (details)
  439. VERSION: master is now 2.8 (details)
  440. autogen: exit on first error (details)
  441. autogen: hide bigsur libtool patch apply failure messages (details)
  442. contrib/android: google play wants targetSdkVersion 30+ (details)
  443. linux/cpukinds: adjust max frequencies instead of ignoring them (details)
  444. levelzero: ignore DDR memory if the device is integrated (details)
  445. contrib/android: bump compileSdkVersion to 30 as well (details)
  446. xml: support id="objXYZ" instead of gp_index="XYZ" (details)
  447. README: irc channel moved from Freenode to Libera Chat (details)
  448. doxy: also fix the IRC server here (details)
  449. darwin: kIOMasterPortDefault is deprecated (details)
  450. utils/common-ps.c: reduce a variable scope (details)
  451. configure: fix --with-hwloc-symbol-prefix help string (details)
  452. core: realign the long list of allowed topology flags (details)
  453. API: add topology flag NO_DISTANCES (details)
  454. API: add topology flag NO_MEMATTRS (details)
  455. API: add topology flag NO_CPUKINDS (details)
  456. doxy+README: talk about new flags for ignoring distances, memattrs and cpukinds (details)
  457. doxy: improve the doc about filtering objects to reduce the overhead (details)
  458. API: minor clarification: topology flags are 0 by default (details)
  459. contrib/ci.inria.fr: never disable make check in coverity and sonar-scanner jobs (details)
  460. darwin: factorize a range of consecutive bitmap_set() (details)
  461. darwin: split to a generic cpukinds query and register (details)
  462. darwin: abstract out the building of numa and cache levels (details)
  463. darwin: optionally get cpukinds from new sysctl hw.perflevels too (details)
  464. darwin: detect heterogeneous caches from sysctl perflevels (details)
  465. contrib/windows-cmake: install hwloc.pdbg with Debug shared libs (details)
  466. doxy: fix a typo in L0 attr description (details)
  467. levelzero: improve the error message on ze_init() failure (details)
  468. levelzero: verbose messages about number of drivers and devices (details)
  469. levelzero: add LevelZeroUUID (details)
  470. core+levelzero: Set ZES_ENABLE_SYSMAN via setenv instead of putenv (details)
  471. darwin: read cachelinesize before creating hybrid perflevel caches (details)
  472. core: fix setenv(ZES_ENABLE_SYSMAN) on mingw (details)
  473. core+levelzero: fix typos in ZES_ENABLE_SYSMAN enabling (details)
  474. doc: Fix typos in hwloc.h (details)
  475. Strengthen the NVML check by adding a runtime check (details)
  476. doc: fix typos + harmonize parameter name (details)
  477. configure: add HWLOC_FOO_COMPONENT_BUILTIN macros to public headers (details)
  478. configure: only show the NVML status line if we have the big warning (details)
  479. configure: move plugin-path AC_ARG_WITH with others (details)
  480. configure+doxy: document that --with-cuda=/nonexisting will disable everything installed by CUDA (details)
  481. configure: also warn if rsmi lib isn't in LD_LIBRARY_PATH and ld.so.conf (details)
  482. configure: also warn if cudart lib isn't in LD_LIBRARY_PATH and ld.so.conf (details)
  483. doxy: object attributes for sizes are in KiB instead of kB (details)
  484. synthetic: accept memory/cache size as GiB/KiB and handle GB/kB correctly (details)
  485. utils/annotate: accept memory/cache size as GiB/KiB and handle GB/kB correctly (details)
  486. tests: update to synthetic/annotate now handling GB/GiB correctly (details)
  487. lstopo.1: add a sentence about kB/KiB units (details)
  488. API: bump HWLOC_API_VERSION to 0x20800 (details)
  489. API+lstopo.1: clarify that disallowed doesn't mean offline (details)
  490. core: don't enable L0 Sysman if L0 is disabled (details)
  491. memattrs.h: use a sentinel MAX value for memattr IDs (details)
  492. memattrs: add Read/Write Bandwidth/Latency attributes (details)
  493. linux: gather read/write bandwidth/latency (details)
  494. lstopo/memattrs: abstract-out a function to display a single memattr (details)
  495. lstopo/memattrs: reorder memattrs in the output (details)
  496. tests/x86: add a Zen3 testcase (details)
  497. x86: workaround VMs reporting invalid core/thread info (details)
  498. NEWS: import 2.7.1 bullets in master (details)
  499. configure: add --disable-readme (details)
  500. lstopo.1: clarify the documentation about PCI link speed in the graphical output (details)
  501. utils: allow loading fsroot/cpuid topologies from a tarball (details)
  502. tests/lstopo: test archivemount of fsroot and cpuid (details)
  503. distances: fix clang warning about NULL pointer substraction in container_offset (details)
  504. utils/gather-cpuid: update comments about cpuid leaves reserved on Intel/AMD (details)
  505. utils/gather-cpuid: update with Intel CPUID leaves 0x1c and 0x21 (details)
  506. utils/gather-cpuid: update for AMD CPUID leaf 0x80000022 (details)
  507. utils/gather-cpuid: disable cpukinds/memattrs/distances in the topology (details)
  508. lstopo: add --os/logical-index-prefix (details)
  509. levelzero: use the core PCI prop extension if available (details)
  510. pci: rework locality quirks (details)
  511. pci: reduce the scope of pci-discovery-prepared phases (details)
  512. pci: add a locality quirk for the HPE Cray EX235a (details)
  513. pci: add a fake pci locality quirk for testing (details)
  514. NEWS: improve Linux cpukinds max freq item (details)
  515. linux/io: move block sectorsize related lines together (details)
  516. linux/io: remove support for /sys/class/dax (details)
  517. linux/io: cleanup dax/non-dax devtype management (details)
  518. linux/io: no need for sysfs local_cpus for OSdev locality (details)
  519. linux/io: rework/fix numa_node attribute in sysfs (details)
  520. gather-topology: gather dax driver info (details)
  521. tests/linux: add dax driver information to gathered files (details)
  522. linux: fix and factorize the checking of whether a DAX device is exposed as NUMA node (details)
  523. linux: add DAXParent and DAXType info attr (details)
  524. linux/dax: add some comments (details)
  525. linux/block: replace "NVDIMM" subtype with "NVM" or "SPM" to match DAX attributes (details)
  526. memattrs: heuristics to set NUMA node subtype to DRAM/HBM/SPM/NVM (details)
  527. tests: add memtiers for testing subtypes of heterogeneous memory nodes (details)
  528. tests/linux: add a complex test case with lots of heterogeneous memories (details)
  529. NEWS: some improvements in 2.8 bullets (details)
  530. pci: Gen7 bandwidth almost confirmed to be twice of Gen6 (details)
  531. cuda: update to compute capability 8.6 (details)
  532. pci: also update the computation of Gen6+ linkspeed (details)
  533. private/windows.h: guard against _ANONYMOUS_UNION/STRUCT redefinition (details)
  534. VERSION: master is now 2.9 (details)
  535. tests/linux: remove 1alpha (details)
  536. tests/linux: cleanup missing cpus in nvidiagpunumanodes (details)
  537. linux: improve the readdir'ing of /sys/devices/system/{cpu,node} (details)
  538. linux: abort if sysfs cpu topology is missing (details)
  539. linux: don't support both /sys/bus/cpu/devices and /sys/devices/system/cpu (details)
  540. linux: stop using /sys/bus/node/devices too (details)
  541. linux: don't check whether numa topology is properly available in sysfs (details)
  542. linux: simplify the checks for sysfs cpu file availibility (details)
  543. utils/calc: don't segfault if IO is given to -N or -I (details)
  544. utils/calc: allow -H with NUMA nodes (details)
  545. pci: document the PCI affinity quirk for HPE Cray EX235a (details)
  546. utils/tests/calc: check for multiple levels of groups (details)
  547. utils/calc: allow to retrieve object attributes when scanning type strings (details)
  548. utils/calc: cleanup the management of -I (details)
  549. utils/calc: support osdev subtypes in -N and -I (details)
  550. levelzero: fix subdevice info properties (details)
  551. Add codemeta file (details)
  552. pci+linux: make 32bits domain warnings non-critical (details)
  553. core: if debug is enabled and debug messages are disabled, unhide errors too (details)
  554. xml: also demote 32bits pci domain import errors to non-critical (details)
  555. core: add HWLOC_SHOW_ALL/CRITICAL_ERRORS() macros (details)
  556. xml: fix an error message in the future xml obj id attribute (details)
  557. completion: fix diff --refname (details)
  558. Add more codemeta information (details)
  559. bitmap.h: fix the doc for foreach() (details)
  560. doc/examples: add memory-attributes.c (details)
  561. memattrs.h: cleanup doxygen formatting of the enum of memory attributes (details)
  562. doc/examples: use hwloc_uint64_t in memory-attributes.c (details)
  563. nvml/bw: add nvlink versions 3&4 (details)
  564. tests/backends: fix build with ClangCI 15 compiler frontend for MSVC (details)
  565. completion/lstopo: update the list of output formats (details)
  566. lstopo: if stdout is redirected, use console mode (details)
  567. lstopo: only show interactive help if stdout is a tty (details)
  568. lstopo: add an explicit "window" output format (details)
  569. cuda: update to compute capability 9 (details)
  570. Leak in hwloc__xml_import_cpukind (details)
  571. lstopo/draw: fix the displaying of non-HBM L0 device memory (details)
  572. cuda: update for compute capability 8.9 (details)
  573. doxy: number of character +s (details)
  574. diff: reuse temp variable (details)
  575. pci: don't ignore CXL memory expanders (details)
  576. utils/gather-topology: gather cxl devices and drivers (details)
  577. levelzero: build the "XeLinkBandwidth" distance matrix (details)
  578. NEWS: more bullets for 2.9 (details)
  579. linux+lstopo/draw: expose CXL memory device (Type 3) size (details)
  580. VERSION: master is now 2.10 (details)
  581. levelzero: save some disabled code to get driver properties (details)
  582. VERSION: master is now 3.0 (details)
  583. API: always enable 32bits PCI domains (details)
  584. pci: add the prog-if (register level programming interface) to pci device attributes (details)
  585. rename.h: replace hwloc_ with HWLOC_ when renaming capital names (details)
  586. BGQ: remove support (details)
  587. core: merge is_loaded/is_thissystem ints into a bitwise state (details)
  588. core: add is_init and is_loading topology states (details)
  589. deprecated.h: remove functions deprecated since 2.0 (details)
  590. pci: remove deprecated HWLOC_PCI_<domain>_<bus>_LOCALCPUS envvars (details)
  591. helper: remove an obsolete ref to an old deprecated-removed function (details)
  592. API: add hwloc_get_type_depth_with_attr() (details)
  593. API: deprecate hwloc_type_sscanf_as_depth() (details)
  594. API: replace hwloc_obj_type/attr_snprintf() verbose attribute with flags (details)
  595. misc: replace hwloc_memory_size_printf_unit/value() with hwloc_memory_size_snprintf() (details)
  596. obj_attr_snprintf: switch to KiB/MiB/GiB/TiB (details)
  597. lstopo/draw: switch CUDA MP local memory to KiB too (details)
  598. obj_snprintf(): add flags to tune type names and units (details)
  599. lstopo: add --osf/--obj-snprintf-flags option to tune obj printing (details)
  600. VERSION: update to final 2.9.0 bullets (details)
  601. hwloc-gather-topology: only unalias ls (details)
  602. contrib/android: bump compile/targetSdkVersion to 31 (details)
  603. contrib/android: update build parameters for Android 12 (details)
  604. contrib/android: bump android app subversion to 1.5.2 (details)
  605. NEWS: bring 2.7.2 bullets (details)
  606. contrib/*/check-versions.sh: add --update to usage (details)
  607. contrib/android/check-versions.sh: make a remaining verbose message conditional (details)
  608. contrib/dist/make_dist_tarball: update android/windows VERSION too (details)
  609. doxy: example using get_api_version() to manage flags at runtime (details)
  610. test-gather-topology: skip if /sys isn't available (details)
  611. utils/gather-cpuid: update to Intel x86 Manual 2022/12 (details)
  612. utils/gather-cpuid: always stop ecx loops after 256 iterations (details)
  613. x86: limit the number of cache and topology subleaves (details)
  614. lstopo: improve the error message in case of unrecognized option (details)
  615. lstopo.1: typo (details)
  616. lstopo: remove .format from -.format special output early (details)
  617. lstopo: show the output format in some error messages (details)
  618. lstopo: update the output format when it is internally chosen (details)
  619. lstopo: warn that filename is ignored when forcing the window output (details)
  620. lstopo: show a message about the export filename and format (details)
  621. API/deprecated: remove object type backward compat macros for v1.x (details)
  622. hwloc-calc: remove support for obsolete options --pulist --nodelist and --objects (details)
  623. tools: remove support for obsolete --xml/--fsys-root/--synthetic options (details)
  624. core: don't stop parsing the "socket" name for packages (details)
  625. tests: filter-out the upcoming "id" xml attribute (details)
  626. xml: add a v2 export flag and enable it by default for now (details)
  627. xml: add support for 3.0 xml format (details)
  628. xml: export id="objXXX" in XML 3.0 (details)
  629. xml: stop forcing v2 export by default (details)
  630. doc/images: update some xml source to XML v2 (details)
  631. doc/images: regenerate lstopo outputs (details)
  632. tests/xml: remove tests importing from v1 (details)
  633. tests/netloc: update XMLs to v2 (details)
  634. xml: drop support for importing XML v1 (details)
  635. tests/lstopo: check v2 XML export instead of v1 (details)
  636. tests/xml: remove tests exporting to v1 (details)
  637. xml: remove support for exporting to XML v1 (details)
  638. dtd: remove hwloc.dtd now that it's not supported anymore (details)
  639. xml/import: remove the dead code (only used for v1 import) (details)
  640. tests/xml: remove v1tov2 options files (details)
  641. darwin: don't forget to filter perflevel caches (details)
  642. API: rename Block OS devices into Storage (details)
  643. API: split a "Memory" osdev type out of "Storage" (details)
  644. xml: import/export memory osdev from/to xml 2.0 (details)
  645. tests/xml: check import/export from/to XML v2 (details)
  646. linux: force an ending \0 in our readlink (details)
  647. linux/dax: don't reuse block-specific sysfs parsing code (details)
  648. linux/block: simplify the code now that DAX support is separated (details)
  649. tests/backends.c: fix a failure when /sys isn't available on Linux on non-x86 (details)
  650. hwloc-gather-cpuid: update some comments (details)
  651. hwloc-gather-cpuid: add 0x80000023 (details)
  652. hwloc-gather-cpuid: add AMD 0x80000026 extended topology leaf (details)
  653. .github/issue_template.md: improve the list of command outputs requested from non-Linux OS (details)
  654. linux: mark HPE Cray Cassini HSNs with subtype "Slingshot" (details)
  655. configure: update to latest ROCm include/lib paths (details)
  656. tests/xml: rewrite the framework (details)
  657. tests/xml: remove unneeded environment variables (details)
  658. tests/xml: remove 8intel64-fakeKNL-A2A-hybrid.rootattachednumas (details)
  659. tests/{x86,linux,xml...}: uniformize the path to LOG_COMPILER (details)
  660. tests/linux*: look for .source and .exclude in the directory of .output (details)
  661. Update .gitignore to include cross-compile libtool artifacts (details)
  662. tests/xml: some renaming (details)
  663. tests/xml: improve the format of .test files (details)
  664. tests/linux: remove some of the many tests that aren't useful anymore (details)
  665. tests/linux: rewrite the framework with .test files (details)
  666. tests/linux/allowed: rewrite the framework with .test files (details)
  667. tests/x86+linux: rewrite the framework with .test files (details)
  668. tests/x86: rewrite the framework with .test files (details)
  669. nvml: fix nvlink 3/4 bandwidth in our distances matrix (details)
  670. restrict: fix when doing nothing except because of REMOVE_CPULESS (details)
  671. tests/restrict: don't make the topology a global variable (details)
  672. tests/restrict: add some redundant restrict() (details)
  673. tests/{linux,xml,x86,x86+linux,linux/allowed}: allow to run tests in an optional extra subdirectory (details)
  674. NEWS: bring 2.9.1rc1 bullets in master (details)
  675. synthetic/export/memory: replace a buggy assertion with some warnings (details)
  676. synthetic: typo in error message (details)
  677. utils/archivemount: mount read-only (details)
  678. utils: don't require archivemount at configure-time (details)
  679. utils/archivemount: disable on !linux (details)
  680. core: fix group->total_memory after hwloc_topology_insert_group_object() (details)
  681. synthetic: factorize/fix default attributes (details)
  682. core: fix the updating of total_memory in hwloc_topology_insert_group_object() (details)
  683. synthetic/import: ignore unknown attributes instead of failing (details)
  684. synthetic/export/v1: ignore memcaches instead of failing to export (details)
  685. synthetic/import: allow memory-side caches (details)
  686. synthetic/export: export memory-side caches (details)
  687. Add security policy (details)
  688. hwloc_obj_add_other_obj_sets: handle bitmap realloc errors (details)
  689. hwloc/glibc-sched.h: handle bitmap realloc errors (details)
  690. hwloc/linux-libnuma.h: handle bitmap realloc errors (details)
  691. hwloc.h: many small improvements about return values and errors (details)
  692. hwloc/shmem.h: add/improve doc about return values (details)
  693. IO helpers: clarify that some IO helpers return 0 on success and -1 on error (details)
  694. hwloc/linux.h: document 0 on success and -1 on error (details)
  695. hwloc/memattrs.h: improve doc about return values (details)
  696. hwloc/export.h: improve doc about return values (details)
  697. hwloc/diff.h: improve the documentation about return values (details)
  698. hwloc/distances.h: add/improve doc about return values (details)
  699. hwloc/helpers.h: document return values of many helpers (details)
  700. hwloc.h: rewrite the doc of hwloc_get_type_depth() (details)
  701. hwloc.h: doc return values for two remaining functions (details)
  702. hwloc/bitmap.h: improve doc about return values (details)
  703. API: update one very old comment about v1 multi-node topology (details)
  704. doxy: remove broken link to XML v1 export flag (details)
  705. hwloc/helpers.h: fix a type (details)
  706. hwloc.h: add an error reporting section describing the common conventions (details)
  707. utils/archivemount: propagate error when visiting subdirs (details)
  708. x86: document the array of cpu features (details)
  709. x86: use a global is_hybrid flag (details)
  710. x86: remove the explicit apic_number in leaves 0xb/0x0f (details)
  711. gather-cpuid: note about future AMD 0x8000002[78] leaves (details)
  712. x86: Intel has a new "DieGrp" level in the CPUID doc (details)
  713. x86: only try to build die objects and unit/tile/module groups if we found some info (details)
  714. x86: update the loop break when reading topology cpuid leaves 0x1f/0x0b (details)
  715. x86: add support for AMD 0x80000026 CPUID leaf (details)
  716. tests/x86: add a amd zen4 genoa case for cpuid leaf 0x80000026 (details)
  717. linux: detect fake numa in the Linux kernel cmdline (details)
  718. linux/numa: cleanup HWLOC_DEBUG_ALLOW_OVERLAPPING_NODE_CPUSETS (details)
  719. linux/numa: disable memory attributes and memory-side cache in fake numa (details)
  720. lstopo/draw: cleanup horiz/vert layout management (details)
  721. lstopo/draw: make memory:above layout configurable and use rectangular by default (details)
  722. Fix name scheme when building with --target (details)
  723. linux/dax: cleanups and comments in annotate_dax_parent() (details)
  724. linux/dax: add CXLDevice info attribute(s) in DAX and NUMA nodes (details)
  725. xml/import: allow (and ignore for now) info children in more xml tags (details)
  726. xml/import: fix a leak when ignoring distances infos (details)
  727. doxy: non-sysfs Linux support was removed (details)
  728. doxygen: update the config to 1.9.4 (details)
  729. doxy: ref the website language bindings instead of duplicating it here (details)
  730. Fix typos in hwloc README and netloc Doxygen. (details)
  731. doxy: update doxy from README (details)
  732. netloc_ib_extract_dats.c: closedir() the right dir on error (details)
  733. utils/archivemount: Restore working directory (details)
  734. netloc: remove (details)
  735. doxy: merge main.doxy back into hwloc.doxy (details)
  736. README: update the build after netloc removal (details)
  737. lstopo.1: xml support is always available (details)
  738. lstopo: allow output format/extension v2xml/v3xml (details)
  739. linux/cpukinds: use Intel PMU directories to detect Atom/Core cpusets on Intel hybrid (details)
  740. gather-topology: gather Intel atom/core pmu "cpus" files (details)
  741. doxy: typo (details)
  742. x86: enable CPUID 0x1f leaf (intel v2 topo enumeration) on Zhaoxin (details)
  743. hwloc-calc.1: fix the formatting of --cpukinds (details)
  744. hwloc-calc: improve --cpukind parsing (details)
  745. hwloc-calc/bind.1: more info about --no-smt (details)
  746. hwloc-calc/bind.1: more info about --cpukind (details)
  747. x86: fix/cleanup the breaking-out of the topology enumeration loops (details)
  748. levelzero: typo in some error messages (details)
  749. fix prefix before error messages (details)
  750. levelzero: typo in error message (details)
  751. levelzero: don't initialize anything before checking if I/O is enabled (details)
  752. pci: don't initialize anything before checking if I/O is enabled (details)
  753. pci: factorize multiple calls to filters (details)
  754. doxy: split out a faq about disabling things (details)
  755. doxy: improve the faq entry about slow gpu discovery (details)
  756. doxy: improve the text about keep structure in the new "disable" faq entry (details)
  757. doxy: typo (details)
  758. levelzero: fix a snprintf overflow warning (details)
  759. utils/annotate: fix [kMGT]B size units (details)
  760. utils/hwloc: check topology loading error status (details)
  761. utils/hwloc-ps: Fix output stream when using '-h' (details)
  762. linux: add hardwired fallback for syscall numbers on riscv (details)
  763. utils/hwloc: enforce using '\0' instead of 0 (details)
  764. core+lstopo: don't forget to set the L3i filter when operating on all caches (details)
  765. core: remove some redundant checks when setting filters (details)
  766. core: allow backends to check if all cpu caches are filtered-out (details)
  767. doxy: don't mix components and plugins in the text (details)
  768. doxy: try to clarify terms component/backend/plugin (details)
  769. doxy: don't duplicate minimalistic stuff about xml in the component page (details)
  770. doxy: random improvements in the component page (details)
  771. doxy: talk about disabling components in the make hwloc faster FAQ entry (details)
  772. levelzero: use zesInit() when available (details)
  773. tests/ports: add some missing -D to enable more ports' code (details)
  774. contrib/dist/publish_doc: update the example doc we look for (details)
  775. contrib/dist/publish_doc: symlink to the latest common jquery.js (details)
  776. windows: Fix type of hostname_size parameter (details)
  777. darwin: fix IOKit warnings about const char * being passed in arrays (details)
  778. contrib/dist/pubish_doc: further improve jquery.js (details)
  779. NEWS: bring 2.9.2 bullets in master (details)
  780. hwloc.h+bind.1in: add a note about hwloc bind policy != linux bind (details)
  781. doxy: improve the cpu_mem_bind chapter (details)
  782. doxy: move the installation section to its own page (details)
  783. doxy: improve the main page (details)
  784. README: update after doxy main page reorganization (details)
  785. linux/cxl: merge CXLDevice attributes when interleaved (details)
  786. doxy: remove our custom doxygen.css for html docs (details)
  787. doxy: move bugs/questions to the end of the introduction page (details)
  788. components: allocate the backend private_data together with the backend structure (details)
  789. cuda/levelzero/gl/nvml/opencl/rsmi: add a single Backend info attr in the root (details)
  790. hardwired: add a Backend info attr (details)
  791. noos: add a Backend info attr (details)
  792. pci: add a Backend info attr (details)
  793. freebsd: make sure uname and Backend info attrs are added once (details)
  794. linux: make sure uname, Backend and other global info attrs are added once (details)
  795. xml/export: factorize info attr export (details)
  796. xml/export/v2: add Backend info back to OS devices (details)
  797. xml/import/v2: add Backend info to the root object from OS devices (details)
  798. xml/import: cleanup unused/non-unused function parameters (details)
  799. diff: also check whether cpukinds are identical (details)
  800. XML: fix a typo in comments (details)
  801. xml: remove the nbnumanode import temporary data (details)
  802. API: the non-printable character warning applies to info key names too (details)
  803. doc: clarify how we talk about info attributes (details)
  804. doxy: add missing comma (details)
  805. API: add hwloc_infos_s structure in objects (details)
  806. core: switch internal functions to use hwloc_infos_s structure (details)
  807. API: add hwloc_get_info_by_name() (details)
  808. cpukind: switch to struct hwloc_infos_s in the API (details)
  809. core: add an "allocated" private field in struct hwloc_infos_s (details)
  810. API: make it clear that add_info() wants non-NULL name+value (details)
  811. API: add hwloc_modify_infos() to add/replace/remove info attrs (details)
  812. tests: rename and enlarge the infos test (details)
  813. core: use the new internal hwloc__replace_infos() and remove add_info_nodup() (details)
  814. utils/annotate: abstract-out info attr operations (details)
  815. utils/annotate: reimplement info operations using hwloc_modify_infos() (details)
  816. utils/annotate: add the "cpukind#N" fake location to tweak cpukind infos (details)
  817. tests/{cuda*,nvml,opencl,levelzero,rsmi,gl}: fix Backend info attr check (details)
  818. utils/annotate.1: remove a spurious '+' (details)
  819. rsmi: remove some warnings on 32bits (details)
  820. linux: fix a warning about fgets return value not being used. (details)
  821. utils/ps: fix a warning about read() return value not being used (details)
  822. utils/misc/archivemount: fix warnings about unchecked return values of chdir and system (details)
  823. components: fix a warning about unused asprintf return value (details)
  824. darwin: fix some printf format warnings (details)
  825. API: add topology-specific info attributes (details)
  826. utils/annotate: "topology" location may be used to manipulate topo attributes (details)
  827. utils/info: --topology -v shows topo info attrs (details)
  828. lstopo/text: show topo info attrs in verbose mode (details)
  829. core: move some root info attrs to topology infos (details)
  830. xml/import/v2: move v2 root info attrs to topo when appropriate (details)
  831. xml/export/v2: export topo info attrs as root info in v2 (details)
  832. contrib/windows-cmake: move tests/hwloc/CMakeLists.txt back to ./tests/ (details)
  833. shmem: duplicate topo infos so that we may modify them (details)
  834. allow: now allowed on shmem-adopted topologies (details)
  835. API: add notes about restrict/insert_group changing logical indexes (details)
  836. API: clarify that restrict() removes PUs or NUMAs (details)
  837. utils: clarify that --restrict removes PUs and/or NUMA nodes (details)
  838. utils: clarify that --restrict may cause logical index to change (details)
  839. API: return meaningful positive values from modify_infos() (details)
  840. utils/ps: add --children-of-pid (details)
  841. lstopo: abstract more the code to insert misc children (details)
  842. lstopo: add --misc-from (details)
  843. hwloc-ps: add --lstopo-misc to output something for --lstopo --misc-from (details)
  844. doxy: remove way too many spaces (details)
  845. x86: add a debug messages when disabling because of non-unique APIC ids (details)
  846. core: don't crash when clearing an already empty topology (details)
  847. linux/smbios: enforce memory header from spec 2.3 only (details)
  848. linux: add CXL device serial number (details)
  849. linux: add more MemoryModule info attributes (details)
  850. xml/import: remove "v2" from some function names (details)
  851. xml/import/v2: check version major before enabling some info checks (details)
  852. bitmap.h: clarify that the empty bitmap doesn't intersect anything else (details)
  853. utils/calc: fix searching CPU objects below heterogeneous NUMA (details)
  854. utils/calc: fix searching NUMA nodes inside CPU objects when NUMA are attached higher (details)
  855. android: disable the platform database for now (details)
  856. contrib/android: bump compile/targetSdkVersion to 33 (details)
  857. utils/calc: add --object-output (details)
  858. utils/bind: warn if neither CPU nor memory binding location were given (details)
  859. utils/bind: always warn when assuming the executable starts at an unrecognized argument (details)
  860. utils/calc.1: fix the doc of --largest (details)
  861. helpers.h: fix missing MemCache in get_next_child() (details)
  862. helper.h: move type/kind section above others (details)
  863. helpers.h: cleanup get_next_child() (details)
  864. utils: add -q and --quiet when we have -s and --silent (details)
  865. linux: handle glibc cpuset allocation failures (details)
  866. tests/linux: add a testcase with memory side caches (details)
  867. tests/xml: add a testcase with memory side caches (details)
  868. utils/info: factorize the displaying of ancestors (details)
  869. utils/info: factorize the displaying of descendants (details)
  870. utils/info: abstract-out displaying of children, local memory and single objects too (details)
  871. utils/info: add [kind=]cpu/cache/normal/memory/io/all to --ancestor and --descendants (details)
  872. utils/info: add --first to stop on first matching object (details)
  873. doxy: add "Object Kind" in terms and defs (details)
  874. lstopo: fix --osf in usage (details)
  875. doxy: fix a crossref to hwloc_modify_infos_op_e (details)
  876. doxy: fix a crossref to hwloc_disc_status_flag_e (details)
  877. contrib/ci.inria.fr: use UTC time for snapshot name (details)
  878. contrib/android: fix missing text outside of boxes (details)
  879. contrib/android: rework the drawing of lines (details)
  880. contrib/android: disambiguate multiple box IDs to fix the text in collapsed PCI devices (details)
  881. contrib/android: also disable PCI collapsing when we disable factorization (details)
  882. contrib/android: bump app to 1.5.3 (details)
  883. doxy: typo (details)
  884. tests/hwloc_type_sscanf: check osdev specific type too (details)
  885. obj_type_snprintf: show "OS[type]" or "OSDev[type]" instead of "type" by default (details)
  886. tests/type_sscanf: update for new osdev format (details)
  887. xml/import/v2: update the osdevice type before filtering (details)
  888. osdev: change osdev.type from an enum to a bitmask (details)
  889. osdev: BXI is now Network instead of OpenFabrics (details)
  890. osdev: use multiple bits in the osdev-specific type (details)
  891. tests: update test-hwloc-compress-dir XMLs to new OS device types (details)
  892. gather-topology: bring back /proc/device-tree/cpus if --dt is given (details)
  893. NEWS: bring 2.9.3 bullets in master (details)
  894. core/insert_group: free the input object if failing to insert because shmem topo (details)
  895. core/insert_group: free the group if merging with root (details)
  896. tests/groups: check failing insert (details)
  897. API: document that insert_group() frees the input object on failure to insert (details)
  898. API: document that group alloc/insert must use the same topology (details)
  899. API: add hwloc_topology_free_group() (details)
  900. API: more links between hwloc_topology_alloc/insert/free_group_object() (details)
  901. xml: fix statically-allocated opaque backend info array (details)
  902. shmem: pad the end of header up to a multiple of pointer size (details)
  903. doxy: update non-documented env vars (details)
  904. core: improve insertion error messages (details)
  905. linux: get CPUModel and CPUFamily from /proc/cpuinfo on LoongArch (details)
  906. API: clarify in filter doc that MemCaches are ignored by default (details)
  907. API: clarify the default filtering of dies (details)
  908. core: don't let hwloc_topology_check() test uninitialized topologies (details)
  909. API: clarify that XML input errors are reported either in set_xml*() or load() (details)
  910. API: clarify that set_pid() assumes the PID won't change until load() (details)
  911. utils: fix the filtering of osdevs by osdev.type bitmask (details)
  912. utils/calc.1: fix examples with --local-memory-flags (details)
  913. contrib/ci.inria.fr: shorten the build path in windows cmake (details)
  914. contrib/ci.inria.fr: allow to pass local options to the Windows CMake cmdline (details)
  915. utils/calc: rework parsing of levels for -I -N and -H (details)
  916. utils: use the new hwloc_calc_parse_level() for parsing locations etc (details)
  917. utils: use the new struct hwloc_calc_level when counting/iterating over objects (details)
  918. utils: factorize the computing of the location prefix length (details)
  919. utils: move the parsing of os[] and pci[:] filters to hwloc_calc_parse_level() (details)
  920. utils: simplify the parsing of pci[vendor:device] filters (details)
  921. utils: ignore location filters if we already parsed it as "osdev[osdev.type]" (details)
  922. utils: allow to filter locations by [subtype] (details)
  923. utils: factorize the filtering of objects using the new level structure with filters (details)
  924. utils/tests: check location filters in calc and info tests (details)
  925. utils: document location filters in calc.1 info.1 and hwloc.7 (details)
  926. lstopo: rework --only using the hwloc_calc_level structure (details)
  927. utils/manpages: talk about numa[hbm]:X instead of hbm:X directly (details)
  928. utils/calc.h: remove a obsolete verbose message (details)
  929. core: don't guess memory tiers if memattrs are disabled (details)
  930. core: disable all distances/cpukinds/memattrs call if flags are set (details)
  931. memattrs: rework the heuristics to find types of memory nodes (details)
  932. memattrs: add "node0_is_dram" option to HWLOC_MEMTIERS_GUESS envvar (details)
  933. memattrs: use a bitmask for memory tier type instead of a simple enum (details)
  934. memattrs: add CXL memory tier type (details)
  935. memattrs: add HWLOC_MEMTIERS envvar to force some tiers (details)
  936. linux/knl: enforce DRAM subtype for KNL DDR (details)
  937. memattrs: sort memory tiers by BW and expose MemoryTier info attr (details)
  938. API+doxy: clarify that NUMA subtypes may be missing or wrong (details)
  939. memattrs: only build memory tiers and set subtypes when not loading from XML (details)
  940. utils/manpages: talk much more about HBM NUMA nodes (details)
  941. utils: filter based on memory tiers using numa[tier=1] (details)
  942. doxy: add a new section about heterogeneous memory (details)
  943. hwloc.7: typo (details)
  944. utils/gather-topology: gather "soc" bus (details)
  945. linux: gather SoC information (details)
  946. linux/cpukinds: separate gathering from submitting cpukind (details)
  947. linux/cpukinds: adjust turboboost max frequencies before building cpukinds (details)
  948. linux/cpukinds: factorize the registration of a single cpukind (details)
  949. linux/cpukinds: force homogeneity on NVIDIA Grace (details)
  950. API: document the linkspeed as runtime-changing (details)
  951. tests/abi: check the PCI device attribute ABI (details)
  952. doxy: document all PCI device/bridge attributes (details)
  953. tests/x86: add a SapphireRapids Xeon test (details)
  954. tests/x86: add a RaptorLake hybrid test (details)
  955. tests/linux: add a RaptorLake hybrid test (details)
  956. linux: fix smbios memory Misc info attrs on big endian (details)
  957. linux/smbios: use endian.h htole16/32() (details)
  958. test-gather-topology.sh: Disable test when cross-compiling (details)
  959. hwloc/import/diff/libxml: don't count the \0 in the buffer length (details)
  960. API: ending \0 must be included in xml input memory buffer and length (details)
  961. xml/import/nolibxml: assume ending \0 is included in input buffer and length (details)
  962. linux: fix a strncpy overflow warning (details)
  963. NEWS: bring 2.10.0 bullets in master (details)
  964. lstopo/graphical: only print osdev storage|memory size once (details)
  965. opencl.h: use the khronos PCI bus info extension when available (details)
  966. lstopo/graphics: fix the displaying of LevelZero non-HBM size (details)
  967. rename: add hwloc_cl_device_pci_bus_info_khr (details)
  968. contrib/windows-cmake: fix source path of cuda/opencl tests (details)
  969. levelzero/xelink: correctly assign ports to subdevices (details)
  970. levelzero/xelink: accumulate subdevice link bandwidths in parents (details)
  971. doxy: update the description of the I/O device figure (details)
  972. doxy: remove custom HTML div sections before doxygen sectons (details)
  973. doxy: add a section about building with GNU Make and CMake (details)
  974. [cpuid-x86.h] Add MSAN annotations to mark memory as initialized (details)
  975. API: improve the documentation of insert_group() (details)
  976. API: typo in previous commit (details)
  977. API: add hwloc_obj_set_subtype() (details)
  978. tests/hwloc/groups: use hwloc_obj_set_subtype() (details)
  979. deprecated.h: remove _nodeset() functions (details)
  980. doxy: update the XML compat FAQ for 3.0 (details)
  981. doxy: update XML upgrade section to 3.0 (details)
  982. doxy: update the API change FAQ to 3.0 (details)
  983. doxy: update the API/ABI change FAQ to 3.0 (details)
  984. doxy: update the 2.0 upgrade page with 3.0 (details)
  985. contrib/windows-cmake: actually enable the CUDA backend when detected (details)
  986. gather-topology: fix the gather of NVIDIA GPU NUMA info in /proc (details)
  987. linux: don't hide the NVIDIA GPU node on non-POWER platforms (details)
  988. nvml: use the current PCI link speed (details)
  989. nvml: fix the PCI link speed for PCI Gen4+ (details)
  990. pci+nvml: factorize PCI link speed computation (details)
  991. rename.h: update with hwloc__pci_link_speed() (details)
  992. info.1: typo (details)
  993. windows: fix dll filenames when UNICODE is enabled (details)
  994. lstopo/x11: fix Unknown icon shown on GNOME (details)
  995. publish_doc: update URL checks (details)
  996. doxy: don't forget to ship heteromem.png (details)
  997. core: add the KiB suffix to Size info when it's implicit (details)
  998. tests/xml: add "KiB" suffix to existing Size info values (details)
  999. lstopo: properly handle Size info suffixes (details)
  1000. doxy: document the "KiB" suffix for Size info attr values (details)
  1001. utils/calc+info: rework --best-memattr to allow multiple nodes (details)
  1002. utils/calc+info: abstract-out the parsing of best node flags (details)
  1003. utils/bind: switch to the same code as hwloc-calc for --best-memattr (details)
  1004. utils/misc: remove hwloc_utils_get_best_node_in_nodeset_by_memattr() (details)
  1005. tests/x86: add a Zhaoxin KH-40000 (details)
  1006. x86: update intro comments (details)
  1007. x86: update comments about topology enumeration loop break-out conditions (details)
  1008. tests/xml: update the Zhaoxin KH-40000 cpuid test (details)
  1009. x86: update topology enumeration loop break-out conditions (details)
  1010. tests/x86: add new KH-40000 cpuid tarball (details)
  1011. linux: try standard cgroup/cpuset mount point before reading /proc/mounts (details)
  1012. utils/info: small improvements to manpage and usage (details)
  1013. utils/info: abstract-out functions to show levels, topology info and support (details)
  1014. utils/info: "levels", "topology" and "support" may now be passed as target objects (details)
  1015. utils/info/tests: switch to new keywords "levels", "support" and "topology" (details)
  1016. utils/info: --topology, --support and --objects deprecated in 3.0 (details)
  1017. utils/info: abstract out the printing of attribute lines (details)
  1018. utils/info: add --get-attr to output a single attribute without prefix etc (details)
  1019. core: export remove_infos() (details)
  1020. memattrs: remove MemoryTier info when not valid anymore (details)
  1021. memattrs: add MemoryTiersNr=2 info attr to topology (details)
  1022. doxy: typo (details)
  1023. contrib/ci.inria.fr: only keep last 30 builds and last 30 days (details)
  1024. contrib/ci.inria.fr: actually keep last 25 builds for max 50 days (details)
Commit afda7db04e6241644831c127bbb5cb5b96529537 by Brice.Goglin
doxy: more links from/to the topo attributes section

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 14dc479399b0b3e03a7f5478560fb8c8e2dbc11b by Brice.Goglin
completions: add info/calc/bind/distrib --restrict-flags

Forgotten in a7a9603a8e3fa4b064e73e539fb109c0d32428fb

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
Commit 682f24c1bd4ad3b8982503223ff27738cae7964e by Brice.Goglin
contrib/dist/publish_doc: display home page links

We often have to update home page links to examples/upgradeAPI pages,
have the doc install script list them.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/dist/publish_doc (diff)
Commit ac6a1381e99510792393b7ba927f4caa69ea663a by Brice.Goglin
linux: add support for generic-initiator ACPI HMAT information

Starting with Linux 5.10, the kernel may expose Generic Initiators
(could be a FPGA/GPU) that have faster access to some memory targets
than usual CPU initiators.

nodes' access0 sysfs directory now contains the fastest of GI and
CPU initiators. access1 contains the fastest of CPU initiators only
(just like access0 in previous kernels).

Hence we now try access1 to avoid GI if any, or fallback to
access0 otherwise (earlier kernels).

Older hwloc releases without knowledge of GI/access1 will
work fine as long as the hardware doesn't expose a GI
(unlikely in the near future).
If the hardware exposes some GIs, we may fail to find
the CPU-locality of some memory targets.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
Commit 9f1aafbde3a9a9e7ad24e18cb88c3d4896fadaae by bgoglin
Move PGI compiler check before GNU

* PGI compiler has a GNU compatability mode so `__GNUC__` is defined by
   `pgcc`. So first check for `__PGI` before checking for GNU.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
The file was modified config/hwloc_check_vendor.m4 (diff)
Commit a44c308a279eecb34f9df3e280c5b3138b84c783 by Brice.Goglin
linux: fix comments about generic initiators

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit f2c3562842248bf55290dfa76411af0f053ddfc3 by Brice.Goglin
linux: add support for generic-initiator ACPI HMAT performance information

Commit ac6a1381e99510792393b7ba927f4caa69ea663a was about locality,
this one is for latency/bandwidth memattrs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit cf159165ff706ad54d92e3bf02fc099542584861 by Brice.Goglin
tests/linux: add a sysfs test with complex initiators/targets

There's one node per pair of core and one per 4-core package.

All nodes are either cpu-only (0-3) or memory-only (5-10)
Hence we have to hide CPU-only nodes and find the locality of memory nodes
using sysfs target/initiator files.

There's also a generic initiator (node4) that has faster access
to memory node5/6/7 than its local CPU.
It doesn't appear in our topology but forces us to use access1 instead of access0.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was addedtests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output
The file was addedtests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.tar.bz2
Commit d18c44a3d6b1b8163d980d50f33718d2bd68f045 by Brice.Goglin
tests/linux: remove fakememinitiators-1npc+1npc

Its name was wrong (1npc+1npc instead of 1npc+1npp),
and the new fakememinitiators-1np2c+1npp+gi added earlier
covers more features and corner cases.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/linux/fakememinitiators-1npc+1npc.output
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was removedtests/hwloc/linux/fakememinitiators-1npc+1npc.tar.bz2
Commit 606f988d074878d33a9359a0317ea494aaef6a3b by Brice.Goglin
contrib/android: fix the VERSION

That version is only used internally, e.g. it appears in generated XMLs.
The apk version comes from the android-specific files.

Signed-off-by: Valentin Hoyet <valentin.hoyet@inria.fr>
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
Commit a45f6514b91cefb7c4d98d555a7c8094a7c6f90b by Brice.Goglin
contrib/android: also fix version individual major/minor/release numbers

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
Commit 430312dcdd287f92f70fa7e21dda8b4e3d9c5736 by Brice.Goglin
contrib/android: also update the apk version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit 33d20a764863e1afdb978278cf653fb1a4367cc8 by Brice.Goglin
contrib/android: remove HWLOC_VERSION from private config.h

The one is the public one is enough,
having to manually update a single one is better.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/include/private/autogen/config.h (diff)
Commit 093ecec7b5d10d362bb0dab1c151913ee526e6b4 by Brice.Goglin
contrib/git-hooks: add a script for checking version numbers in pre-commit hooks

Android and Windows have their own custom config.h files with
hardwired version numbers. We always forget to update them
(that's why contrib/windows/test-windows-version.sh fails in CI after releases,
but checking before commit/push would be better).
Android also requires to update the apk version in the gradle config.

We add a check-versions.sh script (which verifies both windows and
android version numbers) and may be installed in a git pre-commit hook.

Signed-off-by: Valentin Hoyet <valentin.hoyet@inria.fr>
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedcontrib/git-hooks/check-versions.sh
Commit a3a68b489f2d1627380ae3c30cf4e75d7a4eefca by Brice.Goglin
contrib/git-hooks: add a pre-commit hook template

It calls check-versions.sh and update-my-copyright.pl
It must be installed in .git/hooks/pre-commit
(and/or in ~/.git_template/hooks/pre-commit for future clones).
Not sure we can enforce this installation, but we don't want anyway
since people may want to add more checks there.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
signed-off-by: Valentin Hoyet <valentin.hoyet@inria.fr>
The file was addedcontrib/git-hooks/pre-commit
Commit fd07760a596f2696ef2834173c0142e8e9710def by Brice.Goglin
bitmap: fix hwloc_bitmap_nr_ulongs()

Thanks to Norbert Eicker for the report.

Closes #429

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/bitmap.c (diff)
Commit ed2f175bd831ac55b70e9ba465212b2806670d36 by Brice.Goglin
tests/bitmap: check bitmaps with single 0 bit and single full ulong

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_bitmap.c (diff)
Commit 6456b494652938e4caa3c64acef7df3ee24081ed by Brice.Goglin
contrib/ci.inria.fr: display the windows MSVC build environment

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-1-visualstudio.bat (diff)
Commit 3114d29c88f854997bef3feb0339133a6cc82bad by Brice.Goglin
contrib/ci.inria.fr: run hwloc-info --support on cygwin too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-cygwin.sh (diff)
Commit 0f0ae28e30d1e5ef35319fc70b6f55dde0b70cf2 by Brice.Goglin
lstopo/cairo: only set the line thickness once

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-cairo.c (diff)
Commit 35e3824d47bc7316eacc7ea65d66da6d605f72a8 by Brice.Goglin
contrib/android: update to apk 1.5.1

- Add link to the discovery debug/log file
  (instead of having to dig into android storage manually)
- Add about page with links to website, github, CI
- Random small improvements

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/AndroidManifest.xml (diff)
The file was addedcontrib/android/AndroidApp/lstopo/src/main/res/layout/about.xml
The file was modified contrib/android/AndroidApp/gradle/wrapper/gradle-wrapper.properties (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/Lstopo.java (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/res/values/strings.xml (diff)
The file was addedcontrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/About.java
The file was modified contrib/android/AndroidApp/lstopo/src/main/res/menu/activity_main_menu_drawer.xml (diff)
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was addedcontrib/android/AndroidApp/lstopo/src/main/androidManifest.txt
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/MainActivity.java (diff)
Commit c319a2bb0ecce32129cbb25a014b960c035c7d3e by Brice.Goglin
contrib/android: cleanup RGB color parameter names

No functional change, just RGB instead of RBG in some lines.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/cpp/lib.c (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/Lstopo.java (diff)
Commit 8ac29e9daddb6082ab032be6d942aaea909dde5e by Brice.Goglin
git-hooks/check-version: update to new android gradle version format

Signed-off-by: Valentin Hoyet <valentin.hoyet@inria.fr>
The file was modified contrib/git-hooks/check-versions.sh (diff)
Commit a10b9e7b3afc2de3487354b6a86f49492538e1c3 by samuel.thibault
lstopo-ascii: Use last colors instead of first colors

People would be used to defining their own colors, typically starting
from color 16. When we know max_value from ncurses, lstopo should rather
define colors from last colors, to avoid clashing with user-defined
colors.

Fixes #388
The file was modified utils/lstopo/lstopo-ascii.c (diff)
Commit b98a2c84643c9af06fe7ee6ad05d81c965fdf220 by Brice.Goglin
memattrs: try to clarify that most initiators should be cpusets for now

Objects as initiators work but it's not used internally yet.

Refs #433

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/memattrs.h (diff)
Commit f21ab8fd9d6dc00531fad33a6166d4427da6143c by Brice.Goglin
memattrs: some doxygen fixes

Hide initializers,
Move enum declarations out of structs so that references don't need the struct prefix.
Misc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/memattrs.h (diff)
Commit 4c2e69957227369647c063ad39460fc143089f64 by Brice.Goglin
linux: factorize some fd/path reading functions back

There's no strong need to have read_fd_as_cpumask/list()
separated from read_path_as_cpumask/list(), merge them back.

Also it avoids using open() in some cases (no fsroot) and
hwloc_open() in others (fsroot).

Also it will simplify support for readfile() (if it ever gets merged)
since we now open/read/close in the same function, but there's still
some work to do for reading cpumask/cpulist with readfile().

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 17b2bface82f75fc785c666123a53988c2f564c2 by Brice.Goglin
linux: rework read_path_by_length() return value

Return the length read instead of success/failure.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 78567719c0c92f13fbe3dbc719a3f9e14041f619 by Brice.Goglin
linux: use helpers for reading tid location

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit c407d430e58a4c8a78778a7688c56835e2b7503f by Brice.Goglin
linux: use helpers for reading nvidia gpu numa nodes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 547de8d88a8a2b06ca40a75c7ea3a2318cb0c22b by Brice.Goglin
linux: use helpers for reading os device numa node

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 01a23ab551c22b6871e3f2cf2d36bf2b0ad168e1 by Brice.Goglin
linux: use helpers for reading the pci config space

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 806a8c2a8eeea73c8a18d1a4da265a6c9e5ae247 by Brice.Goglin
tests/diff: fix the test when the first NUMA node is CPU less

NUMA differences may actually appear before PU differences if
the first NUMA node is CPU less.
Handle both orders in the assertions.

Thanks to James D. Trotter for reporting the issue.
Closes #374.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_topology_diff.c (diff)
Commit cda98ea33dbe6a4a1703771aefb91e6154d63798 by Brice.Goglin
core: abstract-out hwloc__tma_dup_infos()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/private/private.h (diff)
Commit 3a1dbc303138063814760bbc27ff07d3d86e8a0d by Brice.Goglin
API: add hwloc/cpukinds.h for exposing difference between cores

Backends may register cpusets with optional info attributes
describing contained PUs.
The core will agregate these info into individual "kinds" of
PUs with same attributes.
Each PU may be part of a single kind.

Backends may also force an efficiency value that the core will
use to rank kinds.

We'll later add heuristics for ranking kinds based on info attributes.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/Makefile.am (diff)
The file was modified doc/doxygen-config.cfg.in (diff)
The file was modified NEWS (diff)
The file was modified hwloc/Makefile.am (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/private/private.h (diff)
The file was addedhwloc/cpukinds.c
The file was modified tests/hwloc/hwloc_topology_abi.c (diff)
The file was modified contrib/windows/libhwloc.vcxproj.filters (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/cpp/lib.c (diff)
The file was addedinclude/hwloc/cpukinds.h
The file was modified doc/Makefile.am (diff)
The file was modified contrib/windows/libhwloc.vcxproj (diff)
The file was modified hwloc/topology.c (diff)
Commit d931c7eae52dfa7dbb37428476c7d6f200befda8 by Brice.Goglin
xml/import: factorize out the actual parsing on non-object-specific info attr

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 73db0d0486179f860ce2a2110f74c0ee60db156b by Brice.Goglin
xml: add cpukinds import/export

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/hwloc2.dtd (diff)
The file was modified hwloc/topology-xml.c (diff)
Commit 26e9fffbe91fe6e3418741259a358a5bca6aada7 by Brice.Goglin
tests/xml: add a case with cpukinds

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/xml/fakecpukinds.xml
The file was modified tests/hwloc/xml/Makefile.am (diff)
Commit 03560bf26ff7f5777f6dffacbb1c64d55b76efa0 by Brice.Goglin
lstopo: add --cpukinds option

They are also shown in verbose mode.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified NEWS (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit 22ca5a8891e5b2ec0b29ec1df4082cba35a05aaa by Brice.Goglin
x86: use the hybrid leaf to build a cpukinds based on the core type

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified NEWS (diff)
Commit aef06ffb4a22c23e0abb552f00c40d1505e8dbcd by Brice.Goglin
linux: read cpufreq/cpuinfo_max_freq and base_frequency to create cpukinds

cpuinfo_max_freq is available in all cpufreq drivers,
but it's not totally clear it matches efficiency.

base_frequency is likely more reliable,
but only available in the intel_pstate cpufreq driver.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified tests/hwloc/linux/2arm-2c.output (diff)
The file was modified tests/hwloc/linux/8ia64-2s2c2t.output (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml.output (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.output (diff)
The file was modified tests/hwloc/linux/8em64t-4c2t.output (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.output (diff)
The file was modified tests/hwloc/linux/128ia64-17n4s2c.output (diff)
The file was modified tests/hwloc/linux/48amd64-4d2n6c-sparse.output (diff)
Commit 82eb4209cbd74b241c8a050c36a92bef01069c8a by Brice.Goglin
windows: use RtlGetVersion() for reliable version checks without manifest

GetVersion() works fine inside hwloc now that we build with a manifest.
However, external users will need a manifest too when building their
program so that their hwloc enables Windows10+ code properly (even if
they use a libhwloc that was built with a manifest). Not easy.

Use the RtlGetversion() symbol to get the real Windows version.
This is sort of ugly but many people have used this for a while,
hence Microsoft will likely have a hard time breaking it.
If the symbol is ever missing, we'll fallback to manifest+GetVersion.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/windows/windows.h (diff)
The file was modified hwloc/topology-windows.c (diff)
Commit e831ff63d1de0cf1e63c9b2019d9d73d491fb02e by Brice.Goglin
windows: add cpukinds using the native efficiency class in Windows 10

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/cpukinds.h (diff)
Commit 6e4731e81775718864365f37dd7347fecf82a931 by Brice.Goglin
cpukinds: add some ranking/efficiency heuristics

We first look at the forced efficiency if any (provided by Windows 10 only for now).
Otherwise, we use the coretype (IntelAtom or IntelCore) and frequencies
to define efficiencies (base frequency if available, max frequency otherwise).
On ARM, we only use frequencies since there is no information about
core type.

It's not clear how things will evolve in the future, so we have several
other heuristics that may be enbaled through the HWLOC_CPUKINDS_RANKING
env var (coretype+frequency/coretype/frequency/frequency_max/frequency_base/
forced_efficiency/no_forced_efficiency/none).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/linux/8ia64-2s2c2t.output (diff)
The file was modified hwloc/cpukinds.c (diff)
The file was modified tests/hwloc/linux/128ia64-17n4s2c.output (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.output (diff)
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified tests/hwloc/linux/48amd64-4d2n6c-sparse.output (diff)
The file was modified tests/hwloc/linux/2arm-2c.output (diff)
The file was modified tests/hwloc/linux/8em64t-4c2t.output (diff)
Commit 360918a8ac87f1027976a93f2da528cd23e2175f by Brice.Goglin
cpukinds: deduplicate identical info names/values

May happen when both Linux and x86 report CoreType

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit 2fe48d80a8b145e480a1794537b114531a889149 by Brice.Goglin
doxy: add cpukinds info in topology attributes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc/cpukinds.h (diff)
Commit 1619bff087005f87c1f8a55e0ebfa6c763525725 by Brice.Goglin
tests/linux: add heterogenous frequencies to fakeheteronuma for cpukinds

And rename it to fakeheterocpunuma

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/linux/fakeheteronuma.env
The file was removedtests/hwloc/linux/fakeheteronuma.tar.bz2
The file was addedtests/hwloc/linux/fakeheterocpunuma.output
The file was addedtests/hwloc/linux/fakeheterocpunuma.env
The file was addedtests/hwloc/linux/fakeheterocpunuma.options
The file was removedtests/hwloc/linux/fakeheteronuma.output
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was removedtests/hwloc/linux/fakeheteronuma.options
The file was addedtests/hwloc/linux/fakeheterocpunuma.tar.bz2
Commit d14aea6e6c12d5801044bbfa70a5d7d45fe16296 by Brice.Goglin
tests/x86: add a test with fake cpukind information

Modified from my laptop by adding 0x1a CPUID leaf exposing Intel Atom/Core types,
and by setting the hybrid feature (bit 15 of cpuid7.edx).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/x86/Intel-CPUID.1A-1p2co2t.tar.bz2
The file was modified tests/hwloc/x86/Makefile.am (diff)
The file was addedtests/hwloc/x86/Intel-CPUID.1A-1p2co2t.env
The file was addedtests/hwloc/x86/Intel-CPUID.1A-1p2co2t.output
Commit 2431405ea1971d531989af3bb361fb6bf70a2aac by Brice.Goglin
utils/hwloc-calc: add --cpukind

For filtering PUs by cpu kind

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
Commit 1297aa6b1a7f7fe434d40387327de8c52caf9b85 by Brice.Goglin
utils/tests: check cpukinds in test-hwloc-calc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
Commit a5ce6288a992e14c9f1c19160fdc5fa81e25134e by Brice.Goglin
utils/hwloc-info: display which CPU kind(s) CPU-side objects are included in

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified NEWS (diff)
Commit fea075ea22726fcc8f9c6c4920ab7cedda7202bf by Brice.Goglin
utils/tests: check hwloc-info cpukinds output

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
Commit 1cc6886a9ed39b7d09312e6c6d063ee42b3df0b2 by Brice.Goglin
API: add hwloc_cpukinds_register()

For adding custom CPU kind information.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
The file was modified doc/Makefile.am (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc/cpukinds.h (diff)
Commit 87a3f3ccb93ddd876e2f0e72f5f9e0492541876b by Brice.Goglin
tests: add a cpukinds API test

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/Makefile.am (diff)
The file was addedtests/hwloc/cpukinds.c
Commit d05b2524d64e7799aa90e98496487f16492cf784 by Brice.Goglin
utils/hwloc-annotate: add cpukind command

For adding a new cpukind

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
Commit 3ba45f8bb3ee3051f1e3e972c44173b31d4a13b4 by Brice.Goglin
utils/tests: check cpukinds in hwloc-annotate

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified utils/hwloc/test-hwloc-annotate.sh.in (diff)
Commit f2d852fbc3e1d060a9a757734dad0acf2f137790 by Brice.Goglin
API: add a cpukind_efficiency bit in the discovery support array

Only set on Windows for now.
Forced efficiency are only available on Windows, or when given by the user.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified tests/hwloc/xml/fakecpukinds.xml (diff)
The file was modified include/hwloc.h (diff)
The file was modified tests/hwloc/hwloc_topology_abi.c (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
Commit 3a7941ce7eabcd8295f9a4f6e2da12f43fb0bd6d by Brice.Goglin
lstopo/core: add cpukind attributes to object userdata

Not used yet, except for disabling the factorizing across different kinds.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit a55ae9eae6d12fcec27a230c8af4c1865aea9c1a by Brice.Goglin
lstopo/draw: change the format of PU boxes for CPU kinds

When there are multiple kinds, use dot/dash lines with
higher thickness for PUs not of the first kind.
Bold font is also used for kinds with odd indexes.

Kind#0 gets normal boxes
Kind#1 gets boxes with small dashes and bold font
Kind#2 gets larger dashes, thicker lines, and non-bold font
etc

The thickness isn't the same in all backends,
depends on the actual rendering.
Windows doesn't support dash/dot if thickness>1,
hence we don't change the thickness at all there.

All this may be disabled with --no-cpukinds,
or toggled with 'k' in the interactive outputs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>

Thanks to Clement Foyer for the tikz part.

Signed-off-by: Clement Foyer <cfoyer@hpe.com>
The file was modified utils/lstopo/lstopo-tikz.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/MainActivity.java (diff)
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/cpp/lib.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/Lstopo.java (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo-cairo.c (diff)
The file was modified tests/hwloc/ports/include/windows/windows.h (diff)
The file was modified utils/lstopo/lstopo-fig.c (diff)
The file was modified utils/lstopo/lstopo-svg.c (diff)
The file was modified utils/lstopo/lstopo-windows.c (diff)
Commit d92f918a7896ca7852909211bdce1fbf94ea28b4 by Brice.Goglin
linux/cpukinds: maxfreq isn't always maxfreq anymore

Can be either max ou base freq.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 51795fba9d9d3dbbb473389c2822e60bceb755ef by Brice.Goglin
linux/cpukinds: sort by frequency before registering

Lower frequency likely means lower efficiency.
Hence register frequency-based cpukinds in that order for
consistency with cases where we have enough info for ranking.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.output (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 9c159e565748e06bab0fb2c66a09d191b5f73f43 by Brice.Goglin
API: bump HWLOC_API_VERSION to 0x00020400

hwloc/cpukinds.h was added.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit a12efcd8f5ec7ce827b4c214251ef45f83ccf105 by Brice.Goglin
ci.inria.fr/browse_jenkins_logs.sh: update examples

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/browse_jenkins_logs.sh (diff)
Commit a55490d4f65bfc97033b49a5ae237943e28d5cc7 by Brice.Goglin
contrib/android: fix the apk manifest name

Likely got wrong during a merge conflict.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedcontrib/android/AndroidApp/lstopo/src/main/androidManifest.txt
The file was addedcontrib/android/AndroidApp/lstopo/src/main/androidManifest.xml
Commit aa287238c1d1febcddcf666b0c465da312f11525 by Brice.Goglin
contrib/android: save the app icon original files

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedcontrib/android/assets/lstopo.svg
The file was addedcontrib/android/assets/lstopo.png
Commit 34ccbe03725e4af5bf659336f5bb6ce890bf979b by Brice.Goglin
contrib/android: fix sharing of graphic output

Share the entire lstopo output, not the screen.

Signed-off-by: Valentin Hoyet <Valentin.Hoyet@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/MainActivity.java (diff)
Commit 04a4977a2e076883fc5a94edbdb571bea2bc824e by Brice.Goglin
linux: use Linux 5.11 sysfs cpu types to detect Intel Atom/Core types

It's not clear it will be in 5.11 or not,
and whether the sysfs files/directories will be different.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit ee7b0dc8b5c736a607858da9ef2d369cfeb23b91 by Brice.Goglin
tests/linux: add Linux sysfs cpu types to fakeheterocpunuma

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.output (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.tar.bz2 (diff)
Commit 1ddfa13c70fd589c8d382267957342fd89f62284 by Brice.Goglin
doxy: fix LinuxCPUTyle cpukind attribute description

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 95c5b633acdc94c00ab0131468ba46a7f89225a7 by Brice.Goglin
VERSION: master is now 2.5

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/windows/hwloc_config.h (diff)
The file was modified VERSION (diff)
Commit 51ac438bd25abb5935cf6bf2440e8f5ffee87d8a by Brice.Goglin
cpukinds: fix the checking for duplicate values when ranking by info

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit 170b728a809ff9f1d89603266303b503c6e4d669 by Brice.Goglin
distances: uniformize and document NUMALatency matrices

Use the same name for Linux/Solaris/FreeBSD,
and cite it as the main example in the doc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-solaris.c (diff)
The file was modified include/hwloc/distances.h (diff)
The file was modified hwloc/topology-freebsd.c (diff)
Commit d1ef509505d776a8251bcafaa00e888b106100a1 by Brice.Goglin
autogen: fix MacOS X Big Sur libtool.m4 bug by patching configure

This libtool patch isn't applied upstream yet but it is
already used by several projects to fix build failures
on the latest MacOS X (Big Sur).

Upstream patch at https://lists.gnu.org/archive/html/libtool-patches/2020-06/msg00001.html
applies to libtool.m4 but we have to apply it to configure
after autoconf used the (buggy) libtool.m4 instead.

See also open-mpi/ompi#8218.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified autogen.sh (diff)
The file was modified Makefile.am (diff)
The file was addedconfig/libtool-big-sur-fixup.patch
Commit 9ea6da738d0a0c23635907b80fc1b0bb8bf324a9 by Brice.Goglin
utils/misc: remove a useless and harmless loop duplicate

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit 27e970774885927504a2e77be591a531ce1a7d9b by Brice.Goglin
utils/misc: improve the printing of distance matrices

Scale the column width to the max of what we have to show in the matrix,
don't limit values to 5 digits, etc.

Also print OSDevices by name instead of indexes.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.output (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.console.output (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit dc262b08504fd4d20722c0fb2a59e1355837f553 by Brice.Goglin
core: fortify bridge downstream attribute use

All our bridges are currently downstream to PCI,
but it's not impossible it changes in the future,
make the code a bit more safe.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified hwloc/pci-common.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
Commit 4a1e7a7f146311c21e9d1762a9ec42f11c404b1b by Brice.Goglin
git-hooks/check-versions: better error messages when Windows VERSION is outdated

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/git-hooks/check-versions.sh (diff)
Commit 6bfd272e1f4e29f9702a8915a0396845a269fc8a by Brice.Goglin
NEWS: bring official 2.4.0 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit f1d8d44a20455f927fca4458db4287eafe6c1d0a by bgoglin
Fixed a memory leak when destroying hwloc_linux_cpufreqs objects.

Signed-off-by: Perceval Anichini <perceval.anichini@trilogic.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit e7bf9720fade2c1924cd55a90ece0590a46c0246 by Brice.Goglin
distances: fix the import of large heterogeneous distance matrices

Properly import the list of heterogeneous indexes when it is split
on multiple lines.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 282cf26fdab6383d53262d9ba0e4c611f6eb0aaa by Brice.Goglin
tests/xml/fakeheterodistances: enlarge matrices to test hetero-indexes on multiple lines

Test for commit e7bf9720fade2c1924cd55a90ece0590a46c0246

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/fakeheterodistances.xml (diff)
Commit cf719073ce553df15b8dabe3b96b3a39acb469f2 by Brice.Goglin
plugins.h: clarify that things may change when the component ABI is bumped

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/plugins.h (diff)
Commit 3aac8fe5fec1a9416f875317eb06853b62f5496f by Brice.Goglin
ci.inria.fr/sonar: update languages for recent sonarscanner releases

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
Commit a68a7665d1101a01100a81a967576e87aff71533 by Brice.Goglin
ci.inria.fr/sonar: output the sonar-scanner version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
Commit 83a16c20a2ceb5f4cba76397ba5d58f91a315f9d by bgoglin
configure: add --with-cuda=<dir>

Specifies where CUDA is installed to avoid having to pass
C_INCLUDE_PATH and LIBRARY_PATH at build time.
LD_LIBRARY_PATH is still required at runtime.

The CUDA directory is also used for looking for OpenCL and NVML
subcomponents.

Thanks to Andrea Bocci for the suggestion.

Refs #392.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
Commit 93692657413a8cfe2f8e963e7fdfa5ce14dd6965 by Brice.Goglin
hwloc/opencl.h: fix AMD OpenCL device locality when PCI bus/device >= 128

cl_device_topology_amd stores the PCI bus/device/function as cl_char (signed).
bus/device can be >= 128 and those don't cast correctly to unsigned int.

Applications that call the inline function hwloc_opencl_get_device_pci_busid()
directly must be recompiled to get this fix.

Thanks to Edgar Leon for reporting the issue (some AMD OpenCL devices were
not inserted in the PCI parent while RSMI devices were fine).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/opencl.h (diff)
Commit 706e0fbfe7bb8a535cfb1afd8f06fc4fd80c5f2b by Brice.Goglin
ci.inria.fr/sonarscanner: update exclusions

Fix tests/ports exclusion
Add XMLs (we already verify them with xmllint and lstopo)
Add netloc_draw (we don't want to test all this HTML/JS code)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
Commit 7f793d74d07d1bf3284d0625f941a2401f412c94 by bgoglin
Fix GCC checks to use the vendor name

* The PGI compiler is identified as a GCC compiler (so `$GCC == yes`)
   This can cause problems if the user accidentally adds `--enable-picky`
   or if the `$GCC` variable is used to check if it is safe to add GCC
   specific compiler flags.
* Instead of using `$GCC` we can use the vendor string returned by
   `_HWLOC_C_COMPILER_VENDOR`.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
The file was modified config/hwloc.m4 (diff)
Commit db423bc93bf10114015ba652ce36d35cf1c5207f by Brice.Goglin
contrib/android: remove unused duplicate android manifest

Wasn't correctly fixed in a55490d4f65bfc97033b49a5ae237943e28d5cc7

Thanks to Eric Schnetter for reporting the issue,
it caused a filename conflict on case-insensitive filesystem (MacOS).

Closes #441

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedcontrib/android/AndroidApp/lstopo/src/main/androidManifest.xml
Commit efc240452ca748f7ec3ad6a1c77ef805df193db4 by Brice.Goglin
x86: add a summary of PU/APIC/Core/Pkg/Node info in verbose debug

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit 45aaeb2010f32543cb3dd66fdfa784fad2597497 by Brice.Goglin
x86: fix full discovery enabling when FreeBSD/NetBSD backends only created PUs

Backends such as FreeBSD and NetBSD only create PUs but their
priority is higher than x86. Hence x86 has to detect whether only
PUs were created before adding everything else.
This requires to reconnect levels earlier.

Thanks to Thibault Payet and Yuri Victorovich for the report.

Closes #442

Downstream FreeBSD bug report https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252643
HPX issue about requiring Core objects https://github.com/STEllAR-GROUP/hpx/issues/5115

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit 7277a2e2f9d76766a40fada04224d88a4b65b913 by Brice.Goglin
x86: update general comments about this backend

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit b7afa6c3881288fbe0b295d2ae709d9a640c756e by samuel.thibault
doc: Add missing dependency

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
The file was modified doc/Makefile.am (diff)
Commit a3753c64dfa33753767349131c279f01983098e7 by Brice.Goglin
configure: pass -Werror when checking compiler options

clang warns about unknown options (while gcc errors-out)
so pass -Werror when checking for options at configure time.

Thanks to Jeff Squyres for the report.
Refs #447

By the way, rename _HWLOC_CHECK_GCC_OPTION() to _HWLOC_CHECK_CC_OPTION()
since this isn't GCC specific.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_check_vendor.m4 (diff)
The file was modified config/hwloc.m4 (diff)
Commit c65ba09172e8e12a524cd3a23bc62f7a67c09d8c by Brice.Goglin
autogen: use bash explicitly

echo -n doesn't work on some Mac OSX

Refs #447

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified autogen.sh (diff)
Commit 73c568866fcf99aa85d8f4343c3cab4d13c52765 by Brice.Goglin
configure: detect when a patched libtool was used

Some libtool are now available with a Big Sur patch.
Detect both versions of the patch before trying to patch.

Thanks to Jeff Squyres for the report.
Closes #447

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified autogen.sh (diff)
Commit eca3838533f8d58a3a087001107963e77f60b48d by Brice.Goglin
core: mark the topology as modified when we replace an object

When inserting a custom group after load(), it may get merged
and replace an existing group. This requires a reconnect.
So mark the topology as modified so that levels are rebuilt, etc.

Refs #446

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 663a65969b394403d7c46802c6f67ba3568da4e3 by Brice.Goglin
core: fix inserting of custom groups replacing an existing ones

When inserting a group identical to an existing one,
the new one may "replace" the old one (depends on their kinds).
If so, we need to rebuild the level, fill its cpusets,
recompute its depth and total_memory, etc.

This happened when lstopo --top inserted a group (kind 0 for now)
identical to a NUMA group (kind higher).

Thanks to Scott Hicks for reporting the issue and providing
lots of debugging information.

Closes #446

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit dd00e9e973822587edc8d2bc41596559277393fd by Brice.Goglin
tests/groups: check the merging of identical groups with higher/smaller kinds

Reproducer for #446

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_groups.c (diff)
Commit 4ff8c5ecc5863b89c437e400518bca6ff1ec2ffe by Brice.Goglin
API: clarify the documentation of alloc/insert_group()

Detail the behavior of merging with respect to dont_merge and kinds.
Allow to use high kinds for discarding whenever possible, etc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit d4ce5f4dcde8b6cd7c4dc240070e2ce6177ff945 by Brice.Goglin
lstopo: hide --top groups whenever possible

Set their kinds to max so that they don't replace existing
memory/... kinds if identical.

Refs #446.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 3c9ec966984db746628a538edf0c82f1adfbc847 by Brice.Goglin
core: add assertions about local/total memory in debug

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 5a361d1070a34365cdfee91c165e2f08da281e25 by Brice.Goglin
utils/hwloc-ps.1: fix a ref to --disallowed

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-ps.1in (diff)
Commit 5cf8a51e564e19b096aa895f0040fef45500ff8e by Brice.Goglin
tests/shmem: cleanup the enabling of specific distance checks

Add a custom info attr instead on relaying on the existing
SyntheticDescription (which will exist in some upcoming XML
topology tests).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/shmem.c (diff)
Commit b4f945d5da0457fc10e4b29b3b0530ddda96cc90 by Brice.Goglin
tests/shmem: also test topologies with memattrs/cpukinds/io from XML

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/shmem.c (diff)
The file was modified tests/hwloc/wrapper.sh.in (diff)
Commit b518dcee527805d002d71a59cf03b373a91b18b7 by bgoglin
Fix check for IBM xl compilers for v13.1 and later.

By default newer xlc compilers only define __ibmxl__ now.

https://www.ibm.com/support/knowledgecenter/en/SSXVZZ_13.1.6/com.ibm.xlcpp1316.lelinux.doc/compiler_ref/xlmacros.html
Signed-off-by: Austen Lauria <awlauria@us.ibm.com>
The file was modified config/hwloc_check_vendor.m4 (diff)
Commit b09f6539794db92d476ee117d1827488ebd21b89 by bgoglin
Fix configury where most compilers will get mislabeled as 'gnu'.

Most compilers define the __GNU__ macro, so put it at the bottom
as a catch-all.

Tested with gcc, xlc, pgi and clang.

Signed-off-by: Austen Lauria <awlauria@us.ibm.com>
The file was modified config/hwloc_check_vendor.m4 (diff)
Commit cf20887ba6de45e671d9155776c7eb92b4d8c404 by Brice.Goglin
utils/gather-cpuid: dump the 0x19 leaf

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 29e3ec3afc1624ec012519c519dbb5ab277d6054 by Brice.Goglin
configure: don't define cuda common vars unless needed (opencl/nvml/cuda)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 9cd818b7715dc48d0610e05cdafc30e7625af229 by Brice.Goglin
cpukinds: fix the checking for duplicate ranking values

Don't compare forced_efficiency, compare ranking values instead.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit 3a0cfab86910f6f1722928933b632abd7803e31d by Brice.Goglin
tests/x86+linux: allow .env file to change the x86,linux order

Testing the default order (linux before x86) will be useful too.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86+linux/test-topology.sh.in (diff)
Commit 1a97da7a02b6e851229082720ec4bd7b684962c2 by Brice.Goglin
tests/x86+linux: add a test combining x86 CoreType and linux cpufreq

Based on Intel Lakefield.

Regression tests for commit 9cd818b7715dc48d0610e05cdafc30e7625af229

x86 must be called after linux because linux cannot annotate cpufreqs yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.options
The file was addedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.tar.bz2
The file was addedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.output
The file was addedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.env
The file was modified tests/hwloc/x86+linux/Makefile.am (diff)
Commit 38b47c74fddb27c9e4316e36fde045950bc134de by Brice.Goglin
tests/x86+linux: don't forget the new options file in make dist

Forgotten in 1a97da7a02b6e851229082720ec4bd7b684962c2

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86+linux/Makefile.am (diff)
Commit 20d69af930de0557c44bf936e09e6fea1dda6ef4 by Brice.Goglin
linux: allow annotating cpukinds when PUs were discovered by another backend (x86)

Will be useful when x86 must run first because the CPUs
isn't correctly exposed by Linux.

This behavior is now tested in 64amd64-4p2n4ca2co which now
gets cpukinds frequency info.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86+linux/64amd64-4p2n4ca2co.topoextnuma.output (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/x86+linux/64amd64-4p2n4ca2co.output (diff)
Commit 7bcc273efd50536961ba16d474efca4ae163229b by bgoglin
linux: fix support for CPU0 being hotplugged

Linux kernel with CONFIG_BOOTPARAM_HOTPLUG_CPU0 as compile time
allow offlining CPU0. The Linux early discovery used CPU0 to detect
whether we should use /sys/bus/cpu or /sys/devices/system/cpu,
and whether new core/package_cpus are available.
If this fails, read the first online CPU number at look at it.
The overhead for the normal case (CPU0 online) is 0.

Thanks to Garrett Clay for the report.
Fixes #450

For hwloc 2.5, we should moderniez this code:
/sys/devices/system/cpu is unlikely going away because many
files were added in there since /sys/bus/cpu was added.
Kernels without sysfs cpu topology files are also too old now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit ce8ea0212129ba093e50588754d7d28a864e33bf by Brice.Goglin
hwloc-ps: add --short-name

Signed-off-by: Valentin Hoyet <valentin.hoyet@inria.fr>
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified utils/hwloc/hwloc-ps.1in (diff)
Commit cbb6b960f9c1d5c2cc205e3a3df78454bd551d13 by Brice.Goglin
hwloc-ps: don't apply --pid-cmd to processes that will be filtered out

Split the calling of the user-provided command out of the main
common-ps functions and let the caller calls it after filtering
interesting processes.

Otherwise hwloc-ps --pid-cmd takes several seconds on all platforms
since we have to query hundreds of (uninteresting because not bound)
processes.

Thanks to Valentin Hoyet for the report.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified utils/hwloc/common-ps.h (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/hwloc/common-ps.c (diff)
Commit 5177f9ca2e64a90d62589e024523288b9abe44a5 by Brice.Goglin
cuda/nvml/opencl/pci/rsmi: prefix error messages with "hwloc"

Refs #453

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-cuda.c (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
Commit 5fd60f712f4fe52b07ee54e738ee76288a5c7111 by Brice.Goglin
utils/common-ps: fix popen/pclose for Windows

Broken in cbb6b960f9c1d5c2cc205e3a3df78454bd551d13

Not strictly needed since hwloc-ps isn't built on Windows
and lstopo --ps does nothing there, but the build is easy to fix.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/common-ps.c (diff)
Commit 6b917ead265131fc0c8529ff02132c608893b366 by Brice.Goglin
configure: fix cuda common variable definition

Fix for 29e3ec3afc1624ec012519c519dbb5ab277d6054

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit ff4229ced07f564294f22635ee56710747da3e8f by Brice.Goglin
NEWS: bring 2.4.1 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 9298b7769f936be35b0233f1f6e301d5dcde0026 by Brice.Goglin
utils/common-ps: refix popen/pclose for Windows/Cygwin

Completes commit 5fd60f712f4fe52b07ee54e738ee76288a5c7111,
which tried to fix cbb6b960f9c1d5c2cc205e3a3df78454bd551d13

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/common-ps.c (diff)
Commit a2966243f8cea786632a3918dd9e677407d7371d by Brice.Goglin
configure: move AC_ARG_VAR(MS_LIB) to hwloc-internal config

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
The file was modified config/hwloc.m4 (diff)
Commit 3561415784c1783534bcc34c9316c53c5c9b83e8 by Brice.Goglin
configure: typo in comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
Commit 5f32f45916d9092b6f3ff7a6038a4ee95cb3c129 by Brice.Goglin
doxy: add Cygwin to the FAQ about Windows builds

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 6a55ae4ad49554c134adf004c785b57b8abe7a5e by Brice.Goglin
configure: cleanup cuda/cudart variables

libhwloc uses cudart only. cuda is for tests/hwloc/cuda.
Rename configure/Makefile variables properly.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified tests/hwloc/Makefile.am (diff)
Commit fb18b8e512e4ae59ba108ad690424514b9897b9e by Brice.Goglin
configure: use LIBS variables for ibverbs/rsmi/nvml tests build

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified tests/hwloc/Makefile.am (diff)
Commit a5695d47251ef80d391e2d18688d5af3ac4488d6 by Brice.Goglin
configure: use CPPFLAGS/CFLAGS/LIBS/LDFLAGS consistently

Some of these variables aren't defined for some backends,
depending on whether we detect using pkg-config or not.
Don't propagate these differences everywhere, always use
CPPFLAGS/CFLAGS/LIBS/LDFLAGS even if they are empty for now.

Applies to global lib build variables, plugin variables,
and tests variables.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
The file was modified tests/hwloc/Makefile.am (diff)
The file was modified hwloc/Makefile.am (diff)
Commit ab3b7f2751a4ccb0df8ffb3a432991141a863b7d by Brice.Goglin
configure: add --with-cuda-version or use CUDA_VERSION to select CUDA pkg-config files

Thanks to Stephen Herbein for the suggestion.

Refs #392

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified config/hwloc.m4 (diff)
Commit 27c3c8bcfdd76ace31cc2635819c5e8169e47767 by Brice.Goglin
doxy: add a FAQ entry about CUDA configuration

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit f95e4b8ecb38819ad067b9b49053d4f7a66771f3 by Brice.Goglin
cuda: don't warn if no device were found

cuda returns an error when there are no devices.

Unfortunately, nvmlInit() returns "unknown error" (999)
in the same case. I am not sure we can filter-out this
error in all 999 cases.

Thanks to Aurelien Bouteiller for the report.

Refs #453

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/cuda/cuda_runtime_api.h (diff)
The file was modified hwloc/topology-cuda.c (diff)
Commit 6295cb21c2663097e69efb161359ad4f55a74a06 by Brice.Goglin
API: add hwloc/windows.h for querying windows processor groups

Windows processor groups are not a physical hierarchical level
(although it may be exposed by hwloc if it's different from
NUMA nodes, packages, etc) but it has an impact of application
because binding must remain inside a single group.
Expose those groups explicitly so that applications know what
their binding masks should be restricted to.

Thanks to Ivan Kochin for the suggestion.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
The file was addedinclude/hwloc/windows.h
The file was modified contrib/windows/lstopo-no-graphics.vcxproj.filters (diff)
The file was modified contrib/windows/lstopo.vcxproj (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified contrib/windows/lstopo.vcxproj.filters (diff)
The file was modified contrib/windows/libhwloc.vcxproj (diff)
The file was modified include/Makefile.am (diff)
The file was modified contrib/windows/lstopo-no-graphics.vcxproj (diff)
The file was modified doc/doxygen-config.cfg.in (diff)
The file was modified contrib/windows/libhwloc.vcxproj.filters (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified contrib/windows/lstopo-win.vcxproj.filters (diff)
The file was modified contrib/windows/lstopo-win.vcxproj (diff)
Commit 8bff5b529fc0f15106cd43e2f1d857112e81cc6d by Brice.Goglin
tests: add a test for the windows processor group API

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/rename/main.c (diff)
The file was addedtests/hwloc/windows_processor_groups.c
The file was modified tests/hwloc/Makefile.am (diff)
Commit 588a4346d2cd9e3bd9a2a9ef02266323fbfc666f by Brice.Goglin
lstopo: add --windows-processor-groups

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit eb0c4d8bf270b2d2e6562b86e9e6cb998ffd274d by Brice.Goglin
doxy: add links from interoperability items to dedicated API sections

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit bff1299553eb97a13af148218ecef23b9537e240 by Brice.Goglin
windows: fix a leak in the initialization of processor group cpusets

CID#1473456

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit 1999a31434fed3707f5a24860ae24dee07da0554 by Brice.Goglin
windows: properly destroy the processor group cpuset array

CID#1473455

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit eada3d251b13531a45efee8bff978d974efe7a3f by Brice.Goglin
lstopo: fix --windows-processor-groups name confusion

--processor-groups was only used during development,
real/final name is --windows-processor-groups

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit b02af9b863590a98f0e9d1e0ddc39db13fa99653 by Brice.Goglin
contrib/ci.inria.fr: add --windows-processor-groups to windows lstopo outputs

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-cygwin.sh (diff)
The file was modified contrib/ci.inria.fr/job-3-mingw.sh (diff)
The file was modified contrib/ci.inria.fr/job-1-visualstudio.bat (diff)
Commit 835dfbe577fcd7fa5e2b86f0af5b0051803d591d by Brice.Goglin
core: don't display "less critical" error messages by default

Failure to initialize CUDA isn't critical enough to pollute
external users' stacks with hwloc warnings.
Set HWLOC_HIDE_ERRORS to 1 by default to that those aren't
displayed by default anymore.
Set it back to 0 in lstopo to get them there.

Invalid hardware topology, invalid XML input, missing 32bits
PCI domains, etc. are much more important, display them unless
HWLOC_HIDE_ERRORS is set to 2.

Thanks to Aurelien Bouteiller in #453.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc/plugins.h (diff)
The file was modified hwloc/cpukinds.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/pci-common.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit cae1aa41f05c8a43f4229651b766685345d7e53c by Brice.Goglin
components: cleanup error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix all messages (errors or verbose) with "hwloc: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/components.c (diff)
Commit 3685a1f5e6e7dc3dc12975922bea37b926a385b7 by Brice.Goglin
AIX: cleanup error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/aix: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-aix.c (diff)
Commit 646e7fa6860ebaa1bdc5086ae93380b0fc87b6f8 by Brice.Goglin
solaris: cleanup error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/solaris: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-solaris.c (diff)
Commit 6eeea1f172eba2a302b783021a6e9b71fe8d71f2 by Brice.Goglin
cpukinds: prefix the error message with "hwloc: "

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit 0fbaae85cc1611e4c4bf99f58ff42ec1f13a1ea5 by Brice.Goglin
pci: cleanup some error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/pci: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
Commit 15df0d6afa3c6033e24161e8e2a3d0a92dd18636 by Brice.Goglin
linux/knl: cleanup error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/linux: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit efa0af56120cc002b476c12d5448198c3072fa7e by Brice.Goglin
linux: cleanup more error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/linux: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 11e74fb0005db9d13fa8482fd233a696bb0eeb41 by Brice.Goglin
linux+xml: cleanup some error messages about 32bits PCI domain

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/foo: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-xml.c (diff)
Commit 8e3161a9b8d76d73f2fba5341f272acb2e92b9c3 by Brice.Goglin
xml: add a missing verbose condition before a printf

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 95a52ce8e4028f89f57b07fd8c8a00520b603552 by Brice.Goglin
xml: cleanup some error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc/xml: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 469f89f0d5d83017213eeedb054c67d36025d4da by Brice.Goglin
core: cleanup error messages

Make them hidable through HWLOC_HIDE_ERRORS
and prefix them with "hwloc: ".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 37e91da76967da691d74fb9a3eb3714a084012dc by Brice.Goglin
NEWS: reorder items

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 7ad9a4e9f87e755d72e50aa745d74efb78538742 by Brice.Goglin
rsmi: also limit rsmi shutdown calls on error

Forgotten in 619cbcd17cb5a1b6fef2b1f8b736100cd597cf2e

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-rsmi.c (diff)
Commit 3e0137c4aa41a5793adc6629a019db58d1286899 by Brice.Goglin
hwloc.ps: add --single-ancestor option

Signed-off-by: Valentin Hoyet <valentin.hoyet@inria.fr>
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified NEWS (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-ps.1in (diff)
Commit f2ecec3e40d58605a90d30954cbbb72d6724fb99 by Brice.Goglin
contrib/completion: add lstopo --windows-processor-groups

Forgotten in 588a4346d2cd9e3bd9a2a9ef02266323fbfc666f

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
Commit 5958eff9c63e2243b23edb1215b16ac5c23b602d by Brice.Goglin
contrib/completion: add hwloc-ps --short-name

Forgotten in ce8ea0212129ba093e50588754d7d28a864e33bf

By the way, uniformize the order here and in usage.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
Commit 1a53bb8a03d0e8c8d08169ce7ec3865903fcaf25 by Brice.Goglin
doxy: add a missing /ul tag

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 4e7ea0cd0a20604abc973631a71f8ef9f7988d3b by Brice.Goglin
nvml/rsmi/gl: add NVML/RSMI/Display subtype of OS devices

And document these subtypes (as well as CUDA/OpenCL) in the OS device section.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/topology-gl.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
Commit 3c8ed197d9a017ca5399007861981b60032e7ca6 by Brice.Goglin
API: add hwloc_get_obj_with_same_locality()

May convert normal/memory objects with same cpu/nodesets
or I/O object (PCI/OS in the same PCI).

Will be useful for transforming upcoming GPU Link distances
which will use rsmi/nvml objects by default.

HWLOC_API_VERSION gets bumped to 0x20500

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/helper.h (diff)
The file was addedtests/hwloc/hwloc_get_obj_with_same_locality.c
The file was modified include/hwloc/distances.h (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified tests/hwloc/Makefile.am (diff)
Commit 2515282b89fa8fba506bf81703820492769dd3a6 by Brice.Goglin
distances.h: typo in comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
Commit a045d3019950a8c17164612b10708e6773c7cf25 by Brice.Goglin
utils: display PCI bus IDs in distance matrices

Logical/physical indexes aren't very useful for PCI devices.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit 0a0cec6222c8410b369b318cdf261ae0973c6b98 by Brice.Goglin
doxy: cite DRM card0/renderD128 devices in OS device examples

Those are filtered out by default in recent releases,
but it's better to keep them documented.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit fbfff1594d06559228685f0e45a0bf3786cb53ce by Brice.Goglin
OpenCL: the OpenCL device type is a bitset

CL_DEVICE_TYPE may return DEFAULT|CPU|GPU

Ignore DEFAULT, ignore CPU-only, and only keep
the first one of GPU|ACCELERATOR|CUSTOM.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-opencl.c (diff)
Commit b29e98e44345fcf881ddb3e993bd4f16cd7750e3 by Brice.Goglin
tests/ports/opencl: add missing CL_DEVICE_TYPE_DEFAULT

Forgotten in fbfff1594d06559228685f0e45a0bf3786cb53ce

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/opencl/CL/cl.h (diff)
Commit fcf9532f4dfe111e1bfa5d66d17a3c29e85c64e0 by bgoglin
linux: add veX osdevices for NEC Vector Engine cards

Thanks to Anara Kozhokanova and Tim Cramer for the help.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
Commit 91e654cbe96212bbc33cadffe4ffbd91ef66c3b6 by bgoglin
lstopo/draw: render VE osdev memory and cores attributes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 90ceaebe356db20df36a70eb34c48777502306d3 by bgoglin
gather-topology: gather the "ve" class for NEC vector engine sysfs attributes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit e17cb9634e5c0fa149a512a7176c800867469a5e by bgoglin
tests/linux: add a testcase with NEC Vector Engine

Based on a real output from RWTH Aachen, pruned to make it smaller,
and modified to put the 8th VE in NUMA partitioned mode.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/32intel64-2p8co2t+8ve.output
The file was addedtests/hwloc/linux/32intel64-2p8co2t+8ve.tar.bz2
The file was modified tests/hwloc/linux/Makefile.am (diff)
Commit 6d9fcf2491c3078f85a1c968ea069b8333cf9675 by Brice.Goglin
cuda.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cuda.h (diff)
Commit 8e848ce5354902c32e2205ceb381cd89b6b22db3 by Brice.Goglin
cudart.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cudart.h (diff)
Commit dbe245333025969645918e11c1ae309b683f589e by Brice.Goglin
gl.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/gl.h (diff)
Commit 8144966dcb51ce7264b8dd682c252514bc5a8a96 by Brice.Goglin
nvml.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/nvml.h (diff)
Commit ce7a37f254a1fcdba9beb82f84454faaed62bbc9 by Brice.Goglin
opencl.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/opencl.h (diff)
Commit d44e56b20302e25236da999113242e92b1565691 by Brice.Goglin
openfabrics-verbs.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/openfabrics-verbs.h (diff)
Commit bb9671dda97901e061b0d23f580e72b29579f87e by Brice.Goglin
rsmi.h: cleanup return values in the doc

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rsmi.h (diff)
Commit c38407b137fac6b4d410fe185877851b8813d534 by Brice.Goglin
doxy: specify that VectorEngine info attrs are for VectorEngine OS devices

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 185b4b73326ae4d4f382725b0b42f98354baea92 by Brice.Goglin
Add a "levelzero" backend

"Level Zero" is the lowlevel API for managing oneAPI devices.
We create "ze%d" devices for these GPUs (mostly Intel for now),
because "ze" is the prefix for function names in the levelzero API.

CPPFLAGS should point to ze_api.h that is currently installed
under $prefix/include/level_zero by the oneAPI compute runtime.

This code is for the L0 1.0 API, it won't work with previous
releases (e.g. 0.91).

We try to enable the required "Sysman" L0 sub-API but it may be
too late. More to come about this.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
The file was addedtests/hwloc/ports/include/levelzero/zes_api.h
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified configure.ac (diff)
The file was modified NEWS (diff)
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
The file was modified config/hwloc.m4 (diff)
The file was addedtests/hwloc/ports/include/levelzero/ze_api.h
The file was modified tests/hwloc/ports/Makefile.am (diff)
The file was modified include/private/internal-components.h (diff)
The file was modified hwloc/Makefile.am (diff)
The file was addedhwloc/topology-levelzero.c
Commit 2091308dc052dd906e3372af8e1b3f70638eac46 by Brice.Goglin
config: check for __attribute__((constructor))

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_check_attributes.m4 (diff)
Commit 3108bf38640a9fea1f06e7c81106d166da4d5d66 by Brice.Goglin
levelzero: define ZES_ENABLE_SYSMAN=1 in the library constructor and Windows DllMain

The variable must be defined before anybody else enables L0,
so try to define as early as possible.

This is in the main hwloc library and not in the levelzero component
because the latter might be loaded as a plugin (i.e. later, and too late).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-levelzero.c (diff)
Commit 43adb5f3ba6a461a3edacff5220ee3ab48b4a904 by Brice.Goglin
levelzero: add hwloc/levelzero.h with helpers

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/doxygen-config.cfg.in (diff)
The file was modified tests/hwloc/rename/Makefile.am (diff)
The file was modified NEWS (diff)
The file was modified doc/Makefile.am (diff)
The file was modified include/Makefile.am (diff)
The file was modified tests/hwloc/rename/main.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was addedinclude/hwloc/levelzero.h
Commit 4f38d0514ce44677154565abcd21da499dd64f9d by Brice.Goglin
tests: add a levelzero test

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/Makefile.am (diff)
The file was addedtests/hwloc/levelzero.c
Commit 00b1d2660fa8c56f42d9c9e5b839b13d21e674bc by Brice.Goglin
configure: add support for level-zero.pc

My upstream PR was merged a couple hours ago, let's support it,
even if we don't know when it'll be included in official packages
and/or whether le .pc might be renamed in the meantime.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 9914081175c9aa177656474599424328b07bad11 by Brice.Goglin
tests/rename: pass rsmi/nvml/cuda/opencl/levelzero CPPFLAGS

If these backends are detected, tests/rename will also check their
interoperability headers, which requires their CPPFLAGS.

It never broke the CI because those dependencies are not available
on the CI slaves (except OpenCL) and we don't use anything installed
outside of the standard directories.

We actually use both CFLAGS and CPPFLAGS because pkg-config doesn't distinguish them.

openfabrics doesn't get CPPFLAGS because our build doesn't define them
(only needed for tests) and it's always installed in standard paths anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/rename/Makefile.am (diff)
Commit 12659255eb90394a78b3ba53a7e236d67fbf73f9 by bgoglin
Make -ltermcap the last option for ncurses

On macOS there seems to be a symlink from /usr/lib/libtermcap.dylib to
libncurses.5.4.dylib, which is the first option hwloc currently
considers for detecting ncurses. If you install ncurses with brew or
spack, you don't get this symlink, so hwloc will always link to the
system libncurses instead of the brew/spack version.

By considering libncurses first this should be fixed.

Signed-off-by: Harmen Stoppels <me@harmenstoppels.nl>
The file was modified config/hwloc_internal.m4 (diff)
Commit 2e489f9b705427aade28b168409fdf5a1484330b by Brice.Goglin
distances: fix the restricting of heterogeneous distances

Don't forget to update the array of different types.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/distances.c (diff)
Commit 22b3688aa5207d8ecc68d00a615d13320eb7ac91 by Brice.Goglin
distances: add hwloc_distances_transform()

Modifies a distances structure obtained with _get().
Does not propage changes into the core distances info yet.

Current transformations are:
* REMOVE_NULL to remove objects that were replaced by NULL in the objs array
* LINKS to replace bandwidth matrices with number of links
More to come with GPU matrices.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified hwloc/distances.c (diff)
The file was modified include/hwloc/distances.h (diff)
The file was modified NEWS (diff)
Commit dacf5047373f59e6d6698e1cede89d8bf7cca989 by Brice.Goglin
tests/distances: test hwloc_distances_transform()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_distances.c (diff)
Commit a0c0261e026060578a0797c942ab5b09720185db by Brice.Goglin
distances.h: specify that we don't group by heterogeneous distances

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
Commit 61fe379924f599265efa71eaed422ade29c6afdd by Brice.Goglin
distances: move forward declarations together

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/distances.c (diff)
Commit cd98115cf6cfe4c1630faae9d48cb1c6b5a5e9d6 by Brice.Goglin
distances: rework internals of adding distances

Split the process into create/values/commit so that
we can reduce the crazy number of arguments in public functions
and allow future additions to the API.

Nothing changes outside of distances.c yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/distances.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/private/private.h (diff)
Commit fc0e312aadd63c894c4f851a4eebbfb5fae5d87f by Brice.Goglin
plugins.h: export low-level distances add_create/add_values/add_commit functions to plugins

These functions are more flexible and will allow future additions of parameters
such as info attributes attached to distances.
For now this is only the plugin API because GPU backends will need them soon.
The public API for users will come in other commits.

add_values_by_index() isn't exported since it's unlikely to be used outside
of the XML component, which isn't plugin'able.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/private.h (diff)
The file was modified include/hwloc/plugins.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/distances.c (diff)
Commit ad7d08c26ae77f83a988bc8569fadb08fc04deff by Brice.Goglin
distances.h: replace add() with add_create(), add_values(), add_commit()

This is the public API for end users following the
plugin API added in previous commit.

It lets users specify the distance name, and it will be extendable
later if we ever need to add different things to distances.

hwloc_distances_add() is now deprecated.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/distances.c (diff)
The file was modified include/hwloc/plugins.h (diff)
The file was modified include/hwloc/distances.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/deprecated.h (diff)
Commit 88f3e2f175db9bace4a46e15343dbc75802a7bac by Brice.Goglin
doxy: split the distances_add section into add and remove sections

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
The file was modified doc/Makefile.am (diff)
Commit 7d2334a160af6b76e3b8fddcfe8a1526d8be006f by Brice.Goglin
tests: update to new distances add API

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_topology_dup.c (diff)
The file was modified tests/hwloc/hwloc_distances.c (diff)
The file was modified tests/hwloc/hwloc_groups.c (diff)
The file was modified tests/hwloc/hwloc_topology_restrict.c (diff)
The file was modified tests/hwloc/shmem.c (diff)
Commit 249d18a2aa71f294e9d271328bf807f2047bd012 by Brice.Goglin
utils/annotate: update to new distances add API

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit 216cad87cc36afbc69da5d492cd93ef97d14846c by Brice.Goglin
utils/annotate: new distances may get a name now

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-annotate.sh.in (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit 6d6e6b4b21e65683d6cc4e1d11a84e6c244d0e7c by Brice.Goglin
utils/annotate: cleanup/improve get_unique_obj()

Support all types, including pci[...] or os=
The caller should remove spurious \n

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit eb6569037889168c665ef0b1e0103c92d50182c6 by Brice.Goglin
utils/annotate: add a new distances-transform command

Saves back to XML what gets changed through hwloc_distances_transform()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified NEWS (diff)
Commit 4dcfb341fe745707fa86ad7c30b57919ec247959 by Brice.Goglin
utils/annotate: tests distances-transform command

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-annotate.sh.in (diff)
Commit 32c994b7f3822ffe143423886840a632f88e07ca by Brice.Goglin
pci: keep PCI-to-non-PCI bridges until the core filters them out

NVLink endpoints can land on custom bridges near the CPU,
but the current code ignores those bridges by default.
Now keep all pci-to-non-pci bridges in the PCI backends
(those are very uncommon anyway)
and let the core filter them out later
if they have no child just like PCI bridges.

This adds a PCISlot to some fake Linux tests because an IDE controller
gets it from an ISABridge that doesn't get ignored early anymore
(their PCI BDF is identical except the F).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.output (diff)
The file was modified include/hwloc/plugins.h (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits-disabled.output (diff)
The file was modified hwloc/topology.c (diff)
Commit 5503d319cdf33490ec0c08776e3c19d088215818 by Brice.Goglin
plugins.h: clarify the documentation of hwloc_pci_find_parent_by_busid()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/plugins.h (diff)
Commit 0a454f20015076bc181fc3cedcfff00a56335fa1 by Brice.Goglin
plugins.h: export hwloc_pci_find_by_busid() to plugins

Will be used the NVML Bandwidth matrix for identifying NVLink peers.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
The file was modified include/private/private.h (diff)
The file was modified include/hwloc/plugins.h (diff)
Commit fa8fe41ca71e9d06dc90bd0328ed7aacd71bf305 by Brice.Goglin
nvml: add a NVLinkBandwidth matrix

Objects are GPU "nvml" OS devices for GPUs,
Package for POWER OpenCAPI/NVLink CPU ports,
and a PCI device for NVSwitch.

We assume that NVLink peers of PCI class 0x0680 and vendor IBM
are NVLink ports on the CPU.
That's true for POWER8/9 but no reply from IBM about the
future or some sort of standardization of these OpenCAPI ports.

We also assume that NVLink peers of PCI class 0x0680 and
vendor NVIDIA are NVSwitches.
NVIDIA doesn't provide any way to distinguish peer types.

POWER8 doesn't have correct PCI locality for these OpenCAPI
ports, hence we use the GPU locality instead,
unless HWLOC_NVML_USE_OPENCAPI_LOCALITY is set in the environment.

We will need some high level functions to summarize this matrix
because it's not obvious on DGX platforms with 16 GPUs and a NVSwitch:
* there are two independant set of connected GPUs/Switch,
  inter-switch links are not reported
* there are 6 hardware switches on each side, connected to one of
  the 6 links of the gpus

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-nvml.c (diff)
The file was modified tests/hwloc/ports/include/nvml/nvml.h (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc/distances.h (diff)
Commit dd1b27b706b2d0b4e0a6ca0c4df0bfa829fa6c50 by Brice.Goglin
nvml: recognize and keep NVSwitches

Set their subtype as NVSwitch so that the core doesn't remove
these bridges without any child.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-nvml.c (diff)
Commit b9281355d35105be3e6dfcf867f347cd4f3177c3 by Brice.Goglin
rsmi: add the XGMIBandwidth matrix

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified include/hwloc/distances.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-rsmi.c (diff)
Commit 63fdc81cd7de4d9220aa2b9f3971971e49055352 by Brice.Goglin
doxy: talk about distances-transform in the GPU distances section

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 5aee2044ab6a8f2a486ef449ba55806d75800f76 by Brice.Goglin
distances: allow to add distances with the heterogeneous kind

It'll be recomputed internally, but users may try to
pass it back when transforming distances and re-adding them.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/distances.c (diff)
Commit 7ac9a035eadaf8a834787592f83fe7f44dec0f7e by Brice.Goglin
distances: one more ref to transform() in the comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
Commit c2962da15d5750442ccbc5ccdaaca6efd588a252 by Brice.Goglin
utils/manpages: fix some escaping

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc-ps.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit c523ce3814ec41f752ed28b57188e4f5a934f21f by Brice.Goglin
completions: add lstopo --thickness

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
Commit de4536d571a0be325d18bab70adac181e6a88f76 by Brice.Goglin
utils/gather-topology.1: add --keep

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.1in (diff)
Commit 64ced880959e43d546a387149057ce7e0b54a536 by Brice.Goglin
hwloc-ps: --pid-cmd now supports "mpirank" and "env=<name>"

"mpirank" will look for widespread MPI-rank-related envvars to show the MPI rank.

"env=<name>" lets you customize the actual envvar to query in each process.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/common-ps.c (diff)
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-ps.1in (diff)
Commit c3a90b28bd8ce7e6cfc0a8219bd9017c89a00870 by Brice.Goglin
utils: uniformize the basenam'ing of the argv[0] in usage

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-diff.c (diff)
The file was modified utils/hwloc/hwloc-dump-hwdata.c (diff)
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-patch.c (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-distrib.c (diff)
The file was modified utils/hwloc/hwloc-compress-dir.in (diff)
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
The file was modified utils/hwloc/hwloc-bind.c (diff)
Commit 4f23b8cf417295a5e2511bedb87490b45919563e by Brice.Goglin
utils/hwloc-annotate: add --version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit f5520ffb4c3990bbbe39c4014b6fc5a1d939dbd4 by Brice.Goglin
utils/hwloc-ps: add --version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-ps.1in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
Commit a7a1848f42e1615594bda1fb9a43edfe4d360378 by Brice.Goglin
utils/hwloc-dump-hwdata: add --version

(not in bash completions because the tool goes into sbin)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-dump-hwdata.1in (diff)
The file was modified utils/hwloc/hwloc-dump-hwdata.c (diff)
Commit e74c4c79713a8cfbeaba3980caa5776eaffa52c1 by Brice.Goglin
utils/hwloc-gather-cpuid: add --version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.1in (diff)
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
Commit 0037a2205772dcdd8e2f4ff94d48dc642b6b7b8e by Brice.Goglin
utils/hwloc-gather-topology: add --version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.1in (diff)
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
Commit a96cbd915f24e332e9a0a018329419c4775dfa0d by Brice.Goglin
utils/hwloc-compress-dir: add --version

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-compress-dir.in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-compress-dir.1in (diff)
Commit 181ae9734a893a64a7c5e5b1aa6d7ad204f358e7 by Brice.Goglin
utils/hwloc-calc: properly support -h and --help

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 1b8937ca04f18a3dd2eb16a9e2d02cc8b0c41ed5 by Brice.Goglin
utils: show -h --help in usage

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-diff.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-bind.c (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-distrib.c (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-patch.c (diff)
The file was modified utils/hwloc/hwloc-compress-dir.in (diff)
The file was modified utils/hwloc/hwloc-dump-hwdata.c (diff)
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit 0114c2b0b3e39265e0829eebfff87ac9f4412fe9 by Brice.Goglin
linux: fix support for NUMA node0 being offline

Just like we didn't support offline CPU#0 until commit
7bcc273efd50536961ba16d474efca4ae163229b, we need to
support node0 being offline as well.
It's not clear whether it's a new Linux feature or not,
this was reported on a POWER LPAR VM.

The symptoms are different here because we got no NUMA
nodes at all, hence the core hwloc added a default
machine-wide node. But this node got marked disallowed
by Linux cgroups. Hence load() failed with
"Topology does not contain any NUMA node, aborting!"

We opportunistically assume node0 is online to avoid
the overhead in the vast majority of cases. If node0
is missing, we parse "online" to find the first node.

Thanks to Jirka Hladky for the report.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 03bddd0037c62116d6171e4bf1fb72c48a57d825 by Brice.Goglin
tests/linux: add a testcase with CPU#0 and NUMA node#0 offline

Test for commits 7bcc273efd50536961ba16d474efca4ae163229b
and 0114c2b0b3e39265e0829eebfff87ac9f4412fe9.

Generated from a dual-12-core haswell platform,
after marking cores 0-4,21-23 offline and NUMA node 0 offline,
and updating sysfs cpu/cache/node bitmap accordingly.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/offline-cpu0-node0.output
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was addedtests/hwloc/linux/offline-cpu0-node0.tar.bz2
Commit 46b12176937a6532dfea40970db49334b7d8d9b9 by Brice.Goglin
contrib/git-hooks: add a pre-commit hook checking options in manpage/completion

This script is intended to run in pre-commit
(see contrib/git-hooks/pre-commit for an example).
It looks for command-line options in git-added usage lines
in utils (C or shell) and verifies that they are also in
the manpage and completions.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
Signed-off-by: Brice Goglin <Valentin.Hoyet@inria.fr>
The file was addedcontrib/git-hooks/check-manpages-completions.pl
The file was modified contrib/git-hooks/pre-commit (diff)
Commit b31262aca538ad6a6f0947939d19d5d5aab8ff97 by Brice.Goglin
lstopo.1: add a (harmless) missing \fR

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit aaf857630c0b8bab95252f0f4fdce1fea5ae996d by Brice.Goglin
doc: add support for building the HTML doxygen on readthedocs.io

If branch/tag support appears to work well,
this may replace the doc on www.open-mpi.org in the future.

The readthedocs doxygen config is based on the default config
but it disables non-HTML builds and it enables some things
that weren't possible earlier
(SHORT_NAMES required because tarballs don't like very long filenames,
GENERATE_TREEVIEW didn't look good in the OMPI website layout).

Signed-off-by: Brice Goglin <Valentin.Hoyet@inria.fr>
The file was addeddoc/readthedocs/readthedocs.io.sh
The file was addeddoc/readthedocs/conf.py
The file was addeddoc/readthedocs/index.rst
Commit 3a8c9fb5b1307ff1d30650f810797a391dfb6140 by Brice.Goglin
levelzero: add completion queue groups information

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/levelzero/ze_api.h (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit f235ed6befc195322beb0566cb480e31229241f0 by Brice.Goglin
git-hooks/check-manpages-completions.pl: support git worktree

.git is a symlink there, not a directory

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/git-hooks/check-manpages-completions.pl (diff)
Commit a23a8a32bddb4f3d384c0ae8a1d9a1c9cb3a5ff6 by Brice.Goglin
hwloc2.dtd: add name attribute for distances2hetero

Forgotten in e32df308c2

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/hwloc2.dtd (diff)
Commit a4eee48df8a5a97d7ec8be53fca7370f93c520af by Brice.Goglin
utils/annotate: allow to replace distances objects with NULL to remove them

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit bb203b711405faa7273ad38dd7eaa078903db820 by Brice.Goglin
distances: add MERGE_SWITCH_PORTS and TRANSITIVE_CLOSURE transformations

Those are currently specific to NVIDIA GPUs connected through a NVSwitch.
The NVLinkBandwidth exposes bandwidth from GPUs to 6 individual NVSwitch ports.

MERGE_SWITCH_PORTS will combine all switch ports into a single object.
We loose the PCI locality (one half of the switch is on each socket)
but it doesn't matetr much.

TRANSITIVE_CLOSURE gives inter-GPU bandwidth across the NVSwitch.

The XGMIBandwidth is not affected for now because XGMI traffic cannot
be routed through GPUs or switches yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/distances.c (diff)
Commit 01ab5303b777bbe7cbab82d2eeb2395df21c5bf7 by Brice.Goglin
utils/annotate: add merge-switch-ports and transitive-closure distances transformations

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
Commit 7318ff4d56d71b20ece2d9d43e597d9b023302cc by Brice.Goglin
lstopo: add --distances-transform for basic transformation

hwloc-annotate should be used for more features.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 12df5292d8dcce7510a56f6c550c7c7ee737f7c5 by Brice.Goglin
tests/xml: add power8 distances between NVIDIA GPUs and Packages

Restricted horizontally (only 2 PU per core, and 4 cores par packages)
Restricted vertically (removed caches).
Removed all I/Os except GPUs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/xml/power8gpudistances.xml
The file was modified tests/hwloc/xml/Makefile.am (diff)
Commit 2ac5e3bce3354aeec8e3e230eac5e02bea7624b2 by Brice.Goglin
utils/annotate: add a verbose error message

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit 7f9926f99c82a4d6959c7068e5cbd1aaeba24083 by Brice.Goglin
tests/annotate: check the replacing of cuda/opencl package/numa in GPU distances

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-annotate.sh.in (diff)
The file was modified utils/hwloc/Makefile.am (diff)
The file was addedutils/hwloc/test-hwloc-annotate.output2
Commit ad1777f06d448edfbca90c99364ef12852e73262 by Brice.Goglin
NEWS cleanups

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 11df5ed4972714e8ef2aa5f03a1aec22b1ea4359 by Brice.Goglin
levelzero: fix device name numbering

variable k is used as iterator now for CQs, use dedicated variable
for device numbering.

(broken in 3a8c9fb5b1307ff1d30650f810797a391dfb6140)

Signed-off-by: Peyton, Jonathan L <jonathan.l.peyton@intel.com>
The file was modified hwloc/topology-levelzero.c (diff)
Commit c0197ab17071f5ce5e5b5c7258e1caf1f993db6d by Brice.Goglin
cpukinds: don't require both coretype+frequency by default

Add "coretype+frequency_strict" for the old ranking.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit cb0ed0353ae5c08f566c8acf7ec6c66d9455e7be by Brice.Goglin
cpukinds: remove arch-specific ranking strategy selection

The default coretype+frequency now works on both
ARM (only frequency) and
Intel (either coretype or frequency if available).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit 8243068f28f866bfb7acac021bcd621d76e3e244 by Brice.Goglin
lstopo.desktop: add Icon=hwloc

Even if we don't have an icon yet, it'll make the lstopo application themable.

Closes #466

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.desktop (diff)
Commit 69654be0d130582228c8b5963789c4a482d51902 by Brice.Goglin
utils: add missing 0x in error messages about invalid flags

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/hwloc/hwloc-bind.c (diff)
Commit 3487fc68dd4003600dbf6d390956cb6bd47b1638 by Brice.Goglin
levelzero: prefix headers include path with level_zero/

It looks like the recommended way to include L0 headers
is "level_zero/ze_api.h" instead of "ze_api.h".

It's not clear yet if level-zero.pc will remain and if it
will point to level_zero/ze_api.h or ze_api.h.
Hence we use libze_loader.pc instead because that one existed
in older L0 releases and points to level_zero/ze_api.h,
and it's unlikely to change.

If level-zero.pc ever appears in a L0 release,
we'll update the code to look at it first.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified tests/hwloc/ports/Makefile.am (diff)
Commit 9dfdb31e3d9babaa3b2ee24610d980c0f491c0db by Brice.Goglin
tests/ports: actually move levelzero headers to their new location

Fixes 3487fc68dd4003600dbf6d390956cb6bd47b1638

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/ports/include/levelzero/level_zero/zes_api.h
The file was removedtests/hwloc/ports/include/levelzero/ze_api.h
The file was removedtests/hwloc/ports/include/levelzero/zes_api.h
The file was addedtests/hwloc/ports/include/levelzero/level_zero/ze_api.h
Commit 8cdd5d17ef05a92a2275653ee12e127a42d94f8c by Brice.Goglin
level_zero: fix #include in test and helper

Fixes 3487fc68dd4003600dbf6d390956cb6bd47b1638 again

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/levelzero.h (diff)
The file was modified tests/hwloc/levelzero.c (diff)
Commit 92edac67bd770b6db9a52e8004d460c4c4003931 by Brice.Goglin
lstopo/memattrs: remove a duplicate line-break on unrecognized initiator type

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-text.c (diff)
Commit e4cc91eb282dd260cf683d7061d6f8a322216818 by Brice.Goglin
lstopo/memattrs: fix the displaying of object initiators

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-text.c (diff)
Commit 5c61a8ce3881fcdf814df96e19308427a35b1251 by Brice.Goglin
utils/calc: display unknown OS index as -1

We could get 4294967295 in hwloc-calc -I or -H outputs.

Thanks to Jirka Hladky for the report.

Refs #468.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 97e37e5463bf7bb155e517d8f9d1137c2014e8f7 by Brice.Goglin
utils/info: don't display unknown memattr initiator OS index

we have the logical index before it, just remove the
OS index instead of printing 4294967295.

Refs #468

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit da4e290b9147b9d1077fc8a3da184470becb18b3 by Brice.Goglin
lstopo/memattrs: cleanup object printing

* show -1 instead of 4294967295 when os_index is unknown
* show the specific OSDev subtype in initiators
* show the object name if any
* factorize all this between target and initiator kinds

Refs #468

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-text.c (diff)
Commit 9b40f3ac9d8ccd05a5793fe2848c0d764a7cdde8 by clement.foyer
utils/hwloc-calc: Fix erroneous index in help message

Signed-off-by: Clément Foyer <clement.foyer@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit 551c1bcc9c4b1ee48d4ae807c7ac8e13d6e3df8b by bgoglin
API: add HWLOC_TOPOLOGY_FLAG_RESTRICT_TO_{CPU,MEM}BINDING

These flags apply a restrict during hwloc_topology_load()
and directly ignore excluded PUs or NUMAs.
The main goal is to avoid rebinding the x86 discovery to
all PUs since it breaks the process affinity on Windows
(see #366).

The THISSYSTEM flag is required as well since binding
is needed.

It only matters for PU but people may want to restrict
to NUMA for consistency, hence we provide both flags even
if NUMA discovery doesn't break Windows binding (and CPU
and memory binding are basically identical on Windows).

The implementation could be improved to filter excluded
PUs/NUMAs early in the backend, but that would require
lots of changes and testing.
For now, we only update the x86 backend to avoid breaking
the binding, and the core filters things out at the end
of the discovery.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified NEWS (diff)
The file was modified doc/Makefile.am (diff)
The file was modified include/hwloc.h (diff)
Commit 5a7d127b222f52f8ed9475f8dc17ee9061eb1601 by bgoglin
API: add HWLOC_TOPOLOGY_FLAG_DONT_CHANGE_BINDING

This completely disables discovery steps that modify thread
or process binding, i.e. the entire x86 backend for now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/Makefile.am (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology.c (diff)
Commit a5cbc7235542d258847761e94b2090f2ae6870a0 by Brice.Goglin
contrib/windows: properly filter-in shmem.c

Harmless but MSVC lists source files correctly now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows/libhwloc.vcxproj.filters (diff)
Commit e539b1766200cf17bc68c113cf1618bacf73ed7a by Brice.Goglin
doxy: improve XGMI/NVLink distances replacing/transforming examples

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit cede49a7f6ff299c766078b213031b954eba4d6f by Brice.Goglin
doc: add a note about replacing objects in hwloc_distances_transform()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
Commit b366bb3dd4451b5d8f7beeec37d445a5a03b314c by Brice.Goglin
configure: use AC_CHECK_HEADERS instead of AC_HAVE_HEADERS

The latter is obsolete in autoconf now, and we already use the former.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 75dd8c2458791e05dac44e6fabe29432d5e3269f by Brice.Goglin
configure: use AS_HELP_STRING instead of AC_HELP_STRING

The latter is obsolete in autoconf now, and we already use the former.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
The file was modified config/hwloc_check_visibility.m4 (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified configure.ac (diff)
Commit 2a82b9a1697c56cf0df855d8cd90ea2b3018ab45 by Brice.Goglin
configure: use AC_ENABLE/DISABLE_SHARED/STATIC instead of AM_

The latter is obsolete, the former has been available for a long time.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified configure.ac (diff)
Commit a06e538e21f7f81f9369c8ca769b5d7722c200cf by Brice.Goglin
configure: use AC_LINK_IFELSE instead of AC_TRY_LINK

The latter is obsolete in autoconf now, and we already use the former.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit f6791b36bb58eb97a64f71e0d2c6c4f2ae7dd9f7 by Brice.Goglin
configure: use AC_COMPILE_IFELSE instead of AC_TRY_COMPILE

The latter is obsolete in autoconf now, and we already use the former.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_check_attributes.m4 (diff)
Commit c49b658e52551a6e79d334879f3d589e8eede2cc by Brice.Goglin
configure: don't call AC_PROG_CC_C99 on recent autoconf

It's deprecated since autoconf 2.70 and $ac_cv_prog_cc_c99 is set by AC_PROG_CC

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
The file was modified configure.ac (diff)
Commit 6ab66d8c1a25779d024973567908bd4cdf8ec076 by Brice.Goglin
VERSION: master is now 2.6

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows/hwloc_config.h (diff)
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
The file was modified VERSION (diff)
Commit ec95d8a1de791d9c00b8cb93a933136e5faef850 by samuel.thibault
shmem test: avoid using PATH_MAX inconditionally

This hardcoded constant is not necessarily defined.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
The file was modified tests/hwloc/shmem.c (diff)
Commit d2568ed3c911423fdcd6787ba4d3e9b8ca78054c by samuel.thibault
hwloc_get_obj_with_same_locality: avoid using PATH_MAX inconditionally

This hardcoded constant is not necessarily defined.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
The file was modified tests/hwloc/hwloc_get_obj_with_same_locality.c (diff)
Commit c51886bdf45b2a607e471c116484f8d5665ab507 by Brice.Goglin
windows: warn if we find processor groups on a 32bits windows

Processor groups are documented as not working there,
some CPUs will be NUMA less, caches may intersect, etc.

https://docs.microsoft.com/en-us/windows/win32/procthread/processor-groups
"This functionality is not available on 32-bit versions of Windows."

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit b704b637df670face163b08fedd39b20801fe125 by Brice.Goglin
API: real-time tasks may also require the RESTRICT_TO_BINDING flag

See #474

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 52fc3d03e4e3d9186fc63a2e21f1eb2c2ad2e7b9 by Brice.Goglin
rsmi: fix the XGMIPeers info attribute

Only add the last one, not all the intermediate versions.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-rsmi.c (diff)
Commit 9782308d8017cf8fca207017011364ca89894430 by Brice.Goglin
NEWS: update 2.5.0 news bullets

2.4.2 didn't appear, hence some fixes were first released in 2.5.0

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 70ae268c2fb078b75e94d74a295aba44e23c485b by Brice.Goglin
lstopo/graphics: factorize the check for object cpukind styles

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-tikz.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-svg.c (diff)
The file was modified utils/lstopo/lstopo-cairo.c (diff)
The file was modified utils/lstopo/lstopo-fig.c (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
The file was modified utils/lstopo/lstopo-windows.c (diff)
Commit 98383f419804dc0aefe436c22927ebaa40f2b284 by Brice.Goglin
doxy: update cpukinds ranking env var possible values

Forgotten in c0197ab17071f5ce5e5b5c7258e1caf1f993db6d

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 8ae11afe0922400f42340663539bd74ed788c94a by Brice.Goglin
cpukinds: try to clarify the doc about efficiency ranking

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cpukinds.h (diff)
Commit 7ba648daa96fa1b835aac960efdfe93050bb5846 by Brice.Goglin
utils/calc: add an example with --cpukind

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 857e4065e08a53cbfd47abcbb46677d9e9012a4c by Brice.Goglin
cpukinds: improve the documentation about native efficiencies

This will be available outside of Windows soon.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cpukinds.h (diff)
Commit 1def2f1ac0ea12210b1324edffdba0ff31001084 by bgoglin
darwin: add cpukinds support using IOKit cpus information

We read the 'cluster-type' ('E' for energy and 'P' for performance)
and the 'compatible' string (either "apple,icestorm;ARM,v8"
or "apple,firestorm;ARM,v8" on M1 processor) to build two cpukinds.

Thanks to Michael Hirsch and Francois Ozog for the help.

Closes: #454

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
The file was modified config/hwloc.m4 (diff)
The file was addedtests/hwloc/ports/include/darwin/CoreFoundation/CoreFoundation.h
The file was modified NEWS (diff)
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was addedtests/hwloc/ports/include/darwin/IOKit/IOKitLib.h
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/ports/Makefile.am (diff)
Commit f2c427b8019d51d0b489697b7243251eb9be030c by Brice.Goglin
linux/cpukinds: generalize the code to parse something else than cpufreq values

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 82ff12253cd29ae8324d9fb07e5bd064bd42cdab by Brice.Goglin
linux: use the optional "cpu_capacity" sysfs cpu file to rank cpukinds

This file is used (at least on ARM) platforms to rank core performance
in the kernel scheduler. It's not strictly guaranteed to be rank perfectly
(because throttling, etc that may slow down some cores)
but it should be fine in the vast majority of cases.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 6ed7e9def5ac70186a0932a315a8092dda7f03b4 by Brice.Goglin
linux/cpukinds: remove sysfs cpu type support

The kernel will rather use the "cpu_capacity" file,
cpu types support has never been merged.

This basically reverts 04a4977a2e076883fc5a94edbdb571bea2bc824e

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.output (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
Commit e688667906516b77ef3e675b89596cc2df6675c2 by Brice.Goglin
tests/linux: update fakeheterocpunuma to use cpu_capacity instead of cpu_types

This reverts ee7b0dc8b5c736a607858da9ef2d369cfeb23b91 and adds capacities.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/fakeheterocpunuma.output (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.tar.bz2 (diff)
Commit 20251d11d984d87b27e821728592b7deb57da529 by Brice.Goglin
pci: the HWLOC_PCI_LOCALITY file can contain comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pci.env (diff)
Commit 330a846de4f96e14583565dbf3e4cd5bc4dc3636 by Brice.Goglin
tests/gather: ignore missing DAXDevice NUMA info attr

Those attributes require dax sysfs files, but we don't gather
those I/O files in this test.
(enabling I/O in this test would likely raise many corner
cases that aren't worth fixing)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/gather/test-gather-topology.sh.in (diff)
Commit 01e54c4e2302d4776f6cbfa7863b7c772fdd7c77 by Brice.Goglin
lstopo/x11: fix autoresizing when window is maximized

If the window is maximized, pressing + or - to change the scale
raises a ConfigureNotify event (as if the window had been resized)
that causes the scaling to go back to fit the window.

Detect whether the window is maximized during each ConfigureNotify
and don't ask for a scale update when we're maximized.

If the window is maximized in a single dimension, keep the current
behavior because zoom in/out will unmaximize it.

Thanks to Clement Foyer for the report.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-cairo.c (diff)
Commit ac9f9a6fe19b4dde153e1a491e74330b17d1ec93 by Brice.Goglin
doxy/calc.1: more words about nodeset outputs in the hwloc-calc descriptions

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified doc/hwloc.doxy (diff)
Commit c06496af52442825b4ffa59f5e0abd752a5d5364 by Brice.Goglin
doxy+tools: more docs about cpukinds and ranking

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit bb0f6107af02dd8d2c7617960a251b8fa1f7f4f4 by Brice.Goglin
levelzero: fix the management of unknown PCIe bandwidth

It's negative when unknown, not zero.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit e5ce52d279933155157f296b0ecbaf3a714540de by Brice.Goglin
windows/dolib: print the entire lib command-line

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/dolib.c (diff)
Commit 25e53e3e50fd0af1234be4243ddf9048693a6c80 by Brice.Goglin
pci: PCIe Gen6 will likely be 64GT/s as expected

Only comment changes, the formula for link speed was correct.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
Commit b5124c8fa64a807b774f82f94ce818060aa80d76 by Brice.Goglin
lstopo.1: typo in --windows-processor-groups formatting

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit de93efd669eb6f77b671f3d67d37b6b339529cc4 by Brice.Goglin
configure: look for cuda in /usr/local/cuda by default

And add some configure notice depending on whether we're
using a cuda-$version.pc, or cuda custom path, or this default.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 3032f7ef6550980e449714773406618334dfe174 by Brice.Goglin
configure/nvml: move some code inside a conditional

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 46f16178e1d22afc5706c9360e9c7c9e350d2849 by Brice.Goglin
configure: cleanup pthread_mutex_lock checks

Move it above together with non-backend-specific things,
and clear the cache instead of working around it.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 54a989cac94ab6641d3d03397d3f4bedd1c7fcc3 by Brice.Goglin
configure: add some messages between backend-specific checks

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit e50c371a56780b35cb99846a93e54b9beff68df7 by Brice.Goglin
configure/rsmi: allow to specify the ROCm install path

Use --with-rocm=<dir> first.
Or use /opt/rocm-<version> if version specified in
--with-rocm-version=<version> or ROCM_VERSION envvar.
Or use /opt/rocm if it exists.
Or assume ROCm is installed in standard directories.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
The file was modified NEWS (diff)
The file was modified config/hwloc.m4 (diff)
Commit dafbfac07744d12f4e0325cf968bbcdcb49e1f1e by Brice.Goglin
utils/gather-cpuid: bring back pconfig

It's not clear what happened to pconfig in the x86 manual.
The doc was clear when first added. Now most of it moved to
a specific section without keeping all details about the
CPUID leaf. One may read this as if the subleaf value is the
entire EAX but everybody, including Linux, still uses bits 0:11
as in the old documentation.

So just revert 8e42ed34984ea36c2f6cd1dacd891e2865bdfaa8
and assume the (new) doc needs to be clarified.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 8bb90de003cf3e7d8df5b012adffc54b7ff8d4e9 by Brice.Goglin
contrib/android: store the gradlew +x permission in GIT

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-android.sh (diff)
The file was modified contrib/android/AndroidApp/gradlew (diff)
Commit 3919415b85f06357e12061e4467314e47e7fa886 by Brice.Goglin
contrib: cleanup/factorize scripts fot checking windows/android versions

contrib/git-hooks/check-versions.sh tested both android and windows.
contrib/windows/test-windows-version.sh.in only tested windows but
it had verbose messages, and it was only called in ci.inria.fr/job-0-tarball.sh.

Have a single windows check script under contrib/windows
and an Android one under contrib/android.
Both are called by the git hooks with --quiet,
and by ci.inria.fr/job-0-tarball.sh without --quiet.

No need to make them "make check" compatible.
No need to generate anything from configure.
They have a parameter to run outside of the git root directory
but it's actually not required here.

contrib/android/check-versions.sh isn't distributed since contrib/android isn't.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/git-hooks/check-versions.sh (diff)
The file was modified contrib/ci.inria.fr/job-0-tarball.sh (diff)
The file was modified Makefile.am (diff)
The file was removedcontrib/windows/test-windows-version.sh.in
The file was addedcontrib/android/check-versions.sh
The file was modified config/hwloc_internal.m4 (diff)
The file was modified .gitignore (diff)
The file was modified contrib/windows/Makefile.am (diff)
The file was addedcontrib/windows/check-versions.sh
Commit 47c745526cc6f048266a65ae1bd31e4de36cd055 by Brice.Goglin
android: don't ignore the greek

Android releases are often based on hwloc snapshots,
make greek such as "a1" appear in the android version
and add an optional snapshot number.

The greek was already in the release posted last friday
(bypassing contrib/android/check-versions.sh)
but not the snapshot ("2" means ready for next version).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/android/check-versions.sh (diff)
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
Commit 6abf03dd20caa2e3d0231ac0fcebf43d6acdd294 by Brice.Goglin
linux: use MPOL_PREFERRED_MANY when available

MPOL_PREFERRED is less strict than MPOL_BIND since it falls back
to other node if the given one is full. But it works only with
a single node. Other (non-first physical index) are just ignored.

MPOL_PREFERRED_MANY in 5.15 fixes this.

Use MPOL_PREFERRED_MANY by default for membind. If it fails,
try MPOL_PREFERRED. If it works, assume MPOL_PREFERRED_MANY isn't
supported in the current kernel.

Closes #236

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
Commit bbbb2671208974719162ab8b182fb3c70827e8fb by bgoglin
linux: expose cache os_index when available

x86 and arm (with PPTT ACPI table) have a "hardware" cache ID
that is exposed in sysfs. Expose that ID as the os_index.

It is useful for "resctrl" since you need to know which cache
to configure (for partitioning, monitoring, etc).
From the resctrl documentation (section 20.3.3) at
https://www.kernel.org/doc/html/latest/x86/resctrl.html
"[...] instead of using “socket” or “core” to define the set
of logical cpus sharing a resource we use a “Cache ID”.
At a given cache level this will be a unique number across
the whole system (but it isn’t guaranteed to be a contiguous
sequence, there may be gaps). To find the ID for each logical
CPU look in /sys/devices/system/cpu/cpu*/cache/index*/id"
These IDs appear in the "schemata" file used for resctrl config
in sysfs:
$ cat /sys/fs/resctrl/schemata
L3:0=ffff;1=ffff;2=ffff;3=ffff;4=ffff;5=ffff;6=ffff;7=ffff;16=ffff;17=ffff;18=ffff;19=ffff;20=ffff;21=ffff;22=ffff;23=ffff
   ^      ^      ^
   here and here etc

Thanks to Clement Foyer for the suggestion.

Closes #343

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/offline-cpu0-node0.output (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/x86+linux/5intel64-hybrid-lakefield.output (diff)
The file was modified tests/hwloc/linux/32intel64-2p8co2t+8ve.output (diff)
The file was modified tests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.output (diff)
Commit 78216defd38b7e5e0c348fcd12277a018d6d77fd by bgoglin
x86: add a comment to remember why we don't expose cache os_index

Short story: It's hard to make sure x86 cache IDs
are compatible with resctrl on Linux.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit cfbb184b6b192f98b27e6ef2950ddf4cb2e241bd by Brice.Goglin
hwloc.h: clarify that get_*bind function fill the caller-given bitmap

Thanks to Clement Foyer for the suggestion.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/linux.h (diff)
Commit c5b4948363f74d1c800eeea9df36fa7bd8ab870e by Brice.Goglin
lstopo/draw: use a bitmask of backend flags instead of the no_half_lines field

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-ascii.c (diff)
Commit 42929f8a304f32f11fc3d4795015a0a0610b1dc1 by Brice.Goglin
lstopo/draw: add flag for backends returning approximative textwidth

The core will change some layout if it requires
precise text width for scaling/placing things.

tikz, (native)svg, fig and android get this flag.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-tikz.c (diff)
The file was modified utils/lstopo/lstopo-svg.c (diff)
The file was modified utils/lstopo/lstopo-fig.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
Commit 48e0c68c933dc4d46e0862fc080156fea2e07edc by Brice.Goglin
lstopo/draw: don't always center-align factorized boxes and text

Only if textwidth is precisely known.
Otherwise left-align them.

Closes #481

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit c61fc1c81390f7cbf6f5257bd74a445ae18cd32c by Brice.Goglin
lstopo/draw: no need to save this

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit ceba78be4a3b9dce139bfae4fa172ad215915706 by Brice.Goglin
lstopo/draw: cleanup the management of memory-above children order

Prepare for future additions of other order tweaks.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit 8d3d1af3576d2c60c901eeebaa40e5d805b2f887 by Brice.Goglin
lstopo/draw: rename --children-order memoryabove into memory:above

And move that parsing to a specific function.

To prepare for future commits.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit 36af85ab154ffbe7687545e15f788b78c2bfe828 by Brice.Goglin
lstopo/draw: some cleanups in the placement code

To prepare upcoming changes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 3b4343733486943809f202d220307e5dde594b9e by Brice.Goglin
lstopo/draw: place I/O and Misc separately from CPU by default

The placement algorithm doesn't work well with objects
of very different sizes (e.g. CPU cores are small and all the same,
PCI is often big, Misc is very small).

I/O and Misc may now be placed on the right (by default, or below)
CPU children without considering all them at the same time.

By default --children-order is now memory:above,io:right,misc:right.
The old behavior is memory:above,plain.
io:below and misc:below are also accepted.
plain puts everything not specified with CPU children.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 9088f2714e2789d2a6233c6647f76181e1c16ea9 by Brice.Goglin
lstopo/draw: allow to specify horiz/vert/rect layout for right/below io/misc

io:right:vert means I/O children are placed vertically on the right of CPUs.
misc:below:horiz means Misc children are placed horizontally below CPUs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit e3573e4f278485bc69ca110c70d3fda459a9d304 by Brice.Goglin
lstopo.1: improvement in the LAYOUT section

And move it near the GRAPHICAL OUTPUT section.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 489e1d91fc0067a27f8a92dfa1a3679e98cd97a4 by Brice.Goglin
doxy: fix a typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 520e59b2d03127e852966b9467e220bb90684b48 by Brice.Goglin
rsmi: add a "XGMIHops" matrix

RSMI reports the same bandwidth between directly-connected GPUs
and XGMI-routed ones (hardware routing). I don't know yet
if we should remove non-direct BW and force users to apply
the transitive closure (like they do for NVSwitch).

Add this hops matrix in the meantime.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified include/hwloc/distances.h (diff)
Commit d382d86bbbf1e42581a4eecdd2836bca87ab4d50 by Brice.Goglin
rsmi: add missing error test in previous commit

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-rsmi.c (diff)
Commit fdcba6a6b34e13366bcc73f0096206006c30927d by Brice.Goglin
configure: use ROCm config for detecting OpenCL

AMD's OpenCL is installed the ROCm directory,
use the ROCm detection result to improve the automatic
OpenCL detection.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit 8ff9e5e50960f2876f958c41873ede6656923220 by Brice.Goglin
hwloc-calc.1: add an example for resctrl bitmap strings

The "resctrl" Linux subsystem is one of the (rare?) case where
users have to give bitmask to sysfs files. hwloc doesn't have
a way to generate those bitmask. They must be split in non-empty
32bits pieces separated by commas, without leading 0x.

Provide a sed command for conversion in hwloc-calc.1 examples.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 69f3a8021723472889eadf7cb8d41509dd866e10 by Brice.Goglin
NEWS: cite the XGMIHops matrix

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 1bd7c0d9dee476c1ba3ed5736171a277c10706b2 by Brice.Goglin
linux: add "bxi0" OFED OS devices for Atos/Bull BXI HCAs

It's not OFED, but it's close enough not to deserve a new MISC osdev subtype.

We only have a BXIUUID info attribute for now.

The PCI device is ignored by default because its class is 0000
(unclassified), whitelisting it isn't very convenient yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified include/hwloc.h (diff)
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 12342fd4191641efdc8c492f095613a9b7b9ee5c by Brice.Goglin
core: fix a corner case of reconnecting levels during the merging of identical level

Merging "keep structure" requires normal levels to be reconnected.
Special levels aren't needed, but they may need reconnecting after
merging (if some parent/child special children list are merged).

Instead of reconnecting everything before hwloc_filter_levels_keep_structure()
and adding a reconnect of special levels after, integrate
the required reconnect calls inside hwloc_filter_levels_keep_structure().

This fixes a corner case that should unlikely occur in practice.
If we ever attach Memory (or IO or Misc) to 2 different objects
that are merged by "keep structure" (eg Package and Group),
the special level might need reordering after merging.
These merged objects have same sets, hence special children should
have been attached to the same one from the beginning anyway.
Except if sets are different because one was inserted by allowed_cpuset
and the other by normal cpuset. Or if sysfs files were tweaked and not
properly restricted to the final remaining topology sets.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit f2aca9c7e5967caed10771b548ab1b32e4f1b7a4 by Brice.Goglin
core: rename hwloc_connect_io_misc_levels()

It handles all special levels.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 1b9a5431f80be1776277326de9c1a4f16463dc2a by Brice.Goglin
tests/linux: update outputs

We ignore indentation differences to avoid multiple commits
in multiple files for useless changes.
Let's update all files once because distances output changed a while ago.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/2amd64-2n.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.output (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.output (diff)
The file was modified tests/hwloc/linux/256ppc-8n8s4t.output (diff)
The file was modified tests/hwloc/linux/256ia64-64n2s2c.output (diff)
The file was modified tests/hwloc/linux/48amd64-4d2n6c-sparse.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets.output (diff)
The file was modified tests/hwloc/linux/64amd64-4s2n4ca2co.output (diff)
The file was modified tests/hwloc/linux/8ia64-2n2s2c.output (diff)
The file was modified tests/hwloc/linux/128ia64-17n4s2c.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets_noadmin.output (diff)
The file was modified tests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.output (diff)
The file was modified tests/hwloc/linux/16ia64-8n2s.output (diff)
The file was modified tests/hwloc/linux/96em64t-4n4d3ca2co.output (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output (diff)
The file was modified tests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.output (diff)
The file was modified tests/hwloc/linux/8amd64-4n2c.output (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.kept.output (diff)
Commit ad9019216bb84b4e50698381fc67420422d9ba5e by Brice.Goglin
tests/linux: cleanup fake PCI sysfs files for nvidia GPUs with NUMA nodes

Specify the 0300 class instead of keeping it uninitialized (0000)
which means unclassified like Atos/Bull BXI HCAs.

And fix local_cpus to match the PUs that we kept in syfs.

Thus also fix cpumap in real NUMA nodes to avoid having NUMA
attached to different groups and being reordered once groups
are merged (see commit 12342fd4191641efdc8c492f095613a9b7b9ee5c)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/nvidiagpunumanodes.kept.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.tar.bz2 (diff)
Commit 1a68aec09eae0f6f137b4bb4ea3ae271286bf71a by Brice.Goglin
pci: consider unclassified devices as important

Required so that Atos/Bull BXI HCAs aren't ignored by default.

Hopefully this change won't cause many new PCI devices to appear
in the default hwloc PCI hierarchy because most devices have a valid class.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/plugins.h (diff)
Commit c7b792994e2bb5f90c1c40977fd290deabfebe6f by Brice.Goglin
gather-cpuid: update to AMD 0x80000021 leaf

Matches Family 19h PPR prerelease from May 27, 2021.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 7e35a3de81b2b6951c08b9d4f8c36e76522e60d7 by Brice.Goglin
x86: AMD Family 19h (Zen3) only reports 1 node per proc

Update our warning accordingly.

It's not clear whether only early Fam 17h models could
report 2 or 4 as well. They might have disabled it because
it didn't match the BIOS NPS configuration.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit 01587e811276100b4c0db4563dceadfa39560d73 by Brice.Goglin
x86: fix a comment in AMD quirk

Broken by mistake in commit e5a61ffb025342274ef6856bf0c619865b99fc4a

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit 7a2808e69032f48f7cf886636dde20e26b962348 by Brice.Goglin
x86: update the AMD L3 APIC ID sharing quirk for Family 19h (Zen3)

CPU models with less cores still have missing APIC IDs
part of each L3, which means we cannot divide by
the real number of cores to find the cache ID.

We previously hardwired the number of cores from Zen1/2
(up to 4 HT cores per L3), let's do something clean that works
for Zen3 (up to 8).
And it's actually similar to what the kernel does
in cacheinfo_amd_init_llc_id().

The Hygon quirk might need the same cleanup if they release
a Zen3 clone in the future.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit 9a1f202f44109785050f418bc2497ca8a4373387 by Brice.Goglin
hwloc-annotate: typo in --help

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit cc90f82b377e3d5d77f099fe681cf02ffcdedcc8 by Brice.Goglin
doxy: improve the FAQ about asymmetric topologies

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit c69e0ad5f58c1c14dc26de5d87956e2bbad089f1 by Brice.Goglin
hwloc-annotate: add subtype command for setting/changing object subtype

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified NEWS (diff)
Commit a7f283b8d8728c09c35112b14cc12d4bac956b3c by Brice.Goglin
hwloc-annotate: add a command to change cache/memory sizes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
Commit 0a233a5872242da1a049070ef72373e45830a8e4 by Brice.Goglin
utils: add a test of building a custom heterogeneous topology

First package has 4 SMT "Big" cores with 200 GB of DRAM.
Second package has 8 "Little" cores (no HT) with 100GB of DRAM and 10GB of HBM.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
The file was modified utils/hwloc/Makefile.am (diff)
The file was addedutils/hwloc/test-build-custom-topology.sh.in
The file was addedutils/hwloc/test-build-custom-topology.output
Commit ceeea7c3a06579df5bd5c4083c9ec8d2629ad8dc by Brice.Goglin
doxy: add a FAQ about creating a fake asymmetric/heterogeneous topology

It basically describes what test-build-custom-topology does.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
Commit ae8261dcef44b320e434f0e61fe0cacf197274ce by Brice.Goglin
utils: remove version infos from test-build-custom-topology

Fixes 0a233a5872242da1a049070ef72373e45830a8e4

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-build-custom-topology.output (diff)
The file was modified utils/hwloc/test-build-custom-topology.sh.in (diff)
Commit 0b1279c7d29ec9c31c92c74d1ed8bd95ff74be75 by Brice.Goglin
rsmi: add VRAM and GTT memory info attributes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified NEWS (diff)
The file was modified tests/hwloc/ports/include/rsmi/rocm_smi/rocm_smi.h (diff)
Commit 05a94daaa379b7dc828b7f9e875fdd3e5dee2528 by Brice.Goglin
doxy: add a FAQ entry about ROCm SMI configure options

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 1af7d89a6fd9b8b9b2d5209a0bf491050c47b0af by Brice.Goglin
doxy: fix DDR/DRAM mix in FAQ about build a custom topo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 1d9b10b60bda998a99e718ade1856b75206bd3f5 by Brice.Goglin
doxy+test-build-custom-topology: use the modern annotate command-line layout

Put location between -- so that we can apply operations to multiple locations.

We could even remove "none" locations when unneeded but that's not
clearly documented yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified utils/hwloc/test-build-custom-topology.sh.in (diff)
Commit 9e98b0d23ed26de43263b4d9c39997bb84c84125 by Brice.Goglin
VERSION: master is now 2.7

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows/hwloc_config.h (diff)
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
The file was modified VERSION (diff)
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit d438242a5b5592637edf2f94120d7ddad81185f5 by Brice.Goglin
doxy: L0 OS devices are of subtype COPROC, not GPU

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 887b930cf27573c08c84a9d5f493dc21c97b480e by Brice.Goglin
dolib: don't use _snprintf when snprintf is available

For some reason, loading MSVC vars on the cygwin ci.inria.fr slave
(required for CMake to find MSVC stuff) doesn't like _snprintf() anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
The file was modified hwloc/dolib.c (diff)
Commit 9a03e30be1af9eee00055173cd36b8bb8087e45b by Brice.Goglin
core: fix a #if vs #ifdef for constructor attribute support

Unnoticed until now because these lines were added recently,
way after all compilers added support for this attribute...
until somebody tried autoconf with MSVC.

Thanks to Alexander Neumann for the report.

Closes #485

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit b83b36646d41d39d7c8d20609172db47a76c770e by Brice.Goglin
core: -no-undefined is now supported on Windows

And required by libtool.

Closes #486

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
Commit 9bafca186b2ebdbddba9d565db3c7a9359589c41 by Brice.Goglin
private/misc.h: use HWLOC_HAVE_ATTRIBUTE_UNUSED instead of __HWLOC_HAVE_ATTRIBUTE_UNUSED

The latter is defined in public headers depending on whether private
headers are available or not.
The formet is the official internal thing.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/misc.h (diff)
Commit 58fa0dcf8f99e8856346edcc67fc1bd4d1c0777b by Brice.Goglin
cpukinds: don't duplicate an empty array of cpukinds

Fixes a segfault during dup() on AIX.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/memattrs.c (diff)
The file was modified hwloc/cpukinds.c (diff)
Commit f9f10c7aad05f66601026a2056fbc58126a171e1 by Brice.Goglin
contrib: add CMakeLists.txt under contrib/windows-cmake

Inspired from https://github.com/microsoft/vcpkg/tree/master/ports/hwloc
(MIT license, OK for BSD-3).

See the README for details.

Closes #88

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
The file was addedcontrib/windows-cmake/CMakeLists.txt
The file was modified Makefile.am (diff)
The file was addedcontrib/windows-cmake/README
Commit 1838440d785e66e8a3fa5eba959fd1c953e51e87 by Brice.Goglin
git-hooks: check Windows-CMake version

Greek suffix is ignored as we do for Windows MSVC.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/git-hooks/check-versions.sh (diff)
The file was addedcontrib/windows-cmake/check-versions.sh
Commit 98bee121156c24282544f39ec516e08660dd0541 by Brice.Goglin
contrib/ci.inria.fr: add a Windows-CMake job

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/Jenkinsfile (diff)
The file was addedcontrib/ci.inria.fr/job-1-wincmake.bat
Commit 4e7b636d3132c2b30b37ccc9c304bd1bfd2a8598 by Brice.Goglin
doxy: improve the FAQ about building for Windows

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 941cfb2b05b43561b1a5e0bb1654c6dd9a89f51e by Brice.Goglin
.gitignore: update for test-build-custom-topology

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified .gitignore (diff)
Commit ffde1dd791938339cfd690c04e84a199c7fdfbbe by Brice.Goglin
configure.ac: fix copyright prefix character

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified configure.ac (diff)
Commit cc8ff199ed771f4fb6d363ee33ce227db12fd51d by bgoglin
build/windows: directly call MSLIB instead of going through our dolib

dolib was needed in old msys environment where mixing Unix and
windows path didn't work well.

We now use -option instead of /option for MSLIB options
to avoid MSYS2 path rewriting:
Passing /def:.libs/libhwloc.def /out:.libs/libhwloc.lib would fail with
  LINK : fatal error LNK1104: cannot open file 'C:\msys64\def;.libs\libhwloc.lib'

Sidenote: MSYS2 path rewriting can also be avoided by setting the env var
MSYS2_ARG_CONV_EXCL="/machine;/def;/out;/name"
Side-sidenote: MSYS_NO_PATHCONV=1 is often cited as an option but it's
Git-bash specific and we don't want to disable path rewriting entirely.

Thanks to Alexander Neumann for the help.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
The file was modified configure.ac (diff)
The file was modified contrib/ci.inria.fr/job-3-mingw.bat (diff)
The file was modified contrib/ci.inria.fr/job-3-mingw.sh (diff)
Commit ccc25d97569469b0b96f16811e5eab20ab2c1669 by bgoglin
build: remove dolib.c

By the way, dolib.c should never have been built in the MSVC solution
(it wasn't meant to be included in libhwloc).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/Makefile.am (diff)
The file was removedhwloc/dolib.c
The file was modified contrib/windows/libhwloc.vcxproj (diff)
The file was modified contrib/windows/libhwloc.vcxproj.filters (diff)
Commit ce9a49ba155d8aded4d5ca14a961c117be214ebe by bgoglin
configure: remove CC_FOR_BUILD

Was only used for dolib.c cross-32/64 builds.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified HACKING (diff)
The file was modified configure.ac (diff)
Commit d33ef73d1b7978260a2d9a117427340250d5808a by Brice.Goglin
contrib/android: cleanup cmake requirement

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/cpp/CMakeLists.txt (diff)
Commit 7cf69ea1969c9ea3ce6e88eefa8ba367863ce03e by Brice.Goglin
contrib/android: cleanup version code management

Previous official android released had version codes
  ABI*100xx+151
  xx was bumped at each release, was 14 in 2.6.0rc1-1-1.5.1
  151 was somehow related to the core android hwloc code, currently 1.5.1
This gave 80263 for the current max ABI(8).

Starting with next release, we will do ABI*10000 + 264
  where 264 increases at the release
  gives x0264 for each ABI, which is still higher than previous release valued.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit 6765826181fd6327be57423730ae73b2b73c1666 by Brice.Goglin
ci.inria.fr: check the cmake version too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-0-tarball.sh (diff)
Commit 009bc1efe64f7ae71d168d2455ae477ae70ae7cf by Brice.Goglin
git-hooks: add --update to android/check-versions.sh

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/check-versions.sh (diff)
Commit f05f2a7ae19ed3aa04e2c582bc74cd0d2bd94223 by Brice.Goglin
git-hooks: add --update to windows/check-versions.sh

Enforce the greek now that we have an easy way to update it.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows/check-versions.sh (diff)
The file was modified contrib/windows/hwloc_config.h (diff)
Commit 578e112659ca6846ec3fc213784fef944607dbf0 by Brice.Goglin
git-hooks: add --update to windows-cmake/check-versions.sh

We still ignore the greek because it's not allowed in CMake VERSION.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows-cmake/check-versions.sh (diff)
Commit b5f630f18b694ee913f258aa96b7ec8d06ed3b4c by Brice.Goglin
contrib: add update-versions.sh

Calls windows/windows-cmake/android update scripts

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedcontrib/update-versions.sh
Commit 62a924ea0d4d1eaf7bc7d780169c6fc389b22a3f by Brice.Goglin
contrib/android: update/fix gradle-wrapper

As explained by the fdroid bot in https://gitlab.com/fdroid/fdroiddata/-/merge_requests/9983
we declared a 4.10.1 but actually has 4.6.

Also we were missing its sha256sum

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/gradle/wrapper/gradle-wrapper.jar (diff)
The file was modified contrib/android/AndroidApp/gradle/wrapper/gradle-wrapper.properties (diff)
Commit bdedceb059a99869628b5428a448b0669d53d78e by Brice.Goglin
utils: fix a MSVC warning about size_t/int casts

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit ab23e91fc5367d92e8b8b93032b52a875af94bc6 by Brice.Goglin
lstopo: fix some MSVC warnings about implicit casts

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-tikz.c (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 4b8da3dae62e4ab086b3b4553b918c867d62c5c2 by Brice.Goglin
xml: fix a MSVC warning about cast

dont_merge is actually binary anyway

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 8b06b7f1a486b985c4aeb9b304cebfad2bf60464 by Brice.Goglin
cpukinds: fix the sorting of cpukinds by ranking_value

Returning the difference of uint64_t from the qsort
compare function is wrong, and it actually ignores
the high bits here.
Compare those uint64_t values properly.

Thanks to the MSVC warning, that one was useful.

Fortunately, those high bits aren't used in current ranking
heuristics (frequencies are in MHz,
Linux capacity is currently ~100 or ~1000,
x86 coretype is 0x20 or 0x40 <<20,
Windows and MacOS forced efficiencies are 0 and 1).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/cpukinds.c (diff)
Commit 2770bfe27d7ac920c98f14ce3ae41ff8e5cbfe7c by Brice.Goglin
xml/export/v1: fix distances export vs v1 memory group insert

When exporting some memory children to v1, we have to insert intermediate
Groups in some cases. Those groups did not have their parent pointer
initialized because it wasn't needed... except when deciding whether
a distance matrix should be exported or not: only machine-wide matrices
are exported (matrices attached to an object whose parent is NULL).

This caused distance matrices to be exported multiple times (in the root
and in some subgroups) and warnings on import (duplicates were ignored).

Thanks to Ralph Castain for the report.

Ref #494.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit bf1f6bb2db8891e3340ebb5e7246bdbd7fac05da by Brice.Goglin
API: clarify the documentation of hwloc_alloc_membind_policy()

And remove an obsolete reference to a _nodeset() variant.

Thanks to Philippe Swartvagher.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 22d0c493d9761e4c48b678c450ee0a9e15b8255e by Brice.Goglin
doxy: use &lt;version&gt; instead of <version>

Seems to be harmless but avoids a doxygen warning.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 50a3b5f0855341a40eedb0977947bc1dc17c0252 by Brice.Goglin
doxy: add "(FAQ)" after "Frequently Asked Questions" title

Makes it more visible and searchable.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit a89237a1642763e7732e1902d3b0d8e910995468 by Brice.Goglin
doxy: fix ROCm build anchor and add a crossref

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 492396e381faf48d302a78b9eb1544422fa85ae6 by Brice.Goglin
doxygen: remove some obsolete config options to fix warnings

TCL_SUBST and MSCGEN_PATH were empty.
COLS_IN_ALPHA_INDEX and PERL_PATH were set to their default value.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/doxygen.cfg (diff)
Commit a53e2f578dc0f6672dbf8082d8e147062ff09d14 by Brice.Goglin
doxygen: a4wide support has been dropped

PAPER_TYPE=a4wide was removed in doxygen 1.7.2 (in 2010)
because a4wide was being removed from texlive.
doxygen has been using a4 since then.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/doxygen.cfg (diff)
The file was modified doc/Makefile.am (diff)
Commit 0595531fdc8659f0bc4f5440a21dc52642d5b073 by Brice.Goglin
linux: don't look at packages if we're not the first PU of the core

"not first PU of core" always means "not first PU of die" on Linux.

Before Die support was added, this worked fine.
Now it works fine if the kernel exposes Dies.
But missing Die info in old kernels meant a package is parsed once
per core, because no PU was marked as first of a die.
Fix this.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 01969735dee4998f3f9d05207dafa45fa66c4c37 by Brice.Goglin
linux: add "Cluster" groups for Linux 5.16+ cluster topology

Expose "Cluster" group objects on Linux kernel 5.16+ for CPUs
that share some internal cache or bus. This can be equivalent
to the L2 Cache level on some platforms (e.g. x86) or a specific
level between L2 and L3 on others (e.g. ARM Kungpeng 920).

Based on a patch by Jonathan Cameron <Jonathan.Cameron@huawei.com>

These allow us to represent groups of cores where they are grouped
because of shared elements other than caches.  Typical example
would be a heirarchical coherency fabric with a cluster sharing a
single bridge to a wider coherency network on chip.

In ACPI this is represented in PPTT as a processor hierarchy node
structure above the level representing a CPU (possibly with multiple
threads) and below the hierarchy node structure that represents
either a die, or the level at which the last level cache is shared.
An example of this is the Kunpeng920 SoC which has 4 CPU cores
per cluster and up to 8 of those clusters share an L3 cache.

Similar concepts exist in device tree.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified include/private/private.h (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit b2dc4db076bf20adb8c2260d1b712023fe763323 by Brice.Goglin
linux: add HWLOC_DONT_MERGE_CLUSTER_GROUPS envvar

To prevent Cluster groups from being merged.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
Commit 32511f3e754567433d0a08ed2571e443f7fd06a1 by Brice.Goglin
tests/linux: add a ARM kunpeng 920 with a cluster level between L2 and L3

Thanks to Song Bao Hua (Barry Song).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/128arm-2pa2n8cluster4co.output
The file was addedtests/hwloc/linux/128arm-2pa2n8cluster4co.tar.bz2
The file was modified tests/hwloc/linux/Makefile.am (diff)
Commit e8a7a93187dd66add4fdd2cdf36a4167498c17a4 by Brice.Goglin
windows: improve debug printf about processor groups

Don't truncate the group mask to 32bits.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit 2213d4f7ddebe051d8229c1553a660e0b6aaf56d by Brice.Goglin
windows: move some common definitions to private/windows.h

Those are useful in both topology-windows.c and lstopo-windows.c
when running make check under ports, but also soon for native builds
when we'll always redefine windows structures/unions unconditionally.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
The file was modified include/Makefile.am (diff)
The file was modified utils/lstopo/lstopo-windows.c (diff)
The file was addedinclude/private/windows.h
The file was modified tests/hwloc/ports/include/windows/windows.h (diff)
Commit db730cf4e4304b4f21df8e71d914cdb298997fb8 by Brice.Goglin
windows: cleanup the management of windows query structures

PROCESSOR_RELATIONSHIP changed between Windows versions.
Some old MSVC/Windows version may miss the EfficiencyClass field
that we want to always use at compile time. That's why we used
a hack to access that field without naming it.

Cleanup this by always using our redefinition of PROCESSOR_RELATIONSHIP
that contains that field instead of using the Windows/MSVC-provided
versions.

By the way, the field is guaranteed to be 0 on old Windows versions
at runtime.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit 0185d003629f21511b335c0193ba1e092593abb0 by Brice.Goglin
windows: support multiple processor Groups per NUMA

The previous Windows API could not describe NUMA nodes with PUs
from more than a single Processor Group (64 PUs max).

Starting with Windows 10 build 20348 and Windows 11, the NUMA affinity
can be described in more than one group affinity structure.

Refs #465

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
The file was modified NEWS (diff)
Commit 5858e76744e4a97fe406f76d2bf81b8945bb29f5 by Brice.Goglin
windows: support multiple processor Groups per cache

The previous Windows API could not describe caches with PUs
from more than a single Processor Group (64 PUs max).

This was extended for NUMA nodes in Windows 10 build 20348
and Windows 11 (see previous commit), and approximately at
the same time for caches.

Refs #465

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
The file was modified NEWS (diff)
Commit f5de3b8e224f5d206c0b891f4917af1732d74951 by scivision
windows-cmake: publicize user-facing options

best practice to use absolute reference for relative paths

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 3155d4ccc57667e4bab28c7ba7595d090d66bd05 by scivision
windows-cmake: Configure dynamically based on platform capabilities

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was addedcontrib/windows-cmake/private_config.h.in
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 936f25b12dd65b7969714d27ae2792bc7d1c611d by scivision
windows-cmake: use setter methods, msvc-only options to allow non-msvc

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 2d582d1f10d719d329c27b1fc011cac195ddf911 by scivision
windows-cmake: use modern install() method syntax

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit a5809731f6411a8eded8e1b00b74956cd8dd9da9 by scivision
windows-cmake: hwloc object for deduplicated internal logic

Naming targets with a "lib" prefix is unconventional for CMake and
causes unexpected file naming. Instead, we set
CMAKE_*_LIBRARY_PREFIX to name libhwloc.* consistently across
platforms

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 53cc89c24a4a566eba3328d8c236572fcf304210 by scivision
windows-cmake: add tests

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified tests/hwloc/Makefile.am (diff)
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was addedtests/hwloc/CMakeLists.txt
Commit b335a6666cf63f1003cdc5f06f39a0c894b449e0 by scivision
windows-cmake:CI: use CMake CTest

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/ci.inria.fr/job-1-wincmake.bat (diff)
Commit 872da752418720d418171f461c41884fd1bda395 by scivision
windows-cmake: add WIN32 option for GUI no-console

Signed-off-by: Michael Hirsch <scivision@users.noreply.github.com>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 6bd535c3440a1dd113beceb0a1bf1e43754ff587 by scivision
windows-cmake: search for LibXml2

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was modified contrib/windows-cmake/private_config.h.in (diff)
Commit d06748521dec2cff1e13cd547a999ef5a3e08dac by scivision
windows-cmake: auto-configure static-components.h

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was addedcontrib/windows-cmake/static-components.h.in
Commit 3ed566736ab06c4462c6632fece56f9622167ff8 by scivision
windows-cmake: optional cuda enabled

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was modified contrib/windows-cmake/private_config.h.in (diff)
Commit da17626a265222f80bf36ba97922a4ae4f508c5f by scivision
windows-cmake: conditional enable x86 component

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/static-components.h.in (diff)
Commit 11c07152fc7508b3d71b7e02621dff51f873f071 by scivision
windows-cmake: do not force lib filename prefix on MSVC

Signed-off-by: Michael Hirsch <michael@scivision.dev>

Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit d6302092541e9fa0ff3418bfaffe14a404b97cd0 by scivision
windows-cmake: make explicit options for libxml2,cuda,opencl

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 23506ae7381ed90d872a5e85cd1ea67e139384c4 by scivision
windows-cmake: better BUILD_SHARED_LIBS default

Signed-off-by: Michael Hirsch <michael@scivision.dev>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit 273c36eddfbde530eec81226af3c86e38928163d by Brice.Goglin
doxy: list all subtypes and add cross-refs in the obj attr section

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit ffdcaa9e555a7aeda0e76d9cecf6fe4b6c94b6a6 by Brice.Goglin
hwloc-calc.1: improve the resctrl bitmask conversion

Commit 8ff9e5e50960f2876f958c41873ede6656923220 added a regexp
conversion that doesn't handle consecutive empty masks ",,,".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 7fcdec06e3462bdff080eb3ee86b2493d0a003c6 by Brice.Goglin
lstopo.1: fix some missing/misplaced closing \fB...\fR tags

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 67b08aacd7f60f8f2b28f80f141a82d12af7f21e by Brice.Goglin
lstopo: properly skip --top-color argument after processing

We were getting
  "Cannot infer output type for file `none' without any extension, using default output."
which means exporting to a file would fail.
Hopefully we rarely export --top to a file.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 09225863301be7e1cae02695344724283ed584c9 by Brice.Goglin
lstopo/draw: cleanup default object colors

The default background is rather white, and it's overwritten anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 38cbbe655a9bad7c390207e325b721b664e029ed by Brice.Goglin
lstopo/draw: cleanup line color management

Line color (for bridges) was always set to black in callers.
Also it was not correctly implemented in the xfig backend
(it was changing the fill color instead of the pen color).
Box border color was hardwired to black i the backends,
do the same for bridge lines.
It's unlikely that we'll ever need to change those.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-ascii.c (diff)
The file was modified utils/lstopo/lstopo-tikz.c (diff)
The file was modified utils/lstopo/lstopo-cairo.c (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo-windows.c (diff)
The file was modified utils/lstopo/lstopo-svg.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-fig.c (diff)
Commit dead0c9001b7d3bf865c9d16b5f14030be6a762e by Brice.Goglin
lstopo/draw: rename colors into color_list

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 51877ff6893aff6250d1da808bf00ff10d09691c by Brice.Goglin
lstopo/draw: don't use the "misc" color for "group"

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit d724415bdd0ab2b886aa425900cdf00845782543 by Brice.Goglin
lstopo/draw: define a "palette" structure for all colors

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit d5968b9b00ad20d21546a6921c5c010f1c12117f by Brice.Goglin
lstopo/draw: add --palette grey for greyscale graphical output

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit 7fa73918576548e667f1e809abfc9762d3e34d2e by Brice.Goglin
lstopo/draw: add a white palette to disable all background colors

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit ab25dd16b230ef81ede0eecb8a38a3d11c0aefb8 by Brice.Goglin
lstopo/draw: allow #xxyyzz in --binding/disallowed-color

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit 044e192533256e398631f276a7f48f9ffc3c8fd8 by Brice.Goglin
lstopo/draw: cleanup --top-color

Use a dedicated color in the palette, cleanup usage and man.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit 3d8037d867e177aa9c8be0c67377b2de0e1d0f27 by Brice.Goglin
lstopo/draw: add --palette type=#rrggbb to tune colors

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.h (diff)
Commit 1fe1d2fdc007b325bdef0409f0abc0d057a70342 by Brice.Goglin
windows: don't create groups for windows processor groups by default

As discussed in #497, Windows may now create processor groups
that strictly intersect with NUMAs or packages. This causes
a big warning when hwloc tries to insert the corresponding
group objects in the topology.

Fortunately, these groups aren't as useful as before in Windows 11
and WS2022. So disable them by default. We still have the Windows
specific API to query them, and group objs may be reenabled by setting
HWLOC_WINDOWS_PROCESSOR_GROUP_OBJS=1 in the environment.

Closes #497.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 62582b3259a8415687fb0915f24cfa45dfb0abf6 by Brice.Goglin
NEWS: clarify the NEWS entry about the new windows API

Even if the online doc talks about some features appearing
in Windows 10 build 20348, Microsoft says the doc will be fixed
and it's only Windows 11 and WS2012.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit a1e5545f1e3b0d2430a6eb607aa9b9653c0a7a1e by Brice.Goglin
NEWS: move Windows entries together

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 11ee5bcaf0ecd9e92b475315628fd16b2a32c33c by Brice.Goglin
windows: remove a unneeded check

hwloc_win_get_processor_groups() never needed GetLogicalProcessorInformation(),
only the "Ex" version was used.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit ad1d888a4b851c7fca9c74ecc1781a7f06af3df2 by Brice.Goglin
windows: fix the source string when inserting processor group objects

Can be either "GetLogicalProcessorInformation" or "GetLogicalProcessorInformationEx".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit 4682d2c2751ba7ba76eb3b76060c700e13d0a5a5 by Brice.Goglin
windows: remove support for the old non-"Ex" GetLogicalProcessorInformation()

Still detect it at runtime whether GetLogicalProcessorInformationEx() is available
but don't fallback to the old GetLogicalProcessorInformation() anymore.
GetLogicalProcessorInformationEx() is available since Windows7/WS2008R2.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/include/private/autogen/config.h (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified contrib/windows/private_config.h (diff)
The file was modified hwloc/topology-windows.c (diff)
Commit 67644a5fb05bf3128591bd213245c4bc3fb6ef81 by Brice.Goglin
lstopo/windows: fix the initial window size by using the right fonts

The window initial dimensions are computed by drawing once
in an invisible window. We need to use the right font(s) to
get the correct dimensions that will match the final drawing
in the window.

Instead of creating a temporary font without specifying its
non-boldness (0 means FW_DONTCARE), define both normal and
bold fonts as usual during the initial step.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-windows.c (diff)
Commit d97938ed6f3884cbd5bfdd186f8ece667bf7b031 by Brice.Goglin
contrib/windows-cmake: udpate private_config.h.in

SYSTEM_LOGICAL_PROCESSOR_INFORMATION isn't needed anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows-cmake/private_config.h.in (diff)
Commit 3abac26694b693b5b6534ddede9252604e406e43 by Brice.Goglin
NEWS: add bullet about many Windows CMake improvements

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit faac78f95077f0fc9205c6bad952bd17dd2555a6 by Brice.Goglin
lstopo/draw: rename our RGB macros into LSTOPO_COLOR

It conflicts with Windows RGB() macro.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 584541f65209add4dbd60cdff53710b94f400451 by Brice.Goglin
levelzero: don't skip devices if sysman is missing

We won't have all attributes and we won't have the locality,
but some attributes are still useful to some apps.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 6e02c0ad18ccc81ea14147ed12045ddfb2479454 by Brice.Goglin
levelzero: only warn once if sysman is disabled

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit ac8f22469ab570531d168b04692ff636a28e083e by Brice.Goglin
levelzero: update the management of vendor/device/brand/... strings

Recent implementations rather return "unknown" than "Unknown",
and the Model name seems correct, at least for Intel GPUs now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 9982828da019427e7a0d55021f1bf2a8a47ceb6f by Brice.Goglin
levelzero: add info attrs about type, nr slices, subslices, EUs and threads

And abstract-out a function to query regular and sysman device info.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/ports/include/levelzero/level_zero/ze_api.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
Commit f90ce3b61f0e3a2f9ff9e8299c89a01f0321349a by Brice.Goglin
levelzero: factorize the querying of CQ groups

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 347039e505e8daa2a167edf900eab36be6dc222d by Brice.Goglin
levelzero: expose subdevices as sub-osdevices

ze0 may contain ze0.0 and ze0.1 if the hardware contains 2 subdevices.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified tests/hwloc/ports/include/levelzero/level_zero/ze_api.h (diff)
The file was modified tests/hwloc/ports/include/levelzero/level_zero/zes_api.h (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 41b03e22b675340f190fedeb1dabc43e29d70d1b by Brice.Goglin
level: fix the querying of subdevice properties

Query the subdevice, not the root device.

Fixes commit 347039e505e8daa2a167edf900eab36be6dc222d

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 911f8a85e8b2577c9e5021b30945e2ea0c081617 by Brice.Goglin
levelzero: fix the test for unknown modelname before adding info attrs

Fixes first L0 commit 185b4b7332

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit e9505f5878cd74aedfcad4ca2722dc293d7254e8 by Brice.Goglin
windows: update comments about new topology features in recent versions

Even if the doc talks about Windows 20348, Microsoft says that the
new API for describing NUMA nodes and caches spanning multiple processor
groups is only in Windows 11 and Server 2022.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
Commit 52688f544cf99b6091e00c51c83557205819638c by Brice.Goglin
levelzero: update some comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 3bd29845f1dad88c90a9b2d76f15a5ffdec2ee59 by Brice.Goglin
levelzero: query memory and expose LevelZeroHBM/DDR/MemorySize info attrs

Both "core API" and "sysman api" may report useful info,
but drivers and implementations don't work in all cases
on all hardware yet.
For now we use sysman if enabled, otherwise coreapi.
HWLOC_L0_COREAPI_MEMORY may be set to 0 or 1 to force sysman
or core API.

We'll revisit this later once L0 bugs are fixed.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/levelzero/level_zero/ze_api.h (diff)
The file was modified tests/hwloc/ports/include/levelzero/level_zero/zes_api.h (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 116de93bde79d85cdd9551978ab9a8e2ce20d08c by Brice.Goglin
levelzero: remove Device in some info attr name

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-levelzero.c (diff)
Commit 896e8f95b6a2e305eca4247256353e80dd2c57fd by Brice.Goglin
lstopo/draw: add some L0 attributes in osdevs

Numbers of Slices/Threads and memory size.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit baba656bbb7dcee00f94ac4e159bc43e495c0010 by Brice.Goglin
doxy: fix some typos in new LevelZero info attrs

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 01b1573946aa7eac7afc45c0d2d48224a81c9a02 by Brice.Goglin
doxy: small cleanups in LevelZero attrs

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 46a7d94f3ab57ba56c9a8124dbf73ed147fbd155 by Brice.Goglin
linux/cpukinds: ignore max frequencies is base frequency is known

Some Intel processors have Turbo Boost Max 3.0 which allows some cores to
have a slightly higher max turboboost frequency than others. For instance
i9-10920x gives 4.6GHz max to 8 cores, 4.7 to 2, and 4.8 to 2.
When the Linux backend sees this, it creates 3 cpukinds because max
frequencies are slightly different, while the base frequency is the same.

For now, we just ignore max frequencies is base frequencies are available
(which is the case on Intel CPUs with not-too-old Linux kernels).
We'll improve things later.

This disabling may be reverted with HWLOC_CPUKINDS_MAXFREQ=1.

maxfreq is forced back in tests/linux/fakeheterocpunuma
but disabled in tests/x86+linux/5intel64-hybrid-lakefield.

Refs #502.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/x86+linux/5intel64-hybrid-lakefield.output (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.env (diff)
Commit e8159f2fc89c45681f4fb12d8638730c4f7230cb by Brice.Goglin
NEWS cleanup before branching 2.7

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit b6c5aa9b3e2393df8424d090a020876c0f0c0cd7 by Brice.Goglin
VERSION: master is now 2.8

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was modified VERSION (diff)
The file was modified contrib/windows/hwloc_config.h (diff)
Commit 497a86c6e21ae1758cec40208eef53fc91646002 by philippe.swartvagher
autogen: exit on first error

Signed-off-by: Philippe SWARTVAGHER <philippe.swartvagher@inria.fr>
The file was modified autogen.sh (diff)
Commit 1f846f66a38fd4aedd65d753455adfb37597ce30 by Brice.Goglin
autogen: hide bigsur libtool patch apply failure messages

Thanks to Donald Buczek for the report.

Closes #505.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified autogen.sh (diff)
Commit c62e5c8bb7870ae211f41e8a8a2d4a10e73daa59 by Brice.Goglin
contrib/android: google play wants targetSdkVersion 30+

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit 4b7540f34bc10d7489da30ff7335a48ea3771954 by Brice.Goglin
linux/cpukinds: adjust max frequencies instead of ignoring them

If some cores have the same base frequency but different max freqs
(e.g. because of Intel Turbo Boost Max 3.0) adjust those max freqs
down to report the same for those cores.

By default, this is only enabled for differences < 10% but it may
be configured with HWLOC_CPUKINDS_MAXFREQ=adjust=X (X in percents)
or disabled (=1).
Ignoring (default behavior in 2.7) is still possible with =0.

Closes #502.

This is the real fix instead of the work-around in 2.7.0
in commit 46a7d94f3ab57ba56c9a8124dbf73ed147fbd155 .

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86+linux/5intel64-hybrid-lakefield.output (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 82d202791bb12ae5cb2bc416dc9dd5e9975aef31 by Brice.Goglin
levelzero: ignore DDR memory if the device is integrated

The Core API reports "DDR" memory for both integrated GPUs
and discrete with GDDR. The former is likely the host DRAM,
so ignore it by default (can be unignored with HWLOC_L0_COREAPI_MEMORY=2).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/ports/include/levelzero/level_zero/ze_api.h (diff)
Commit d194199ce528e89d87286e42b5919dbed149c4c8 by Brice.Goglin
contrib/android: bump compileSdkVersion to 30 as well

We bumpded targetSdkVersion to 30 in c62e5c8bb7870ae211f41e8a8a2d4a10e73daa59
and lint errors out if compileSdkVersion is lower.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit 41b09946a98774db047a03805b6291ef255a8bd1 by Brice.Goglin
xml: support id="objXYZ" instead of gp_index="XYZ"

We'll likely switch to the former in a future major release
because it simplifies XML-based manipulation outside of hwloc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 8b9174279853d8f437be8fca0cac6434c9e25302 by Brice.Goglin
README: irc channel moved from Freenode to Libera Chat

Closes #508

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified README (diff)
Commit 8f5d13aa8eb7dfab58e6c04be5f4951ce4f64cf9 by Brice.Goglin
doxy: also fix the IRC server here

Forgotten in 8b9174279853d8f437be8fca0cac6434c9e25302

Refs #508

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/main.doxy (diff)
Commit 3e0de9e4c05ae90b9d8c4eb8bb3448ba33ba7ba8 by Brice.Goglin
darwin: kIOMasterPortDefault is deprecated

kIOMainPortDefault replaces it since Monterey.

Refs #510

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
The file was addedtests/hwloc/ports/include/darwin/Availability.h
The file was modified tests/hwloc/ports/Makefile.am (diff)
The file was modified tests/hwloc/ports/include/darwin/IOKit/IOKitLib.h (diff)
Commit b04906db60089c2acaba643f1926e2108276c2cf by Brice.Goglin
utils/common-ps.c: reduce a variable scope

to avoid a warning on !Linux

Refs #510

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/common-ps.c (diff)
Commit 8d69bc65451b5fe773c9b6062a78982029b73bbb by Brice.Goglin
configure: fix --with-hwloc-symbol-prefix help string

The default is empty, which goes in prefix to the existing "hwloc_".

Closes #407.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
Commit d7d13c9ecf4834b463a2c4274b0c7ac212dec346 by Brice.Goglin
core: realign the long list of allowed topology flags

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit c90ad95636b0f1530e16a502b14a1353f6c01797 by Brice.Goglin
API: add topology flag NO_DISTANCES

To reduce the time+space overhead when doing basic things.

Linux still loads distances internally for better NUMA
topology organization.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-freebsd.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/topology-solaris.c (diff)
The file was modified include/hwloc.h (diff)
Commit 88abb39b0aa09b38cd45cc1bdf92bb8698619c50 by Brice.Goglin
API: add topology flag NO_MEMATTRS

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc.h (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit 486f7c56acd10cd2c2b9be7179eea1821ff3e920 by Brice.Goglin
API: add topology flag NO_CPUKINDS

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified hwloc/topology.c (diff)
Commit 4ec1c2625b88a4cf1f4de79ff1cbe4ba66e3b9e2 by Brice.Goglin
doxy+README: talk about new flags for ignoring distances, memattrs and cpukinds

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit bd9248334262a6c465cbc8760b1fbc67ff2d0448 by Brice.Goglin
doxy: improve the doc about filtering objects to reduce the overhead

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit eb4f09082b1786abae0475413120c43af404cef0 by Brice.Goglin
API: minor clarification: topology flags are 0 by default

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 7c594ccce2536121911d76270c7900a1bf81ba41 by Brice.Goglin
contrib/ci.inria.fr: never disable make check in coverity and sonar-scanner jobs

NO_CHECK would make some issues disappear just because we disabled make check
in a custom job config.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
The file was modified contrib/ci.inria.fr/job-3-coverity.sh (diff)
Commit d7703df624db017f27fd0a1d355ceea50b56a8c8 by Brice.Goglin
darwin: factorize a range of consecutive bitmap_set()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
Commit 25d69491cdf0475026a474b0200fb5253ec07bce by Brice.Goglin
darwin: split to a generic cpukinds query and register

So that we may query from other sources (eg sysctl soon),
look at cpukinds during the rest of the discovery,
and register them the end.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
Commit 8a757ccdefe3d5c475db27a7634ef53c36591f37 by Brice.Goglin
darwin: abstract out the building of numa and cache levels

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
Commit 565c241497519841758649def21ebf472e38ca5a by Brice.Goglin
darwin: optionally get cpukinds from new sysctl hw.perflevels too

Use the existing IOKit code by default since it provides info about core types,
and the precise list of core indexes, while sysctl only gives the number of cores
per kind.

If we found nothing in IOKit or HWLOC_DARWIN_CPUKINDS_FROM_SYSCTL=1 in the env,
use sysctl instead.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-darwin.c (diff)
Commit f7c9aa86c2f8ce8717ce4381357d3b98518d14ca by Brice.Goglin
darwin: detect heterogeneous caches from sysctl perflevels

When we get cpukinds from IOKit, we have to match them
with perflevels (P=0 and E=1 for now) to find out which
cpukinds correspond to sysctl perflevel caches.

If we can't match (may occur if future core types are
different from E and P), we fallback to sysctl perflevels.

Fixes #507

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
The file was modified NEWS (diff)
Commit 6169e5c6cd6a47189247ff2a885b38534fc26488 by Brice.Goglin
contrib/windows-cmake: install hwloc.pdbg with Debug shared libs

Refs #512

Thanks to Mario Emmenlauer and Michael Hirsch for the help.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit c5e45ec13e2ea994d3f6c2591d3ea74197443941 by Brice.Goglin
doxy: fix a typo in L0 attr description

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit a030ab96b8a0750c2481506a14a90ccaef7eccb5 by Brice.Goglin
levelzero: improve the error message on ze_init() failure

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 64b336515f95356d39f899373493dae4539f2b2c by Brice.Goglin
levelzero: verbose messages about number of drivers and devices

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit d41997ec59f6c3954dc7fa87156486d20713f6da by Brice.Goglin
levelzero: add LevelZeroUUID

Now that it's properly implemented (unique in a machine,
but consistent across multiple runs).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/levelzero/level_zero/ze_api.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-levelzero.c (diff)
Commit fe363de1647013c190ac3e9d25bb1d7d3fbe574d by Brice.Goglin
core+levelzero: Set ZES_ENABLE_SYSMAN via setenv instead of putenv

Setting `ZES_ENABLE_SYSMAN` via `putenv` placed a constant string
in the environ array which cannot be touched. If the user is
manipulating that environ array then touching this envar will
result in a segv.
- Instead of using `putenv` use `setenv` which will put a copy
  of the constant string in the `environ` array allowing the
  end user to manipulate that array as needed.
- Note that I could not find a `setenv` function for windows
  so I left a comment and did not touch that code.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>

Also change the putenv() inside topology-levelzero.c for consistency
and update some comments.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified hwloc/topology.c (diff)
Commit 9f1fefe75eea888057b49d910f1077b302778013 by Brice.Goglin
darwin: read cachelinesize before creating hybrid perflevel caches

Otherwise we get linesize=0 for all these caches.

Thanks to Ralph Castain for the report.
Closes #513

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
Commit e7214879cdc7998ff57a99eb902378cc5684fff6 by Brice.Goglin
core: fix setenv(ZES_ENABLE_SYSMAN) on mingw

MinGW has gcc constructor but no setenv(), use putenv() there too.

Fixes fe363de1647013c190ac3e9d25bb1d7d3fbe574d

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit ed5da56b1d2091264fe4629ac51109e61264d873 by Brice.Goglin
core+levelzero: fix typos in ZES_ENABLE_SYSMAN enabling

Fixes 98ff57a99eb902378cc5684fff6 and fe363de1647013c190ac3

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-levelzero.c (diff)
Commit 261962a766bc805fe940add78d6e77c799e4967a by clement.foyer
doc: Fix typos in hwloc.h

Signed-off-by: Clément Foyer <clement.foyer@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 748fd86e065ebfa32892a1fcc96dd33e809219cd by jhursey
Strengthen the NVML check by adding a runtime check

* The Nvidia ML library is provided by a stub which can fool
   the linker in thinking that the actual library is on the system
   even when it is not. This can cause a runtime failure on such
   systems.
   - Strengthen the `nvidia-ml` library check by adding a runtime
     check that the resulting program will run not just compile
     and link.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
The file was modified configure.ac (diff)
The file was modified config/hwloc.m4 (diff)
Commit b88192a6d75e8f21dc14a4d771450fa732e982b1 by clement.foyer
doc: fix typos + harmonize parameter name

Signed-off-by: Clément Foyer <clement.foyer@inria.fr>
The file was modified include/hwloc/memattrs.h (diff)
Commit 8fb90fb27bf941e26b8381e39bfb9d24a9d53f50 by Brice.Goglin
configure: add HWLOC_FOO_COMPONENT_BUILTIN macros to public headers

So that external users know if CUDA/NVML/... support is built-in
(since they may bring additional lib dependencies).

Refs #515

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/autogen/config.h.in (diff)
The file was modified config/hwloc.m4 (diff)
Commit 64187e4b718fb8baf6436941a47dca30cb3e7fba by Brice.Goglin
configure: only show the NVML status line if we have the big warning

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified configure.ac (diff)
Commit db2c334a8d1a9539ff67b9957b53777c229c2590 by Brice.Goglin
configure: move plugin-path AC_ARG_WITH with others

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
The file was modified config/hwloc_internal.m4 (diff)
Commit 7a558845f9835103b5e8bbdfbe8e9fb1181fb1c9 by Brice.Goglin
configure+doxy: document that --with-cuda=/nonexisting will disable everything installed by CUDA

Alternative to --disable-cuda --disable-nvml --disable-opencl for NVIDIA GPUs.
It works because all of them start by looking at the common NVIDIA detection
which looks at --with-cuda.

Refs #515

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc_internal.m4 (diff)
The file was modified doc/hwloc.doxy (diff)
Commit fe05db6404655d6a52d9718a866f5bbf862c3382 by Brice.Goglin
configure: also warn if rsmi lib isn't in LD_LIBRARY_PATH and ld.so.conf

Refs #515

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
The file was modified configure.ac (diff)
Commit 9fcaa468fceff752a66fc213ffaed57a181e7e4b by Brice.Goglin
configure: also warn if cudart lib isn't in LD_LIBRARY_PATH and ld.so.conf

Refs #515

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified configure.ac (diff)
The file was modified config/hwloc.m4 (diff)
Commit 123ad5ea776515bbb831d08496233973c158c872 by Brice.Goglin
doxy: object attributes for sizes are in KiB instead of kB

Thanks to Moritz Kreutzer for the report.

Closes #519

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 0bbbad5d00fd87dc4a4102aa0f667fb4849ade1d by Brice.Goglin
synthetic: accept memory/cache size as GiB/KiB and handle GB/kB correctly

Refs #519

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-synthetic.c (diff)
Commit 4d9a9843a5616fc702575c4701a8c3cba044757f by Brice.Goglin
utils/annotate: accept memory/cache size as GiB/KiB and handle GB/kB correctly

Refs #519

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
Commit 00a2b78b17e386880191a7bb7c21f3074fd2c1a2 by Brice.Goglin
tests: update to synthetic/annotate now handling GB/GiB correctly

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-build-custom-topology.sh.in (diff)
The file was modified tests/hwloc/hwloc_synthetic.c (diff)
The file was modified utils/hwloc/test-build-custom-topology.output (diff)
Commit 61f73efaad850ad6947e3ab1c7c08191e02a1775 by Brice.Goglin
lstopo.1: add a sentence about kB/KiB units

in a new NOTES section

Refs #520.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 165bf78461a3db2ab4c95c093da84b5e3465ca5f by Brice.Goglin
API: bump HWLOC_API_VERSION to 0x20800

Needed for new NO_FOO topology flags.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit e3e961cd78883ca773c0dda195070121c7636696 by Brice.Goglin
API+lstopo.1: clarify that disallowed doesn't mean offline

Refs #522

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 514d63fab6e7ae60e0fae4a4f224b02b53a60afb by Brice.Goglin
core: don't enable L0 Sysman if L0 is disabled

If the levelzero backend isn't enabled, don't force enable Sysman since
it may disturb people using levelzero outside of hwloc.

In theory, it's still possible to build hwloc without levelzero enabled,
but load an external levelzero component as a plugin at runtime.
That's unlikely to happen, ignore this case, they may have to manually
set ZES_ENABLE_SYSMAN=1.

Thanks to Jonathan Peyton for the suggestion.

Closes #521

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit e0692f5aede16a99d6ef52e219a876f70e913d4b by Brice.Goglin
memattrs.h: use a sentinel MAX value for memattr IDs

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/memattrs.c (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc/memattrs.h (diff)
Commit 51665ffa29cb87e46d95a858b9c43cba64a48aaf by Brice.Goglin
memattrs: add Read/Write Bandwidth/Latency attributes

These could be manually added in the past, now they have a
dedicated ID and name.

It looks like newest Intel Platform expose separed bandwidth
values for read and write, so expose them.

The old Bandwidth/Latency values are still exposed as
"average" values.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/memattrs.h (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified tests/hwloc/memattrs.c (diff)
Commit 86776131634b1ab0c56acc45bb5d8fc648be3eae by Brice.Goglin
linux: gather read/write bandwidth/latency

The average bandwidth/latency is computed by averaging R+W.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output (diff)
Commit 3817675feb82cfdc2448a2cd2500b87b0c91ba3b by Brice.Goglin
lstopo/memattrs: abstract-out a function to display a single memattr

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-text.c (diff)
Commit 7dbdb5d30a8a2336e69cb6c7ccb9310062003a5c by Brice.Goglin
lstopo/memattrs: reorder memattrs in the output

Display R/W Bandwidth right after average bandwidth instead of between latencies

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified utils/lstopo/test-lstopo.output (diff)
Commit 115fb8c544d33a0bbdff07595df6f35c1a4bb5d6 by Brice.Goglin
tests/x86: add a Zen3 testcase

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86/Makefile.am (diff)
The file was addedtests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.tar.bz2
The file was addedtests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.output
Commit ff102fdfa95d911a4a1eac33c6cd80cdfe30445d by Brice.Goglin
x86: workaround VMs reporting invalid core/thread info

Check some CPUID outputs before dividing since some VMs do not report coherent values.

Crostini / Chrome M99 on Acer C933 Chromebook gets a division by zero error because:
CPUID leaf 0x1 returns register EDX with bit HTT=28 unset. According to the Intel x86 manual,
this means:
"A value of 0 for HTT indicates there is only a single logical processor in the
  package and software should assume only a single APIC ID is reserved."
This seems wrong on a quad-core Celeron 4100 processor.
Moreover, CPUID leaf 0x4 with subleaf 0 returns a valid first level of cache which
says (in EAX bits 26-31)that there are 4 cores in the physical package. This is correct,
and contradicts CPUID leaf 0x1 above.

Thanks to Peter Bense for the report.

Closes #525

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit f3d8bd0bc05d50a3a1aa32b9aae4d7127b4c0d0c by Brice.Goglin
NEWS: import 2.7.1 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit b8574c213343dd50c07f353648c9ceeb9a488fb0 by Brice.Goglin
configure: add --disable-readme

Updating the top-level README can fail in some corner cases
when "mixing" srcdir and builddir builds, e.g. in #526.

This could be properly fixed by:
* explicitly depending on $(DOX_HTML_DIR)/index.html so that
  make can take it either from srcdir or builddir.
* creating $(DOX_HTML_DIR) first since it doesn't exist in
  the builddir when using srcdir doxygen output.
I'd rather not touch that code unless strictly required.

Closes #526.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified config/hwloc_internal.m4 (diff)
Commit d0f3d09de62082c65ce70a7e20ac4cdc6e0a3a0a by Brice.Goglin
lstopo.1: clarify the documentation about PCI link speed in the graphical output

Refs #528

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 80e8e5b328cae3361f192fc33f7297e8a71db8a4 by Brice.Goglin
utils: allow loading fsroot/cpuid topologies from a tarball

If -i/--input is given a file ending with .tar.bz2 or .tar.gz
(or --input-format/--if "archive" is given), use archivemount
to fusemount the tarball instead of requiring unpacking it
before load.

We enter the mountpoint, 'umount -l' and 'rmdir' it immediately
so that we don't leak a mountpoint if lstopo crashes.

test-topology.sh under tests/hwloc/{linux,x86} still unpacks
since archivemount is rarely installed.
Specific archivemount tests will be committed separately.

This optional feature is mostly convenient to avoid having
millions of small files in lots of fsroot topologies on disk
in case there's a need to test lstopo manually.
I have 2 millions of them, and my backup tool doesn't like that,
replacing them with tarballs will cleanup all this.

Closes #531

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/hwloc/hwloc-distrib.1in (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit 9cf276b143bf0b26e9c72ad10d8effcfd458f98e by Brice.Goglin
tests/lstopo: test archivemount of fsroot and cpuid

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
The file was modified config/hwloc.m4 (diff)
Commit b294ce85c9223d48d55b3b2ac67a3521539e29f0 by Brice.Goglin
distances: fix clang warning about NULL pointer substraction in container_offset

warning: performing pointer subtraction with a null pointer has undefined behavior [-Wnull-pointer-subtraction]

Substracting NULL is really required anymore since NULL is always 0 since C99 anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/distances.c (diff)
Commit b29928485852505c13116ca75e97791b279bda39 by Brice.Goglin
utils/gather-cpuid: update comments about cpuid leaves reserved on Intel/AMD

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 96c5345970f10cf6a29222be0a66e3dd6507f973 by Brice.Goglin
utils/gather-cpuid: update with Intel CPUID leaves 0x1c and 0x21

Covers x86 manual from 2021/12.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit b36803658f1ee841abf3e6979afc5b68320cfa48 by Brice.Goglin
utils/gather-cpuid: update for AMD CPUID leaf 0x80000022

Covers AMD64 manual from 2021/11.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit b4369aeded52c18e0e8ca5faf536e02afa3131f7 by Brice.Goglin
utils/gather-cpuid: disable cpukinds/memattrs/distances in the topology

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 8223863f4f6ac66844840715a9b061827674d305 by Brice.Goglin
lstopo: add --os/logical-index-prefix

To replace " P#" and " L#" with a custom prefix.

Useful for avoiding "P" and "L" in figures in papers
when we don't want to talk about logical-vs-os indexes.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified NEWS (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit 59d1bd61afe687dceaa54496dbf65e788061078a by Brice.Goglin
levelzero: use the core PCI prop extension if available

When available, it gives the PCI locality without requiring Sysman.
If not, we fallback to Sysman as usual.

Seems to be available since L0 1.3 spec, but it's not clear
when it's actually implemented (runtime version and hardware model).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/ports/include/levelzero/level_zero/ze_api.h (diff)
Commit 2e8fedad73e8a2550af94cae5b17570791699579 by Brice.Goglin
pci: rework locality quirks

Haven't been used for a while, will be back soon.

Apply quirks early in the pci locality discovery instead of
only fixing buggy cpusets later.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
The file was modified include/private/private.h (diff)
Commit aff51a991f4c3dc264d98f5200b8b4f9f1a62810 by Brice.Goglin
pci: reduce the scope of pci-discovery-prepared phases

PCI quirks might need DMI info, which isn't available before the CPU discovery on Linux.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 71d27c1636a29bb0721567ece1c41c181891e301 by Brice.Goglin
pci: add a locality quirk for the HPE Cray EX235a

This server is used in Frontier@ORNL and several other supercomputers.
It has a complex PCI locality that cannot easily be exposed in ACPI tables.
It's specific/rare/important enough to justify a quirk in hwloc.

This may be disabled by setting HWLOC_PCI_LOCALITY= (empty) in the
environment.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
The file was modified NEWS (diff)
Commit 2d262de4ba844576875586be17c48785d724c4c1 by Brice.Goglin
pci: add a fake pci locality quirk for testing

It attaches all PCI hierarchies to the last PU.
Enabled with HWLOC_PCI_LOCALITY_FAKE_QUIRK=1 (unless HWLOC_PCI_LOCALITY is set in the env)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
Commit 646d06601967cc80029631c45759602bf365db9c by Brice.Goglin
NEWS: improve Linux cpukinds max freq item

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit e7aea83b5294578f304d1f046eb4d644960f26d5 by Brice.Goglin
linux/io: move block sectorsize related lines together

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit c413eb14fe9744ecfa84d58c285dba909da617f2 by Brice.Goglin
linux/io: remove support for /sys/class/dax

DAX devices moved to /sys/bus/dax soon after their support were added
in Linux, distributions disabled it and now it's removed from latest kernels.
Also /sys/class/dax misses many features, such as kmem driver for exposing
as NUMA nodes, and hmem driver for special-purpose memory.
So don't bother supporting it.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit b4b352d0ca08ee6ba9ff83c8ab85f4f3ba3ea2ef by Brice.Goglin
linux/io: cleanup dax/non-dax devtype management

Clarify the difference between "class" and "bus" devices,
which explains why we follow the "device" symlink for the
former and not the latter.

And then clarify why we look at the parent for DAX bus devices.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 48673bc74b8435631325448224508cbf6d5b51ae by Brice.Goglin
linux/io: no need for sysfs local_cpus for OSdev locality

Most OSdev have a numa_node attribute in their sysfs hierarchy,
but local_cpus is only available PCI sysfs devices.

OSdev that are related to a PCIdev are attached below that
PCIdev. We don't need to look at numa_node or local_cpus
here. The locality of the PCIdev was obtained earlier by
looking at local_cpus in hwloc_linux_backend_get_pci_busid_cpuset().
numa_node is also available (since 2007) but not used.

OSdev that are NOT related to a PCIdev have no relevant
local_cpus to look at, hence this code was never used.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 81b0bf3487698d6fbaa4f90f344712dc1a993e1b by Brice.Goglin
linux/io: rework/fix numa_node attribute in sysfs

For class devices (from /sys/class/foo), the actual device
is pointed by the "device" symlink, there's usually a numa_node
attribute in there.

For bus devices (from /sys/bus/foo/devices), numa_node can be
in the device itself (hmem DAX devices in some Suse 5.3 kernel),
or in its parent (old DAX devices in pre-5.5 kernels),
or in both (newer kernels).

The previous code only supported the parent case. We now
use the device itself first for bus devices (enough in the vast
majority of cases), and then the parent if a flag was given
(for DAX on some old kernels).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 0b271232477b688e1eac3c0d50dd5db18a1f3650 by Brice.Goglin
gather-topology: gather dax driver info

We'll use them to identify NUMA nodes vs actual dax files.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit 4bb528829f9a122217ae9f032de78483bb11da0f by Brice.Goglin
tests/linux: add dax driver information to gathered files

We'll need them soon.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.tar.bz2 (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.tar.bz2 (diff)
Commit 161dbb2c18c5fbf5faceffeb1b0e11134cfdac15 by Brice.Goglin
linux: fix and factorize the checking of whether a DAX device is exposed as NUMA node

Even if target_node points an existing NUMA node,
it doesn't mean that specific DAX was added to that node
(for instance, it could be a subpart of it when memmap/efi_fake_addr
boot parameters were used to change memory region attributes).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit ed52753dbec61ac3c0257b5c89d24e2caa4c9192 by Brice.Goglin
linux: add DAXParent and DAXType info attr

Added to both DAX OS devices or their corresponding NUMA nodes.

DAXParent is a string describing the sysfs hierarchy going to the parent device
(contains "hmem" for soft-reserved specific-purpose memory
and "ndbus" for NVDIMMs).

DAXType is either "SPM" or "NVM" for now.
We'll use bandwidth later to detect when SPM is actually HBM.

The "ndbus" subsystem driving these DAX devices is for nvdimms only
right now, but I wouldn't be surprised if non-nvdimm hardware ended
up there in the future too, hence the name "NVM" instead of "NVDIMM".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.output (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
Commit 1bdb4e37a900df7b67d7144fae71b0ae698f849b by Brice.Goglin
linux/dax: add some comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 2bb8dad3346a3a45e59885f1c341401c975c6c28 by Brice.Goglin
linux/block: replace "NVDIMM" subtype with "NVM" or "SPM" to match DAX attributes

A DAX file may come from a HBM node marked as specific-purpose (SPM).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.output (diff)
Commit a82267bcf4d0c220529eff886760b432c7392cf8 by Brice.Goglin
memattrs: heuristics to set NUMA node subtype to DRAM/HBM/SPM/NVM

Internally, we classify NUMA nodes by tier:
1) "UNKNOWN" (usually DRAM)
2) "SPM" (UEFI name "Specific-Purpose Memory") is what Linux exposes
   as "Soft-Reserved" DAX, usually HBM but could be something else.
3) "NVM" (NVDIMMs already detected on Linux through dax/kmem)
4) "GPU" (NVIDIA-only, already detected on Linux, and exposed with subtype "GPUMemory")

If (2) has 2x higher bandwidth than (1), (2) becomes HBM and (1) become DRAM.
If HWLOC_MEMTIERS_GUESS=spm_is_hbm is set in the environment, we don't even
look a the bandwidth.

In the end, we set DRAM/HBM/NVM to NUMA node subtypes.
We keep SPM if we couldn't guess that SPM was HBM.
DRAM isn't set unless there's anything else in the system.

The heuristics is applied at the end of the topology, even when
loading from XML.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified include/private/private.h (diff)
The file was modified hwloc/topology.c (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/rename.h (diff)
Commit 6cd6c6fad7aaf6006bfbe2fd6f0af9c33c52e1ad by Brice.Goglin
tests: add memtiers for testing subtypes of heterogeneous memory nodes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/memtiers.c
The file was modified tests/hwloc/Makefile.am (diff)
Commit 526cdf1b7fc87f1f4a3b1e14d675139d65342681 by Brice.Goglin
tests/linux: add a complex test case with lots of heterogeneous memories

Package0 has DRAM+HBM+NVM but HBM is exposed as DAX (SPM instead of HBM since DAX have no BW info).
Package1 has DRAM+2xHBM+NVM but one HBM is as DAX (SPM instead of HBM).
Package2 has HBM+2xNVM but one NVM is as DAX (NVM).

The case was generated with:
qemu-system-x86_64 -accel kvm \
-machine pc,nvdimm=on,hmat=on \
-drive if=pflash,format=raw,file=$FILES/OVMF.fd \
-drive media=disk,format=qcow2,file=$FILES/efi.qcow2 \
-smp 6 \
-m 6G,slots=4,maxmem=8G \
-object memory-backend-ram,size=3G,id=ram0 \
-object memory-backend-ram,size=1G,id=ram1 \
-object memory-backend-ram,size=512M,id=ram2 \
-object memory-backend-ram,size=512M,id=ram3 \
-object memory-backend-ram,size=512M,id=ram4 \
-object memory-backend-ram,size=512M,id=ram5 \
-numa node,nodeid=0,memdev=ram0,cpus=0-1 \
-numa node,nodeid=1,memdev=ram1,cpus=2-3 \
-numa node,nodeid=2,memdev=ram2,initiator=0 \
-numa node,nodeid=3,memdev=ram3,initiator=1 \
-numa node,nodeid=4,memdev=ram4,initiator=1 \
-numa node,nodeid=5,memdev=ram5,cpus=4-5 \
-numa node,nodeid=6,initiator=0 \
-numa node,nodeid=7,initiator=1 \
-numa node,nodeid=8,initiator=5 \
-numa node,nodeid=9,initiator=5 \
-object memory-backend-file,id=nvdimm1,share=on,mem-path=/tmp/nvdimm1.img,size=512M \
-device nvdimm,id=nvdimm1,memdev=nvdimm1,unarmed=off,node=6 \
-object memory-backend-file,id=nvdimm2,share=on,mem-path=/tmp/nvdimm2.img,size=512M \
-device nvdimm,id=nvdimm2,memdev=nvdimm2,unarmed=off,node=7 \
-object memory-backend-file,id=nvdimm3,share=on,mem-path=/tmp/nvdimm3.img,size=512M \
-device nvdimm,id=nvdimm3,memdev=nvdimm3,unarmed=off,node=8 \
-object memory-backend-file,id=nvdimm4,share=on,mem-path=/tmp/nvdimm4.img,size=512M \
-device nvdimm,id=nvdimm4,memdev=nvdimm4,unarmed=off,node=9
Booted with 5.18 with efi_fake_mem=2G@5G:0x40000 to mark PXM 2-5 as SPM.

Then all NVDIMM namespaces (5.0 to 8.0) are converted to devdax with
ndctl disable-namespace namespaceX.0
ndctl create-namespace -f -e namespaceX.0 -t pmem --mode=devdax
Then some DAX (1.0 3.0 5.0 7.0 and 8.0) are exposed as NUMA nodes with
daxctl reconfigure-device --mode=system-ram daxX.0

Then hwloc-gather-topology and tweak things:
* Remove dax4.0 since it doesn't really exist (it appears because
  we used a single 2G efi_fake_mem= instead of 4 consecutive ones,
  but it actually covers dax0.0-dax3.0).
* Fix the locality of some DAX (in /sys/bus/dax/devices/*/{,..}/numa_node)
  that Qemu doesn't set correctly because we didn't give the HMAT and SLIT
  tables (and initiator= doesn't work very well).
* Then set R/W bandwidth of all nodes (100 for NVM, 1000 for DRAM, 10000 for HBM)
  in /sys/devices/system/node/node?/access1/initiators/*bandwidth
  (possible with Qemu but requires loooooots of useless values on the command-line
   to fill the matrix).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/fakeheteromemtiers.output
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was addedtests/hwloc/linux/fakeheteromemtiers.tar.bz2
Commit f20635765b4b47d5339fed0ba197bd79368684cf by Brice.Goglin
NEWS: some improvements in 2.8 bullets

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 561657bd11a00b912f759ec1be4b1b4307bb15da by Brice.Goglin
pci: Gen7 bandwidth almost confirmed to be twice of Gen6

By the way, cleanup all these comments.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
Commit 92bcc71b8e69b42337ea4e306412aaffd2b241f6 by Brice.Goglin
cuda: update to compute capability 8.6

128 FP32 cores instead of 64.

Also assume 8.7 is like 8.6 even if this parameter isn't document for 8.7 yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-cuda.c (diff)
Commit 62e2598f7a447eea7de977a741ece9932cdffcbd by Brice.Goglin
pci: also update the computation of Gen6+ linkspeed

And fix the comments updated in 561657bd11a00b912f759ec1be4b1b4307bb15da

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
Commit c91712ebcf6109a42ffe7527f09108a33c6274bd by Brice.Goglin
private/windows.h: guard against _ANONYMOUS_UNION/STRUCT redefinition

It's already defined in Cygwin's /usr/include/w32api/_mingw.h

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/windows.h (diff)
Commit be110ff8a8da270e25e8153b8e20398f5191ddbf by Brice.Goglin
VERSION: master is now 2.9

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified VERSION (diff)
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
The file was modified contrib/windows/hwloc_config.h (diff)
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
Commit d868b80c38040ace32477a3d0ff8ff4fd153cfac by Brice.Goglin
tests/linux: remove 1alpha

This test has a single PU with no caches, no NUMA, etc, and no sysfs topology.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/linux/1alpha.tar.bz2
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was removedtests/hwloc/linux/1alpha.output
Commit cf4a652fde50009c8c2a48fd06ce8017ad6480ff by Brice.Goglin
tests/linux: cleanup missing cpus in nvidiagpunumanodes

Some cpus were removed from /sys/devices/system/cpu to reduce the size
of the topology, but the corresponding symlinks in /sys/bus/cpu/devices
were still there.
This causes these cpu to appear as offline when discovering through
/sys/bus/cpu/devices (while they don't exist at all), and to not
appear at all when discovering through /sys/devices/system/cpu.

Remove the broken symlinks so that discovery from both directory sees
the same (reduced) cpuset.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/nvidiagpunumanodes.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.kept.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.tar.bz2 (diff)
Commit 2f0815709ef83fe3fe278d2702c8cca52cc77870 by Brice.Goglin
linux: improve the readdir'ing of /sys/devices/system/{cpu,node}

Explicitly ignore entries starting with {cpu,node} but not followed
by a digit. At least cpufreq and cpuidle exist.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 9db28f4394a3e160d581213e0b087745168d99c8 by Brice.Goglin
linux: abort if sysfs cpu topology is missing

We dropped /proc/cpuinfo-based topology 3.5 years ago in
56e01f01c31f2afd2094a716c0b94a9a463137bd.

The fallback for missing CPU topo was only useful for kernels
with NUMA sysfs topology but no CPU sysfs topology (before 2.6.16),
no need to keep supporting these.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit b588277a948351e6b2c881de664505bd5397946a by Brice.Goglin
linux: don't support both /sys/bus/cpu/devices and /sys/devices/system/cpu

The former will never replace the latter.

/sys/devices/system/cpu contains more, so just always use that one.

/sys/devices/ is where all devices are, and /sys/bus/*/devices
contains symlinks to "similar" stuff in /sys/devices/...

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit c2c961953532f857eb7914f65429e0db11434e7e by Brice.Goglin
linux: stop using /sys/bus/node/devices too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit c241441da9f554fff7bd55ada9143c2c1ad6f16f by Brice.Goglin
linux: don't check whether numa topology is properly available in sysfs

Remove the now useless code that checked NUMA support in /sys/devices/system/node
and /sys/bus/node/devices.
Either NUMA is enabled in the kernel (since early 2.6 kernels)
and /sys/devices/system/node exists and we assume it works,
or ignore NUMA discovery.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 057fc67b3dd91fd1f251c39c3aa1465f18e83554 by Brice.Goglin
linux: simplify the checks for sysfs cpu file availibility

Just look for old and new files in /sys/devices/system/cpu

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 62648f1d7c9ceda62d3b2752b1e43e919dd9bff2 by Brice.Goglin
utils/calc: don't segfault if IO is given to -N or -I

Walk up parents until we find a normal one before comparing sets.

Thanks to Clement Foyer for the report.

Closes #537.

However -N gpu or -I gpu still doesn't work because it actually
counts osdev ignoring the gpu subtype. This would require more work.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 4965e5bd4e5cd663f7f7ab82fcd797ec0c00b28f by Brice.Goglin
utils/calc: allow -H with NUMA nodes

There is no code change except explicitly allowing NUMA instead of rejecting
it like other special levels (I/O and Misc).

However NUMA may cause multiple redundant outputs as documented in the manpage:
"on a platform with both DRAM and HBM memory on a package,
the first core will be considered both
as first core of first NUMA node (DRAM) and
as first core of second NUMA node (HBM)."

Refs #539

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit ac18e13eb3d52f55a373c71947b9456a7c36690c by Brice.Goglin
pci: document the PCI affinity quirk for HPE Cray EX235a

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/pci-common.c (diff)
Commit 4732ec41fb3c89ff5a722da599c0176448099ba6 by Brice.Goglin
utils/tests/calc: check for multiple levels of groups

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
Commit 7833d5200c8372753f6796095e4a46bdad9c6964 by Brice.Goglin
utils/calc: allow to retrieve object attributes when scanning type strings

for 3.0, we should provide a public API to convert a string
into type, depth, subtype (string), and these attributes.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 4c7838f6df20eb2b5425bbcebbb214516ff9fef4 by Brice.Goglin
utils/calc: cleanup the management of -I

make it look like -N above

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit f9987ac4b8181a4ffe12449a0add41b094f3d089 by Brice.Goglin
utils/calc: support osdev subtypes in -N and -I

eg: hwloc-calc -I net node:2

Thanks to Clement Foyer for the suggestion.

Refs #538

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 1f0283e3b04c74af58f9c15c42816628001814b0 by Brice.Goglin
levelzero: fix subdevice info properties

Thanks to Jonathan Peyton for the fix.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was addedcodemeta.json
Commit 69fbc208ee373cc042aa803325e65febd0bd17ae by Brice.Goglin
pci+linux: make 32bits domain warnings non-critical

This issue seems to happen more frequently, don't report it unless
all errors are enabled.

This warning means that some PCI devices might be missing.
That's not critical enough to warn users (most of them know nothing about hwloc).
For the record, CUDA init warnings were demoted the same a couple releases ago.

Refs #354

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-pci.c (diff)
Commit 64e01e8155e2814ad96faa61f8e67d797d1a0ef4 by Brice.Goglin
core: if debug is enabled and debug messages are disabled, unhide errors too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit c100a528a3d41c7ca986ec9f24cb8a7d33b3bcab by Brice.Goglin
xml: also demote 32bits pci domain import errors to non-critical

Forgotten in commit 69fbc208ee373cc042aa803325e65febd0bd17ae

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit b75d1c111a1cff2e883c10ddb7f056508ed0651e by Brice.Goglin
core: add HWLOC_SHOW_ALL/CRITICAL_ERRORS() macros

hwloc_hide_errors() isn't easy enough, these new wrappers should
make things obvious.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/memattrs.c (diff)
The file was modified hwloc/pci-common.c (diff)
The file was modified hwloc/topology-solaris.c (diff)
The file was modified hwloc/topology-aix.c (diff)
The file was modified hwloc/cpukinds.c (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/topology-cuda.c (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/components.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified include/hwloc/plugins.h (diff)
Commit 3329842da11c4f9ad085014f6eeda12efc877e58 by Brice.Goglin
xml: fix an error message in the future xml obj id attribute

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit c57d0fe1162e8189b04f5047b966b3978fc1d272 by Brice.Goglin
completion: fix diff --refname

Don't fallthough to xml filenames after setting COMPREPLY for --refname.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
Commit eafc127fc898d9ef0b06d8fae07c80e567bc3f85 by samuel.thibault
Add more codemeta information
The file was modified codemeta.json (diff)
Commit 61083f1d672b74f4f5a699e1081b82fe85840bde by Brice.Goglin
bitmap.h: fix the doc for foreach()

We were still using index instead of id.

Thanks to Guillaume Mercier.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/bitmap.h (diff)
Commit 8d81da3a98565971bb18a408a2493fd19553f556 by Brice.Goglin
doc/examples: add memory-attributes.c

Closes #542

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/memattrs.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was addeddoc/examples/memory-attributes.c
The file was modified doc/examples/Makefile.am (diff)
Commit d316fa749474b5ba0a2d557989af5fb9e0b556de by Brice.Goglin
memattrs.h: cleanup doxygen formatting of the enum of memory attributes

Escape double-quotes in comments (they break the parser and the remaining
enum item doc is ignored in manpages).

Hide initializer values.

Uniformize the source formatting to keep it easy to read even if the
manpage formatting isn't perfect (looks like doxygen/manpage wants
only two paragraph per enum item, but we'd have to change lots of
other places, and it would make the source harder to read).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/memattrs.h (diff)
Commit 601b58dccec5e802a4ab2e4e8019a987de9afb07 by Brice.Goglin
doc/examples: use hwloc_uint64_t in memory-attributes.c

MinGW doesn't get uint64_t on our CI.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/examples/memory-attributes.c (diff)
Commit 352348a1d861614f67553dd5fd6ad1ef1d4ebca5 by Brice.Goglin
nvml/bw: add nvlink versions 3&4

Possible version values aren't documented in NVML API doc,
but wikipedia and other sources say 50GB/s per link
for v3 (Ampere) and v4 (Hopper).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-nvml.c (diff)
Commit 0de22a593ff280cca67a01724a01bcf81d4490fc by Brice.Goglin
tests/backends: fix build with ClangCI 15 compiler frontend for MSVC

hwloc_backends.c needs some open/read/close/mktemp redirection
to _foo. Copy what we did in pci-common.c and add mktemp.

Thanks to Mario Emmenlauer for the report.

Fixes #546

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_backends.c (diff)
Commit 3b5d5d875a9d03a5a1ec8874aad116d3d145602a by Brice.Goglin
completion/lstopo: update the list of output formats

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
Commit 2993fba464749d3a17e08fa2e402f41144675f13 by Brice.Goglin
lstopo: if stdout is redirected, use console mode

Except if tcgetpgrp(STDIN) fails, we're likely launched by a
window manager outside of a terminal in this case.

Closes #503

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit 1a6426878487b986d1a258c584811b35fc23d549 by Brice.Goglin
lstopo: only show interactive help if stdout is a tty

Otherwise things like .xsession-errors (depending on the window manager)
might get flooded with those messages.

Ignored on Windows since I have now idea where those messages go
when the app doesn't run from a terminal.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit cfbb9cf8252f21a03b9645d3339275652679bcdf by Brice.Goglin
lstopo: add an explicit "window" output format

To force the graphical window output in case we're
using console for some reason.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit a908085792db1670c769769bd93179fc3a92dc2a by Brice.Goglin
cuda: update to compute capability 9

128 FP32 cores again.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-cuda.c (diff)
Commit b86f63fcfaeb480613e0ec6f345444a98b95d36f by hzhou321
Leak in hwloc__xml_import_cpukind

Looks like we always need free the locally allocated infos.
The file was modified hwloc/topology-xml.c (diff)
Commit 46300028ce0428f3593753d130b8b96709b98ee4 by Brice.Goglin
lstopo/draw: fix the displaying of non-HBM L0 device memory

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 604fdd5f047224eca7b35288981ef6bdcbfa7405 by Brice.Goglin
cuda: update for compute capability 8.9

And 8.7 is officially documented now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-cuda.c (diff)
Commit e84553d4a9efd3a48c385e5131e0715535683b3a by Brice.Goglin
doxy: number of character +s

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/bitmap.h (diff)
The file was modified include/hwloc/deprecated.h (diff)
The file was modified include/hwloc.h (diff)
Commit b5c07dd3f07deeab91312e85551906c2dd196f28 by Brice.Goglin
diff: reuse temp variable

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/diff.c (diff)
Commit e0f56e2fac08e8dd5a916747ff113d711ba5f0d5 by Brice.Goglin
pci: don't ignore CXL memory expanders

And use "CXLMem" as a string for PCI_CLASS_MEMORY_CXL = 0x0502

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/plugins.h (diff)
The file was modified hwloc/pci-common.c (diff)
Commit a172c8499d21c5db2b059ff657c0a690b9427936 by Brice.Goglin
utils/gather-topology: gather cxl devices and drivers

We'll need to double-check whether they are useful in the end.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit dd21b3d098e96ad8e8c0d8c8d1e10b03c6c79906 by Brice.Goglin
levelzero: build the "XeLinkBandwidth" distance matrix

Between devices and subdevices.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/levelzero/level_zero/zes_api.h (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified include/hwloc/distances.h (diff)
Commit bfda6940b28c9912fafb8fef8376a40fc772d56b by Brice.Goglin
NEWS: more bullets for 2.9

2.8.1 will likely not be released (before 2.9, at least).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 795bc1db852b38ce826633703c5cd6b92ca53146 by Brice.Goglin
linux+lstopo/draw: expose CXL memory device (Type 3) size

Linux support for exposing this memory as NUMA node isn't
totally ready yet (at least for RAM), but we already have
device ram/pmem size in sysfs.

This is a Block device just like DAX for now, we'll work
on a better way to expose all these memory things in 3.0.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit c35798f4dd752d44b8b963a17557bae4bae26cf8 by Brice.Goglin
VERSION: master is now 2.10

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was modified contrib/windows/hwloc_config.h (diff)
The file was modified VERSION (diff)
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
Commit 4177a8cfb48e257c55e3d56d1ed10092d236e492 by Brice.Goglin
levelzero: save some disabled code to get driver properties

Not used so far (UUID would be interesting but it's not stable across runs).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit f51e9f2232a749dfab9b0401c305c3c2307650bd by Brice.Goglin
VERSION: master is now 3.0

We're going to break the ABI and API in the next commits.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified VERSION (diff)
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
The file was modified contrib/android/include/hwloc/autogen/config.h (diff)
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was modified contrib/windows/hwloc_config.h (diff)
Commit bf44f300e87e54c589af2b58f4cee93025e17297 by Brice.Goglin
API: always enable 32bits PCI domains

Remove --enable-32bits-pci-domains

This breaks the ABI.

Fixes #354

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc.h (diff)
The file was removedtests/hwloc/linux/2pa-pcidomain32bits-disabled.output
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/hwloc_topology_abi.c (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified include/hwloc/autogen/config.h.in (diff)
The file was removedtests/hwloc/linux/2pa-pcidomain32bits-disabled.source
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was modified NEWS (diff)
The file was modified include/private/private.h (diff)
The file was modified config/hwloc.m4 (diff)
Commit 704c3166208e6d517a172a2c6f3c397b18520eab by Brice.Goglin
pci: add the prog-if (register level programming interface) to pci device attributes

It's the 3rd byte of the class, useful in some corner cases.

It'll be assumed 0 when importing from pre-3.x XMLs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pci.output (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified tests/hwloc/xml/96em64t-4n4d3ca2co-pci.xml (diff)
The file was modified utils/hwloc/test-hwloc-compress-dir.output.tar.gz (diff)
The file was modified utils/hwloc/test-hwloc-compress-dir.input.tar.gz (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.output (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.xml (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output2 (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input2 (diff)
The file was modified tests/hwloc/xml/28intel64-2p2g7c-CoD.nogroups.v1tov2.xml (diff)
The file was modified tests/hwloc/xml/28intel64-2p2g7c-CoDgroups.v1tov2.xml (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.xml (diff)
The file was modified NEWS (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input1 (diff)
The file was modified tests/hwloc/xml/power8gpudistances.xml (diff)
The file was modified tests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.xml (diff)
The file was modified include/hwloc.h (diff)
The file was modified tests/hwloc/xml/8em64t-2p2ca2co-nonodesets.v1tov2.xml (diff)
The file was modified tests/hwloc/xml/192em64t-24n8c2t.xml (diff)
The file was modified tests/hwloc/xml/192em64t-12gr2n8c2t.xml (diff)
The file was modified tests/hwloc/xml/24em64t-2n6c2t-pci.xml (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit c0c5151c2d82c2add1c93458bfa438fcac3ca028 by Brice.Goglin
rename.h: replace hwloc_ with HWLOC_ when renaming capital names

Thanks to Samuel K. Gutierrez for reporting this issue
a long time ago.

This shouldn't break anything since people are supposed
to call non-renamed symbols and let rename.h rename them.
In case it manages to break something, we're only changing
this in a major ABI-breaking release.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc/rename.h (diff)
Commit 5a8c01a3c449adbba1ff88640a276076a15e90b7 by Brice.Goglin
BGQ: remove support

It's more than 10 years old, IBM abandoned the BlueGene line
in 2015, and most BGQ installations are gone now. No need to
support this in future hwloc releases.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/bind.c (diff)
The file was removedhwloc/topology-bgq.c
The file was modified hwloc/Makefile.am (diff)
The file was modified include/hwloc/plugins.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/private/private.h (diff)
The file was modified contrib/windows/private_config.h (diff)
The file was modified tests/hwloc/ports/Makefile.am (diff)
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
The file was modified include/private/internal-components.h (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
The file was modified hwloc/misc.c (diff)
The file was removedtests/hwloc/ports/include/bgq/spi/include/kernel/process.h
The file was modified contrib/android/include/private/autogen/config.h (diff)
The file was modified codemeta.json (diff)
The file was removedtests/hwloc/ports/include/bgq/spi/include/kernel/location.h
The file was modified config/hwloc.m4 (diff)
The file was modified contrib/windows-cmake/private_config.h.in (diff)
The file was modified tests/hwloc/hwloc_backends.c (diff)
Commit 5b6f5996fea6c16e51cde4d3901848b2d607ba0b by Brice.Goglin
core: merge is_loaded/is_thissystem ints into a bitwise state

This breaks the topology ABI, but 3.0 will break the main ABI/API anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/shmem.c (diff)
The file was modified tests/hwloc/hwloc_topology_abi.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/components.c (diff)
The file was modified hwloc/distances.c (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified hwloc/bind.c (diff)
The file was modified hwloc/diff.c (diff)
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified include/private/private.h (diff)
Commit 63130d612a225f1de9c6055a24cdf25d7af8d1ec by Brice.Goglin
core: add is_init and is_loading topology states

To clarify what can be used between init() and load(), and during load().

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/private.h (diff)
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/components.c (diff)
Commit 91399fbe8d05af5f664b30c43e6b92c76334a514 by Brice.Goglin
deprecated.h: remove functions deprecated since 2.0

hwloc_topology_insert_misc_object_by_parent()
hwloc_obj_cpuset_snprintf()
hwloc_obj_type_sscanf()
hwloc_cpuset_to_nodeset_strict()
hwloc_cpuset_from_nodeset_strict()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/deprecated.h (diff)
Commit 72b32d19952ea7f1457ddea2b50898a564762272 by Brice.Goglin
pci: remove deprecated HWLOC_PCI_<domain>_<bus>_LOCALCPUS envvars

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified hwloc/pci-common.c (diff)
Commit 272c4666146f81dea81827f1974ddfc257326797 by Brice.Goglin
helper: remove an obsolete ref to an old deprecated-removed function

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/helper.h (diff)
Commit ee87ef7bd086692fc640240fd29245b6507cb5c4 by Brice.Goglin
API: add hwloc_get_type_depth_with_attr()

Generalized hwloc_get_type_depth() that may disambiguate
HWLOC_TYPE_DEPTH_MULTIPLE by using optional attributes.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/traversal.c (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc.h (diff)
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
Commit 435f712936778bb70023feff4d23cb31605fc9f5 by Brice.Goglin
API: deprecate hwloc_type_sscanf_as_depth()

Use hwloc_type_sscanf()+hwloc_get_type_depth_with_attr()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-distrib.c (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc/deprecated.h (diff)
Commit 8fd1dfc0b0cefd6251f1efe63c40ce46a7885b58 by Brice.Goglin
API: replace hwloc_obj_type/attr_snprintf() verbose attribute with flags

1 keeps the same meaning as in 2.x (HWLOC_OBJ_SNPRINTF_FLAG_OLD_VERBOSE).
No other flags yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/traversal.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified utils/hwloc/test-parsing-flags.sh.in (diff)
Commit f2f4f06f4a8e2275a9588c5b31730072c79b729b by Brice.Goglin
misc: replace hwloc_memory_size_printf_unit/value() with hwloc_memory_size_snprintf()

Move it to private/private.h since it uses hwloc_snprintf()
and it's now inline instead of a macro.

And use obj_snprintf flags instead of only a verbose parameter.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/private/private.h (diff)
The file was modified include/private/misc.h (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
Commit 7d2aa6a3a5cf58477309f78ec652229f216e0f8c by Brice.Goglin
obj_attr_snprintf: switch to KiB/MiB/GiB/TiB

Only the displayed unit changes from KB/MB/... to KiB/MiB/...
Values were already divided by 1024 instead of 1000.

Fixes #520

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/private.h (diff)
The file was modified NEWS (diff)
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified tests/hwloc/xml/16em64t-4s2c2t.console.output (diff)
The file was modified tests/hwloc/linux/4em64t-2c2t-ignore-reorder.output (diff)
Commit 187cdc9ae3d97c1a3fbf268e0e15b16e4eabba71 by Brice.Goglin
lstopo/draw: switch CUDA MP local memory to KiB too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit aeee9e368afd53322705792e7554b34b0370c112 by Brice.Goglin
obj_snprintf(): add flags to tune type names and units

Allow to switch to raw sizes without units, or actual KB/MB/GB/...

Use them instead of the old verbose flag for most tools and tests,
except the main lstopo where more tuning is coming.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
The file was modified utils/hwloc/test-parsing-flags.sh.in (diff)
The file was modified hwloc/topology.c (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
The file was modified include/private/private.h (diff)
Commit a077be8b9e77e5973cf8145a3d5db45a6fcf7e68 by Brice.Goglin
lstopo: add --osf/--obj-snprintf-flags option to tune obj printing

By default, no flags are given (short names, GiB units and no other attributes).
--osf/--obj-snprintf-flags passes flags to hwloc_obj_type/attr_snprintf().

Flags are also affected by existing -v --verbose option:
If verbose (-v), longer names are used (even in graphical window mode now).
If verbose (-v) and textual, more attributes are also displayed,
and we use MiB/GiB sizes instead of the old broken KiB-but-KB sizes.

Refs #520

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86+linux/5intel64-hybrid-lakefield.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.output (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified tests/hwloc/linux/96em64t-4n4d3ca2co.output (diff)
The file was modified tests/hwloc/linux/2s390-2c.output (diff)
The file was modified tests/hwloc/linux/2amd64-2n.output (diff)
The file was modified tests/hwloc/linux/256ia64-64n2s2c.output (diff)
The file was modified tests/hwloc/linux/4ia64-4s.output (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.output (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified tests/hwloc/linux/128ia64-17n4s2c.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets_noadmin.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t_merge.output (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.output (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-A2A-cache.output (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified tests/hwloc/xml/16-2gr2gr2n2c+misc.console.output (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.console.output (diff)
The file was modified tests/hwloc/linux/20s390-2g6s4c.output (diff)
The file was modified tests/hwloc/linux/4fake-4gr1nu1pu.output (diff)
The file was modified tests/hwloc/linux/8em64t-2s2ca2c.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-offlines.output (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified NEWS (diff)
The file was modified tests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.output (diff)
The file was modified tests/hwloc/linux/8ia64-2s2c2t.output (diff)
The file was modified tests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.output (diff)
The file was modified tests/hwloc/linux/2arm-2c.output (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.console.output (diff)
The file was modified tests/hwloc/linux/8amd64-4n2c.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.output (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t_ncaches.output (diff)
The file was modified tests/hwloc/linux/8em64t-4c2t.output (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output (diff)
The file was modified tests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.output (diff)
The file was modified tests/hwloc/linux/16ia64-8n2s.output (diff)
The file was modified tests/hwloc/linux/8ia64-2n2s2c.output (diff)
The file was modified tests/hwloc/linux/offline-cpu0-node0.output (diff)
The file was modified tests/hwloc/linux/32intel64-2p8co2t+8ve.output (diff)
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified tests/hwloc/linux/8em64t-2s2ca2c-buggynuma.output (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.console.nocollapse.output (diff)
The file was modified tests/hwloc/linux/48amd64-4d2n6c-sparse.output (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.output (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified tests/hwloc/linux/64fake-4n2s2ca2c2t.output (diff)
The file was modified tests/hwloc/linux/256ppc-8n8s4t.output (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.output (diff)
The file was modified tests/hwloc/linux/64amd64-4s2n4ca2co.output (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.output (diff)
The file was modified tests/hwloc/linux/128arm-2pa2n8cluster4co.output (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.kept.output (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.output (diff)
The file was modified tests/hwloc/linux/8em64t-2s4c-heterogeneous.output (diff)
The file was modified tests/hwloc/linux/8ia64-4s2c.output (diff)
Commit a7fee2da3aebe272ec3d6736f658b5a58e6f7da2 by Brice.Goglin
VERSION: update to final 2.9.0 bullets

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 41ecc23af8528911bea23e7b598648dd83be8965 by Brice.Goglin
hwloc-gather-topology: only unalias ls

'unalias -a ls' unaliases everything, while we only wanted 'ls'
in ce2ab33a408205cd3ec51f8aa845af5a2ddffd18.

'unalias -a' is bashism anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit fb9b7a1e5bbd36f4ca27fc51873273936d92e6b4 by Brice.Goglin
contrib/android: bump compile/targetSdkVersion to 31

Required by Google Play for newer Android versions.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit c255f14c9aafa781ea192ad79d4c9b22b8375c69 by Brice.Goglin
contrib/android: update build parameters for Android 12

Main activity with intent-filter required "android:exported" parameter,
and it must be "true" because this activity may be called by other apps
or the launcher.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/AndroidManifest.xml (diff)
Commit d5b66a03474e55c8b18bd002bf30f75d0b8d3c3f by Brice.Goglin
contrib/android: bump android app subversion to 1.5.2

We updated some build parameters in previous commits.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit ca4d36bc2a765136fb4dff6fe6a1e713ffc1065f by Brice.Goglin
NEWS: bring 2.7.2 bullets

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit c938d8159a98378db08f96a35e7c42d6bce8b1ea by Brice.Goglin
contrib/*/check-versions.sh: add --update to usage

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows/check-versions.sh (diff)
The file was modified contrib/android/check-versions.sh (diff)
The file was modified contrib/windows-cmake/check-versions.sh (diff)
Commit 471e43ddfb9d46c6779ec407c290b56bd3e2b8e6 by Brice.Goglin
contrib/android/check-versions.sh: make a remaining verbose message conditional

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/check-versions.sh (diff)
Commit accb7020c814610ea381438c199843514fe6c9b4 by Brice.Goglin
contrib/dist/make_dist_tarball: update android/windows VERSION too

HWLOC_VERSION* macros were X.Yrc1 instead of X.Y in the MSVC builds.

Windows CMAKE builds don't include suffixes such as rc1, but we still
update the hwloc version there for consistency (and in case X.Y was
changed too).

Android isn't updated since it isn't distributed in tarballs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/dist/make_dist_tarball (diff)
Commit cf1b1818af3cf28dc2f371c9395b2cfa1a3a3b4a by Brice.Goglin
doxy: example using get_api_version() to manage flags at runtime

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 14a76592bd79f398ec63870048576d6e9763fffa by Brice.Goglin
test-gather-topology: skip if /sys isn't available

Support for old Linux kernels without /sys support was removed
in 2.9 but it can still happen in containerized builds.

Skip the Linux gather-topology test in that case.

Thanks to Ludovic Courtes for the patch.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/gather/test-gather-topology.sh.in (diff)
Commit 837cff152c54b64264d15a195e534fbae9b7fa51 by Brice.Goglin
utils/gather-cpuid: update to Intel x86 Manual 2022/12

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 66ace095b9347395c0e12920837dce83ab140015 by Brice.Goglin
utils/gather-cpuid: always stop ecx loops after 256 iterations

In case we ever meet a buggy CPUID implementation.
subleaf 256 is way too much for most leaves anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit ba0bac0c6ea2f28db8377de39d34e414f6fec807 by Brice.Goglin
x86: limit the number of cache and topology subleaves

An invalid subleaf is supposed to break these loops.
but add a max limit (16 for caches and 32 for topology levels)
in case we ever meet a broken CPUID implementation.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit 51f3c81e8cf874952047b4fb4553501253e3bc0a by Brice.Goglin
lstopo: improve the error message in case of unrecognized option

When an option is unrecognized, it gets used as the output filename.
The real filename, if any, then throws an error saying it's an
unrecognized option. Clarify that it couldn't be used as an output
filename because another one was already used.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 6d244ce3d755107388d21b89391da5ca7c0c13bf by Brice.Goglin
lstopo.1: typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 43c0045e71de5d0f1b85d345cad3ab649529ebcc by Brice.Goglin
lstopo: remove .format from -.format special output early

Keep "-" as soon as possible instead of handling "-.format"
or even "/dev/stdout" later in the core or in backends.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit aa88027d4978c1e6419cf15c0d350470e3639922 by Brice.Goglin
lstopo: show the output format in some error messages

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 99cf34e2b6befb172e72f3ae718212da6aa6b1ed by Brice.Goglin
lstopo: update the output format when it is internally chosen

We'll use it in messages later.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 3487de4371ffbc185fec883e89c647e8df1f5b5c by Brice.Goglin
lstopo: warn that filename is ignored when forcing the window output

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 096c89dd51c03d01d32a15da4e4b1bc023a9e45e by Brice.Goglin
lstopo: show a message about the export filename and format

Only shown if exporting to a file, that file is not stdout,
stdout is a terminal, and the output format is not window.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit 058f1114f441078696058e835ebd11930e43c804 by Brice.Goglin
API/deprecated: remove object type backward compat macros for v1.x

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/deprecated.h (diff)
Commit d52aa4dc13dd48c7ab7d0e9b8f87b5754315d3bd by Brice.Goglin
hwloc-calc: remove support for obsolete options --pulist --nodelist and --objects

Superseded before 2.0 and not documented anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-distrib.1in (diff)
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 93a4a651e37e13f26c6fd17e01b7707c341a2be5 by Brice.Goglin
tools: remove support for obsolete --xml/--fsys-root/--synthetic options

Superseded by -i/--if before 2.0 and not documented anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit 1bc7c8a99823595ab1c31f03119f04901cb7a9b7 by Brice.Goglin
core: don't stop parsing the "socket" name for packages

Socket types obsoleted a while ago, but useful for convenience.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/traversal.c (diff)
Commit 501620266a809841a13842c58cabb297f7d1d154 by Brice.Goglin
tests: filter-out the upcoming "id" xml attribute

It's the future replacement of "gp_index". Just like "gp_index",
it may change for (internal) reasons without actually breaking things.
Hence, ignore "id" just like we ignore "gp_index" in test outputs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
The file was modified tests/hwloc/linux/test-topology.sh.in (diff)
The file was modified tests/hwloc/x86/test-topology.sh.in (diff)
The file was modified tests/hwloc/x86+linux/test-topology.sh.in (diff)
Commit d1029c34976d2519e440a2b21a2200c172f8a28f by Brice.Goglin
xml: add a v2 export flag and enable it by default for now

It doesn't do anything yet and it's force-enabled internally for now
so that tests outputs don't change yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc/export.h (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit 5e004cc95bad103f828da9513d477941944bad5c by Brice.Goglin
xml: add support for 3.0 xml format

For now, it only changes the XML header to <topology version="3.0">

We still use hwloc2.dtd, we'll fork it later into a hwloc3.dtd if needed.

2.0 is still enabled internally for now,
but 2.0 and 3.0 import/export is supported.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-xml-libxml.c (diff)
The file was modified hwloc/topology-xml-nolibxml.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 261082bf1f95124949904c1d5af39d42be610957 by Brice.Goglin
xml: export id="objXXX" in XML 3.0

Having id="objXXX" in the XML makes external users much easier
since they can directly identify objects in CSS, etc.

gp_index="XXX" is still exported for now for backward compatibility
with 2.x before 2.8, even if they are redundant. It'll be removed in 4.0.

id="objXXX" is not exported if v2 is forced.

Test outputs aren't updated yet since v2 is still forced by default.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/hwloc2.dtd (diff)
Commit 45e0f28845c11543997de9813c87e180d6967270 by Brice.Goglin
xml: stop forcing v2 export by default

v1tov2 XML tests remain v2, others aren't forced to v2 anymore.

This reverts the temporary v2 forcing in a previous commit.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/16amd64-8n2c-cpusets.xml (diff)
The file was modified tests/hwloc/xml/192em64t-12gr2n8c2t.xml (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input2 (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.xml (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.xml (diff)
The file was modified tests/hwloc/x86/Intel-SandyBridge-2xXeon-E5-2650.output (diff)
The file was modified tests/hwloc/x86/AMD-K10-MagnyCours-2xOpteron-6164HE.output (diff)
The file was modified tests/hwloc/linux/2i386-2c-nohugepage.xml.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t.xml.output (diff)
The file was addedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v1tov2.options
The file was modified tests/hwloc/xml/8intel64-4n2t-memattrs.xml (diff)
The file was modified tests/hwloc/x86/AMD-15h-Piledriver-4xOpteron-6348.output (diff)
The file was modified tests/hwloc/xml/power8gpudistances.xml (diff)
The file was modified tests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.output (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.xml (diff)
The file was modified utils/hwloc/test-hwloc-compress-dir.output.tar.gz (diff)
The file was modified tests/hwloc/x86/Hygon-Dhyana-32cores.output (diff)
The file was modified tests/hwloc/x86/Intel-CascadeLake-2xXeon6230.output (diff)
The file was modified tests/hwloc/x86/AMD-15h-Bulldozer-4xOpteron-6272.output (diff)
The file was modified tests/hwloc/x86/Intel-CPUID.1F-Qemu-2p3d3c2t.output (diff)
The file was modified tests/hwloc/x86/Intel-Broadwell-2xXeon-E5-2650Lv4.output (diff)
The file was modified tests/hwloc/x86/Zhaoxin-CentaurHauls-ZXD-4600.output (diff)
The file was modified tests/hwloc/x86/AMD-K10-Istanbul-8xOpteron-8439SE.output (diff)
The file was modified tests/hwloc/x86/Intel-CPUID.1A-1p2co2t.output (diff)
The file was modified tests/hwloc/x86/Intel-Westmere-2xXeon-X5650.output (diff)
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pci.output (diff)
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was modified tests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.xml (diff)
The file was modified tests/hwloc/xml/28intel64-2p2g7c-CoD.nogroups.v1tov2.options (diff)
The file was addedtests/hwloc/xml/16amd64-4distances.v1tov2.options
The file was modified tests/hwloc/xml/96em64t-4n4d3ca2co-pci.xml (diff)
The file was modified tests/hwloc/x86/Intel-IvyBridge-12xXeon-E5-4620v2.output (diff)
The file was modified tests/hwloc/x86/Intel-KnightsCorner-XeonPhi-SE10P.output (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-noio.xml (diff)
The file was modified tests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.xml (diff)
The file was modified tests/hwloc/xml/fakecpukinds.xml (diff)
The file was modified tests/hwloc/x86/Intel-Nehalem-2xXeon-X5550.output (diff)
The file was addedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v1tov2.options
The file was addedtests/hwloc/xml/28intel64-2p2g7c-CoDgroups.v1tov2.options
The file was modified tests/hwloc/x86/Intel-Penryn-4xXeon-X7460.output (diff)
The file was modified tests/hwloc/xml/24em64t-2n6c2t-pci.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output2 (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml.output (diff)
The file was modified tests/hwloc/x86/AMD-17h-Zen-2xEpyc-7451.output (diff)
The file was modified tests/hwloc/xml/16em64t-4s2c2t-offlines.xml (diff)
The file was modified tests/hwloc/x86/AMD-K8-SantaRosa-2xOpteron-2218.output (diff)
The file was addedtests/hwloc/xml/8ia64-2n2s2c+1n.v1tov2.options
The file was modified tests/hwloc/x86+linux/64amd64-4p2n4ca2co.topoextnuma.output (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.output (diff)
The file was modified tests/hwloc/x86/Intel-Core-2xXeon-E5345.output (diff)
The file was modified tests/hwloc/xml/192em64t-24n8c2t.xml (diff)
The file was modified tests/hwloc/linux/2i386-2t-hugepagesizecount.xml.output (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-offlines.xml.output (diff)
The file was modified tests/hwloc/x86/AMD-K8-SledgeHammer-2xOpteron-250.output (diff)
The file was modified tests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified tests/hwloc/xml/fakeheterodistances.xml (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.output (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets.xml.output (diff)
The file was modified tests/hwloc/x86/Zhaoxin-Shanghai-KaiSheng-ZXC+-FC1081.output (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.xml (diff)
The file was modified tests/hwloc/x86/Intel-Skylake-2xXeon6140.output (diff)
The file was modified tests/hwloc/x86+linux/64amd64-4p2n4ca2co.output (diff)
The file was modified tests/hwloc/xml/16-2gr2gr2n2c+misc.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.input (diff)
The file was modified tests/hwloc/x86/Intel-Haswell-2xXeon-E5-2680v3.output (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input1 (diff)
The file was modified utils/hwloc/test-build-custom-topology.output (diff)
The file was addedtests/hwloc/xml/2intel64-1n2c-numaroot.v1tov2.options
The file was modified utils/hwloc/test-hwloc-compress-dir.input.tar.gz (diff)
The file was modified tests/hwloc/xml/16em64t-4s2c2t.xml (diff)
The file was modified tests/hwloc/linux/allowed/test1.output (diff)
The file was addedtests/hwloc/xml/8em64t-2p2ca2co-nonodesets.v1tov2.options
The file was modified tests/hwloc/x86/Intel-KnightsLanding-XeonPhi-7210.output (diff)
Commit b0c5d3e182922dbea95bb6f723661b612b3e54bc by Brice.Goglin
doc/images: update some xml source to XML v2

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/images/devel09-pci.xml (diff)
The file was modified doc/images/hagrid.xml (diff)
The file was modified doc/images/emmett.xml (diff)
The file was modified doc/images/dudley.xml (diff)
Commit 8f4c42b1ef28165afaf89ad1d06254467808f1ff by Brice.Goglin
doc/images: regenerate lstopo outputs

To get the modern layout.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/images/hagrid.png (diff)
The file was modified doc/images/ppc64-with-smt.png (diff)
The file was modified doc/images/ppc64-without-smt.png (diff)
The file was modified doc/images/ppc64-full-with-smt.png (diff)
The file was modified doc/images/devel09-pci.png (diff)
The file was modified doc/images/emmett.png (diff)
The file was modified doc/images/HACKING (diff)
The file was modified doc/images/dudley.png (diff)
Commit dbf5f17f3a59716340c55dfa3c36454e6a53c7f9 by Brice.Goglin
tests/xml: remove tests importing from v1

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/xml/8em64t-2p2ca2co-nonodesets.v1tov2.source
The file was removedtests/hwloc/xml/16amd64-4distances.v1tov2.source
The file was removedtests/hwloc/xml/8ia64-2n2s2c+1n.v1tov2.xml
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoD.nogroups.v1tov2.source
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoDgroups.v1tov2.xml
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoDgroups.v1.xml
The file was removedtests/hwloc/xml/2intel64-1n2c-numaroot.v1tov2.source
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v1tov2.source
The file was removedtests/hwloc/xml/2intel64-1n2c-numaroot.v1tov2.xml
The file was removedtests/hwloc/xml/8em64t-2p2ca2co-nonodesets.v1tov2.xml
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was removedtests/hwloc/xml/8em64t-2p2ca2co-nonodesets.v1.xml
The file was removedtests/hwloc/xml/16amd64-4distances.v1.xml
The file was removedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v1tov2.source
The file was removedtests/hwloc/xml/16amd64-4distances.v1tov2.xml
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoD.nogroups.v1tov2.xml
The file was removedtests/hwloc/xml/2intel64-1n2c-numaroot.v1.xml
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoDgroups.v1tov2.source
The file was removedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v1tov2.xml
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoD.nogroups.v1tov2.options
The file was removedtests/hwloc/xml/8ia64-2n2s2c+1n.v1.xml
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v1tov2.xml
The file was removedtests/hwloc/xml/8ia64-2n2s2c+1n.v1tov2.source
Commit 038e0be12e0b769e61ec79e5ae628ceec5ccf145 by Brice.Goglin
tests/netloc: update XMLs to v2

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/netloc/data/plafrim.txz (diff)
The file was modified tests/netloc/data/plafrim2.txz (diff)
The file was modified tests/netloc/data/avakas.txz (diff)
Commit 3f80d7fa8b276e4193c87e10f6034eba6930ccc4 by Brice.Goglin
xml: drop support for importing XML v1

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified NEWS (diff)
The file was modified include/private/xml.h (diff)
Commit d2fa2844c134648bde8d327befe7726106fcc898 by Brice.Goglin
tests/lstopo: check v2 XML export instead of v1

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
Commit bff01d351c65e88e870a26e77fd6af6932df3ccd by Brice.Goglin
tests/xml: remove tests exporting to v1

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was removedtests/hwloc/xml/16amd64-4distances.v2tov1.xml
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v2tov1.options
The file was removedtests/hwloc/xml/16amd64-4distances.v2tov1.source
The file was removedtests/hwloc/xml/16amd64-4distances.v2tov1.options
The file was removedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v2tov1.source
The file was removedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v2tov1.xml
The file was removedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v2tov1.options
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v2tov1.source
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v2tov1.xml
Commit 945c1dde813da1a3b3b78ce2899db6acd347bf0c by Brice.Goglin
xml: remove support for exporting to XML v1

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml-nolibxml.c (diff)
The file was modified include/hwloc/export.h (diff)
The file was modified include/private/xml.h (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/topology-xml-libxml.c (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit 851e6c373f2971bc0c43e86d09847435af38e61b by Brice.Goglin
dtd: remove hwloc.dtd now that it's not supported anymore

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedhwloc/hwloc.dtd
The file was modified hwloc/topology-xml-libxml.c (diff)
The file was modified hwloc/Makefile.am (diff)
Commit 34e55af387ba56715a1b213363becb0bd408546e by Brice.Goglin
xml/import: remove the dead code (only used for v1 import)

CID#1520591

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 7987eb40fbfd97038e51053d36e358749a4bacd2 by Brice.Goglin
tests/xml: remove v1tov2 options files

Forgotten in dbf5f17f3a59716340c55dfa3c36454e6a53c7f9

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.v1tov2.options
The file was removedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.v1tov2.options
The file was removedtests/hwloc/xml/8em64t-2p2ca2co-nonodesets.v1tov2.options
The file was removedtests/hwloc/xml/2intel64-1n2c-numaroot.v1tov2.options
The file was removedtests/hwloc/xml/8ia64-2n2s2c+1n.v1tov2.options
The file was removedtests/hwloc/xml/16amd64-4distances.v1tov2.options
The file was removedtests/hwloc/xml/28intel64-2p2g7c-CoDgroups.v1tov2.options
Commit aa0ef16c41279cdfd1a6f5d276cfdb2d46ee88bd by Brice.Goglin
darwin: don't forget to filter perflevel caches

Forgotten in f7c9aa86c2f8ce8717ce4381357d3b98518d14ca

Thanks to Michel Lesoinne for the report.

Closes #564

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
Commit cb82437df9335e0b036f5634f04ff17d5b06d363 by Brice.Goglin
API: rename Block OS devices into Storage

We've had more than Blocks in there, and Storage is more explicit,
while Block came from the Linux specific block device type.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc.h (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.output (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.output (diff)
The file was modified include/hwloc/deprecated.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.output (diff)
The file was modified tests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.output (diff)
The file was modified doc/Makefile.am (diff)
Commit 24f37bb2c6af30f17950bbb794668b338510f738 by Brice.Goglin
API: split a "Memory" osdev type out of "Storage"

Use it for DAX HBM/PMEM/SPM and CXL.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+1mic.output (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.output (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 060ea5dd0acfe0cda2cd88d37dd47d8cdcbe06c2 by Brice.Goglin
xml: import/export memory osdev from/to xml 2.0

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit d95c803720db5228a77f2a6d4b4a21cd45734246 by Brice.Goglin
tests/xml: check import/export from/to XML v2

Contains 4 CXLMem and 1 DAX memory devices whose osdev types change
between v2 and v3.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was addedtests/hwloc/xml/cxlmem+dax.v2tov3.xml
The file was addedtests/hwloc/xml/cxlmem+dax.v2tov3.source
The file was addedtests/hwloc/xml/cxlmem+dax.v3tov2.options
The file was addedtests/hwloc/xml/cxlmem+dax.v3tov2.xml
The file was addedtests/hwloc/xml/cxlmem+dax.v3tov2.source
Commit ca7f6459a5db7c099b2ac62516bdddf1010bac6e by Brice.Goglin
linux: force an ending \0 in our readlink

readlink() doesn't add an ending \0.
Add it in our wrapper to avoid surprises during future development/debug
(this behavior was discovered while playing with CXL symlinks).

This doesn't really fix anything yet because current callers:
1. (dax bus device symlink) were guaranteed to end before the end of the symlink.
2. (generic device symlink) manually added the ending \0 (without checking for
buffer overflow, very unlikely since sysfs symlinks are much shorter than 256)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 4463e2e4b1cb8ba7ac4f5bde1abde5c8fbf202c4 by Brice.Goglin
linux/dax: don't reuse block-specific sysfs parsing code

There's not many attributes to get for DAX devices,
don't bother factorizing with config flags, etc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 2d20a323d26078239086cb6f2ba26d9d296e9586 by Brice.Goglin
linux/block: simplify the code now that DAX support is separated

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 0780a3b9002c3567f3a8041a62f0d81bbddfd027 by bgoglin
tests/backends.c: fix a failure when /sys isn't available on Linux on non-x86

Since 2.9, Linux discovery aborts if /sys isn't available.
Usually it will fallback to the x86 backend... except on non-x86 platforms obviously
where it would fallback to "noos" instead.

The hwloc_backends.c test verified that the "Backend" info attribute was the same
in the XML-loaded topology and the original topology, but it did not handle the
case where that info attribute did not exist at all, which is the case when
only "noos" is used.

This is first reported by Simon South on https://issues.guix.gnu.org/61493
Thanks to Ludovic Courtes for forwarding to me.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_backends.c (diff)
Commit 95b02118c5141f5d2442cc6c596c99c51a839897 by Brice.Goglin
hwloc-gather-cpuid: update some comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit b3f77380663476c0e807986049afabf7be43dc0c by Brice.Goglin
hwloc-gather-cpuid: add 0x80000023

Available at least since AMD Zen3.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit 41a079cedf4700a24e4adec9d804e76cd385e668 by Brice.Goglin
hwloc-gather-cpuid: add AMD 0x80000026 extended topology leaf

Likely available in Zen4.

We now cover AMD CPUID of Fam19h Model11h PPR from 2022/10.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
Commit c9ad835e4bd1f52feba541f2720c8ac18dfd94d1 by Brice.Goglin
.github/issue_template.md: improve the list of command outputs requested from non-Linux OS

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified .github/issue_template.md (diff)
Commit 361515933e8b6c6522f027b07f42d9d2ca49c5bd by Brice.Goglin
linux: mark HPE Cray Cassini HSNs with subtype "Slingshot"

Those are almost identical to Ethernet NICs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 194ae573f20c2e205540f501224b9debccb09026 by Brice.Goglin
configure: update to latest ROCm include/lib paths

OpenCL and ROCm SMI lib (and others we don't used) previously
had their libs and headers under /opt/rocm.../{opencl,rocm_smi,...}/{lib/include}
Since ROCm 5.2 (maybe earlier), they are in /opt/rocm.../{lib/include}
and some warnings appear when using the old paths.

Only use the old paths if the new ones aren't available.

Closes #571

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified config/hwloc.m4 (diff)
Commit d0e32feed5c98f032b493ad5354b58f9841d5ad8 by Brice.Goglin
tests/xml: rewrite the framework

Replace the old .source + .options + .env optional files with a single
mandatory .test file that contains the source and target XML filenames,
optional options, and optional environment variables.

Now we iterate over *.test instead of *.xml and *.console outputs
(with some .xml that could also be input).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/xml/fakeheterodistances.test
The file was addedtests/hwloc/xml/192em64t-12gr2n8c2t.test
The file was addedtests/hwloc/xml/16-2gr2gr2n2c+misc.console.test
The file was removedtests/hwloc/xml/16-2gr2gr2n2c+misc.console.output
The file was addedtests/hwloc/xml/16intel64-manyVFs.console
The file was addedtests/hwloc/xml/cxlmem+dax.v2.xml
The file was removedtests/hwloc/xml/cxlmem+dax.v3tov2.xml
The file was addedtests/hwloc/xml/16-2gr2gr2n2c+misc.console
The file was removedtests/hwloc/xml/32em64t-2n8c2t-pci-noio.options
The file was addedtests/hwloc/xml/32em64t-2n8c2t-pci-noio.test
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.options
The file was removedtests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.options
The file was modified tests/hwloc/xml/test-topology.sh.in (diff)
The file was removedtests/hwloc/xml/32em64t-2n8c2t-pci-noio.source
The file was addedtests/hwloc/xml/16em64t-4s2c2t-offlines.test
The file was addedtests/hwloc/xml/power8gpudistances.test
The file was removedtests/hwloc/xml/16intel64-manyVFs.console.source
The file was removedtests/hwloc/xml/16amd64-4distances.console.source
The file was removedtests/hwloc/xml/cxlmem+dax.v3tov2.source
The file was addedtests/hwloc/xml/16amd64-4distances.console
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.env
The file was addedtests/hwloc/xml/24em64t-2n6c2t-pci.test
The file was addedtests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.test
The file was addedtests/hwloc/xml/32em64t-2n8c2t-pci-normalio.test
The file was addedtests/hwloc/xml/16intel64-manyVFs.console.test
The file was removedtests/hwloc/xml/cxlmem+dax.v3tov2.options
The file was addedtests/hwloc/xml/16intel64-manyVFs.nocollapse.console
The file was addedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.test
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was addedtests/hwloc/xml/cxlmem+dax.v2tov3.test
The file was removedtests/hwloc/xml/16intel64-manyVFs.console.output
The file was addedtests/hwloc/xml/16intel64-manyVFs.nocollapse.console.test
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.output
The file was removedtests/hwloc/xml/16intel64-manyVFs.console.options
The file was removedtests/hwloc/xml/16amd64-4distances.console.env
The file was removedtests/hwloc/xml/cxlmem+dax.v2tov3.xml
The file was addedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.disallowed.console.test
The file was addedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.disallowed.test
The file was removedtests/hwloc/xml/16em64t-4s2c2t.console.output
The file was removedtests/hwloc/xml/16intel64-manyVFs.console.nocollapse.options
The file was addedtests/hwloc/xml/16intel64-manyVFs.test
The file was addedtests/hwloc/xml/16amd64-4distances.test
The file was addedtests/hwloc/xml/192em64t-24n8c2t.test
The file was addedtests/hwloc/xml/16amd64-4distances.console.test
The file was removedtests/hwloc/xml/16em64t-4s2c2t.console.source
The file was removedtests/hwloc/xml/32em64t-2n8c2t-pci-normalio.source
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console.source
The file was addedtests/hwloc/xml/16amd64-8n2c-cpusets.test
The file was removedtests/hwloc/xml/16em64t-4s2c2t.console.options
The file was addedtests/hwloc/xml/cxlmem+dax.v3.xml
The file was addedtests/hwloc/xml/fakecpukinds.test
The file was addedtests/hwloc/xml/96em64t-4n4d3ca2co-pci.test
The file was addedtests/hwloc/xml/cxlmem+dax.v3tov2.test
The file was removedtests/hwloc/xml/16intel64-manyVFs.console.nocollapse.output
The file was addedtests/hwloc/xml/16em64t-4s2c2t.test
The file was removedtests/hwloc/xml/cxlmem+dax.v2tov3.source
The file was removedtests/hwloc/xml/16-2gr2gr2n2c+misc.console.source
The file was removedtests/hwloc/xml/16amd64-4distances.console.output
The file was addedtests/hwloc/xml/16em64t-4s2c2t.console
The file was removedtests/hwloc/xml/16amd64-4distances.console.options
The file was addedtests/hwloc/xml/8intel64-4n2t-memattrs.test
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.options
The file was removedtests/hwloc/xml/16intel64-manyVFs.console.nocollapse.source
The file was addedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console
The file was removedtests/hwloc/xml/16-2gr2gr2n2c+misc.console.options
The file was addedtests/hwloc/xml/16-2gr2gr2n2c+misc.test
The file was addedtests/hwloc/xml/16em64t-4s2c2t.console.test
The file was addedtests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.test
Commit 5a51da1c145accb24f5596e7f838b1789d713d9e by Brice.Goglin
tests/xml: remove unneeded environment variables

v1.x exported floating point numbers for distances, hence failing
if the current locale didn't match the locale of the expected output.

v2+ export integers instead, no locale difference there.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/16amd64-4distances.console.test (diff)
The file was modified tests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.disallowed.console.test (diff)
Commit 4c0aa9d1ac5a3eeda6b7aceeacb4f65c8901563f by Brice.Goglin
tests/xml: remove 8intel64-fakeKNL-A2A-hybrid.rootattachednumas

This test was explicitly designed to test the v1->v2 xml import
where KNL needed special care. Doesn't matter anymore in v3.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.test
The file was removedtests/hwloc/xml/8intel64-fakeKNL-A2A-hybrid.rootattachednumas.xml
The file was modified tests/hwloc/xml/Makefile.am (diff)
Commit deb135e0e09a15737faab5ac48ea9f10796d60cf by Brice.Goglin
tests/{x86,linux,xml...}: uniformize the path to LOG_COMPILER

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was modified tests/hwloc/x86/Makefile.am (diff)
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was modified tests/hwloc/linux/allowed/Makefile.am (diff)
The file was modified tests/hwloc/x86+linux/Makefile.am (diff)
Commit f36d1f158eb1a6f24ebeca59b28d714f9e25cbac by Brice.Goglin
tests/linux*: look for .source and .exclude in the directory of .output

Instead of explicitly in $srcdir

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/allowed/test-topology.sh.in (diff)
The file was modified tests/hwloc/x86+linux/test-topology.sh.in (diff)
The file was modified tests/hwloc/linux/test-topology.sh.in (diff)
Commit bdc440633d205e03460cfe4bd3a82faa99b52e70 by bgoglin
Update .gitignore to include cross-compile libtool artifacts

When configured with a non-native --host value, the libtool file will
be prefixed by the host, which the current .gitignore misses.

Signed-off-by: Nicholas Corgan <nicholas.corgan@skylarkwireless.com>
The file was modified .gitignore (diff)
Commit b241b5804d3663323b47a60f1a50b4ebffce501a by Brice.Goglin
tests/xml: some renaming

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.disallowed.test
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was addedtests/hwloc/xml/irregulargroups-disallowed.console
The file was addedtests/hwloc/xml/irregulargroups-disallowed.console.test
The file was addedtests/hwloc/xml/irregulargroups-disallowed.test
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.console
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.disallowed.console.test
The file was addedtests/hwloc/xml/irregulargroups-disallowed.xml
The file was removedtests/hwloc/xml/64intel64-3g2n+2n-irregulargroups+pci.xml
Commit d66768c32d16cdbf5b62a7e0f0d069250ed8a72d by Brice.Goglin
tests/xml: improve the format of .test files

Prefix lines with source/target/options/env: instead of requiring a specific line order.

foo.test should contain:
- source: input XML filename (must be in same directory as foo.test)
- target: expected output filename (must be in same directory as foo.test, ends with either .console or .xml)
- options: lstopo options, if any
- env: environment variable lines to be sourced, if any

This also allows comments to describe the test in other lines.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/16em64t-4s2c2t.test (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.console.test (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.test (diff)
The file was modified tests/hwloc/xml/16-2gr2gr2n2c+misc.console.test (diff)
The file was modified tests/hwloc/xml/16-2gr2gr2n2c+misc.test (diff)
The file was modified tests/hwloc/xml/8intel64-4n2t-memattrs.test (diff)
The file was modified tests/hwloc/xml/test-topology.sh.in (diff)
The file was modified tests/hwloc/xml/16em64t-4s2c2t.console.test (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.test (diff)
The file was modified tests/hwloc/xml/fakeheterodistances.test (diff)
The file was modified tests/hwloc/xml/16amd64-8n2c-cpusets.test (diff)
The file was modified tests/hwloc/xml/16em64t-4s2c2t-offlines.test (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.nocollapse.console.test (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v2tov3.test (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.console.test (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.test (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v3tov2.test (diff)
The file was modified tests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.test (diff)
The file was modified tests/hwloc/xml/fakecpukinds.test (diff)
The file was modified tests/hwloc/xml/192em64t-12gr2n8c2t.test (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.test (diff)
The file was modified tests/hwloc/xml/192em64t-24n8c2t.test (diff)
The file was modified tests/hwloc/xml/irregulargroups-disallowed.test (diff)
The file was modified tests/hwloc/xml/96em64t-4n4d3ca2co-pci.test (diff)
The file was modified tests/hwloc/xml/24em64t-2n6c2t-pci.test (diff)
The file was modified tests/hwloc/xml/irregulargroups-disallowed.console.test (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-noio.test (diff)
The file was modified tests/hwloc/xml/power8gpudistances.test (diff)
Commit d6fda2d87f980ac57ae61a00865eb487f6eea8dc by Brice.Goglin
tests/linux: remove some of the many tests that aren't useful anymore

* 4em64t-2c2t-ignore-reorder
Output is almost empty and there's no actual reordering anymore.

* console output of 32amd64-4s2n4c-cgroup2.output
XML output is enough (and better) for testing Cgroup v2 support.

* 2s390-2c
very basic S/390, we have a much bigger one with "books".

* 4ia64-4s
* 8ia64-4s2c
Old ia64 that are less interesting than others (with multiple sockets, NUMA and/or SMT).
ia64 is pretty much dead anyway, we still have too many after removing those.

* 8em64t-4c2t
* 8amd64-4n2c
* 2amd64-2n
Old and basic x86_64 outputs, we have many others and much better ones.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was removedtests/hwloc/linux/8amd64-4n2c.output
The file was removedtests/hwloc/linux/2amd64-2n.output
The file was removedtests/hwloc/linux/32amd64-4s2n4c-cgroup2.output
The file was removedtests/hwloc/linux/4ia64-4s.output
The file was removedtests/hwloc/linux/8em64t-4c2t.output
The file was removedtests/hwloc/linux/2s390-2c.output
The file was removedtests/hwloc/linux/2amd64-2n.tar.bz2
The file was removedtests/hwloc/linux/8ia64-4s2c.output
The file was removedtests/hwloc/linux/8amd64-4n2c.tar.bz2
The file was removedtests/hwloc/linux/4em64t-2c2t-ignore-reorder.options
The file was removedtests/hwloc/linux/4em64t-2c2t-ignore-reorder.tar.bz2
The file was removedtests/hwloc/linux/8ia64-4s2c.tar.bz2
The file was removedtests/hwloc/linux/2s390-2c.tar.bz2
The file was removedtests/hwloc/linux/4ia64-4s.tar.bz2
The file was removedtests/hwloc/linux/8em64t-4c2t.tar.bz2
The file was removedtests/hwloc/linux/4em64t-2c2t-ignore-reorder.output
Commit 9ce01f32c226651c28897d4fd642815fa352f44f by Brice.Goglin
tests/linux: rewrite the framework with .test files

Replace the old .source + .options + .exclude + .env optional files with
a single mandatory .test file that contains everything.

foo.test should contain:
- source: tarball filename (must be in same directory as foo.test)
- target: expected output filename (must be in same directory as foo.test, ends with either .console or .xml)
- options: lstopo options, if any
- exclude: exclude file to be passed to tar --exclude-from=, if any
- env: environment variable lines to be sourced, if any

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/96em64t-4no4pa3ca2co.console
The file was removedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder.output
The file was removedtests/hwloc/linux/16em64t-4s2c2t_merge.options
The file was addedtests/hwloc/linux/16ia64-8n2s.console
The file was addedtests/hwloc/linux/16em64t-4s2c2t.test
The file was removedtests/hwloc/linux/16em64t-4s2c2t-offlines.xml.options
The file was removedtests/hwloc/linux/16em64t-4s2c2t.xml.output
The file was removedtests/hwloc/linux/2i386-2t-hugepagesizecount.xml.options
The file was addedtests/hwloc/linux/32intel64-2p8co2t+8ve.test
The file was removedtests/hwloc/linux/40intel64-4n10c+pci-conflicts.output
The file was addedtests/hwloc/linux/128arm-2pa2n8cluster4co.console
The file was removedtests/hwloc/linux/8em64t-2s2ca2c.output
The file was addedtests/hwloc/linux/20s390-2g6s4c.console
The file was addedtests/hwloc/linux/8ia64-2n2s2c.test
The file was removedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.source
The file was addedtests/hwloc/linux/nvidiagpunumanodes.test
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets_noadmin.output
The file was addedtests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.test
The file was addedtests/hwloc/linux/8em64t-2s2ca2c.test
The file was addedtests/hwloc/linux/8em64t-2s4c-asymcaches.console
The file was addedtests/hwloc/linux/2i386-2c-nohugepage.test
The file was addedtests/hwloc/linux/16amd64-8n2c-cpusets.test
The file was addedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.test
The file was addedtests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.test
The file was addedtests/hwloc/linux/256ia64-64n2s2c.test
The file was addedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.console
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
The file was removedtests/hwloc/linux/16em64t-4s2c2t_ncaches.options
The file was addedtests/hwloc/linux/40intel64-2g2n4c+pcilocality.test
The file was addedtests/hwloc/linux/nvidiagpunumanodes-kept.console
The file was removedtests/hwloc/linux/16em64t-4s2c2t.xml.options
The file was removedtests/hwloc/linux/fakeheterocpunuma.options
The file was addedtests/hwloc/linux/8ia64-2s2c2t.console
The file was addedtests/hwloc/linux/8em64t-2s2ca2c-buggynuma.test
The file was removedtests/hwloc/linux/256ppc-8n8s4t.output
The file was addedtests/hwloc/linux/offline-cpu0-node0.console
The file was addedtests/hwloc/linux/48amd64-4pa2n6c-sparse.test
The file was removedtests/hwloc/linux/fakeheterocpunuma.env
The file was removedtests/hwloc/linux/48amd64-4d2n6c-sparse.tar.bz2
The file was addedtests/hwloc/linux/128ia64-17n4s2c.test
The file was removedtests/hwloc/linux/64amd64-4s2n4ca2co.output
The file was removedtests/hwloc/linux/16em64t-4s2c2t-offlines.xml.source
The file was addedtests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.test
The file was removedtests/hwloc/linux/8em64t-2s2ca2c-buggynuma.output
The file was removedtests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml.source
The file was removedtests/hwloc/linux/fakeheteromemtiers.output
The file was addedtests/hwloc/linux/fakeheteromemtiers.console
The file was addedtests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.console
The file was removedtests/hwloc/linux/96em64t-4n4d3ca2co.tar.bz2
The file was addedtests/hwloc/linux/fakeheterocpunuma.xml
The file was addedtests/hwloc/linux/2i386-2c-nohugepage.xml
The file was addedtests/hwloc/linux/40intel64-2g2n4c+pcilocality.xml
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets.xml.options
The file was addedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.console
The file was removedtests/hwloc/linux/40intel64-2g2n4c+pci.env
The file was addedtests/hwloc/linux/48amd64-4pa2n6c-sparse.tar.bz2
The file was addedtests/hwloc/linux/64fake-4n2s2ca2c2t.console
The file was removedtests/hwloc/linux/8ia64-2s2c2t.output
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets_noadmin.source
The file was addedtests/hwloc/linux/16em64t-4s2c2t-offlines.console
The file was removedtests/hwloc/linux/2ps3-2t.output
The file was removedtests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.output
The file was removedtests/hwloc/linux/32em64t-2n8c+1mic.tar.bz2
The file was removedtests/hwloc/linux/40intel64-2g2n4c+pci.tar.bz2
The file was removedtests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.output
The file was addedtests/hwloc/linux/16em64t-4s2c2t-nocaches.test
The file was removedtests/hwloc/linux/2i386-2t-hugepagesizecount.xml.source
The file was removedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.env
The file was removedtests/hwloc/linux/32em64t-2n8c+1mic.output
The file was removedtests/hwloc/linux/16em64t-4s2c2t_merge.source
The file was removedtests/hwloc/linux/16em64t-4s2c2t_ncaches.source
The file was removedtests/hwloc/linux/offline-cpu0-node0.output
The file was addedtests/hwloc/linux/8ia64-2n2s2c.console
The file was addedtests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml
The file was addedtests/hwloc/linux/96em64t-4no4pa3ca2co.test
The file was removedtests/hwloc/linux/16em64t-4s2c2t_ncaches.output
The file was addedtests/hwloc/linux/64intel64-fakeKNL-A2A-cache.console
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified tests/hwloc/linux/test-topology.sh.in (diff)
The file was addedtests/hwloc/linux/2pa-pcidomain32bits.console
The file was addedtests/hwloc/linux/32intel64-2p8co2t+8ve.console
The file was addedtests/hwloc/linux/8em64t-2s2ca2c-buggynuma.console
The file was addedtests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.xml
The file was addedtests/hwloc/linux/8ia64-2s2c2t.test
The file was addedtests/hwloc/linux/256ia64-64n2s2c.console
The file was removedtests/hwloc/linux/64fake-4n2s2ca2c2t.output
The file was addedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder.console
The file was addedtests/hwloc/linux/40intel64-2g2n4c+pcilocality.tar.bz2
The file was addedtests/hwloc/linux/16ia64-8n2s.test
The file was addedtests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.tar.bz2
The file was removedtests/hwloc/linux/40intel64-2g2n4c+pci.options
The file was addedtests/hwloc/linux/64amd64-4s2n4ca2co.console
The file was addedtests/hwloc/linux/2pa-pcidomain32bits.test
The file was addedtests/hwloc/linux/16em64t-4s2c2t-nocaches.console
The file was addedtests/hwloc/linux/128arm-2pa2n8cluster4co.test
The file was addedtests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.console
The file was removedtests/hwloc/linux/32em64t-2n8c+1mic.options
The file was removedtests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml.output
The file was addedtests/hwloc/linux/64intel64-fakeKNL-A2A-cache.test
The file was addedtests/hwloc/linux/96em64t-4no4pa3ca2co.tar.bz2
The file was removedtests/hwloc/linux/16em64t-4s2c2t.xml.source
The file was removedtests/hwloc/linux/2i386-2c-nohugepage.xml.source
The file was removedtests/hwloc/linux/40intel64-4n10c+pci-conflicts.env
The file was removedtests/hwloc/linux/4fake-4gr1nu1pu.output
The file was addedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder.test
The file was addedtests/hwloc/linux/20s390-2g6s4c.test
The file was addedtests/hwloc/linux/2i386-2t-hugepagesizecount.xml
The file was addedtests/hwloc/linux/nvidiagpunumanodes.console
The file was removedtests/hwloc/linux/16em64t-4s2c2t-offlines.output
The file was addedtests/hwloc/linux/fakeheterocpunuma.test
The file was removedtests/hwloc/linux/2i386-2c-nohugepage.xml.options
The file was addedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.test
The file was addedtests/hwloc/linux/nvidiagpunumanodes-kept.test
The file was removedtests/hwloc/linux/nvidiagpunumanodes.kept.env
The file was addedtests/hwloc/linux/16em64t-4s2c2t-offlines-xml.xml
The file was removedtests/hwloc/linux/96em64t-4n4d3ca2co.output
The file was removedtests/hwloc/linux/48amd64-4d2n6c-sparse.output
The file was removedtests/hwloc/linux/64intel64-fakeKNL-A2A-cache.output
The file was removedtests/hwloc/linux/16em64t-4s2c2t-offlines.xml.output
The file was addedtests/hwloc/linux/256ppc-8n8s4t.test
The file was removedtests/hwloc/linux/2i386-2t-hugepagesizecount.xml.output
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
The file was addedtests/hwloc/linux/16amd64-8n2c-cpusets-disallowed.console
The file was removedtests/hwloc/linux/2pa-pcidomain32bits.output
The file was removedtests/hwloc/linux/128arm-2pa2n8cluster4co.output
The file was removedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.output
The file was addedtests/hwloc/linux/8em64t-2s4c-asymcaches.tar.bz2
The file was addedtests/hwloc/linux/16em64t-4s2c2t-merge.console
The file was addedtests/hwloc/linux/2ps3-2t.test
The file was addedtests/hwloc/linux/16amd64-8n2c.console
The file was removedtests/hwloc/linux/16ia64-8n2s.output
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets.output
The file was removedtests/hwloc/linux/nvidiagpunumanodes.kept.source
The file was addedtests/hwloc/linux/128ia64-17n4s2c.console
The file was addedtests/hwloc/linux/16em64t-4s2c2t-offlines.test
The file was addedtests/hwloc/linux/16amd64-8n2c-cpusets-xml.xml
The file was removedtests/hwloc/linux/16em64t-4s2c2t_merge.output
The file was addedtests/hwloc/linux/8em64t-2s2ca2c.console
The file was addedtests/hwloc/linux/16amd64-8n2c-cpusets-disallowed.test
The file was removedtests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.output
The file was removedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.options
The file was addedtests/hwloc/linux/4fake-4gr1nu1pu.console
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was removedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.output
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets.xml.source
The file was removedtests/hwloc/linux/8em64t-2s4c-heterogeneous.tar.bz2
The file was removedtests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.source
The file was removedtests/hwloc/linux/32intel64-2p8co2t+8ve.output
The file was removedtests/hwloc/linux/2arm-2c.output
The file was removedtests/hwloc/linux/40intel64-2g2n4c+pci.output
The file was addedtests/hwloc/linux/16em64t-4s2c2t-merge.test
The file was removedtests/hwloc/linux/8ia64-2n2s2c.output
The file was addedtests/hwloc/linux/offline-cpu0-node0.test
The file was removedtests/hwloc/linux/nvidiagpunumanodes.kept.output
The file was addedtests/hwloc/linux/32amd64-4s2n4c-cgroup2.test
The file was removedtests/hwloc/linux/20s390-2g6s4c.output
The file was removedtests/hwloc/linux/128ia64-17n4s2c.output
The file was removedtests/hwloc/linux/2i386-2c-nohugepage.xml.output
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets_noadmin.options
The file was removedtests/hwloc/linux/16amd64-8n2c-cpusets.xml.output
The file was addedtests/hwloc/linux/16em64t-4s2c2t.console
The file was addedtests/hwloc/linux/2i386-2t-hugepagesizecount.test
The file was removedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.output
The file was addedtests/hwloc/linux/2arm-2c.test
The file was addedtests/hwloc/linux/16amd64-8n2c-cpusets-xml.test
The file was addedtests/hwloc/linux/2ps3-2t.console
The file was removedtests/hwloc/linux/fakeheterocpunuma.output
The file was addedtests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.test
The file was removedtests/hwloc/linux/8em64t-2s4c-heterogeneous.output
The file was removedtests/hwloc/linux/nvidiagpunumanodes.output
The file was addedtests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.console
The file was addedtests/hwloc/linux/fakeheteromemtiers.test
The file was addedtests/hwloc/linux/16amd64-8n2c-cpusets.console
The file was addedtests/hwloc/linux/64fake-4n2s2ca2c2t.test
The file was removedtests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.options
The file was removedtests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml.options
The file was removedtests/hwloc/linux/16em64t-4s2c2t.output
The file was addedtests/hwloc/linux/40intel64-4n10c+pci-conflicts.test
The file was addedtests/hwloc/linux/16em64t-4s2c2t-offlines-xml.test
The file was addedtests/hwloc/linux/16amd64-8n2c.test
The file was addedtests/hwloc/linux/16em64t-4s2c2t-xml.xml
The file was addedtests/hwloc/linux/48amd64-4pa2n6c-sparse.console
The file was addedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.console
The file was addedtests/hwloc/linux/2arm-2c.console
The file was removedtests/hwloc/linux/16amd64-8n2c.output
The file was addedtests/hwloc/linux/8em64t-2s4c-asymcaches.test
The file was removedtests/hwloc/linux/256ia64-64n2s2c.output
The file was addedtests/hwloc/linux/64amd64-4s2n4ca2co.test
The file was addedtests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.test
The file was addedtests/hwloc/linux/256ppc-8n8s4t.console
The file was addedtests/hwloc/linux/4fake-4gr1nu1pu.test
The file was addedtests/hwloc/linux/16em64t-4s2c2t-xml.test
The file was addedtests/hwloc/linux/40intel64-4n10c+pci-conflicts.console
Commit a34aa2003ee133fe7d7b0c9ba70ced3d5db34992 by Brice.Goglin
tests/linux/allowed: rewrite the framework with .test files

Replace the old .synthetic + .fsroot + .options + .env optional files with
a single mandatory .test file that contains everything.

foo.test should contain:
- synthetic: synthetic topology description
- fsroot: tarball filename for applying local restrictions (must be in same directory as foo.test)
- target: expected output filename (must be in same directory as foo.test, ends with either .console or .xml)
- options: lstopo options, if any
- env: environment variable lines to be sourced, if any

By the way, remove gp_index/id just like we do in other tests.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/linux/allowed/test1.output
The file was modified tests/hwloc/linux/allowed/Makefile.am (diff)
The file was modified tests/hwloc/linux/allowed/test-topology.sh.in (diff)
The file was addedtests/hwloc/linux/allowed/test1.test
The file was removedtests/hwloc/linux/allowed/test1.options
The file was removedtests/hwloc/linux/allowed/test1.synthetic
The file was addedtests/hwloc/linux/allowed/test1.xml
Commit 3f53f9cd8946d22918170250490b1dc05af146e3 by Brice.Goglin
tests/x86+linux: rewrite the framework with .test files

Replace the old .source + .options + .env optional files with
a single mandatory .test file that contains everything.

foo.test should contain:
- source: tarball filename (must be in same directory as foo.test)
- target: expected output filename (must be in same directory as foo.test, ends with either .console or .xml)
- options: lstopo options, if any
- env: environment variable lines to be sourced, if any

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/x86+linux/64amd64-4p2n4ca2co.topoextnuma.env
The file was removedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.output
The file was removedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.env
The file was removedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.options
The file was addedtests/hwloc/x86+linux/64amd64-4p2n4ca2co+topoextnuma.test
The file was removedtests/hwloc/x86+linux/64amd64-4p2n4ca2co.topoextnuma.output
The file was removedtests/hwloc/x86+linux/64amd64-4p2n4ca2co.output
The file was modified tests/hwloc/x86+linux/Makefile.am (diff)
The file was modified tests/hwloc/x86+linux/test-topology.sh.in (diff)
The file was addedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.console
The file was addedtests/hwloc/x86+linux/64amd64-4p2n4ca2co.test
The file was addedtests/hwloc/x86+linux/5intel64-hybrid-lakefield.test
The file was addedtests/hwloc/x86+linux/64amd64-4p2n4ca2co.xml
The file was removedtests/hwloc/x86+linux/64amd64-4p2n4ca2co.topoextnuma.source
Commit 1216179792ed636de28b2b791e1f58c36ad05ed9 by Brice.Goglin
tests/x86: rewrite the framework with .test files

Replace the old .options + .env optional files with
a single mandatory .test file that contains everything.

foo.test should contain:
- source: tarball filename (must be in same directory as foo.test)
- target: expected output filename (must be in same directory as foo.test, ends with either .console or .xml)
- options: lstopo options, if any
- env: environment variable lines to be sourced, if any

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/x86/AMD-K8-SantaRosa-2xOpteron-2218.output
The file was removedtests/hwloc/x86/Intel-IvyBridge-12xXeon-E5-4620v2.output
The file was addedtests/hwloc/x86/Intel-Nehalem-2xXeon-X5550.xml
The file was removedtests/hwloc/x86/AMD-15h-Bulldozer-4xOpteron-6272.output
The file was removedtests/hwloc/x86/AMD-K10-MagnyCours-2xOpteron-6164HE.output
The file was addedtests/hwloc/x86/Intel-SandyBridge-2xXeon-E5-2650.test
The file was addedtests/hwloc/x86/Intel-Skylake-2xXeon6140.xml
The file was modified tests/hwloc/x86/test-topology.sh.in (diff)
The file was addedtests/hwloc/x86/Intel-KnightsCorner-XeonPhi-SE10P.test
The file was addedtests/hwloc/x86/Intel-Penryn-4xXeon-X7460.xml
The file was addedtests/hwloc/x86/AMD-K8-SantaRosa-2xOpteron-2218.test
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
The file was addedtests/hwloc/x86/Intel-KnightsCorner-XeonPhi-SE10P.xml
The file was removedtests/hwloc/x86/Intel-CascadeLake-2xXeon6230.output
The file was removedtests/hwloc/x86/Intel-Skylake-2xXeon6140.output
The file was removedtests/hwloc/x86/Intel-Broadwell-2xXeon-E5-2650Lv4.output
The file was addedtests/hwloc/x86/Intel-Broadwell-2xXeon-E5-2650Lv4.xml
The file was addedtests/hwloc/x86/AMD-K8-SledgeHammer-2xOpteron-250.test
The file was removedtests/hwloc/x86/Intel-Nehalem-2xXeon-X5550.output
The file was addedtests/hwloc/x86/Intel-CascadeLake-2xXeon6230.xml
The file was addedtests/hwloc/x86/AMD-K10-MagnyCours-2xOpteron-6164HE.xml
The file was addedtests/hwloc/x86/AMD-K10-MagnyCours-2xOpteron-6164HE.test
The file was addedtests/hwloc/x86/Hygon-Dhyana-32cores.test
The file was addedtests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.xml
The file was removedtests/hwloc/x86/Intel-Westmere-2xXeon-X5650.output
The file was addedtests/hwloc/x86/AMD-15h-Piledriver-4xOpteron-6348.xml
The file was removedtests/hwloc/x86/Intel-KnightsCorner-XeonPhi-SE10P.output
The file was removedtests/hwloc/x86/AMD-17h-Zen-2xEpyc-7451.output
The file was addedtests/hwloc/x86/Intel-CPUID.1F-Qemu-2p3d3c2t.test
The file was removedtests/hwloc/x86/Hygon-Dhyana-32cores.output
The file was addedtests/hwloc/x86/AMD-K8-SantaRosa-2xOpteron-2218.xml
The file was addedtests/hwloc/x86/Zhaoxin-Shanghai-KaiSheng-ZXC+-FC1081.test
The file was addedtests/hwloc/x86/Intel-IvyBridge-12xXeon-E5-4620v2.xml
The file was removedtests/hwloc/x86/Intel-Penryn-4xXeon-X7460.output
The file was removedtests/hwloc/x86/AMD-K10-Istanbul-8xOpteron-8439SE.output
The file was addedtests/hwloc/x86/Intel-CascadeLake-2xXeon6230.test
The file was removedtests/hwloc/x86/Intel-CPUID.1F-Qemu-2p3d3c2t.output
The file was addedtests/hwloc/x86/Intel-Haswell-2xXeon-E5-2680v3.test
The file was addedtests/hwloc/x86/Intel-KnightsLanding-XeonPhi-7210.xml
The file was removedtests/hwloc/x86/Intel-SandyBridge-2xXeon-E5-2650.output
The file was addedtests/hwloc/x86/Intel-Skylake-2xXeon6140.test
The file was addedtests/hwloc/x86/AMD-17h-Zen-2xEpyc-7451.test
The file was addedtests/hwloc/x86/Zhaoxin-Shanghai-KaiSheng-ZXC+-FC1081.xml
The file was removedtests/hwloc/x86/Zhaoxin-CentaurHauls-ZXD-4600.output
The file was removedtests/hwloc/x86/AMD-15h-Piledriver-4xOpteron-6348.output
The file was addedtests/hwloc/x86/AMD-K8-SledgeHammer-2xOpteron-250.xml
The file was addedtests/hwloc/x86/AMD-15h-Piledriver-4xOpteron-6348.test
The file was addedtests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.test
The file was addedtests/hwloc/x86/Intel-IvyBridge-12xXeon-E5-4620v2.test
The file was removedtests/hwloc/x86/Zhaoxin-Shanghai-KaiSheng-ZXC+-FC1081.output
The file was removedtests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.output
The file was addedtests/hwloc/x86/Intel-CPUID.1A-1p2co2t.test
The file was modified tests/hwloc/x86/Makefile.am (diff)
The file was removedtests/hwloc/x86/AMD-K8-SledgeHammer-2xOpteron-250.output
The file was removedtests/hwloc/x86/Intel-Haswell-2xXeon-E5-2680v3.output
The file was addedtests/hwloc/x86/Intel-Westmere-2xXeon-X5650.xml
The file was addedtests/hwloc/x86/AMD-15h-Bulldozer-4xOpteron-6272.xml
The file was addedtests/hwloc/x86/Intel-Broadwell-2xXeon-E5-2650Lv4.test
The file was addedtests/hwloc/x86/Intel-KnightsLanding-XeonPhi-7210.test
The file was addedtests/hwloc/x86/AMD-K10-Istanbul-8xOpteron-8439SE.test
The file was removedtests/hwloc/x86/Intel-CPUID.1A-1p2co2t.output
The file was addedtests/hwloc/x86/Intel-Westmere-2xXeon-X5650.test
The file was addedtests/hwloc/x86/AMD-15h-Bulldozer-4xOpteron-6272.test
The file was addedtests/hwloc/x86/Intel-Core-2xXeon-E5345.xml
The file was addedtests/hwloc/x86/AMD-K10-Istanbul-8xOpteron-8439SE.xml
The file was addedtests/hwloc/x86/Intel-Haswell-2xXeon-E5-2680v3.xml
The file was addedtests/hwloc/x86/Intel-Penryn-4xXeon-X7460.test
The file was addedtests/hwloc/x86/Zhaoxin-CentaurHauls-ZXD-4600.xml
The file was addedtests/hwloc/x86/Intel-SandyBridge-2xXeon-E5-2650.xml
The file was removedtests/hwloc/x86/Intel-Core-2xXeon-E5345.output
The file was removedtests/hwloc/x86/Intel-KnightsLanding-XeonPhi-7210.output
The file was addedtests/hwloc/x86/Hygon-Dhyana-32cores.xml
The file was addedtests/hwloc/x86/Intel-Nehalem-2xXeon-X5550.test
The file was addedtests/hwloc/x86/Intel-CPUID.1A-1p2co2t.xml
The file was addedtests/hwloc/x86/AMD-17h-Zen-2xEpyc-7451.xml
The file was addedtests/hwloc/x86/Intel-CPUID.1F-Qemu-2p3d3c2t.xml
The file was addedtests/hwloc/x86/Intel-Core-2xXeon-E5345.test
The file was addedtests/hwloc/x86/Zhaoxin-CentaurHauls-ZXD-4600.test
Commit 01fee40216706d41b4487d76655f554bb217e6fd by Brice.Goglin
nvml: fix nvlink 3/4 bandwidth in our distances matrix

50GB/s is the v3/v4 bidrectional bandwidth. unidirectional is still 25GB/s per link as in v2.

Closes #574.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-nvml.c (diff)
Commit 22a193101bbeff92f6371d71eca6ad87d3b1a7d9 by Brice.Goglin
restrict: fix when doing nothing except because of REMOVE_CPULESS

If we restrict to the whole topology cpuset, we usually do nothing
... except if REMOVE_CPULESS is passed: some NUMA nodes with
empty cpusets will get removed.
We had a buggy assertion because of this, raised in #575.

Moreover, fix the way we mark the object has "modified". With
the current code, the parent wouldn't be considered modified,
hence we wouldn't recurse in children to actually remove those
NUMA nodes. And that caused the nodeset/complete_nodeset to
remain untouched while allowed_nodeset was reduced in the caller.

Also fix the corresponding case when restricting by nodeset
and removing memory-less CPUs.

Thanks to Mark Grondona for the report.

Closes #574

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit f8000a57a9656432b987e5b3653e06c9da3a7b50 by Brice.Goglin
tests/restrict: don't make the topology a global variable

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_topology_restrict.c (diff)
Commit f2724bbf4f068ed45edd40ac1f3f4f981fbd2693 by Brice.Goglin
tests/restrict: add some redundant restrict()

Apply the same restrict twice, or once with and once without REMOVE_CPULESS.

Regression tests for #575

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_topology_restrict.c (diff)
Commit c54e0292f3c2c110c5aa9841e737a2b98ec683c8 by Brice.Goglin
tests/{linux,xml,x86,x86+linux,linux/allowed}: allow to run tests in an optional extra subdirectory

If extra/extra-tests.sh exists, call it with our TEST_LOG_COMPILER as parameter.

Useful for additional testing that we can't or don't want to put in the repo
(confidential, huge files, ...).
Mostly useful for x86 and linux but supporting others is easy.

Contrary to #191, this does not touch automake stuff at all,
everything is managed by the outside subdirectory script
(which basically iterates over tests and pass them to out TEST_LOG_COMPILER).

Closes #191

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/allowed/Makefile.am (diff)
The file was modified tests/hwloc/x86+linux/Makefile.am (diff)
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was modified tests/hwloc/x86/Makefile.am (diff)
Commit 06373c0f9c0bc538ee0a0e77b17d45a4f25a4e06 by Brice.Goglin
NEWS: bring 2.9.1rc1 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 050f532f1b61cb313102b2de2cfeabc567d5311e by Brice.Goglin
synthetic/export/memory: replace a buggy assertion with some warnings

We currently cannot export complex memory hierarchies with memory-side caches,
caches are ignored, as well as some non-first NUMA nods below them.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
Commit 1cf512a403d865ddc78eb917c58803890a1534c3 by Brice.Goglin
synthetic: typo in error message

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
Commit 8864ce07deee6c74eae51a998ed8073609cde3fb by Brice.Goglin
utils/archivemount: mount read-only

Otherwise the output may end up inside the tarball when using relative path
(to be fixed).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit 9e90d68bebe93c8e6ab7e633cd561868e9d1038f by Brice.Goglin
utils: don't require archivemount at configure-time

Just try to use it at runtime or error out.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
The file was modified config/hwloc_internal.m4 (diff)
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
Commit af43952957b0e686a6e31187e61b5dd43db37796 by Brice.Goglin
utils/archivemount: disable on !linux

At least, the code doesn't build on Windows. And the tool will likely only
be used on Linux for loading Linux sysfs or cpuid tarballs.

Fixes commit 9e90d68bebe93c8e6ab7e633cd561868e9d1038f

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit 577b327ec57cf1980aac113b58f686d505fcc637 by Brice.Goglin
core: fix group->total_memory after hwloc_topology_insert_group_object()

It was kept as 0.

The issue was never detected because our tests use
synthetic topologies with empty nodes (changed in next commit).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit c160398cd2cf74167ea6f8e0c432ffc98fb64fd5 by Brice.Goglin
synthetic: factorize/fix default attributes

NUMA nodes declared as attached (between []) didn't have the
default size (1GB), they remained empty.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_synthetic.c (diff)
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
Commit 02eaabce08a07e8fd3637d0198bd15aa833d7e17 by Brice.Goglin
core: fix the updating of total_memory in hwloc_topology_insert_group_object()

Objects might get merged, update the remaining one, not the original one.

If merged with another group, there's no need to save total_memory during the merge
because we'll recompute it in hwloc_topology_insert_group_object() anyway.

Fixes 577b327ec57cf1980aac113b58f686d505fcc637

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 659f102d3396cd33ea2f63b0de53278cf35a8ac2 by Brice.Goglin
synthetic/import: ignore unknown attributes instead of failing

This avoids breaking backward compat when adding attributes in future releases.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
Commit 880a25afc461efb0345039aed1a98ed18302d8cc by Brice.Goglin
synthetic/export/v1: ignore memcaches instead of failing to export

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
Commit 24e2c76f7af718441f5e6bcd63039c300edb215b by Brice.Goglin
synthetic/import: allow memory-side caches

It's just a single level, specified as an attribute to NUMAnodes
  pack:2 [numa(size=16GiB memorysidecache=1GiB)] pu:2

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
Commit 8db8fd3aae0e2a25af4b90e6cda809e1ebf627fc by Brice.Goglin
synthetic/export: export memory-side caches

Accumulate all levels in a single MS$ attribute of the NUMA node.

Ignore memory side caches when exporting to v1 since the object
doesn't exist there.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-synthetic.c (diff)
Commit 03af5bc454d8f60e66826de7d8f67a7a61a91333 by bgoglin
Add security policy

Signed-off-by: Pedro Kaj Kjellerup Nacht <pnacht@google.com>
The file was addedSECURITY.md
Commit cef7d4e2e0e5a52f33d88afa6f3df6991fb60fa3 by bgoglin
hwloc_obj_add_other_obj_sets: handle bitmap realloc errors

And document them in the API.

Refs #578.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc.h (diff)
Commit 4519fabec95ee90a0c84b5d7db3355f237624ab1 by bgoglin
hwloc/glibc-sched.h: handle bitmap realloc errors

And document them in the API, as well as the other function that cannot fail.

Refs #578.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/glibc-sched.h (diff)
Commit 5aa875e603a42670a98c9463759d994ed1da0fbf by bgoglin
hwloc/linux-libnuma.h: handle bitmap realloc errors

And document them in the API, as well as the other functions that can or cannot fail.

Refs #578.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/linux-libnuma.h (diff)
Commit 212aa470b3d0c71e6594d240338e318d083b1fc1 by bgoglin
hwloc.h: many small improvements about return values and errors

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 57ed73a5ba33d6ceb7fdd4137b267018197a617c by bgoglin
hwloc/shmem.h: add/improve doc about return values

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/shmem.h (diff)
Commit 8c49593311facea68b279bbe45e5307886755d1d by bgoglin
IO helpers: clarify that some IO helpers return 0 on success and -1 on error

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/opencl.h (diff)
The file was modified include/hwloc/rsmi.h (diff)
The file was modified include/hwloc/openfabrics-verbs.h (diff)
The file was modified include/hwloc/levelzero.h (diff)
The file was modified include/hwloc/cudart.h (diff)
The file was modified include/hwloc/gl.h (diff)
The file was modified include/hwloc/cuda.h (diff)
The file was modified include/hwloc/nvml.h (diff)
Commit 87c7992ee94499f3aaa35d3709972970de62e1be by bgoglin
hwloc/linux.h: document 0 on success and -1 on error

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/linux.h (diff)
Commit 3dbc02d3b8d8819604f086a50101bf9434ad8989 by bgoglin
hwloc/memattrs.h: improve doc about return values

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/memattrs.h (diff)
Commit c46a465e0955a5ddb26a1e9cd23edfbf6e42db35 by bgoglin
hwloc/export.h: improve doc about return values

Refs #578.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/export.h (diff)
Commit dbcbce3e3c1dd0e47edf589acba811f55df2f6d0 by bgoglin
hwloc/diff.h: improve the documentation about return values

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/diff.h (diff)
Commit cc0f4d1f7e55079f649fb53e08f65377f6ae30d1 by bgoglin
hwloc/distances.h: add/improve doc about return values

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/distances.h (diff)
Commit de063bd04b16bffab365a119529457ac264c973c by bgoglin
hwloc/helpers.h: document return values of many helpers

Refs #578.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/helper.h (diff)
Commit f28bcf2ac734b54c91478792fe30762d573a91e1 by Brice.Goglin
hwloc.h: rewrite the doc of hwloc_get_type_depth()

Move things in \return to follow changes for #578.

Similar functions aren't updated because there are
too many thing to duplicate.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 469b39b46ebb8eb8544f77245fca232f23e130d8 by Brice.Goglin
hwloc.h: doc return values for two remaining functions

Refs #578.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 5142093175e880d7c78b72b3a54f2f62182e547d by Brice.Goglin
hwloc/bitmap.h: improve doc about return values

Refs #578

And fix the documentation of hwloc_bitmap_last_unset().

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/bitmap.h (diff)
Commit 82ee51fe7bf908dc34515471ae1100fee4b7040a by Brice.Goglin
API: update one very old comment about v1 multi-node topology

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 1f6f719f9cf32202979961016afdc9bfc9fe563f by Brice.Goglin
doxy: remove broken link to XML v1 export flag

The flag was removed in 945c1dde813da1a3b3b78ce2899db6acd347bf0c.
The v1->v2 upgrade guide isn't removed yet, just keep the text but
remove the doxygen crossref. The guide might be replace with v2->v3
later, we'll see.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit b813cf04e179d1ba3da51b1dda6596bea631e9a1 by Brice.Goglin
hwloc/helpers.h: fix a type

introduced in de063bd04b

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/helper.h (diff)
Commit dd304b7f32a5de48263958ba4b9c959fb96175bf by Brice.Goglin
hwloc.h: add an error reporting section describing the common conventions

Refs #578

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/bitmap.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified include/hwloc.h (diff)
Commit 9e908515acff7e36597169b1252384a51d1441d7 by bgoglin
utils/archivemount: propagate error when visiting subdirs

Signed-off-by: Clément Foyer <clement.foyer@univ-reims.fr>
The file was modified utils/hwloc/misc.h (diff)
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 modified hwloc/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 modified hwloc/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 modified hwloc/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 modified utils/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 modified hwloc/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 modified hwloc/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 modified hwloc/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 modified include/private/private.h (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified doc/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 modified tests/hwloc/x86/Makefile.am (diff)
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
Commit 21787a3027cbb092d748b5b40e1ef04cb334881c by Brice.Goglin
linux: detect fake numa in the Linux kernel cmdline

fake numa is a development hack for changing the NUMA layout
but some of its options (uniform splitting) are going to be used in production,
so detect it (without using it yet).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 5fa4739e17481a9088f8bd9772234c32526aa31a by Brice.Goglin
linux/numa: cleanup HWLOC_DEBUG_ALLOW_OVERLAPPING_NODE_CPUSETS

2 means allow without warning

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 43105769f55d88b64e1aa580573ed732395616cb by Brice.Goglin
linux/numa: disable memory attributes and memory-side cache in fake numa

HMAT information isn't updated when fake numa is enabled,
so ignore it for now.

In the uniform splitting fake numa case, we could update HMAT info
since node #K is replaced with nodes #KN-#(K+1)N-1.
In theory, the Linux kernel should fix HMAT info to match the
fakenuma config, but it looks like it's not going to happen soon,
we'll see later if we need/want to fix it in hwloc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 45ac2a28107a0f717f7ac726ac6c376beb8b660b by Brice.Goglin
lstopo/draw: cleanup horiz/vert layout management

Add a ratio for the memory:above box but it's not used yet.
When rectangular layout will be allowed there, it'll be very wide.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 1e89d4e1974af217db859a41838348acd1763517 by Brice.Goglin
lstopo/draw: make memory:above layout configurable and use rectangular by default

Useful for fake numa cases where we have 8 local nodes per socket.
They'll be stacked as 2 rows of 4 instead of 1 single row of 8.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 32117b9109ed0c4c905ec2e291f8e610870f3bb8 by bgoglin
Fix name scheme when building with --target

Building with --target may add an unexpected prefix to the binary names.
This commit uses the same mecanism to take this prefix in account.

Closes #560

Signed-off-by: Clément Foyer <clement.foyer@univ-reims.fr>
The file was modified utils/netloc/infiniband/Makefile.am (diff)
The file was modified utils/hwloc/Makefile.am (diff)
The file was modified utils/lstopo/Makefile.am (diff)
Commit 3caffb494672ca4734a867f02269225be4b1bc2c by Brice.Goglin
linux/dax: cleanups and comments in annotate_dax_parent()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit aa26f297b5240425a970d21ecbb3a2a70fca0b95 by Brice.Goglin
linux/dax: add CXLDevice info attribute(s) in DAX and NUMA nodes

There can be multiple entries if the region is interleaved.
Might be better to merge into a single info attr? We'll see.

This uses "memregion" identifiers (regionX) to match dax devices
and CXL devices.

The corresponding Linux code (CXL volatile regions, etc) is
planned for Linux 6.3.

Refs #554

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 806fa7be16f3db32420a830d63ee7c8ec7f7b66f by Brice.Goglin
xml/import: allow (and ignore for now) info children in more xml tags

This commit is mostly for backport in v2.x since it will simplify
xml compatibility between 3.0 export and 2.x import.

Allow info tags inside all tags where it could be useful one day
(topology, page_type, distances2*, memattr). We already had them
in object and cpukind.

It's not clear yet whether we'll use info in more objects in v3
(distances and topology have been proposed but not decided yet),
but ignoring them is easy to make (current) v3 XML importable in v2.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit a6c07296fe86002e436ddb13cdbcb0ae22485813 by Brice.Goglin
xml/import: fix a leak when ignoring distances infos

Fixes 806fa7be16f3db32420a830d63ee7c8ec7f7b66f

CID#1530137

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit cf05f8fd0471bda90d607fa299b6ad071fe155d0 by Brice.Goglin
doxy: non-sysfs Linux support was removed

Update Linux support.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit fa7b02feb44719c5f709d1b3311ae905e54a1795 by Brice.Goglin
doxygen: update the config to 1.9.4

The only new value that is changed from default is NUM_PROC_THREADS=0
so that it uses all available cores instead of only one
(we should ask doxygen devs to use hwloc to do so).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/doxygen.cfg (diff)
Commit c6d19c7cc21f3b9ac88dbeaf9abf378758367dd0 by Brice.Goglin
doxy: ref the website language bindings instead of duplicating it here

It was totally outdated.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit dfd241c2574efc3aba9e2ed716a1470c26b65839 by bgoglin
Fix typos in hwloc README and netloc Doxygen.

Signed-off-by: Christoph Niethammer <niethammer@hlrs.de>
The file was modified README (diff)
The file was modified doc/netloc.doxy (diff)
Commit 8121c81c4b399f2ff8a090677811f84f604f36d9 by Brice.Goglin
doxy: update doxy from README

Update main.doxy from README change in dfd241c2574efc3aba9e2ed716a1470c26b65839

Refs #355

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/main.doxy (diff)
Commit b2238c8e092b64678aefcb11e73231226d6a165f by Brice.Goglin
netloc_ib_extract_dats.c: closedir() the right dir on error

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/netloc/infiniband/netloc_ib_extract_dats.c (diff)
Commit a6763631dca5973eb5ea5fc8b17ad4127cb48dcf by bgoglin
utils/archivemount: Restore working directory

  * After loading the topology in the directory mounted with
    archivemount, we restore the original working directory.
  * Add hwloc_utils_disable_input_format() to free the file descriptor.

Solves #577

Signed-off-by: Clément Foyer <clement.foyer@univ-reims.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-distrib.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit 927fe558960207a8e5fae47ea556497c914e4e8f by Brice.Goglin
netloc: remove

Doxy files still need some updates since main.doxy only includes hwloc.doxy now.

The hwloc/ source directory isn't renamed to src/ (as in 1.x), not strictly required.
tests/hwloc/ doesn't go back to tests either, could be nice since there's nothing else in tests/.
utils/ still contains hwloc/ and lstopo/, we're fine there.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/netloc/data/plafrim2.txz
The file was removednetloc/edge.c
The file was removedutils/netloc/infiniband/netloc_ib_gather_raw.in
The file was removednetlocscotch.pc.in
The file was removeddoc/images/netloc_design.png
The file was modified VERSION (diff)
The file was modified include/Makefile.am (diff)
The file was removednetloc/support.c
The file was removeddoc/netloc.doxy
The file was removedutils/netloc/mpi/Makefile.am
The file was modified NEWS (diff)
The file was removeddoc/images/netloc_draw.png
The file was removedtests/netloc/tests.sh.in
The file was removedutils/netloc/infiniband/netloc_ib_extract_dats.c
The file was modified utils/Makefile.am (diff)
The file was removedtests/netloc/data/tests_draw.txt
The file was removedutils/netloc/draw/Makefile.am
The file was removedutils/netloc/draw/netloc_draw_to_json.c
The file was removedinclude/netloc.h
The file was removednetloc/Makefile.am
The file was modified contrib/android/include/private/autogen/config.h (diff)
The file was modified doc/doxygen-config.cfg.in (diff)
The file was removedutils/netloc/infiniband/Makefile.am
The file was removednetloc/architecture.c
The file was removednetloc/mpicomm.c
The file was removedutils/netloc/infiniband/README
The file was modified doc/main.doxy (diff)
The file was removedutils/netloc/draw/visdist/vis.min.css
The file was removedutils/netloc/scotch/Makefile.am
The file was modified config/hwloc.m4 (diff)
The file was removedinclude/netloc/uthash.h
The file was removedinclude/netlocscotch.h
The file was removedtests/netloc/data/scotch.txz
The file was removednetloc/topology.c
The file was removedinclude/private/netloc.h
The file was removedinclude/netloc/utarray.h
The file was modified contrib/ci.inria.fr/job-3-sonarscanner.sh (diff)
The file was removednetloc/physical_link.c
The file was modified doc/hwloc.doxy (diff)
The file was removedtests/netloc/data/plafrim.txz
The file was removedtests/netloc/data/tests_extract.txt
The file was removedutils/netloc/mpi/netloc_mpi_rank_file.c
The file was removedutils/netloc/mpi/netloc_rank_order.c
The file was modified config/hwloc_internal.m4 (diff)
The file was removednetloc.pc.in
The file was modified configure.ac (diff)
The file was removedutils/netloc/scotch/netlocscotch_get_arch.c
The file was removedconfig/netloc.m4
The file was removednetloc/hwloc.c
The file was removedtests/netloc/data/tests_mpiscotch.txt
The file was modified .gitignore (diff)
The file was removedutils/netloc/draw/visdist/vis.min.js
The file was modified README (diff)
The file was removedtests/netloc/data/avakas.txz
The file was removedutils/netloc/draw/netloc_draw.html
The file was modified Makefile.am (diff)
The file was removednetloc/scotch.c
The file was removeddoc/images/netloc_design.svg
The file was removedtests/netloc/data/tests_scotch.txt
The file was removedutils/netloc/mpi/netloc_mpi_find_hosts.c
The file was removedutils/netloc/draw/netloc_draw.js
The file was modified doc/Makefile.am (diff)
The file was removednetloc/node.c
The file was removednetloc/path.c
The file was removeddoc/README-netloc.infiniband
The file was modified contrib/update-my-copyright.pl (diff)
The file was modified tests/Makefile.am (diff)
The file was removedtests/netloc/Makefile.am
Commit a6629cd1347d0891fa1dff2a34481a3fe9532172 by Brice.Goglin
doxy: merge main.doxy back into hwloc.doxy

To followup netloc removal.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/Makefile.am (diff)
The file was removeddoc/main.doxy
The file was modified doc/doxygen-config.cfg.in (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified README (diff)
Commit 1508957fc7138e22c0d77c968739b1559eb7f08d by Brice.Goglin
README: update the build after netloc removal

Improve headers and footers.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/Makefile.am (diff)
The file was modified README (diff)
Commit 0b80dfd28273334f1faf91e0a3502d5282c0fe2d by Brice.Goglin
lstopo.1: xml support is always available

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/hwloc/hwloc-distrib.1in (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 079ac07ca45b7f11a0eb27f9dfe90a05439d46cc by Brice.Goglin
lstopo: allow output format/extension v2xml/v3xml

To enforce exporting to v2 XML or not.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/test-lstopo.sh.in (diff)
Commit 506c4ff4aa81e48ee4c81be683cc5296dd61bd4c by bgoglin
linux/cpukinds: use Intel PMU directories to detect Atom/Core cpusets on Intel hybrid

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit c2a9843629ade65b786139371bff9d43e104daab by bgoglin
gather-topology: gather Intel atom/core pmu "cpus" files

To detect cpukinds.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit 34ad3ef09d0668d743457a3591793e2be11fbadf by Brice.Goglin
doxy: typo

Introduced in a6629cd1347d0891fa1dff2a34481a3fe9532172

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 4f89de1f902d27ebf3844632d5a7a4412ba5e450 by Brice.Goglin
x86: enable CPUID 0x1f leaf (intel v2 topo enumeration) on Zhaoxin

Tested on KH-4000, we get package info there now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit a19854a77008a75f93410f88533124337fb3ad99 by Brice.Goglin
hwloc-calc.1: fix the formatting of --cpukinds

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 45fb910813a0eed3d173440f1e38e71457d03468 by Brice.Goglin
hwloc-calc: improve --cpukind parsing

Assume it's a number only if it starts with a digit.
Error-out otherwise, so that things like foo:bar instead of foo=bar are rejected.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 8e9134bdb79e1b0d4b2ba64640ebcce533c2997b by Brice.Goglin
hwloc-calc/bind.1: more info about --no-smt

We apply it at the end, hence some cases aren't easy to implement.
Give example combining multiple invocations of hwloc-calc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit b149d14b98a2359beb026ed741012aa78b53c6db by Brice.Goglin
hwloc-calc/bind.1: more info about --cpukind

calc applis --cpukind at the end, and bind doesn't support it.
Add some examples for searching/binding without a specific cpukind
by combining invocations of calc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit d01d5ffff5843704f618904ebe67e943e51e2b33 by Brice.Goglin
x86: fix/cleanup the breaking-out of the topology enumeration loops

Intel and AMD specify different conditions for breaking out of the
loop on CPUID 0xb/0x1f and 0xb/0x80000026 leaves respectively.
And Zhaoxin behaves slightly differently from Intel.
We cannot factorize the break condition as we did in commit
20c794500c810686b0c0099b1e099c7461ff9f6b, just respect the actual specs
depending on whether we are on AMD or not.

This fixes Dies on Zhaoxin KH-4000 CPUs (that 0x1f level was ignored
because it reports 0 in the number of threads in next level).
These dies aren't visible in any release yet since 0x1f wasn't enabled
on Zhaoxin (enabled in commit 4f89de1f902d27ebf3844632d5a7a4412ba5e450).

Refs #593

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
The file was modified hwloc/topology-x86.c (diff)
Commit cc2a17dd934407a7a99ba6bfde72832cf3762cd6 by Brice.Goglin
levelzero: typo in some error messages

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/levelzero.c (diff)
Commit 620a0088c661afdf5565b0218f7c656cbd1870bf by Brice.Goglin
fix prefix before error messages

"hwloc/...:" instead of a couple of "[hwloc/...]"
Add missing ones.

verbose messages (especially in XML and synthetic backends) don't get prefixes.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-windows.c (diff)
Commit c66d80b18d455fb133dc6e3e31ff3d1dc1be839e by Brice.Goglin
levelzero: typo in error message

Forgotten in commit 620a0088c661afdf5565b0218f7c656cbd1870bf

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 263f9bb5a50bb5255cfb3fa40d36b579d6d43c46 by Brice.Goglin
levelzero: don't initialize anything before checking if I/O is enabled

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 6ef4413c20278f3c4336ed539634a74f574d9b8d by Brice.Goglin
pci: don't initialize anything before checking if I/O is enabled

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-pci.c (diff)
Commit ee17dab2662447bc429bd6a87fc2f8eab18d8b48 by Brice.Goglin
pci: factorize multiple calls to filters

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-pci.c (diff)
Commit 45d5fcc7fe61e99dacd97e3c3a5a2271486d79d8 by Brice.Goglin
doxy: split out a faq about disabling things

Taken out of the "why" and "slow lstopo" entries.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit cc26c0ff8b11973a2f9eff52854fcbeb055a053c by Brice.Goglin
doxy: improve the faq entry about slow gpu discovery

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit f2fd88b2f0729c7b1582a0a8d363f7acef48fd7c by Brice.Goglin
doxy: improve the text about keep structure in the new "disable" faq entry

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 1beba7083d79a74c1f5dbf263fcf47e6d68c0e87 by Brice.Goglin
doxy: typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 32cc3995d8bebcf6e75b2d5bc7e7f69183c32f0e by Brice.Goglin
levelzero: fix a snprintf overflow warning

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit 300fb8a551b3fd2f39f938390c82be2f5a790c78 by Brice.Goglin
utils/annotate: fix [kMGT]B size units

commit 4d9a9843a5616fc702575c4701a8c3cba044757f
did not actually fix it, it kept them identical
to the new [kMGT]iB.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit be8a7eda64e6b012236b15c38bf78cf0c41dff8a by Brice.Goglin
utils/hwloc: check topology loading error status

Signed-off-by: Clément Foyer <clement.foyer@univ-reims.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-bind.c (diff)
Commit dc7b4b40aa94b0beeca3d05656676f1c2ad32898 by Brice.Goglin
utils/hwloc-ps: Fix output stream when using '-h'

Signed-off-by: Clément Foyer <clement.foyer@univ-reims.fr>
The file was modified utils/hwloc/hwloc-ps.c (diff)
Commit b42d730615e665ef74b412cd29a0e32f8b7ceca7 by bgoglin
linux: add hardwired fallback for syscall numbers on riscv

Signed-off-by: Michal Biesek <michalbiesek@gmail.com>
The file was modified hwloc/topology-linux.c (diff)
Commit 2bb8fcfe51a70a97510ce9e23f608cc4e1a80b47 by Brice.Goglin
utils/hwloc: enforce using '\0' instead of 0

Signed-off-by: Clément Foyer <clement.foyer@univ-reims.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/common-ps.c (diff)
Commit 12e346d1740ce35e4a920df4adbe3e45e20444aa by Brice.Goglin
core+lstopo: don't forget to set the L3i filter when operating on all caches

Fortunately, L3i doesn't exist these days (not sure it has ever existed,
Itanium-2 had L2i but its L3 was unified).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified hwloc/topology.c (diff)
Commit 690367b05affa942fa370bc2d8f4674544a5fbc1 by Brice.Goglin
core: remove some redundant checks when setting filters

When setting filters for multiple types, only check
the topology status once, and avoid checks on hardwired type values.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit f0699f2d66881f6cf17c45f4c196f89d2e4b258c by Brice.Goglin
core: allow backends to check if all cpu caches are filtered-out

Useful for Linux to avoid reading multiple useless sysfs files
before checking the resulting type filter.

Also used for Windows and x86 since it's easy to use there.

Refs #592

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-windows.c (diff)
The file was modified include/private/private.h (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit a69272a87f7b5a36ac5fe7b267e4fca572e53cd0 by Brice.Goglin
doxy: don't mix components and plugins in the text

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 9603ef9a843535500fdc500f068a3163b4d1f33c by Brice.Goglin
doxy: try to clarify terms component/backend/plugin

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit c15bc8175252e4c20e692e06beb8566d6503e4a4 by Brice.Goglin
doxy: don't duplicate minimalistic stuff about xml in the component page

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit cbba41d2e54cde4f4dd9d779058a14b5defc4005 by Brice.Goglin
doxy: random improvements in the component page

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit fd667010b3f6346dba20af194110485ceec6c6f5 by Brice.Goglin
doxy: talk about disabling components in the make hwloc faster FAQ entry

Refs #592

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 93fbfa328e6d8611401b81febecb1e8f2e5466c2 by Brice.Goglin
levelzero: use zesInit() when available

When zesInit() is available (starting in specs 1.5), call it
to further reduce problems with ZES_ENABLE_SYSMAN=1 not
being set in the environment.

The current implementation of zesInit() in the oneAPI compute runtime
returns an "unsupported feature" 0x78000003 error
(or return success and do nothing if ZES_ENABLE_SYSMAN=1)
but hopefully things will improve quickly.

Once zesInit() will be widely available/implemented, we'll
consider disabling the ZES_ENABLE_SYSMAN=1 stuff if zesInit()
is found at configure time, and later remove it.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/levelzero/level_zero/zes_api.h (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/levelzero.c (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified tests/hwloc/ports/Makefile.am (diff)
The file was modified include/hwloc/levelzero.h (diff)
Commit a7549c06f27a73477cdcae7351c555d61ffbca7f by Brice.Goglin
tests/ports: add some missing -D to enable more ports' code

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/Makefile.am (diff)
Commit bdf5fa70379ceb7ff46655bc63ce6cd8ea04d283 by Brice.Goglin
contrib/dist/publish_doc: update the example doc we look for

2.0.4 doc might be removed in some future, look for 2.8.0 now

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/dist/publish_doc (diff)
Commit d94bca72ef2cdbc3f95636b37f639ebd03430643 by Brice.Goglin
contrib/dist/publish_doc: symlink to the latest common jquery.js

Followup to open-mpi/ompi-www commit 080e30b0a5f9910c91ca555aee6bf8407bfefa5d

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/dist/publish_doc (diff)
Commit 49b940c3a4fa4a4e570c03884c3590e0819200a6 by bgoglin
windows: Fix type of hostname_size parameter

Avoids warning: passing argument 2 of 'GetComputerNameA' from incompatible
pointer type [-Wincompatible-pointer-types]

Signed-off-by: Evan Ramos <evan@hpccharm.com>
The file was modified hwloc/topology-windows.c (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit f76a7ccffa143cdceef8a4dc929b09876fac5f9e by Brice.Goglin
darwin: fix IOKit warnings about const char * being passed in arrays

GCC11 emits warnings [-Wstringop-overread] when passing short C strings in
io_name/string_t in the IOKit API because those types are 128/512 char arrays.
It's not clear if these warnings are really valid but they are not too hard to fix
(we cannot cast into an array type, so just declare a variable of that array type earlier).

By the way, update the actual definition of io_name/string_t in our port test headers.

Thanks to Ralph Castain for the report.

Fixes #599

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
The file was modified tests/hwloc/ports/include/darwin/IOKit/IOKitLib.h (diff)
Commit 2c0308331d3d2f5475c1fd0271e315d59246f1fd by Brice.Goglin
contrib/dist/pubish_doc: further improve jquery.js

We'll use a common jquery.js that points to the latest one.

Followup to hwloc commit d94bca72ef2cdbc3f95636b37f639ebd03430643
and ompi-www commit cb8ca644a0839948874570a4aedbbaf8fa18ecca

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/dist/publish_doc (diff)
Commit b9249d17b5b4b21bb37f70e28457b9286c56416f by Brice.Goglin
NEWS: bring 2.9.2 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 639d09ece52f94a046a1fc7e4fc4083fe4c80d0a by Brice.Goglin
hwloc.h+bind.1in: add a note about hwloc bind policy != linux bind

Refs #601.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified include/hwloc.h (diff)
Commit dfca160d4f741392e2e5a38357aa9a6a5243b43f by Brice.Goglin
doxy: improve the cpu_mem_bind chapter

- subdivide in sections
- add an introduction
- talk about portability and policies
- more cross-references

Refs #601

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit b8c6da5f67eee3527b3f93901462e2d7622fce06 by Brice.Goglin
doxy: move the installation section to its own page

To keep the main page shorter and make the README less technical.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified README (diff)
Commit 085b8a686697f6e4fe8bed180f7737512c150875 by Brice.Goglin
doxy: improve the main page

Move the table of contents to the top, integrate the early sections in it.

Rework the beginning.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 850a706cc3195d79b60186f87b6856c211996014 by Brice.Goglin
README: update after doxy main page reorganization

Skip the table of contents, keep from overview to credits.

Filter-out "ttc" html lines (tooltip lines that are hidden by the CSS by default).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/README.sed (diff)
The file was modified README (diff)
The file was modified doc/Makefile.am (diff)
Commit 254f910f3f7fd572d44f23bae13972423a24b87d by Brice.Goglin
linux/cxl: merge CXLDevice attributes when interleaved

And add CXLDeviceInterleaveWays

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 785678dc112dae4c7aa7aacc59149088bc10272a by Brice.Goglin
doxy: remove our custom doxygen.css for html docs

Our css is severely outdated (for instance it misses the ttc/tooltip stuff,
causing lots of things not to be hidden by default) and we didn't document
much to be able to maintain it.

Changes in commit 7e6bc6b297ce86915417976a59de9ef26488d4a3 could have
been kept but its minor changes aren't really needed anymore.

The default style is used in the official docs online, it's fine,
so just use the same for all generated html docs.

If we ever need changes, they should rather go in another CSS file
that would override rules of the official one (using HTML_EXTRA_STYLESHEET
as recommended).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/Makefile.am (diff)
The file was removeddoc/doxygen.css
Commit d0648842227092b900fbc09a8f8a869172bdac7a by Brice.Goglin
doxy: move bugs/questions to the end of the introduction page

right before history/credits

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified README (diff)
The file was modified doc/hwloc.doxy (diff)
Commit a2e28b5a1ef3bf98139beef6327deb9693683ec8 by Brice.Goglin
components: allocate the backend private_data together with the backend structure

This breaks the component ABI, but it was already bumped from 7 to 8 in bf44f300e8.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-netbsd.c (diff)
The file was modified hwloc/topology-noos.c (diff)
The file was modified hwloc/topology-freebsd.c (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified hwloc/topology-aix.c (diff)
The file was modified hwloc/topology-solaris.c (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/components.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-cuda.c (diff)
The file was modified hwloc/topology-hpux.c (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified hwloc/topology-gl.c (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was modified hwloc/topology-fake.c (diff)
The file was modified include/hwloc/plugins.h (diff)
Commit 74e32c185f326f908c1e3ad3e8b2e9ad76ef4785 by Brice.Goglin
cuda/levelzero/gl/nvml/opencl/rsmi: add a single Backend info attr in the root

The name and subtype of these OS devices directly indicate their originating
backend, no need to add a Backend=CUDA in each of them. Just keep one in the
top topology info where we list other backends.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/cudart.c (diff)
The file was modified NEWS (diff)
The file was modified tests/hwloc/opencl.c (diff)
The file was modified hwloc/topology-gl.c (diff)
The file was modified tests/hwloc/cuda.c (diff)
The file was modified tests/hwloc/levelzero.c (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified tests/hwloc/gl.c (diff)
The file was modified tests/hwloc/nvml.c (diff)
The file was modified tests/hwloc/rsmi.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/topology-cuda.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
Commit a2784e5a5e433c7d27ec7da741bb6f25ce746adc by Brice.Goglin
hardwired: add a Backend info attr

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-hardwired.c (diff)
Commit 41e7d3636ccda88f08c53e93fd08bd7203866e39 by Brice.Goglin
noos: add a Backend info attr

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_backends.c (diff)
The file was modified hwloc/topology-noos.c (diff)
Commit 75e01ef33c0256a542066218af5662d799789d74 by Brice.Goglin
pci: add a Backend info attr

Only if adding objects, not if annotating with names.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-pci.c (diff)
Commit a4e63f294c2610792483323b466c52c6c4283cd0 by Brice.Goglin
freebsd: make sure uname and Backend info attrs are added once

Once and only once when some discovery phases may be disabled.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-freebsd.c (diff)
Commit 2fc7c2397fc28050be3505beacbc93b1656dd649 by Brice.Goglin
linux: make sure uname, Backend and other global info attrs are added once

Once and only once when some discovery phases may be disabled.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets-xml.xml (diff)
The file was modified tests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder.console (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets.console (diff)
The file was modified tests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.console (diff)
The file was modified tests/hwloc/x86+linux/5intel64-hybrid-lakefield.console (diff)
The file was modified tests/hwloc/linux/32intel64-2p8co2t+8ve.console (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pcilocality.xml (diff)
The file was modified tests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.console (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets-disallowed.console (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes-kept.console (diff)
The file was modified tests/hwloc/linux/offline-cpu0-node0.console (diff)
The file was modified tests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.console (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.console (diff)
The file was modified tests/hwloc/linux/128arm-2pa2n8cluster4co.console (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.console (diff)
The file was modified tests/hwloc/linux/4fake-4gr1nu1pu.console (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.console (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.console (diff)
The file was modified tests/hwloc/linux/8em64t-2s2ca2c-buggynuma.console (diff)
Commit 206b32eb18af08a650dd664f85ebc562c69b1969 by Brice.Goglin
xml/export: factorize info attr export

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit daa3850d73a87f8aa1cb678ed00259fc483433ac by Brice.Goglin
xml/export/v2: add Backend info back to OS devices

Keep the Backend info in the root.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit d92b1a49b528c7b431b8a459b91c9de36384a96b by Brice.Goglin
xml/import/v2: add Backend info to the root object from OS devices

Keep the Backend info in the OS device.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/xml.h (diff)
The file was modified hwloc/topology-xml.c (diff)
Commit 55774815aa6b62a69ea975c3b5833fbc24fb4652 by Brice.Goglin
xml/import: cleanup unused/non-unused function parameters

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit c02cd50560dccfe14b838d46e83cf535ba8e8748 by Brice.Goglin
diff: also check whether cpukinds are identical

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/diff.c (diff)
Commit 88fa70574ae37689d8d799f2dc49c8b67428fd20 by Brice.Goglin
XML: fix a typo in comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/xml.h (diff)
Commit 0c40029a679d3b58f6679f63d873f52ccf21921f by Brice.Goglin
xml: remove the nbnumanode import temporary data

Unneeded now that there's always NUMA nodes in the input topology (v2)

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/private/xml.h (diff)
Commit 8285b0612e29f562b8e03843190e6816c1195da6 by Brice.Goglin
API: the non-printable character warning applies to info key names too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 7ba5dc5ca7a235155ec155a7e99b27db856a22bf by Brice.Goglin
doc: clarify how we talk about info attributes

Uniformize and clarifies things.
Use "name" instead of "key".
Use "pair" when appropriate.
Misc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc.h (diff)
Commit 37b590b8e3a1a0a65d912a5b20c836c3bc4cfc56 by Brice.Goglin
doxy: add missing comma

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit d7a40a4ae52d42b5b665bc618b18fc597be108f5 by Brice.Goglin
API: add hwloc_infos_s structure in objects

It contains the existing hwloc_info_s array and its length.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/levelzero.c (diff)
The file was modified tests/hwloc/nvml.c (diff)
The file was modified tests/hwloc/opencl.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified tests/hwloc/rsmi.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified hwloc/diff.c (diff)
The file was modified tests/hwloc/cuda.c (diff)
The file was modified include/hwloc/inlines.h (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/cudart.c (diff)
The file was modified tests/hwloc/gl.c (diff)
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 6e41289b44f0e34ad11ac29767e0163ec3d7b3cc by Brice.Goglin
core: switch internal functions to use hwloc_infos_s structure

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified include/private/private.h (diff)
The file was modified hwloc/diff.c (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/cpukinds.c (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified hwloc/topology-darwin.c (diff)
Commit 060604cb3ee924a51731756221cefafdcef97ea4 by Brice.Goglin
API: add hwloc_get_info_by_name()

It takes a struct hwloc_infos_s
(while hwloc_obj_get_info_by_name() takes an object).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified include/hwloc/inlines.h (diff)
The file was modified include/hwloc.h (diff)
Commit 669a1c0fc547076fc656fc3e92be90f52a93e629 by Brice.Goglin
cpukind: switch to struct hwloc_infos_s in the API

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/cpukinds.h (diff)
The file was modified tests/hwloc/cpukinds.c (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified hwloc/cpukinds.c (diff)
The file was modified NEWS (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit 56386ebec74b0647fe51b860b930a3c53e90e4a4 by Brice.Goglin
core: add an "allocated" private field in struct hwloc_infos_s

To properly preallocate the array when adding elements.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology.c (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/cpukinds.c (diff)
The file was modified hwloc/topology-x86.c (diff)
Commit 293206f827f2f812a8bcf75d23afbf1ebdf8c23e by Brice.Goglin
API: make it clear that add_info() wants non-NULL name+value

It'd crash otherwise.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified hwloc/topology.c (diff)
Commit 6095a743d52d05bbda6f11b1fd7633e49e873915 by Brice.Goglin
API: add hwloc_modify_infos() to add/replace/remove info attrs

hwloc_obj_add_info() is now implemented on top of it.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified hwloc/topology.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/inlines.h (diff)
Commit 5cb289dc83f353d9cc6516f597884fa37e892d3c by Brice.Goglin
tests: rename and enlarge the infos test

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/CMakeLists.txt (diff)
The file was modified tests/hwloc/Makefile.am (diff)
The file was removedtests/hwloc/hwloc_obj_infos.c
The file was addedtests/hwloc/infos.c
Commit a03b7f3fd04fe052d3fe256d78a92427fbe89557 by Brice.Goglin
core: use the new internal hwloc__replace_infos() and remove add_info_nodup()

And clarify that callers may always call replace,
even if the info doesn't exist yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified include/private/private.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified hwloc/topology-x86.c (diff)
Commit 749e22a91dcc5d9875f8099ca256d958cb03e020 by Brice.Goglin
utils/annotate: abstract-out info attr operations

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit d07e4ac7ff8e51bf47918f9b9bf48ee2b248c6dd by Brice.Goglin
utils/annotate: reimplement info operations using hwloc_modify_infos()

It was relying on non-official/non-documentation manual changes to the info attr arrays.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit 6acac769c3f30c677dbc979d35515fa6265316e8 by Brice.Goglin
utils/annotate: add the "cpukind#N" fake location to tweak cpukind infos

And document that we may also call hwloc-annotate multiple times
with same cpukind parameters but different info names and values.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified utils/hwloc/test-hwloc-annotate.sh.in (diff)
Commit 40c953d943dd2ac1a778b89cd678ab14f9559aaa by Brice.Goglin
tests/{cuda*,nvml,opencl,levelzero,rsmi,gl}: fix Backend info attr check

Broken in 74e32c185f326f908c1e3ad3e8b2e9ad76ef4785

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/nvml.c (diff)
The file was modified tests/hwloc/gl.c (diff)
The file was modified tests/hwloc/rsmi.c (diff)
The file was modified tests/hwloc/levelzero.c (diff)
The file was modified tests/hwloc/cudart.c (diff)
The file was modified tests/hwloc/opencl.c (diff)
The file was modified tests/hwloc/cuda.c (diff)
Commit 82c0e0af9eb565270728841fa4665d10c0bed786 by Brice.Goglin
utils/annotate.1: remove a spurious '+'

Forgotten in 6acac769c3f30c677dbc979d35515fa6265316e8

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
Commit 8e756104b38d7d103b3f9cf6afd858a76c2323da by Brice.Goglin
rsmi: remove some warnings on 32bits

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-rsmi.c (diff)
Commit c3111cdb17193317aa258715ca0c58231c67924e by Brice.Goglin
linux: fix a warning about fgets return value not being used.

Reading /proc/cmdline will hardly fail anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 9b1d69a6c62eb59bc55a72b50dbb5714fa2421b9 by Brice.Goglin
utils/ps: fix a warning about read() return value not being used

Reading /proc/<pid>/status will hardly fail anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/common-ps.c (diff)
Commit a419f7d6f8cb82785314c3b60bc13d633ac5ebb1 by Brice.Goglin
utils/misc/archivemount: fix warnings about unchecked return values of chdir and system

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit 73a56676fd18442e23b2437f6a143ceaa283638a by Brice.Goglin
components: fix a warning about unused asprintf return value

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/components.c (diff)
Commit 6d5614e976d15d7389036c74493ef7e2b7c242d5 by Brice.Goglin
darwin: fix some printf format warnings

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-darwin.c (diff)
Commit 88a6c1d54ed832fc1f3819791c43c8d004ad1d9c by Brice.Goglin
API: add topology-specific info attributes

Accessible through hwloc_topology_get_infos()

Nothing in this array yet.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified include/private/private.h (diff)
The file was modified doc/Makefile.am (diff)
The file was modified hwloc/diff.c (diff)
The file was modified hwloc/hwloc2.dtd (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc/diff.h (diff)
The file was modified tests/hwloc/hwloc_topology_abi.c (diff)
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit f7e33d1c168a0e9a5bf36b56d378a4af8d3229e4 by Brice.Goglin
utils/annotate: "topology" location may be used to manipulate topo attributes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/test-hwloc-annotate.sh.in (diff)
The file was modified utils/hwloc/hwloc-annotate.1in (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
Commit 36143a1942382d623569b5c19095f64505a4592a by Brice.Goglin
utils/info: --topology -v shows topo info attrs

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
Commit 290a313671ee45bf62013275a8288f9272200a21 by Brice.Goglin
lstopo/text: show topo info attrs in verbose mode

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-text.c (diff)
Commit 45f5e07db1dd069ab61a749ba35624567ad7b4f4 by Brice.Goglin
core: move some root info attrs to topology infos

Topology discovery and backend information:
* Backend
* SyntheticDescription
* hwlocVersion
* ProcessName

OS information:
* uname stuff (OSName, OSRelease, OSVersion, HostName, Architecture)
* LinuxCgroup
* WindowsBuildEnvironment

Hardware info (DMI, CPU when in root because Package locality is missing, etc)
remains in root.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/nvml.c (diff)
The file was modified tests/hwloc/x86/AMD-K10-MagnyCours-2xOpteron-6164HE.xml (diff)
The file was modified tests/hwloc/xml/96em64t-4n4d3ca2co-pci.xml (diff)
The file was modified tests/hwloc/linux/256ppc-8n8s4t.console (diff)
The file was modified tests/hwloc/x86/AMD-K10-Istanbul-8xOpteron-8439SE.xml (diff)
The file was modified tests/hwloc/x86/Intel-KnightsCorner-XeonPhi-SE10P.xml (diff)
The file was modified hwloc/topology-solaris.c (diff)
The file was modified tests/hwloc/linux/256ia64-64n2s2c.console (diff)
The file was modified tests/hwloc/levelzero.c (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.console (diff)
The file was modified tests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.xml (diff)
The file was modified hwloc/topology-noos.c (diff)
The file was modified utils/hwloc/test-build-custom-topology.output (diff)
The file was modified tests/hwloc/linux/allowed/test1.xml (diff)
The file was modified tests/hwloc/x86/Intel-Westmere-2xXeon-X5650.xml (diff)
The file was modified hwloc/topology-windows.c (diff)
The file was modified tests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder.console (diff)
The file was modified tests/hwloc/linux/8ia64-2n2s2c.console (diff)
The file was modified tests/hwloc/xml/192em64t-24n8c2t.xml (diff)
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified tests/hwloc/xml/24em64t-2n6c2t-pci.xml (diff)
The file was modified tests/hwloc/x86/AMD-17h-Zen-2xEpyc-7451.xml (diff)
The file was modified tests/hwloc/x86/AMD-15h-Bulldozer-4xOpteron-6272.xml (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.nocollapse.console (diff)
The file was modified tests/hwloc/xml/8intel64-4n2t-memattrs.xml (diff)
The file was modified utils/hwloc/test-hwloc-compress-dir.output.tar.gz (diff)
The file was modified tests/hwloc/x86/Intel-Skylake-2xXeon6140.xml (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v3.xml (diff)
The file was modified tests/hwloc/xml/irregulargroups-disallowed.console (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.xml (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified utils/hwloc/test-hwloc-compress-dir.input.tar.gz (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes-kept.console (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.xml (diff)
The file was modified tests/hwloc/linux/64fake-4n2s2ca2c2t.console (diff)
The file was modified hwloc/topology-gl.c (diff)
The file was modified tests/hwloc/x86/Intel-CPUID.1F-Qemu-2p3d3c2t.xml (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-nocaches.console (diff)
The file was modified tests/hwloc/xml/192em64t-12gr2n8c2t.xml (diff)
The file was modified tests/hwloc/gl.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified hwloc/topology-aix.c (diff)
The file was modified hwloc/topology-darwin.c (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.console (diff)
The file was modified tests/hwloc/cuda.c (diff)
The file was modified tests/hwloc/xml/fakeheterodistances.xml (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.console (diff)
The file was modified tests/hwloc/x86/Intel-Nehalem-2xXeon-X5550.xml (diff)
The file was modified tests/hwloc/linux/4fake-4gr1nu1pu.console (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output2 (diff)
The file was modified tests/hwloc/linux/2i386-2t-hugepagesizecount.xml (diff)
The file was modified tests/hwloc/linux/2i386-2c-nohugepage.xml (diff)
The file was modified tests/hwloc/linux/32intel64-2p8co2t+8ve.console (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/linux/8em64t-2s2ca2c-buggynuma.console (diff)
The file was modified tests/hwloc/linux/16amd64-4n4c-cgroup-distance-merge.console (diff)
The file was modified hwloc/misc.c (diff)
The file was modified hwloc/topology-freebsd.c (diff)
The file was modified tests/hwloc/x86/AMD-19h-Zen3-2xEpyc-7763.xml (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-offlines-xml.xml (diff)
The file was modified tests/hwloc/linux/fakeheterocpunuma.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.input (diff)
The file was modified tests/hwloc/linux/128ia64-17n4s2c.console (diff)
The file was modified tests/hwloc/linux/8em64t-2s4c-asymcaches.console (diff)
The file was modified tests/hwloc/linux/2arm-2c.console (diff)
The file was modified hwloc/topology-netbsd.c (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input1 (diff)
The file was modified tests/hwloc/linux/64amd64-4s2n4ca2co.console (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.console (diff)
The file was modified tests/hwloc/x86/Intel-CascadeLake-2xXeon6230.xml (diff)
The file was modified tests/hwloc/x86/Intel-Penryn-4xXeon-X7460.xml (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-A2A-cache.console (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t.console (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified tests/hwloc/x86/Intel-CPUID.1A-1p2co2t.xml (diff)
The file was modified tests/hwloc/linux/16ia64-8n2s.console (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets.console (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/linux/48amd64-4pa2n6c-sparse.console (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-noio.xml (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-xml.xml (diff)
The file was modified tests/hwloc/linux/fakecpuid1f-64intel64-2p4d2n2c2t.console (diff)
The file was modified tests/hwloc/x86/AMD-15h-Piledriver-4xOpteron-6348.xml (diff)
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes.console (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.console (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets-disallowed.console (diff)
The file was modified tests/hwloc/xml/16-2gr2gr2n2c+misc.console (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-offlines.console (diff)
The file was modified tests/hwloc/x86/AMD-19h-Zen4-2xEpyc-9654.xml (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified tests/hwloc/linux/8ia64-2s2c2t.console (diff)
The file was modified tests/hwloc/linux/32amd64-4s2n4c-cgroup2.xml (diff)
The file was modified tests/hwloc/rsmi.c (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v2.xml (diff)
The file was modified hwloc/topology.c (diff)
The file was modified tests/hwloc/xml/irregulargroups-disallowed.xml (diff)
The file was modified tests/hwloc/x86/Intel-SandyBridge-2xXeon-E5-2650.xml (diff)
The file was modified tests/hwloc/linux/offline-cpu0-node0.console (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input2 (diff)
The file was modified hwloc/topology-synthetic.c (diff)
The file was modified NEWS (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c-cpusets-xml.xml (diff)
The file was modified tests/hwloc/linux/16amd64-8n2c.console (diff)
The file was modified tests/hwloc/hwloc_backends.c (diff)
The file was modified tests/hwloc/x86/Intel-Core-2xXeon-E5345.xml (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.console (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.xml (diff)
The file was modified tests/hwloc/linux/8em64t-2s2ca2c.console (diff)
The file was modified tests/hwloc/x86+linux/64amd64-4p2n4ca2co.xml (diff)
The file was modified tests/hwloc/xml/power8gpudistances.xml (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pcilocality.xml (diff)
The file was modified tests/hwloc/x86/Zhaoxin-CentaurHauls-ZXD-4600.xml (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.xml (diff)
The file was modified tests/hwloc/x86/AMD-K8-SantaRosa-2xOpteron-2218.xml (diff)
The file was modified hwloc/topology-pci.c (diff)
The file was modified hwloc/topology-hardwired.c (diff)
The file was modified tests/hwloc/x86/Hygon-Dhyana-32cores.xml (diff)
The file was modified tests/hwloc/x86/Intel-Broadwell-2xXeon-E5-2650Lv4.xml (diff)
The file was modified tests/hwloc/xml/16-2gr2gr2n2c+misc.xml (diff)
The file was modified hwloc/topology-cuda.c (diff)
The file was modified tests/hwloc/linux/20s390-2g6s4c.console (diff)
The file was modified tests/hwloc/linux/128arm-2pa2n8cluster4co.console (diff)
The file was modified tests/hwloc/x86/Intel-KnightsLanding-XeonPhi-7210.xml (diff)
The file was modified tests/hwloc/xml/fakecpukinds.xml (diff)
The file was modified tests/hwloc/linux/16em64t-4s2c2t-merge.console (diff)
The file was modified tests/hwloc/x86+linux/5intel64-hybrid-lakefield.console (diff)
The file was modified tests/hwloc/cudart.c (diff)
The file was modified tests/hwloc/xml/16amd64-4distances.console (diff)
The file was modified hwloc/topology-x86.c (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.xml (diff)
The file was modified hwloc/topology-hpux.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified tests/hwloc/linux/96em64t-4no4pa3ca2co.console (diff)
The file was modified tests/hwloc/x86/Intel-Haswell-2xXeon-E5-2680v3.xml (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/x86/AMD-K8-SledgeHammer-2xOpteron-250.xml (diff)
The file was modified tests/hwloc/linux/16em64t-4s2ca2c-cpusetreorder-merge.console (diff)
The file was modified tests/hwloc/linux/2ps3-2t.console (diff)
The file was modified tests/hwloc/opencl.c (diff)
The file was modified tests/hwloc/x86/Intel-IvyBridge-12xXeon-E5-4620v2.xml (diff)
The file was modified tests/hwloc/x86/Zhaoxin-Shanghai-KaiSheng-ZXC+-FC1081.xml (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 1c288c9548810c2261148bd77f34e4262931f21b by Brice.Goglin
xml/import/v2: move v2 root info attrs to topo when appropriate

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 67a36d649167291d95dbfdc7ed76312b4ec1ce28 by Brice.Goglin
xml/export/v2: export topo info attrs as root info in v2

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/test-lstopo.output (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v2.xml (diff)
Commit a54d2aa3fec88b1afd654360ff12496f2fe8dadf by Brice.Goglin
contrib/windows-cmake: move tests/hwloc/CMakeLists.txt back to ./tests/

To keep all the cmakery at a single place.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/Makefile.am (diff)
The file was removedtests/hwloc/CMakeLists.txt
The file was modified contrib/windows-cmake/CMakeLists.txt (diff)
The file was addedcontrib/windows-cmake/tests/CMakeLists.txt
Commit 74a02b5f23ac83474e3b794bd81964d6a89f8d86 by Brice.Goglin
shmem: duplicate topo infos so that we may modify them

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/shmem.c (diff)
Commit 383a7d9af42730a67cf749bd3eabe908d7cc11aa by Brice.Goglin
allow: now allowed on shmem-adopted topologies

A shmem topology may now be shared between different cgroups, one only has
to call hwloc_topology_allow(LOCAL) to update the list of allowed CPUs and memory
after adopting the shmem topo.
The source process must have built the original topology with INCLUDE_DISALLOWED.

This was disabled previously because allow(LOCAL) is supposed to add "LinuxCgroup"
to the info attrs, which was not possible until we added topo infos in 3.0.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified hwloc/topology.c (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/shmem.h (diff)
Commit 63762b9eefff7dcf582ec758c2954ede659649b8 by Brice.Goglin
API: add notes about restrict/insert_group changing logical indexes

Can cause confusion when using different --restrict in different command-lines.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 2fe1a196a54c01fdc5c242ba14faa982db65cdf6 by Brice.Goglin
API: clarify that restrict() removes PUs or NUMAs

And then their child-less parents recursively.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 96d4afcd6df71653d796e15cfe31a655856eb86a by Brice.Goglin
utils: clarify that --restrict removes PUs and/or NUMA nodes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc-distrib.1in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 090d23a49d16c60cdb47f702b98cab56b6195f78 by Brice.Goglin
utils: clarify that --restrict may cause logical index to change

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/hwloc/hwloc-distrib.1in (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit cdf33805d59729f126f8d164ac9ca76f29966c7f by Brice.Goglin
API: return meaningful positive values from modify_infos()

To tell whether things got added/replaced/removed.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/shmem.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified hwloc/topology.c (diff)
The file was modified tests/hwloc/infos.c (diff)
Commit b1470040a7a19f0e321bd8770d313353a3902f2b by Brice.Goglin
utils/ps: add --children-of-pid

Show a PID and its hierarchy of children.

Refs #606

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/common-ps.h (diff)
The file was modified utils/hwloc/common-ps.c (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-ps.1in (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
Commit 64fdad294f9690bff77d3d1f1d0d0921631d3b9f by Brice.Goglin
lstopo: abstract more the code to insert misc children

subtype is now Thread instead of Process for threads.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 237ddc1550b431c41a32d07e706e956d09a66d94 by Brice.Goglin
lstopo: add --misc-from

Allows to give a list of Misc objects in a separate file (or stdin),
will be used to bring hwloc-ps flexibility without adding many options to lstopo.

Refs #606

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 6206d16b53f15f52c9905aa3a10e983de8f4ce23 by Brice.Goglin
hwloc-ps: add --lstopo-misc to output something for --lstopo --misc-from

Closes #606

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/hwloc/hwloc-ps.c (diff)
The file was modified utils/hwloc/hwloc-ps.1in (diff)
Commit 22e56bc93c0366917faef223bcc8530061e8dcc7 by Brice.Goglin
doxy: remove way too many spaces

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit a24d02333a32d98fd6e42b1b50883b51ab7cc8a1 by Brice.Goglin
x86: add a debug messages when disabling because of non-unique APIC ids

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit db52ca9af081420d84adb8aca509bc091921c52e by Brice.Goglin
core: don't crash when clearing an already empty topology

If all objects got removed because cgroups were wrong,
we'd crash when trying to clear the topology because the root
is already NULL.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 3efaa9ce2037ceed039545d82dd68a416c9d9af8 by Brice.Goglin
linux/smbios: enforce memory header from spec 2.3 only

Allow optional fields for later specs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit ec50746bcaadfdd1ab703834b274835e36889626 by Brice.Goglin
linux: add CXL device serial number

Signed-off-by: Zubiao Xiong <zubiao.xiong@memverge.com>
The file was modified hwloc/topology-linux.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit abfd6136e0fa4c0d7dff9b2260e4247ef27bffa2 by Brice.Goglin
linux: add more MemoryModule info attributes

FormFactor=DIMM, Type=DDR4, Size=<KiB> (with support for more than 32GB DIMMs), Rank=2

Uses SMBIOS 2.6 when available.

Signed-off-by: Zubiao Xiong <zubiao.xiong@memverge.com>
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.xml (diff)
Commit 8f2bc8aa3a9efe1385124da08ca31596a8e6935f by Brice.Goglin
xml/import: remove "v2" from some function names

We don't import from v1 anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 3cfd652834b81f99d914fc7149e4c2a0d1a79e3a by Brice.Goglin
xml/import/v2: check version major before enabling some info checks

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit c129793d0742d7c0db0d0c13ced7ef4b171493ad by Brice.Goglin
bitmap.h: clarify that the empty bitmap doesn't intersect anything else

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/bitmap.h (diff)
Commit f0eeb3a9bb8e216ffff97087192e1591ce2fd440 by Brice.Goglin
utils/calc: fix searching CPU objects below heterogeneous NUMA

socket:0.numa:0.core:0 looks for first core whose cpuset and nodeset
are included in socket:0.numa:0. This fails on heterogeneous memory
machines since this core may have 2 local NUMAs in its nodeset,
hence not included in socket:0.numa:0's nodeset.

Fix this by checking if the nodeset intersects instead of being included.

Note that the empty bitmap is isincluded in any bitmap, while it doesn't
intersect with anything, hence we have to check empty nodesets too.

Thanks to Antoine Morvan for the report.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
Commit 75234cb14586fc7cb2ad0fdd9f9ca136beac32bd by Brice.Goglin
utils/calc: fix searching NUMA nodes inside CPU objects when NUMA are attached higher

This is the symmetric of the previous commit, but reversing NUMAs and PUs.

When a NUMA node is attached at a level, and we search for that NUMA node
inside children of that level (hierarchical spec), the cpuset of the NUMA
node contains more than just one children, hence we wouldn't find it
with isincluded(). We now use zero()||intersects() instead.

Example (different from the one added in test-hwloc-calc):
AMD machine with 4 L3 (4 cores each) and 1 NUMA per package (16 cores total).
"hwloc-calc l3:0.numa:0" should return the first NUMA (cpuset 0xffff nodeset 0x1)
but it didn't because it's not included in the L3 (cpuset 0x000f nodeset 0x1).

This should not happen when the user knows the ordering of levels in the machine,
but may happen when using generic scripts that don't know where NUMA is attached
(L3 above NUMA on some Intel/SNC but below on AMD currently).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit bc374deed17fa7ae212050534c52698ff51c4bdc by Brice.Goglin
android: disable the platform database for now

Heroku broke, the API isn't available anymore. Just open the static database webpage.

By the way, rename "API" into "database".

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/MainActivity.java (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/res/menu/activity_main_menu_drawer.xml (diff)
Commit 027684d5dbc7c8206069ba76bd8763143313cc1c by Brice.Goglin
contrib/android: bump compile/targetSdkVersion to 33

Required by Google Play for newer Android versions.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit e0c40cb072200dbf0bd5e3d9abd905022fb59ddd by Brice.Goglin
utils/calc: add --object-output

For options which report object indexes (-I and --local-memory),
this adds the type as a prefix, e.g. Core:0,Core:2 instead of 0,2.

Refs #611.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
Commit 257e91a99eef37185d887d86a8a11df4bb052f00 by Brice.Goglin
utils/bind: warn if neither CPU nor memory binding location were given

This may clarify strange error cases where locations didn't get parsed
and are tried as executable name.
Refs #611

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.c (diff)
Commit 95b9d6ebd487f3b6b7b381e0e8c04c1c6f923131 by Brice.Goglin
utils/bind: always warn when assuming the executable starts at an unrecognized argument

We support -- to start the executable since the beginning and it's documented,
so people should get used to it.

Refs #611.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.c (diff)
Commit 009af4984bdb69ea466d7f39f17f2ddca0193fb8 by Brice.Goglin
utils/calc.1: fix the doc of --largest

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 0e54376b4c503754414482cf70fdd63de01bb564 by Brice.Goglin
helpers.h: fix missing MemCache in get_next_child()

This function would infinitely loop between a NUMANode and its MemCache parent
instead of moving to IO/Misc children.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/helper.h (diff)
Commit 3b031dc12169603d1bef263d3fe6e3b951283b36 by Brice.Goglin
helper.h: move type/kind section above others

We'll need it in others.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/helper.h (diff)
Commit 92dd80488c44ea2813ac4a205888694025a3a56f by Brice.Goglin
helpers.h: cleanup get_next_child()

Use hwloc_obj_type_is_*() instead of hardwiring list of types.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/helper.h (diff)
Commit 21de51486f9e58cab8388c5a8601edad2af558b5 by Brice.Goglin
utils: add -q and --quiet when we have -s and --silent

Some tools had -s and --silent (lstopo, gather-cpuid, info),
some had -q and --quiet (calc, bind).
It's never actually completely silent, so have -q --quiet in all
these tools and keep the existing -s --silent for backward compatibility.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-gather-cpuid.1in (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-gather-cpuid.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
The file was modified utils/lstopo/lstopo.c (diff)
Commit ac1f8db9a0790d2bf153711ff4cbf6101f89aace by Brice.Goglin
linux: handle glibc cpuset allocation failures

Closes #544
CVE-2022-47022

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 3c0822930f34e5e8876d89f88ae9c67f12a3b38c by Brice.Goglin
tests/linux: add a testcase with memory side caches

We only ever had KNL with MSC but this case doesn't use
the official HMAT-based Linux sysfs discovery.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/memorysidecaches.tar.bz2
The file was addedtests/hwloc/linux/memorysidecaches.test
The file was addedtests/hwloc/linux/memorysidecaches.console
The file was modified tests/hwloc/linux/Makefile.am (diff)
Commit 79bb04bc4579e552e76733e8b451ab95bafb91f8 by Brice.Goglin
tests/xml: add a testcase with memory side caches

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/Makefile.am (diff)
The file was addedtests/hwloc/xml/memorysidecaches.test
The file was addedtests/hwloc/xml/memorysidecaches.xml
Commit cd6f1ef3d63614f25c99da831b61acc46970b12d by Brice.Goglin
utils/info: factorize the displaying of ancestors

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 62d0056bdfa7647a44b3eee73bd731405b7c6dd4 by Brice.Goglin
utils/info: factorize the displaying of descendants

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 760218cc7d207c1e3e4747e851e380503ce0a74d by Brice.Goglin
utils/info: abstract-out displaying of children, local memory and single objects too

To keep all these formatting functions together.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 9d35ec037343a6bf4d8e0b40b69c50c43c89bf5f by Brice.Goglin
utils/info: add [kind=]cpu/cache/normal/memory/io/all to --ancestor and --descendants

Allow to select multiple types of ancestors/descendants.

Ref #612.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
Commit b67f2f462dce864d7884bb15a8f6b70a929cb23f by Brice.Goglin
utils/info: add --first to stop on first matching object

Useful for finding where a NUMA is attached:
  $ hwloc-info --ancestor normal --first numa:1
  Package:0

Refs #612.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 2e9051a152c370e28b7faac7a0c4c6ac57389524 by Brice.Goglin
doxy: add "Object Kind" in terms and defs

And some cross refs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified include/hwloc/helper.h (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
Commit a1ba6d0917217a149e8b144c6db932e614ba15aa by Brice.Goglin
lstopo: fix --osf in usage

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
Commit b5eb51f401ccf2016ea5f0bcd85142ed679b4def by Brice.Goglin
doxy: fix a crossref to hwloc_modify_infos_op_e

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit e68083a05fe6e1c18a6453bad08ef091219af2d4 by Brice.Goglin
doxy: fix a crossref to hwloc_disc_status_flag_e

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/plugins.h (diff)
Commit 8ef74b6278015e40adc8ac57f32c0637fb5a5c92 by Brice.Goglin
contrib/ci.inria.fr: use UTC time for snapshot name

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-0-tarball.sh (diff)
Commit b4a99ae7bf84328cf416b8fa0248f3175f93e807 by Brice.Goglin
contrib/android: fix missing text outside of boxes

PCI speeds and factorization info did not appear at all
because they are displayed outside of their box but drawn
inside that box "view". Move them out of the box view to
the main layout.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/Lstopo.java (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/MainActivity.java (diff)
The file was modified utils/lstopo/lstopo-android.c (diff)
The file was modified contrib/android/AndroidApp/lstopo/src/main/cpp/lib.c (diff)
Commit fc01868ac81fed50f019efe6ccd9294fa9d1f13b by Brice.Goglin
contrib/android: rework the drawing of lines

Just use small boxes since we only draw horizontal/vertical lines.
Extend these boxes a little to make sure they touch neighbor boxes and lines.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/Lstopo.java (diff)
Commit 111af752cf3d3079a2ce84043978a77122c3cd1b by Brice.Goglin
contrib/android: disambiguate multiple box IDs to fix the text in collapsed PCI devices

Each box is now obj->gp_index*100+box_id

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-android.c (diff)
Commit 9a9d4803a4d705a6a54a1e49bb08c881310657a9 by Brice.Goglin
contrib/android: also disable PCI collapsing when we disable factorization

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/src/main/java/com/hwloc/lstopo/Options.java (diff)
Commit 364652f8b4b9f40d0be2d3788bb541208a0811f9 by Brice.Goglin
contrib/android: bump app to 1.5.3

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/android/AndroidApp/lstopo/build.gradle (diff)
Commit a331e4417dcbbee6532b7e0c9eb6a10ffa4be901 by Brice.Goglin
doxy: typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit d0073e6e69c8ef29265f2678797af6a509ed48e4 by Brice.Goglin
tests/hwloc_type_sscanf: check osdev specific type too

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
Commit 3b6bc32553ac4e0b1bd32fe70ca24a21739248c6 by Brice.Goglin
obj_type_snprintf: show "OS[type]" or "OSDev[type]" instead of "type" by default

And add a SHORT_NAMES flag to revert to the old behavior,
enabled by default in lstopo.

This will help disambiguating things like "memory" that could have different
meaning ("memory osdev" in 3+, "memory" kind, etc).

enum hwloc_obj_snprintf_flag_e gets renumbered but it wasn't released yet anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/irregulargroups-disallowed.console (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.console (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.console (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified include/hwloc.h (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.nocollapse.console (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified tests/hwloc/linux/32intel64-2p8co2t+8ve.console (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.console (diff)
Commit 35cc3ed50833e6cc2ff72d15c4449448f7e8015f by Brice.Goglin
tests/type_sscanf: update for new osdev format

Test new osdev[] and os[] prefixes, test short names.

Don't enforce the result for short names since it's not guaranteed
to parse back anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
Commit a6962208879066be7900f627c777be3d7fda2354 by Brice.Goglin
xml/import/v2: update the osdevice type before filtering

We filter objects using that osdev type, so make sure it's updated before.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml.c (diff)
Commit 015b20a7184e40e03c1deb876e69735991c80de8 by Brice.Goglin
osdev: change osdev.type from an enum to a bitmask

Each value is now 1<<x instead of x, and some got reordered.

No multiple bits set yet.

Default/unknown value is 0UL instead of -1.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.xml (diff)
The file was modified tests/hwloc/xml/192em64t-12gr2n8c2t.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.input (diff)
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
The file was modified tests/hwloc/openfabrics-verbs.c (diff)
The file was modified tests/hwloc/xml/192em64t-24n8c2t.xml (diff)
The file was modified NEWS (diff)
The file was modified tests/hwloc/xml/power8gpudistances.xml (diff)
The file was modified tests/hwloc/xml/24em64t-2n6c2t-pci.xml (diff)
The file was modified tests/hwloc/hwloc_iodevs.c (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.xml (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.xml (diff)
The file was modified tests/hwloc/xml/irregulargroups-disallowed.xml (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input2 (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pcilocality.xml (diff)
The file was modified tests/hwloc/xml/96em64t-4n4d3ca2co-pci.xml (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.xml (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output2 (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input1 (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v3.xml (diff)
Commit 1b624c1be25a07c2be772c7c647255da7be67476 by Brice.Goglin
osdev: BXI is now Network instead of OpenFabrics

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified NEWS (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc.h (diff)
Commit a8fe16491a776eda33b4b464005c4ba23e5dae8a by Brice.Goglin
osdev: use multiple bits in the osdev-specific type

Most GPUs are also CoProcs.
Most CoProcs are also GPUs.
Memory may also be Storage when non-volatile.
OFED is also Network.

hwloc_obj_type_snprintf() only prints one type when in shortnames mode.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/nvml.h (diff)
The file was modified tests/hwloc/xml/192em64t-12gr2n8c2t.xml (diff)
The file was modified include/hwloc/opencl.h (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.nocollapse.console (diff)
The file was modified tests/hwloc/nvml.c (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.xml (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/cuda.h (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input2 (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.xml (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified include/hwloc.h (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.console (diff)
The file was modified utils/hwloc/test-hwloc-diffpatch.input1 (diff)
The file was modified include/hwloc/gl.h (diff)
The file was modified tests/hwloc/cudart.c (diff)
The file was modified tests/hwloc/xml/16intel64-manyVFs.xml (diff)
The file was modified doc/examples/gpu.c (diff)
The file was modified hwloc/topology-cuda.c (diff)
The file was modified include/hwloc/rsmi.h (diff)
The file was modified tests/hwloc/xml/24em64t-2n6c2t-pci.xml (diff)
The file was modified include/hwloc/cudart.h (diff)
The file was modified hwloc/topology-nvml.c (diff)
The file was modified hwloc/traversal.c (diff)
The file was modified hwloc/topology-rsmi.c (diff)
The file was modified tests/hwloc/levelzero.c (diff)
The file was modified tests/hwloc/xml/192em64t-24n8c2t.xml (diff)
The file was modified include/hwloc/openfabrics-verbs.h (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pcilocality.xml (diff)
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified tests/hwloc/hwloc_type_sscanf.c (diff)
The file was modified tests/hwloc/opencl.c (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v3.xml (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified tests/hwloc/openfabrics-verbs.c (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output2 (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified utils/lstopo/lstopo-draw.c (diff)
The file was modified include/hwloc/plugins.h (diff)
The file was modified tests/hwloc/rsmi.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.xml (diff)
The file was modified tests/hwloc/xml/power8gpudistances.xml (diff)
The file was modified tests/hwloc/cuda.c (diff)
Commit c4850caeb5c3d23ee035c10aa6697e1f7aafef2b by Brice.Goglin
tests: update test-hwloc-compress-dir XMLs to new OS device types

These types were not involved in the actual tests but update them anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-compress-dir.input.tar.gz (diff)
The file was modified utils/hwloc/test-hwloc-compress-dir.output.tar.gz (diff)
Commit 8b22aea3a2923e0fd6b16cb90fcb980c704850ba by Brice.Goglin
gather-topology: bring back /proc/device-tree/cpus if --dt is given

May be useful for debugging what Linux exposes in sysfs, at least on ARM.

This reverts commit 9f37aae9a57f9fde9300f545daa9f2243489cc0c
and adds conditionals on top of the old code.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.1in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit e22f3405400f8914b157d1d84c16c0adb8b8dc06 by Brice.Goglin
NEWS: bring 2.9.3 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit d5059c6bc4aeecd3c3ca8b996a2ce0f2742b0332 by Brice.Goglin
core/insert_group: free the input object if failing to insert because shmem topo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 90b508f2a2c7c9afbc90012a77f046ead84befe4 by Brice.Goglin
core/insert_group: free the group if merging with root

Don't leak that object in this special case.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 9f8ef0b5f20cab4b183c6fd718fdd35cb17f6af1 by Brice.Goglin
tests/groups: check failing insert

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_groups.c (diff)
Commit 84aa3d60aa9a771cb33153fda2a61d29332805d1 by Brice.Goglin
API: document that insert_group() frees the input object on failure to insert

Refs #619

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 98893601b44590fd7577f986a1e31af63035b60c by Brice.Goglin
API: document that group alloc/insert must use the same topology

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit cbb876a5fd030506dd8c190b7df4c0087641b487 by Brice.Goglin
API: add hwloc_topology_free_group()

Closes #619

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified tests/hwloc/hwloc_groups.c (diff)
The file was modified doc/Makefile.am (diff)
The file was modified hwloc/topology.c (diff)
Commit ea7f6ba5f0e8d583ba80183ca5c5c3c3e16c1ad4 by Brice.Goglin
API: more links between hwloc_topology_alloc/insert/free_group_object()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 2e40224fa3afc6a166e230374246bcbe24d0edbb by Brice.Goglin
xml: fix statically-allocated opaque backend info array

It was sized for 64bit pointers max, it's not enough on 128bits platforms
such as Capability Hardware Enhanced RISC Instructions (CHERI).

Use something a bit more generic but still a bit hardwired to keep
things simple and statically allocatable on the stack.

Thanks to Jeff Hammond for the report.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/xml.h (diff)
Commit 43ad0c9e55903ba7e2e3823106ac88d654c62ab7 by Brice.Goglin
shmem: pad the end of header up to a multiple of pointer size

So that the following topology is well aligned on 128 bits architectures.

No change on 32/64bits architectures.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/shmem.c (diff)
Commit d62dbd86550590716597c806fcbb5b67b1a318aa by Brice.Goglin
doxy: update non-documented env vars

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 14ab4eda9c4cc39bc9960fb2a6080dca86db700a by Brice.Goglin
core: improve insertion error messages

Add subtype if any, display group kind/subkind
(useful for finding where the existing conflicting group came from).

Also cleanup the code a bit to factorize conditionals about fields to show or not.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit 3f6935a5b71a17433aa800750274b3d4f844563a by Brice.Goglin
linux: get CPUModel and CPUFamily from /proc/cpuinfo on LoongArch

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 6d5e0368d441e77871a355252ca60ed6f03032f9 by Brice.Goglin
API: clarify in filter doc that MemCaches are ignored by default

It was specified in the object type definition,
not in the filter API def.

Refs #622.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 549b84f6cab8200363fabe5255cfcefceb770ec7 by Brice.Goglin
API: clarify the default filtering of dies

The core keeps all dies by default. However our Linux backend
applies its own KEEP_STRUCTURE because it has no way to know
if the kernel exposes a real single die per package, or just
a default non-existing one.

x86 seems to behave properly: a recent SPR processor doesn't report
a single die in CPUID topology enumeraton, hence the x86 backend
doesn't have to filter any useless die out.

Refs #622

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 4bd8185ef1d4bc226bdb64d102ccaa279de94ae0 by Brice.Goglin
core: don't let hwloc_topology_check() test uninitialized topologies

It's documented as only valid for loaded topology.
Return earlier otherwise, but still do some basic topology-independent checks.

Refs #622.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit e6889d3e8491a473a0cf802120e5f7fb954087ca by Brice.Goglin
API: clarify that XML input errors are reported either in set_xml*() or load()

set_xml() when using libxml, load() when using our minimalistic parser.

Refs #623

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit e381de82d83d990b27e5c1882015564c68ad4446 by Brice.Goglin
API: clarify that set_pid() assumes the PID won't change until load()

Refs #624.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 2d6d6078dc5eda8ad5203e7204b8e67c57256e19 by Brice.Goglin
utils: fix the filtering of osdevs by osdev.type bitmask

If GPU is requested, GPU|CoProc is OK

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit 6e4ecd0494384f0a1fd8bc3196c485a9f6f2929d by Brice.Goglin
utils/calc.1: fix examples with --local-memory-flags

Missing physical option and typo.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 739a1f9ad0200ade1a11a349373f5cdd37183f10 by Brice.Goglin
contrib/ci.inria.fr: shorten the build path in windows cmake

Our CI uses NMake CMake-generator which doesn't like very long file names.
It already fails when building some branches with long names.

Use only the last 9 characters of the tarball name
(that's what our CI currently uses for abbreviated git hashes)
instead of the full hwloc-<branch>-date.git<hash> tarball name
as a build directory.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-1-wincmake.bat (diff)
Commit 5fa11e13d91c3300482727d94d28f307353c9d44 by Brice.Goglin
contrib/ci.inria.fr: allow to pass local options to the Windows CMake cmdline

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/job-1-wincmake.bat (diff)
Commit 56deb3b186e8abdef2427bf78d7ec107014c3603 by Brice.Goglin
utils/calc: rework parsing of levels for -I -N and -H

Replace hwloc_calc_type_depth() with hwloc_calc_parse_level().
Make it more generic for future reuses in other cases,
save all parsed info a new hwloc_calc_level structure.

HBM and MCDRAM are allowed but only used as raw NUMA for now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
Commit ef9f9f76366a8ce150a9971db0c877118ce2b411 by Brice.Goglin
utils: use the new hwloc_calc_parse_level() for parsing locations etc

Remove the old hwloc_calc_parse_depth_prefix() which was similar.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit e9c4e824a4a4e7289da75d4c15a2a4c9066c1269 by Brice.Goglin
utils: use the new struct hwloc_calc_level when counting/iterating over objects

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit 323bdba060eb4f5381bb54e69ccf82b173d116e2 by Brice.Goglin
utils: factorize the computing of the location prefix length

pci[vendor:device] needs a temporary hack because it's not handled
in hwloc_calc_parse_level() yet while typelen includes it.
Will be removed in next commit.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-annotate.c (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit 103f1faed9327342d0e028515fbb870ad7cbcd90 by Brice.Goglin
utils: move the parsing of os[] and pci[:] filters to hwloc_calc_parse_level()

Don't duplicate the parsing of osdev type, just use the now official
parsing of strings like "os[net]".

Remove a temporary hack that was needed for parsing pci[vendor:device]
now that hwloc_calc_parse_level() takes care of it.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
The file was modified utils/hwloc/hwloc-annotate.c (diff)
Commit 2e96d2b9a940338e0407bc5b2f04a96cd524ec1f by Brice.Goglin
utils: simplify the parsing of pci[vendor:device] filters

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit d49192037a18a8bdbf80a75ff9f11ca52475e6f5 by Brice.Goglin
utils: ignore location filters if we already parsed it as "osdev[osdev.type]"

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit a323bf354bb66677688fa3275f6bf7216b3136f6 by Brice.Goglin
utils: allow to filter locations by [subtype]

Useful for NUMA subtypes (HBM, etc).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit c24290fe98f532c7c0346d3e5f0f368a593dd3e9 by Brice.Goglin
utils: factorize the filtering of objects using the new level structure with filters

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit 2d84cae33736f593fa61050e34f4c51f4329dbd7 by Brice.Goglin
utils/tests: check location filters in calc and info tests

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified utils/hwloc/test-hwloc-calc.sh.in (diff)
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified utils/hwloc/test-hwloc-calc.output (diff)
Commit 211dd69f3f4369f1a13a07003a2f2dc905872ca1 by Brice.Goglin
utils: document location filters in calc.1 info.1 and hwloc.7

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc.7in (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
Commit 3ea7710d365b7e453fa003277e1f38bf25bf4684 by Brice.Goglin
lstopo: rework --only using the hwloc_calc_level structure

Allow --only with filters as other tools do.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo.c (diff)
The file was modified utils/lstopo/lstopo.h (diff)
The file was modified utils/lstopo/lstopo-text.c (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 89dc7061bad730937b123db06e4d80e11a9d0f2f by Brice.Goglin
utils/manpages: talk about numa[hbm]:X instead of hbm:X directly

hbm:X locations are still supported but the new numa[hbm]:X should be preferred.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc.7in (diff)
Commit fed97f603afc0a8fab2c6f846e3fda9f54f6e0d1 by Brice.Goglin
utils/calc.h: remove a obsolete verbose message

The object isn't always a PCI device here.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.h (diff)
Commit 882563c59caa2564f168000c4bb395d9c4b389ad by Brice.Goglin
core: don't guess memory tiers if memattrs are disabled

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc.h (diff)
Commit a1b939190938ac253d4ba27328445b61258320c8 by Brice.Goglin
core: disable all distances/cpukinds/memattrs call if flags are set

Don't even bother calling the distances/cpukinds/memattrs
which will do not nothing.

init()/destroy() calls are kept because init() doesn't know yet
if flags will be set to disable distances/cpukinds/memattrs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
Commit bc89428564311365f3f11e928a3d2106c17afb66 by Brice.Goglin
memattrs: rework the heuristics to find types of memory nodes

Actually create tiers internally to group nodes by type.
Split tiers if bandwidth or latency difference is too high (10% by default).
Don't enforce any order in types yet, just apply our easy heuristics
on unknown tiers instead of enforcing them to be first.

2 slight differences:
* HWLOC_MEMTIERS_GUESS=spm_is_hbm doesn't set non-HBM nodes to DRAM anymore.
* HWLOC_MEMTIERS_GUESS=none still sets node subtypes when they are obvious
  (no need to guess anything)

tests/hwloc/memtiers.c is updated, extended, and improved.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/memtiers.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.xml (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.console (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.console (diff)
Commit d535c6593d72df8e5f51455f7c8c5741831cb739 by Brice.Goglin
memattrs: add "node0_is_dram" option to HWLOC_MEMTIERS_GUESS envvar

NUMA node P#0 is usually DRAM (except of HBM-only CPUs).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/memtiers.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/memattrs.c (diff)
Commit 50efae721651a78d629f45a99be77b91008a2263 by Brice.Goglin
memattrs: use a bitmask for memory tier type instead of a simple enum

So that we may combine a CXL type with others.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/memattrs.c (diff)
Commit f6bb1157b0eb380ec83c52aab3d56733b8349910 by Brice.Goglin
memattrs: add CXL memory tier type

Combined with others for CXL-DRAM, CXL-NVM (and all non actually possible yet).

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/memattrs.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit bdf2d988297387064b683ad2e0eb4a62db784533 by Brice.Goglin
memattrs: add HWLOC_MEMTIERS envvar to force some tiers

Or to disable everything entirely.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified tests/hwloc/memtiers.c (diff)
Commit 1da57dace5a5574c0fd8f10575ac516601c824e2 by Brice.Goglin
linux/knl: enforce DRAM subtype for KNL DDR

It's already guessed by memtiers, but set it early anyway since we're sure it's correct.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified hwloc/memattrs.c (diff)
Commit e4333bf8c7a6e42c8190040e705eca1671494292 by Brice.Goglin
memattrs: sort memory tiers by BW and expose MemoryTier info attr

Add MemoryTier=0 to node in first tier, etc.

Check tiers in the memtiers test.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.console (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.console (diff)
The file was modified tests/hwloc/xml/8intel64-4n2t-memattrs.xml (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes-kept.console (diff)
The file was modified tests/hwloc/memtiers.c (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.console (diff)
The file was modified tests/hwloc/xml/64intel64-fakeKNL-SNC4-hybrid.xml (diff)
Commit a942a56a19215bdfe2abeaaf1f1d463a98596182 by Brice.Goglin
API+doxy: clarify that NUMA subtypes may be missing or wrong

Document HWLOC_MEMTIERS= envvar for overwriting them.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified doc/hwloc.doxy (diff)
Commit c3061d1313563d473ad4bd9bdd96e16a74e40e78 by Brice.Goglin
memattrs: only build memory tiers and set subtypes when not loading from XML

XML already has its own subtype and tiers.
If importing from <2.8 (no subtypes) or <2.10 (no tiers), one may set
HWLOC_MEMTIERS_REFRESH=1 to force refresh them.
May also be used if the backend set wrong subtypes for some reason.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/private/private.h (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified tests/hwloc/memtiers.c (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology.c (diff)
Commit f15fea14daefd82fa9cd1919d0ab77a748bca878 by Brice.Goglin
utils/manpages: talk much more about HBM NUMA nodes

Keep references to KNL MCDRAM but make sure we have HBM nearby
since it's going to be more common now.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.1in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/hwloc/hwloc.7in (diff)
The file was modified utils/lstopo/lstopo-no-graphics.1in (diff)
Commit 1b089e9e4bd79ec5678d39864732938401450b6e by Brice.Goglin
utils: filter based on memory tiers using numa[tier=1]

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified utils/hwloc/hwloc-calc.h (diff)
The file was modified utils/hwloc/hwloc.7in (diff)
Commit a474591c998313709fa4076859a4324acfaf8cee by Brice.Goglin
doxy: add a new section about heterogeneous memory

talks about tiers, subtypes, memory attrs,
and how to iterate/select NUMA nodes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/images/HACKING (diff)
The file was modified doc/hwloc.doxy (diff)
The file was addeddoc/images/heteromem.xml
The file was modified include/hwloc/memattrs.h (diff)
The file was addeddoc/images/heteromem.png
Commit 96e1889f3a1d28fda7f15e3901519e517c2d3b16 by Brice.Goglin
hwloc.7: typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc.7in (diff)
Commit 6157a3ae2530e88477735e8b8e5d241b6132e639 by Brice.Goglin
utils/gather-topology: gather "soc" bus

Will be used to identify some platforms.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit ea6be043724b084a62e368e3b3d918033d3b6c09 by Brice.Goglin
linux: gather SoC information

Exposed in root info as SoC0ID, SoC1Family, SoC0Revision, etc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified hwloc/topology-linux.c (diff)
Commit 9ae30cc5f920d3f56a2d5e289a0898b0f7ab793d by Brice.Goglin
linux/cpukinds: separate gathering from submitting cpukind

Get all sysfs frequencies and capacities in an array and then
submit cpukinds. We'll add intermediate quirks.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 60f20311450aab2a771f5711b5aef105dff98c2e by Brice.Goglin
linux/cpukinds: adjust turboboost max frequencies before building cpukinds

Avoids building cpukinds and merging them later.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 18a700537f689cf749eff7764733f50f9321c810 by Brice.Goglin
linux/cpukinds: factorize the registration of a single cpukind

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit e0e3c7c5dc6e7cc30722ea2035e66a3ee3330a27 by Brice.Goglin
linux/cpukinds: force homogeneity on NVIDIA Grace

Add a quirk to uniformize basefreq (to its minimum), maxfreq and capacity
(to their maximum) and enable it on NVIDIA Grace.

Also add the envvar HWLOC_CPUKINDS_HOMOGENEOUS to force that quirk (=1)
or avoid it (=0).

Closes #634

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit bc13d5cd745173ee72438f2033a978db875a58ff by Brice.Goglin
API: document the linkspeed as runtime-changing

Copy-paste what we had in lstopo.1 and make it appear
in the doxygen-generated doc.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 80ac332eefbc348fb26f2545b8c13dc5ddef6c23 by Brice.Goglin
tests/abi: check the PCI device attribute ABI

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_topology_abi.c (diff)
Commit 34d3da91a39b965b225f11b9f70b527cc19f385a by Brice.Goglin
doxy: document all PCI device/bridge attributes

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit 2ab91ca16f575554dbf6e8f57d4c192a8cfbed44 by Brice.Goglin
tests/x86: add a SapphireRapids Xeon test

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/x86/Intel-SapphireRapids-2xXeonMax9460.test
The file was addedtests/hwloc/x86/Intel-SapphireRapids-2xXeonMax9460.tar.bz2
The file was addedtests/hwloc/x86/Intel-SapphireRapids-2xXeonMax9460.xml
The file was modified tests/hwloc/x86/Makefile.am (diff)
Commit f0dc8fae1a0b8b23570fbaaca530feb18def8480 by Brice.Goglin
tests/x86: add a RaptorLake hybrid test

6 big HT cores, with private L2.
8 small non-HT cores, with L2 shared by 4.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/x86/Intel-RaptorLake-Corei7-1370P.test
The file was addedtests/hwloc/x86/Intel-RaptorLake-Corei7-1370P.tar.bz2
The file was modified tests/hwloc/x86/Makefile.am (diff)
The file was addedtests/hwloc/x86/Intel-RaptorLake-Corei7-1370P.xml
Commit eda8f6379d4801b8e359b978bfa5051e6c070cd9 by Brice.Goglin
tests/linux: add a RaptorLake hybrid test

6 big HT cores, with private L2.
8 small non-HT cores, with L2 shared by 4.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/linux/20em64t-hybrid-1p6c2t+2ca4co1t.test
The file was modified tests/hwloc/linux/Makefile.am (diff)
The file was addedtests/hwloc/linux/20em64t-hybrid-1p6c2t+2ca4co1t.tar.bz2
The file was addedtests/hwloc/linux/20em64t-hybrid-1p6c2t+2ca4co1t.console
Commit d70f784de98288a6594f70964ee8878da74b2484 by Brice.Goglin
linux: fix smbios memory Misc info attrs on big endian

SMBIOS fields are apparently little-endian (although the spec
isn't totally clear, that's what dmidecode assumes).
So change the byte order when reading multibyte fields
(only memory size and extended_size for now).

The bug appeared on BE platforms when running the linux test
"32em64t-2n8c+dax+nvme+mic+dimms" linux
(gathered from a little-endian platform).
This test is the only one where we have dimm information.

Fixes abfd6136e0fa4c0d7dff9b2260e4247ef27bffa2

Closes #637

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 2c16044e0c0a4d02d70323a80b6bb19e83383304 by Brice.Goglin
linux/smbios: use endian.h htole16/32()

Instead of reimplementing it ourself.

Thanks to Guillaume Mercier for the suggestion.

Improves d70f784de98288a6594f70964ee8878da74b2484
Refs #637

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit cfd3a3c42fe85eb4badf2d43932d7f7d89225b86 by samuel.thibault
test-gather-topology.sh: Disable test when cross-compiling

In case one uses binfmt to be able to run the cross-built library &
programs, the content of /proc/cpuinfo is supposed to be the guest cpu
content, while cat will have gotten the host cpu content.

Actually at the moment qemu erroneously gives the host cpu content, see

https://gitlab.com/qemu-project/qemu/-/issues/2004

but once that will get fixed, cross-compiled gather-topology testing will
fail (as expected), so disable it in that case.

Refs #638
The file was modified tests/hwloc/linux/gather/Makefile.am (diff)
The file was modified config/hwloc.m4 (diff)
Commit ab5fbeb0432f51512a5bdf12d4430e7a6496a22a by Brice.Goglin
hwloc/import/diff/libxml: don't count the \0 in the buffer length

Otherwise libxml 2.12 reports
  "parser error : Extra content at the end of the document"
because it doesn't want the xmlReadMemory() input buffer length to include the
ending \0 (as confirmed in https://gitlab.gnome.org/GNOME/libxml2/-/issues/638).

Closes #639

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml-libxml.c (diff)
Commit 84223c7009b4798dde0a0959be5c8955ba70a56f by Brice.Goglin
API: ending \0 must be included in xml input memory buffer and length

Our exporting functions include them, and importing are designed
to work with those first.
And commit ab5fbeb0432f51512a5bdf12d4430e7a6496a22a assumes this
now in libxml import too.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
The file was modified include/hwloc/diff.h (diff)
Commit 9eb2bf336124a0e27871b3b91be65ded6a376023 by Brice.Goglin
xml/import/nolibxml: assume ending \0 is included in input buffer and length

Required in the API since 84223c7009b4798dde0a0959be5c8955ba70a56f

Add the ending \0 where it should already be.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-xml-nolibxml.c (diff)
Commit 9d19f4ea6e71f655e3cb5d843cd74e59aeac0b5f by Brice.Goglin
linux: fix a strncpy overflow warning

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit 79e8321ad9d84bfbb46d4c31c42f6e9ba03d90f5 by Brice.Goglin
NEWS: bring 2.10.0 bullets in master

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
Commit 8f67418e13cacf1f62f88f344f69aa3ecfd91fdb by Brice.Goglin
lstopo/graphical: only print osdev storage|memory size once

PMEM OS devices had their Size printed both for Storage and Memory attrs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit ff4db1ef81577771ffd084b682037d4f8536a857 by Brice.Goglin
opencl.h: use the khronos PCI bus info extension when available

Added in OpenCL 3.0.7. Still an extension, but looks
more portable and AMD and NVIDIA ones.

It brings locality for Intel GPU OpenCL devices,
and works at least for NVIDIA GPUs too.

Refs #337 because hopefully it works Intel FPGA too.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/opencl.h (diff)
Commit c7ea1edfc1109e38021d682f9e9ecc2deeeb693b by Brice.Goglin
lstopo/graphics: fix the displaying of LevelZero non-HBM size

It was divided by 1048576, ie 16KiB instead of 16GiB.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit 52d7cf4b8814a314618f495fad3fea5a0ccb785c by Brice.Goglin
rename: add hwloc_cl_device_pci_bus_info_khr

Forgotten in ff4db1ef81577771ffd084b682037d4f8536a857

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
Commit 5be22ea4b6afbd4870abdaddb46baa1214c2b4b0 by Brice.Goglin
contrib/windows-cmake: fix source path of cuda/opencl tests

Forgotten in a54d2aa3fec88b1afd654360ff12496f2fe8dadf

Thanks to Moritz Kreutzer.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows-cmake/tests/CMakeLists.txt (diff)
Commit f207b0f9ac7b6f0651d0e5d36fc8ae8f229b4423 by Brice.Goglin
levelzero/xelink: correctly assign ports to subdevices

This also fixes a crash in verbose messages on GPUs without subdevices

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
Commit d081c32b2a30cf40b378814677738b1844d2e7c0 by Brice.Goglin
levelzero/xelink: accumulate subdevice link bandwidths in parents

Fix f207b0f9ac7b6f0651d0e5d36fc8ae8f229b4423 moved root BWs
to subdevices, which means there's nothing in root anymore
whenever there are subdevices.
Accumulate in parents so that parent BWs are identical to what
they were before the fix.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit eaecc3e331cf65954b949383ded9fdf6d1c9de96 by Brice.Goglin
doxy: update the description of the I/O device figure

PCI displaying changed since the text was written, it uses
BDF instead vendor:device now.
Also fix/improve the text a little bit.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit c38aa5dfe719b7c6993d3e6525e949cd73baff07 by Brice.Goglin
doxy: remove custom HTML div sections before doxygen sectons

They were only added to match the "runtime" css style, which is not
used anymore. The current doxygen-generated HTML is invalid because
it embeds those div declarations in <p>...</p>. Also anchors were
duplicated to move them a bit up.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit cd3a1a7afa46bb8e747dd482e978955917a65feb by Brice.Goglin
doxy: add a section about building with GNU Make and CMake

The GNU Make stuff is moved from the API example,
and CMake is added thanks to Florent Pruvost's example at
https://gitlab.inria.fr/solverstack/distrib/-/tree/master/cmake/test/hwloc

Refs #565

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
The file was modified README (diff)
Commit a9e533637d98c58a4adb008a903e03a596280e47 by tkoeppe
[cpuid-x86.h] Add MSAN annotations to mark memory as initialized
The file was modified include/private/cpuid-x86.h (diff)
Commit 9ff05d100442bde1f11fca058f1e8f9b334924ac by Brice.Goglin
API: improve the documentation of insert_group()

Start from the easy case where we group children of the same
parent, then talk about more general cases that may however fail.

Thanks to HadrienG2 for the suggestion.

Closes #648

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit b6fb7d236c494f43e1e43d392a8e1becdc8f53a8 by Brice.Goglin
API: typo in previous commit

Thanks to Clement Foyer.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc.h (diff)
Commit ee081625412f9a30ae5c84ba1a869029c753f807 by Brice.Goglin
API: add hwloc_obj_set_subtype()

hwloc_topology_insert_group() says explicitly that group->subtype may
be defined by the user. However it will be freed by hwloc's internal
call to free(), which may be incompatible to how the caller allocated
that subtype.
Now recommend the use of hwloc_obj_set_subtype() instead, it will take
care of duplicating the user-given given subtype.

Thanks to HadrienG2 for the report.

Closes #642.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/Makefile.am (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/hwloc.h (diff)
The file was modified hwloc/topology.c (diff)
Commit 0f18d33f34bf3c92c91332517ec406c5bafdd483 by Brice.Goglin
tests/hwloc/groups: use hwloc_obj_set_subtype()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/hwloc_groups.c (diff)
Commit 24d4281211e36bf23cc36d5b73cc2a49f25e807f by Brice.Goglin
deprecated.h: remove _nodeset() functions

Those were deprecated since 2.0, not sure why I didn't remove them
in commit 91399fbe8d05af5f664b30c43e6b92c76334a514 with others.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
The file was modified NEWS (diff)
The file was modified include/hwloc/deprecated.h (diff)
Commit 7ca51fd620f3c89abe6eef977c13929d3b36d4de by Brice.Goglin
doxy: update the XML compat FAQ for 3.0

And reword it significantly.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit eac4cbf08a351f078a3269ddacf8f3a288cf9ed6 by Brice.Goglin
doxy: update XML upgrade section to 3.0

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 0dd170407c407c544dcc21c17f56d8e07d2929d0 by Brice.Goglin
doxy: update the API change FAQ to 3.0

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 201d9b7abacb89c7f866233a8927e805187c6b54 by Brice.Goglin
doxy: update the API/ABI change FAQ to 3.0

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit dea36f5d35edeb0f21a0b94d19e2da3f0f6fa357 by Brice.Goglin
doxy: update the 2.0 upgrade page with 3.0

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit eeeda4ad2d0511a2334a02141dab6138b1e0ce47 by Brice.Goglin
contrib/windows-cmake: actually enable the CUDA backend when detected

Forgottin in commit 3ed566736ab06c4462c6632fece56f9622167ff8

Thanks to Moritz Kreutzer for the patch.

Closes #651

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/windows-cmake/static-components.h.in (diff)
Commit 79f2079fffb241791c844cd36fc772915ed098bd by Brice.Goglin
gather-topology: fix the gather of NVIDIA GPU NUMA info in /proc

It gathered a single file instead of a full directory.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-gather-topology.in (diff)
Commit 39fae7e3151fbd677f953f6990acd9eb2a0b9bfb by Brice.Goglin
linux: don't hide the NVIDIA GPU node on non-POWER platforms

And allow to force hide it with HWLOC_KEEP_NVIDIA_GPU_NUMA_NODES=0.

These nodes were hidden by default on POWER because people
could use interleaved memory allocations across sockets,
but they would also interleave across GPU memory.

On NVIDIA Grace Hopper, interleaved allocation isn't much
of an issue since there's a single CPU node (and 1 single GPU
node per GPU slice).

Thanks to Antoine Morvan for the report.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 42fea7bf6f65cea552a31bb7092432ff2320419d by Brice.Goglin
nvml: use the current PCI link speed

Not the max supported by the device, since it may be in a slower/narrower slot.

Just like we do in the PCI backend.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-nvml.c (diff)
The file was modified config/hwloc.m4 (diff)
The file was modified tests/hwloc/ports/include/nvml/nvml.h (diff)
Commit ca9f08973e11e7f71b6d10dbc6a4f30a4f5f9a4f by Brice.Goglin
nvml: fix the PCI link speed for PCI Gen4+

The code was never updated Gen>3.
We ignore slight encoding changes in last PCIe revisions,
but we'll factorize with the common PCI code soon anyway.

Thanks to Akram Sbaih for the report.

Closes #653

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-nvml.c (diff)
Commit cc260153fc2da93828e02d9b67efbce17d7d4621 by Brice.Goglin
pci+nvml: factorize PCI link speed computation

So that we don't forget to update NVML when adding new PCI
revisions to the duplicated PCI code.
Also the new NVML code doesn't handle encoding changes
in last PCIe revisions.

Refs #653

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-nvml.c (diff)
The file was modified include/private/misc.h (diff)
The file was modified hwloc/pci-common.c (diff)
Commit c6058d33e2fddf4229989ac363a154c5afb2346c by Brice.Goglin
rename.h: update with hwloc__pci_link_speed()

Forgotten in cc260153fc2da93828e02d9b67efbce17d7d4621

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified include/hwloc/rename.h (diff)
Commit 39fc77546699489afdcb7d2973ebcb5b439db69b by Brice.Goglin
info.1: typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.1in (diff)
Commit b4ce80732bb9abd699f68229db3c489669777351 by Brice.Goglin
windows: fix dll filenames when UNICODE is enabled

LoadLibrary() and GetModuleHandle() failed when UNICODE
is enabled because the filename was not properly encoded.
Use the TEXT() macro to fix the encoding.

Most dynamic function pointers would be NULL, and we'd
fail to discover many features and to bind.

Thanks to Martin for the report.

Closes #655

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/ports/include/windows/windows.h (diff)
The file was modified hwloc/topology-windows.c (diff)
Commit fe391535c4a5a307c7ad80dee1f4301ed34445ea by Brice.Goglin
lstopo/x11: fix Unknown icon shown on GNOME

Set WM_CLASS to help GNOME Shell associate an instance of lstopo with
lstopo.desktop.

Signed-off-by: Chris Mayo <aklhfex@gmail.com>
The file was modified utils/lstopo/lstopo-cairo.c (diff)
Commit d94d7595071f640d21728184eaf6ad8add013c54 by Brice.Goglin
publish_doc: update URL checks

Generalize for recent outputs when grepping for section name.
Generalize for the upcoming 3.x upgrade API page.
Improve the grep output.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/dist/publish_doc (diff)
Commit d016c2126b2b2ae633dc39f03f5def5b4623eca6 by Brice.Goglin
doxy: don't forget to ship heteromem.png

Forgotten when adding the heteromem section in commit
a474591c998313709fa4076859a4324acfaf8cee

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/Makefile.am (diff)
Commit 9873cbfe08bec9ea8c73780602478d327f52733a by Brice.Goglin
core: add the KiB suffix to Size info when it's implicit

All info attr except SectorSize, as documented.

This does NOT break v3 import in v2 since the suffix is ignored
and assumed "KiB" by default.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-levelzero.c (diff)
The file was modified hwloc/topology-opencl.c (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified hwloc/topology-cuda.c (diff)
The file was modified tests/hwloc/linux/32em64t-2n8c+dax+nvme+mic+dimms.xml (diff)
The file was modified tests/hwloc/linux/2pa-pcidomain32bits.console (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v3.xml (diff)
The file was modified tests/hwloc/xml/cxlmem+dax.v2.xml (diff)
The file was modified tests/hwloc/linux/40intel64-2g2n4c+pcilocality.xml (diff)
The file was modified hwloc/topology-linux.c (diff)
The file was modified tests/hwloc/linux/32intel64-2p8co2t+8ve.console (diff)
The file was modified tests/hwloc/linux/40intel64-4n10c+pci-conflicts.console (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified hwloc/topology-rsmi.c (diff)
Commit e888948b23072de31a67c94f668cf7aee4d77676 by Brice.Goglin
tests/xml: add "KiB" suffix to existing Size info values

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/xml/power8gpudistances.xml (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-wholeio.xml (diff)
The file was modified utils/hwloc/test-hwloc-annotate.output2 (diff)
The file was modified tests/hwloc/xml/32em64t-2n8c2t-pci-normalio.xml (diff)
Commit 0a50225d4944abbb4242fbd3be48574d2f4ee645 by Brice.Goglin
lstopo: properly handle Size info suffixes

It should be "KiB" in most cases, but also handle others anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/lstopo/lstopo-draw.c (diff)
Commit bee9bfe583a06d51d730e959636ebd13f2fdfa13 by Brice.Goglin
doxy: document the "KiB" suffix for Size info attr values

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified NEWS (diff)
The file was modified doc/hwloc.doxy (diff)
Commit 313de564cd1ee2a2f3a1fa208316f523b3da0ca2 by Brice.Goglin
utils/calc+info: rework --best-memattr to allow multiple nodes

--best-memattr was very strict when selecting best nodes.
The node had to be the best for the entire input CPUs.
On a dual-socket machine with HBM in each socket, each HBM
is the best local but not the best remote. Hence we'd report
no best for the entire machine.

Now we return both HBM for the entire machine by default,
but may go back to the previous behavior by adding ",strict"
after the attribute name.

Adding ",default" also allows to return all nodes if no best
was found (if no attribute values are found).

Thanks to Antoine Morvan for the report.

Refs #652

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/misc.h (diff)
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-calc.1in (diff)
The file was modified utils/hwloc/hwloc-info.1in (diff)
Commit 5f491732c4c23d8622ba79f2947c32ae3a0c1603 by Brice.Goglin
utils/calc+info: abstract-out the parsing of best node flags

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-calc.c (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/misc.h (diff)
Commit 34caf3529c00c2762604bf96c38dfb91e8f2b1a8 by Brice.Goglin
utils/bind: switch to the same code as hwloc-calc for --best-memattr

With support for best-node flags etc.

Refs #652

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-bind.c (diff)
The file was modified utils/hwloc/hwloc-bind.1in (diff)
Commit d9cafda3b0048048f644a0d5472ecb2696dc61e8 by Brice.Goglin
utils/misc: remove hwloc_utils_get_best_node_in_nodeset_by_memattr()

Not used by hwloc-bind anymore.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/misc.h (diff)
Commit 25aacbdd05444325c3450ba734b732b17731e018 by Brice.Goglin
tests/x86: add a Zhaoxin KH-40000

Its topology enumeration CPUID leaf return 0 in max_procs
in the last level, hence we cannot break-out of the enumeration
using AMD's condition.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/x86/Makefile.am (diff)
The file was addedtests/hwloc/x86/Zhaoxin-CentaurHauls-KaiSheng-KH-40000.tar.bz2
The file was addedtests/hwloc/x86/Zhaoxin-CentaurHauls-KaiSheng-KH-40000.test
The file was addedtests/hwloc/x86/Zhaoxin-CentaurHauls-KaiSheng-KH-40000.xml
Commit b373c975eaf05b506bd08beda427769a80068333 by Brice.Goglin
x86: update intro comments

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit d249650eb4effacd4a445a3a5a1ff7a397b0ca2f by Brice.Goglin
x86: update comments about topology enumeration loop break-out conditions

Refs #593

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit f9df603ede427b8905a9ced5838c2cfaed188629 by Brice.Goglin
tests/xml: update the Zhaoxin KH-40000 cpuid test

Use a recent 2-socket output.
The old one was single-socket and the BIOS was outdated,
causing some CPUIDs to be wrong.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was removedtests/hwloc/x86/Zhaoxin-CentaurHauls-KaiSheng-KH-40000.test
The file was addedtests/hwloc/x86/Zhaoxin-2xCentaurHauls-KaiSheng-KH-40000.test
The file was removedtests/hwloc/x86/Zhaoxin-CentaurHauls-KaiSheng-KH-40000.xml
The file was addedtests/hwloc/x86/Zhaoxin-2xCentaurHauls-KaiSheng-KH-40000.xml
The file was removedtests/hwloc/x86/Zhaoxin-CentaurHauls-KaiSheng-KH-40000.tar.bz2
The file was modified tests/hwloc/x86/Makefile.am (diff)
Commit 5d761ed922c19ca6c970ef8b0530cae1de286dfc by Brice.Goglin
x86: update topology enumeration loop break-out conditions

Zhaoxin confirmed they follow the Intel specs in commercial products,
so assume we can break-out of the enumeration loop once one of the
Intel or AMD condition is met.

Fixes #593.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-x86.c (diff)
Commit abc3a80b36f01d00673f39e4e81c4749245fa48d by Brice.Goglin
tests/x86: add new KH-40000 cpuid tarball

Forgotten in f9df603ede427b8905a9ced5838c2cfaed188629

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was addedtests/hwloc/x86/Zhaoxin-2xCentaurHauls-KaiSheng-KH-40000.tar.bz2
Commit f90b69c101f126fec938421ad5aa12d5fc17c84f by Brice.Goglin
linux: try standard cgroup/cpuset mount point before reading /proc/mounts

cgroups are pretty much always mounted on /sys/fs/cgroup nowadays,
both for v1 and v2. And the obsolete cpuset filesystem was often
mounted on /dev/cpuset. Try those before reading /proc/mounts.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology-linux.c (diff)
Commit d47b2cb00c445bf041045639184aab03866c55e1 by Brice.Goglin
utils/info: small improvements to manpage and usage

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit e8b564ded222fd198e7fbf314bae9fa2f1e18ac6 by Brice.Goglin
utils/info: abstract-out functions to show levels, topology info and support

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 742a3852a83b18bc07be97ae195308730970b4d3 by Brice.Goglin
utils/info: "levels", "topology" and "support" may now be passed as target objects

And can be combined.
This will deprecate --support --topology and --objects in v3.

"topology" is already used in hwloc-annotate to manipulate topology info attrs.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 74ef79254d5f4325902c7e785b6e4711e7c112b1 by Brice.Goglin
utils/info/tests: switch to new keywords "levels", "support" and "topology"

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/test-hwloc-info.output (diff)
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
Commit 6d1d8e4425ef33de5a92e7dde8139bd10091e0b8 by Brice.Goglin
utils/info: --topology, --support and --objects deprecated in 3.0

Replaces by levels topology and support keywords.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified NEWS (diff)
Commit db84eb29afc76d881524b1ff4134dad26e3b03cd by Brice.Goglin
utils/info: abstract out the printing of attribute lines

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.c (diff)
Commit 665a51abade46ccd39158acbab2f8b59bc15be83 by Brice.Goglin
utils/info: add --get-attr to output a single attribute without prefix etc

Refs #661

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified utils/hwloc/hwloc-info.1in (diff)
The file was modified utils/hwloc/hwloc-info.c (diff)
The file was modified utils/hwloc/test-hwloc-info.sh.in (diff)
The file was modified contrib/completion/bash/hwloc (diff)
The file was modified utils/hwloc/test-hwloc-info.output (diff)
Commit 8eb363bdaf5dede52bb94cb2475fb11b84ae871d by Brice.Goglin
core: export remove_infos()

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/topology.c (diff)
The file was modified include/hwloc/rename.h (diff)
The file was modified include/private/private.h (diff)
Commit 99007056dfde9292bbc0db3923c0d8d12b401224 by Brice.Goglin
memattrs: remove MemoryTier info when not valid anymore

When recomputing memory tiers, remove all existing ones
instead of just replacing some.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified hwloc/memattrs.c (diff)
Commit 08398217233d7055ac28681a48ce9fcee561097e by Brice.Goglin
memattrs: add MemoryTiersNr=2 info attr to topology

Closes #661

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid-msc.console (diff)
The file was modified hwloc/topology-xml.c (diff)
The file was modified tests/hwloc/linux/fakeheteromemtiers.console (diff)
The file was modified doc/hwloc.doxy (diff)
The file was modified tests/hwloc/linux/nvidiagpunumanodes-kept.console (diff)
The file was modified hwloc/memattrs.c (diff)
The file was modified tests/hwloc/linux/64intel64-fakeKNL-SNC4-hybrid.console (diff)
The file was modified tests/hwloc/linux/fakememinitiators-1np2c+1npp+gi.console (diff)
Commit 6d4df37dbe32c9f7bb5dbca3201abf284ad4a174 by Brice.Goglin
doxy: typo

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified doc/hwloc.doxy (diff)
Commit 1e156a9235cf0e219c564dc9517ee5b992ada897 by Brice.Goglin
contrib/ci.inria.fr: only keep last 30 builds and last 30 days

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/Jenkinsfile (diff)
Commit 63a8288d31a1baf67a909466aba9a022c78ca7b1 by Brice.Goglin
contrib/ci.inria.fr: actually keep last 25 builds for max 50 days

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
The file was modified contrib/ci.inria.fr/Jenkinsfile (diff)