Skip to content

Commit 07c3dcc

Browse files
committed
test
1 parent a2df66b commit 07c3dcc

File tree

2 files changed

+61
-108
lines changed

2 files changed

+61
-108
lines changed

.github/workflows/pr_push.yml

Lines changed: 0 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -16,77 +16,7 @@ permissions:
1616
contents: read
1717

1818
jobs:
19-
CodeChecks:
20-
uses: ./.github/workflows/reusable_checks.yml
21-
DocsBuild:
22-
uses: ./.github/workflows/reusable_docs_build.yml
23-
FastBuild:
24-
name: Fast builds
25-
needs: [CodeChecks, DocsBuild]
26-
uses: ./.github/workflows/reusable_fast.yml
27-
Build:
28-
name: Basic builds
29-
needs: [FastBuild]
30-
uses: ./.github/workflows/reusable_basic.yml
31-
DevDax:
32-
needs: [FastBuild]
33-
uses: ./.github/workflows/reusable_dax.yml
34-
MultiNuma:
35-
needs: [FastBuild]
36-
uses: ./.github/workflows/reusable_multi_numa.yml
37-
L0:
38-
needs: [Build]
39-
uses: ./.github/workflows/reusable_gpu.yml
40-
with:
41-
name: "LEVEL_ZERO"
42-
shared_lib: "['ON']"
43-
CUDA:
44-
needs: [Build]
45-
uses: ./.github/workflows/reusable_gpu.yml
46-
with:
47-
name: "CUDA"
48-
shared_lib: "['ON']"
49-
Sanitizers:
50-
needs: [FastBuild]
51-
uses: ./.github/workflows/reusable_sanitizers.yml
52-
QEMU:
53-
needs: [FastBuild]
54-
uses: ./.github/workflows/reusable_qemu.yml
55-
with:
56-
short_run: true
57-
ProxyLib:
58-
needs: [Build]
59-
uses: ./.github/workflows/reusable_proxy_lib.yml
60-
Valgrind:
61-
needs: [Build]
62-
uses: ./.github/workflows/reusable_valgrind.yml
63-
Coverage:
64-
# total coverage (on upstream only)
65-
if: github.repository == 'oneapi-src/unified-memory-framework'
66-
needs: [Build, DevDax, L0, CUDA, MultiNuma, QEMU, ProxyLib]
67-
uses: ./.github/workflows/reusable_coverage.yml
68-
secrets: inherit
69-
with:
70-
trigger: "${{github.event_name}}"
71-
Coverage_partial:
72-
# partial coverage (on forks)
73-
if: github.repository != 'oneapi-src/unified-memory-framework'
74-
needs: [Build, QEMU, ProxyLib]
75-
uses: ./.github/workflows/reusable_coverage.yml
76-
CodeQL:
77-
needs: [Build]
78-
permissions:
79-
contents: read
80-
security-events: write
81-
uses: ./.github/workflows/reusable_codeql.yml
82-
Trivy:
83-
needs: [Build]
84-
permissions:
85-
contents: read
86-
security-events: write
87-
uses: ./.github/workflows/reusable_trivy.yml
8819
Compatibility:
89-
needs: [Build]
9020
uses: ./.github/workflows/reusable_compatibility.yml
9121
strategy:
9222
matrix:

.github/workflows/reusable_compatibility.yml

Lines changed: 61 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- name: Install apt packages
2424
run: |
2525
sudo apt-get update
26-
sudo apt-get install -y clang cmake libnuma-dev libtbb-dev
26+
sudo apt-get install -y clang cmake hwloc libnuma-dev libtbb-dev
2727
2828
- name: Checkout "tag" UMF version
2929
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -36,72 +36,95 @@ jobs:
3636
working-directory: ${{github.workspace}}/tag_version
3737
run: .github/scripts/install_hwloc.sh
3838

39-
- name: Configure "tag" UMF build
40-
working-directory: ${{github.workspace}}/tag_version
39+
- name: Checkout latest UMF version
40+
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
41+
with:
42+
fetch-depth: 0
43+
path: ${{github.workspace}}/latest_version
44+
45+
- name: Configure latest UMF build
46+
working-directory: ${{github.workspace}}/latest_version
4147
run: >
4248
cmake
43-
-B ${{github.workspace}}/tag_version/build
49+
-B ${{github.workspace}}/latest_version/build
50+
-DCMAKE_INSTALL_PREFIX=_install
4451
-DCMAKE_BUILD_TYPE=Debug
4552
-DUMF_BUILD_SHARED_LIBRARY=ON
4653
-DCMAKE_C_COMPILER=gcc
4754
-DCMAKE_CXX_COMPILER=g++
48-
-DUMF_BUILD_TESTS=ON
49-
-DUMF_BUILD_EXAMPLES=ON
55+
-DUMF_BUILD_TESTS=OFF
5056
-DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
5157
-DUMF_BUILD_CUDA_PROVIDER=ON
5258
-DUMF_FORMAT_CODE_STYLE=OFF
5359
-DUMF_DEVELOPER_MODE=ON
5460
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
55-
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
56-
-DUMF_TESTS_FAIL_ON_SKIP=ON
57-
58-
- name: Build "tag" UMF
59-
working-directory: ${{github.workspace}}/tag_version
60-
run: |
61-
cmake --build ${{github.workspace}}/tag_version/build -j $(nproc)
6261
63-
- name: Run "tag" UMF tests
64-
working-directory: ${{github.workspace}}/tag_version/build
62+
- name: Build latest UMF
63+
working-directory: ${{github.workspace}}/latest_version
6564
run: |
66-
LD_LIBRARY_PATH=${{github.workspace}}/tag_version/build/lib/ ctest --output-on-failure
67-
68-
- name: Checkout latest UMF version
69-
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
70-
with:
71-
fetch-depth: 0
72-
path: ${{github.workspace}}/latest_version
65+
cmake --build ${{github.workspace}}/latest_version/build -j $(nproc)
7366
74-
- name: Configure latest UMF build
67+
- name: Install latest UMF
7568
working-directory: ${{github.workspace}}/latest_version
69+
run: sudo cmake --install ${{github.workspace}}/latest_version/build --config Debug
70+
71+
- name: Configure "tag" UMF build
72+
working-directory: ${{github.workspace}}/tag_version
7673
run: >
7774
cmake
78-
-B ${{github.workspace}}/latest_version/build
75+
-B ${{github.workspace}}/tag_version/build
7976
-DCMAKE_BUILD_TYPE=Debug
8077
-DUMF_BUILD_SHARED_LIBRARY=ON
8178
-DCMAKE_C_COMPILER=gcc
8279
-DCMAKE_CXX_COMPILER=g++
83-
-DUMF_BUILD_TESTS=OFF
80+
-DUMF_BUILD_TESTS=ON
81+
-DUMF_BUILD_EXAMPLES=ON
8482
-DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
8583
-DUMF_BUILD_CUDA_PROVIDER=ON
8684
-DUMF_FORMAT_CODE_STYLE=OFF
8785
-DUMF_DEVELOPER_MODE=ON
8886
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
87+
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
88+
-DUMF_TESTS_FAIL_ON_SKIP=ON
8989
90-
- name: Build latest UMF
91-
working-directory: ${{github.workspace}}/latest_version
90+
- name: Build "tag" UMF
91+
working-directory: ${{github.workspace}}/tag_version
9292
run: |
93-
cmake --build ${{github.workspace}}/latest_version/build -j $(nproc)
93+
cmake --build ${{github.workspace}}/tag_version/build -j $(nproc)
9494
95-
- name: Run "tag" UMF tests with latest UMF libs (warnings enabled)
96-
working-directory: ${{github.workspace}}/tag_version/build
97-
# Disable incompatible tests:
98-
# - GTEST_FILTER used to skip only single test cases
99-
# - ctest's exclude - disable test binary that rely on internal structures
100-
run: >
101-
UMF_LOG="level:warning;flush:debug;output:stderr;pid:no"
102-
LD_LIBRARY_PATH=${{github.workspace}}/latest_version/build/lib/
103-
GTEST_FILTER="-*umfIpcTest.GetPoolByOpenedHandle*"
104-
ctest --verbose -E "umf-mempolicy"
95+
#- name: Run "tag" UMF tests
96+
# working-directory: ${{github.workspace}}/tag_version/build
97+
# run: |
98+
# LD_LIBRARY_PATH=${{github.workspace}}/tag_version/build/lib/ ctest --output-on-failure
99+
100+
#- name: Run "tag" UMF tests with latest UMF libs (warnings enabled)
101+
# working-directory: ${{github.workspace}}/tag_version/build
102+
# # Disable incompatible tests:
103+
# # - GTEST_FILTER used to skip only single test cases
104+
# # - ctest's exclude - disable test binary that rely on internal structures
105+
# run: >
106+
# UMF_LOG="level:warning;flush:debug;output:stderr;pid:no"
107+
# LD_LIBRARY_PATH=${{github.workspace}}/latest_version/build/lib/
108+
# GTEST_FILTER="-*umfIpcTest.GetPoolByOpenedHandle*"
109+
# ctest --verbose -E "umf-mempolicy"
110+
111+
- name: Build and run "tag" examples using the latest UMF libraries
112+
working-directory: ${{github.workspace}}/tag_version
113+
run: |
114+
EXAMPLES_EXCLUDE_LIST="cmake|cuda|hmat|level_zero"
115+
rm -rf build
116+
rm -rf include
117+
mkdir _examples
118+
cd _examples
119+
EXAMPLES_LIST=$(find ${{github.workspace}}/tag_version/examples -maxdepth 1 -mindepth 1 -type d | grep -Ev $EXAMPLES_EXCLUDE_LIST | xargs -n 1 basename)
120+
for EXAMPLE_NAME in $EXAMPLES_LIST; do
121+
cd ${{github.workspace}}/tag_version
122+
mkdir -p _examples/$EXAMPLE_NAME;
123+
cd _examples/$EXAMPLE_NAME;
124+
CMAKE_PREFIX_PATH=${{github.workspace}}/latest_version/_install cmake ${{github.workspace}}/tag_version/examples/$EXAMPLE_NAME;
125+
make;
126+
./umf_example_$EXAMPLE_NAME;
127+
done
105128
106129
windows:
107130
name: Windows

0 commit comments

Comments
 (0)