tests/unit: Add unit test for hwloc CPU binding in shmem_init#56
Draft
bcmIntc wants to merge 1 commit into
Draft
tests/unit: Add unit test for hwloc CPU binding in shmem_init#56bcmIntc wants to merge 1 commit into
bcmIntc wants to merge 1 commit into
Conversation
Tests the hwloc CPU binding code path in shmem_internal_heap_postinit() introduced and fixed in: - 'Adds initial work to update hwloc implementation' - 'Fix hwloc CPU binding bugs in shmem_internal_heap_postinit' Verifies that shmem_init() completes without crashing, PE identity is valid after init, and a put/wait_until round-trip between PE 0 and PE 1 succeeds, confirming memory operations are correct after CPU binding. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description:
Adds
test/unit/shmem_init_hwloc.cto validate the hwloc CPU binding logic inshmem_internal_heap_postinit()introduced in Sandia-OpenSHMEM/SOS.What is tested:
After
shmem_init(), each PE's CPU affinity should be bound to the cpuset of a single NUMA node (or socket as fallback). This is verified by:sched_getaffinity()before and aftershmem_init()/sys/devices/system/cpu/cpuN/topology/physical_package_idfor every CPU in the post-init affinity and asserting they all share the same socket — the direct observable effect of the binding codeProvides test coverage for PR: Sandia-OpenSHMEM/SOS#1226