Skip to content

[CICD] Add P2P engine perf benchmark (one-sided read/write) (#498) #387

[CICD] Add P2P engine perf benchmark (one-sided read/write) (#498)

[CICD] Add P2P engine perf benchmark (one-sided read/write) (#498) #387

name: "Unit Tests: runner"
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
unittest-runner:
runs-on: [self-hosted, cx-build]
container:
image: localhost:5000/flagscale:cuda12.8.1-cudnn9.7.1-python3.12-torch2.7.0-time2507111538
options: --gpus all --privileged --ipc=host --ulimit memlock=-1 --ulimit stack=67108864
steps:
- name: Checkout Code
uses: actions/checkout@v6
with:
repository: ${{ github.event.pull_request.head.repo.full_name }}
ref: ${{ github.event.pull_request.head.ref }}
ssh-strict: true
ssh-user: git
persist-credentials: true
clean: true
sparse-checkout-cone-mode: true
fetch-tags: false
show-progress: true
lfs: false
submodules: true
set-safe-directory: true
- name: Build Google Test
run: |
cd /__w/FlagCX/FlagCX/third-party/googletest
mkdir -p build
cd build
cmake ..
make -j$(nproc)
- name: Build FlagCX
run: |
cd /__w/FlagCX/FlagCX
export MPI_HOME=/usr/local/mpi
make -j$(nproc) USE_NVIDIA=1 COMPILE_KERNEL=1
- name: Build runner unit tests
run: |
cd /__w/FlagCX/FlagCX/test/unittest/runner
export MPI_HOME=/usr/local/mpi
make -j$(nproc)
- name: Run runner unit tests (no MPI)
run: |
cd /__w/FlagCX/FlagCX/test/unittest/runner
export MPI_HOME=/usr/local/mpi
export LD_LIBRARY_PATH=/__w/FlagCX/FlagCX/build/lib:$LD_LIBRARY_PATH
make run-unit
- name: Run runner MPI collective tests
run: |
cd /__w/FlagCX/FlagCX/test/unittest/runner
export MPI_HOME=/usr/local/mpi
export PATH=$MPI_HOME/bin:$PATH
export LD_LIBRARY_PATH=/__w/FlagCX/FlagCX/build/lib:$LD_LIBRARY_PATH
make run-mpi