diff --git a/.github/workflows/reusable_gpu.yml b/.github/workflows/reusable_gpu.yml index 1dc8a6a91..4fbb5a53a 100644 --- a/.github/workflows/reusable_gpu.yml +++ b/.github/workflows/reusable_gpu.yml @@ -39,7 +39,6 @@ jobs: name: "${{matrix.os}}, ${{matrix.build_type}}, shared=${{matrix.shared_library}}" env: VCPKG_PATH: "${{github.workspace}}/build/vcpkg/packages/hwloc_x64-windows;${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows;" - CUDA_PATH: "C:/cuda" COVERAGE_NAME : "exports-coverage-${{inputs.provider}}-${{inputs.runner}}" # run only on upstream; forks will not have the HW if: github.repository == 'oneapi-src/unified-memory-framework' @@ -52,13 +51,14 @@ jobs: runs-on: ["DSS-${{inputs.runner}}", "DSS-${{matrix.os}}"] steps: - # Set number of processes and compiler based on OS + # Set various build params based on OS - name: "[Win] Establish build params" if : ${{ matrix.os == 'Windows' }} run: | - echo "C_COMPILER=cl" >> $GITHUB_ENV - echo "CXX_COMPILER=cl" >> $GITHUB_ENV - echo "PROCS=$Env:NUMBER_OF_PROCESSORS" >> $GITHUB_ENV + echo "C_COMPILER=cl" >> $env:GITHUB_ENV + echo "CXX_COMPILER=cl" >> $env:GITHUB_ENV + echo "PROCS=$Env:NUMBER_OF_PROCESSORS" >> $env:GITHUB_ENV + echo "EXTRA_CMAKE_PATH=$Env:CUDA_PATH" >> $env:GITHUB_ENV - name: "[Lin] Establish build params" if : ${{ matrix.os == 'Ubuntu' }} @@ -93,7 +93,7 @@ jobs: - name: Configure build run: > cmake - -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}}${{env.CUDA_PATH}}" + -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}};${{env.EXTRA_CMAKE_PATH}}" -B ${{env.BUILD_DIR}} -DCMAKE_INSTALL_PREFIX="${{env.INSTL_DIR}}" -DCMAKE_BUILD_TYPE=${{matrix.build_type}} diff --git a/ChangeLog b/ChangeLog index 6a7c63faa..c12e01f37 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Mon May 12 2025 Łukasz Stolarczuk + + * Version 0.11.2 + + This patch release contains following changes: + - retrieve numanode object by os index instead of logical index (#1309) + Thu May 08 2025 Łukasz Stolarczuk * Version 0.11.1 diff --git a/src/memtargets/memtarget_numa.c b/src/memtargets/memtarget_numa.c index 51a6fbf08..a0a1e592a 100644 --- a/src/memtargets/memtarget_numa.c +++ b/src/memtargets/memtarget_numa.c @@ -263,17 +263,15 @@ static umf_result_t query_attribute_value(void *srcMemoryTarget, return UMF_RESULT_ERROR_NOT_SUPPORTED; } - hwloc_obj_t srcNumaNode = hwloc_get_obj_by_type( - topology, HWLOC_OBJ_NUMANODE, - ((struct numa_memtarget_t *)srcMemoryTarget)->physical_id); + hwloc_obj_t srcNumaNode = hwloc_get_numanode_obj_by_os_index( + topology, ((struct numa_memtarget_t *)srcMemoryTarget)->physical_id); if (!srcNumaNode) { LOG_PERR("Getting HWLOC object by type failed"); return UMF_RESULT_ERROR_INVALID_ARGUMENT; } - hwloc_obj_t dstNumaNode = hwloc_get_obj_by_type( - topology, HWLOC_OBJ_NUMANODE, - ((struct numa_memtarget_t *)dstMemoryTarget)->physical_id); + hwloc_obj_t dstNumaNode = hwloc_get_numanode_obj_by_os_index( + topology, ((struct numa_memtarget_t *)dstMemoryTarget)->physical_id); if (!dstNumaNode) { LOG_PERR("Getting HWLOC object by type failed"); return UMF_RESULT_ERROR_INVALID_ARGUMENT;