Skip to content

Commit

Permalink
Add devdax CI workflow
Browse files Browse the repository at this point in the history
Signed-off-by: Lukasz Dorau <[email protected]>
  • Loading branch information
ldorau committed Sep 4, 2024
1 parent baf8230 commit 6002495
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 0 deletions.
66 changes: 66 additions & 0 deletions .github/workflows/devdax.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# This workflow builds and tests the devdax memory provider.
# It requires a DAX device (e.g. /dev/dax0.0) configured in the OS.
# This DAX device should be specified using UMF_TESTS_DEVDAX_PATH and UMF_TESTS_DEVDAX_SIZE
# CI environment variables.

name: DevDax

on: [workflow_call]

permissions:
contents: read

env:
UMF_TESTS_DEVDAX_PATH : "/dev/dax0.0"
UMF_TESTS_DEVDAX_SIZE : 1054867456
BUILD_DIR : "${{github.workspace}}/build"
INSTL_DIR : "${{github.workspace}}/../install-dir"

jobs:
devdax:
name: Build
# run only on upstream; forks may not have a DAX device
if: github.repository == 'oneapi-src/unified-memory-framework'
strategy:
matrix:
build_type: [Debug, Release]
shared_library: ['ON', 'OFF']

runs-on: ["DSS-DEVDAX", "DSS-Ubuntu"]
steps:
- name: Check if the devdax exists
run: |
ndctl list -N --device-dax
ls -al ${{env.UMF_TESTS_DEVDAX_PATH}}
- name: Checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
fetch-depth: 0

- name: Configure build
run: >
cmake
-B ${{env.BUILD_DIR}}
-DCMAKE_INSTALL_PREFIX="${{env.INSTL_DIR}}"
-DCMAKE_BUILD_TYPE=${{matrix.build_type}}
-DCMAKE_C_COMPILER=gcc
-DCMAKE_CXX_COMPILER=g++
-DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}}
-DUMF_BUILD_BENCHMARKS=OFF
-DUMF_BUILD_TESTS=ON
-DUMF_BUILD_GPU_TESTS=OFF
-DUMF_BUILD_GPU_EXAMPLES=OFF
-DUMF_FORMAT_CODE_STYLE=OFF
-DUMF_DEVELOPER_MODE=ON
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
-DUMF_BUILD_LEVEL_ZERO_PROVIDER=OFF
-DUMF_TESTS_FAIL_ON_SKIP=ON
- name: Build UMF
run: cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j $(nproc)

- name: Run only devdax tests
working-directory: ${{env.BUILD_DIR}}
run: ctest -C ${{matrix.build_type}} -R devdax -V
3 changes: 3 additions & 0 deletions .github/workflows/pr_push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,9 @@ jobs:
name: Basic builds
needs: [FastBuild]
uses: ./.github/workflows/basic.yml
DevDax:
needs: [FastBuild]
uses: ./.github/workflows/devdax.yml
Sanitizers:
needs: [FastBuild]
uses: ./.github/workflows/sanitizers.yml
Expand Down

0 comments on commit 6002495

Please sign in to comment.