@@ -156,14 +156,49 @@ jobs:
156156 - name : Install UR
157157 run : cmake --install ${{github.workspace}}/ur_build
158158
159+ - name : Checkout UMF
160+ uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
161+ with :
162+ repository : oneapi-src/unified-memory-framework
163+ ref : main
164+ path : umf-repo
165+ fetch-depth : 1
166+ fetch-tags : false
167+
168+ - name : Configure UMF
169+ run : >
170+ cmake -DCMAKE_BUILD_TYPE=Release
171+ -S${{github.workspace}}/umf-repo
172+ -B${{github.workspace}}/umf_build
173+ -DUMF_BUILD_BENCHMARKS=ON
174+ -DUMF_TESTS_FAIL_ON_SKIP=ON
175+
176+ - name : Build UMF
177+ run : cmake --build ${{github.workspace}}/umf_build -j $(nproc)
178+
179+ - name : Compute core range
180+ run : |
181+ # Compute the core range for the first NUMA node, skipping the first 4 cores.
182+ # This is to avoid the first cores that the kernel is likely to schedule more work on.
183+ CORES=$(lscpu | awk '
184+ /NUMA node0 CPU|On-line CPU/ {line=$0}
185+ END {
186+ split(line, a, " ")
187+ split(a[4], b, ",")
188+ sub(/^0/, "4", b[1])
189+ print b[1]
190+ }')
191+ echo "CORES=$CORES" >> $GITHUB_ENV
192+
159193 - name : Run benchmarks
160194 working-directory : ${{ github.workspace }}/ur-repo/
161195 id : benchmarks
162196 run : >
163- numactl -N 0 ${{ github.workspace }}/ur-repo/scripts/benchmarks/main.py
197+ taskset -c ${{ env.CORES }} ${{ github.workspace }}/ur-repo/scripts/benchmarks/main.py
164198 ~/bench_workdir
165199 --sycl ${{ github.workspace }}/sycl_build
166200 --ur ${{ github.workspace }}/ur_install
201+ --umf ${{ github.workspace }}/umf_build
167202 --adapter ${{ matrix.adapter.str_name }}
168203 ${{ inputs.upload_report && '--output-html' || '' }}
169204 ${{ inputs.bench_script_params }}
@@ -201,3 +236,8 @@ jobs:
201236 with :
202237 path : ur-repo/benchmark_results.html
203238 key : benchmark-results-${{ matrix.adapter.str_name }}-${{ github.run_id }}
239+
240+ - name : Get information about platform
241+ if : ${{ always() }}
242+ working-directory : ${{ github.workspace }}/ur-repo/
243+ run : .github/scripts/get_system_info.sh
0 commit comments