Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
f4e2c3a
NIXLBENCH: Fix memory allocation for non OBJ/storage use case (#637)
iyastreb Jul 30, 2025
f56509a
Plugins should set rpath so that they can load their dependencies (#612)
ovidiusm Jul 30, 2025
d744784
EXAMPLES/PYTHON: partial md example - fix test logic and warnings (#640)
roiedanino Jul 30, 2025
94eb1d4
Add env variable that is used during the build (#642)
ovidiusm Jul 30, 2025
7288fd8
OBJ: Add missing backend options (#643)
w1ldptr Jul 31, 2025
1cbbef0
Agent: Fix thread safety issue in (and optimize) genNotif(). (#649)
ColinNV Aug 1, 2025
54294d2
Download arch specific AWS CLI (#650)
ovidiusm Aug 1, 2025
43ffb37
.CI/SCRIPTS: Avoid tcp port collisions, unify duplicated code in CI t…
roiedanino Aug 3, 2025
0032b73
[CI] increase CI build history retention policy (#657)
dpressle Aug 3, 2025
75fd6e2
Build: Fixed Docker fail to build ubuntu22.04 (#653)
dfarge Aug 4, 2025
e6ab575
CI: Support both NIXL and NIXLBench in container builder (#567)
Alexey-Rivkin Aug 4, 2025
160a434
RUST: Implement queryMem binding (#620)
w1ldptr Aug 5, 2025
f28e773
NIXL/GTEST: remove dead code (#652)
iyastreb Aug 6, 2025
5e52e03
contrib: Simplify Docker build (#604)
aranadive Aug 6, 2025
03d2fd1
NIXL UCX progress thread refactoring (#606)
iyastreb Aug 6, 2025
a0203eb
Clone with depth 1 wherever possible (#668)
ovidiusm Aug 8, 2025
ddc9977
Allow UCX as backend in kvbench plan and profile commands (#611)
ovidiusm Aug 8, 2025
5cfb4dd
PYTHON-PROJECT-WIDE: replaced prints with a logger, fixed backtraces …
roiedanino Aug 11, 2025
d2d41a7
SRC/BINDINGS/RUST: build and install rust bindings with meson, add ru…
roiedanino Aug 11, 2025
36812d3
NIXLBENCH: Add support for GDS_MT backend (#671)
aranadive Aug 11, 2025
e9182b8
Nixlbench: build in release mode by default in container (#614)
ovidiusm Aug 12, 2025
4d5e23f
CI: Add 30 min timeout to test steps (#660)
Alexey-Rivkin Aug 12, 2025
2001a31
NIXLBENCH: Add test in CI (#639)
ovidiusm Aug 12, 2025
97ef6d1
CORE: codestyle fixes related to PR509 (#678)
evgeny-leksikov Aug 13, 2025
70ad247
Bugfix: Replace select() with poll() in connectToIP to prevent stack …
michal-shalev Aug 14, 2025
95654fb
Update ATTRIBUTIONS-CPP.md (#651) (#674)
pvijayakrish Aug 14, 2025
5ecf23b
doc: Added white background to figures of SB API doc (#680)
mkhazraee Aug 14, 2025
8c6f003
NIXLBENCH: Set RW sync mode for UCX when num_threads > 1 (#686)
iyastreb Aug 14, 2025
50002cc
Nixlbench: measure and display tail latency (#591)
ovidiusm Aug 14, 2025
975990c
AGENT: cleanup metadata on failure (#509)
evgeny-leksikov Aug 14, 2025
16dcb7d
[CI] Add new CI test to detect large PRs (#627)
dpressle Aug 14, 2025
b8e5a10
plugins/posix: Fix queue type message (#689)
aranadive Aug 15, 2025
ca630a1
CI: Bump UCX version (#673)
Alexey-Rivkin Aug 15, 2025
89f0ce5
Handle Xfer canсeled error accordingly to connection status (#677)
evgeny-leksikov Aug 15, 2025
9f77cc4
NIXL/UCX threadpool (#573)
iyastreb Aug 15, 2025
4327431
query_mem example fix (#692)
mkhazraee Aug 16, 2025
623063c
BACKEND/UCX: cleanup AM based control path (#685)
evgeny-leksikov Aug 16, 2025
81555a2
add mooncake notify support (#493)
haobayuxi Aug 17, 2025
66e3469
Add NIXL Telemetry infrastructure (#562)
rafiw Aug 18, 2025
10642d4
Fix nixlbench: properly implement --num_files, fix READ mode support …
da-x Aug 18, 2025
e655e3e
Added enforcement for supportsNotif when a backend plugin supportsRem…
mkhazraee Aug 18, 2025
4224d64
CI: Add package for ss (#698)
ovidiusm Aug 19, 2025
f9fd3fc
Update release version for NIXL (#697)
pvijayakrish Aug 19, 2025
d8a5721
[Mooncake Backend] fix: filter out DOWN network interfaces (#406)
201341 Aug 19, 2025
1632067
AGENT/DATA: loadConnInfo and loadRemoteSections refactoring (#683)
evgeny-leksikov Aug 20, 2025
1a58f06
OBJ: Remove backend options from default params map (#703)
w1ldptr Aug 20, 2025
96d813c
Plugin manager enhancements (#622)
aranadive Aug 21, 2025
8e3cae0
Build latest gdrcopy (#712)
ovidiusm Aug 21, 2025
69f924a
Add missing deps in mooncake build script (#710)
ovidiusm Aug 21, 2025
ace909c
Cherry pick to fix telemetry test issue (#715)
mkhazraee Aug 21, 2025
8f2875d
NIXL/UCX: Replace homemade list of requests with vector (#694)
iyastreb Aug 22, 2025
6731af8
refactor: replace bool with XferStatus enum in get_xfer_status method…
da-x Aug 24, 2025
787dd7b
Removed has_overlaps and overlaps methods from nixlDescList as they a…
mkhazraee Aug 24, 2025
e7f13ff
[GDS] bugfix - initialize CUfileDescr_t (#721)
barneuman Aug 25, 2025
b666025
Use standard signal name in python test script (#717)
ovidiusm Aug 25, 2025
1eb6e6b
BACKEND/UCX: fix req initialization in checkXfer (#690)
evgeny-leksikov Aug 25, 2025
eb07b18
NIXLBench: Check individual thread buffer size (#726)
aranadive Aug 25, 2025
a416e7e
CI: Download rustup in a more reliable way (#725)
ovidiusm Aug 25, 2025
6421c09
Add bandwidth metric to NIXL KVBench (#670)
x41lakazam Aug 26, 2025
41627c9
Add instructions for GPU selection in nixl kvbench CTP (#724)
x41lakazam Aug 26, 2025
45204fa
Pass num_workers to ucx from nixlBench (#708)
Pyngon Aug 26, 2025
f336666
BINDINGS/RUST: adding missing Agent APIs - make_xfer_req, prepare_xf…
roiedanino Aug 26, 2025
287b6e2
clang formatted nixl_descriptors.h (#734)
mkhazraee Aug 26, 2025
b2e5d0e
Removed progress method and its indicator from SB API. (#701)
mkhazraee Aug 27, 2025
add1824
API/GPU/UCX: Create GPU-side Device API (#704)
michal-shalev Aug 28, 2025
65a3ddf
move the free notify msg to mooncake backend and remove the progress …
haobayuxi Aug 28, 2025
5703245
Added pythonic objects for xfer and dlist handles (#737)
mkhazraee Aug 28, 2025
9047279
Do not bundle libcuda* and libcufile into the wheel (#745)
ovidiusm Aug 28, 2025
8b917e4
Fallback to manual CUDA detection when meson detection fails (#743)
ovidiusm Aug 28, 2025
4ccd41d
Added error logs throughout nixl_agent. (#738)
mkhazraee Aug 29, 2025
568a40a
[HF3FS] add mempool (#695)
Pyngon Aug 29, 2025
0339b5a
Create host-side GPU transfer request API (#705)
michal-shalev Aug 29, 2025
fc9310b
BENCH/NIXL: error handling related fixes (#740)
evgeny-leksikov Aug 29, 2025
e63ae10
[CI] verification image build job fixup (#744)
dpressle Aug 31, 2025
3449329
API/GPU/UCX: Add read signal device API (#749)
michal-shalev Aug 31, 2025
4b58ab5
BUILD: detect UCX GPU device API (#720)
michal-shalev Sep 1, 2025
1e92035
Fix Error in barrier when testing block size above 1M (#722)
Pyngon Sep 2, 2025
d899d0f
CI: avoid /build comment to trigger blossom-ci (#748)
dpressle Sep 2, 2025
21810ac
Improve populate method performance for not fully sorted inputs. (#729)
mkhazraee Sep 2, 2025
cd0c219
Upgrade DOCA to 3.1 in Dockerfiles (#753)
ovidiusm Sep 2, 2025
9f496fb
benchmark/kvbench: Add the remaining plugins to kvbench (#754)
aranadive Sep 2, 2025
50fe345
Update ATTRIBUTIONS-Rust.md (#728) (#759)
pvijayakrish Sep 2, 2025
7d003c7
BENCH/NIXL: error handling related fixes (#757)
evgeny-leksikov Sep 2, 2025
57c29f5
Remove sorted flag from user facing nixlDescList (#731)
mkhazraee Sep 2, 2025
3614a37
BINDINGS: Package the OBJ plugin (#755)
ovidiusm Sep 2, 2025
0625b22
Agent: Add getXferTelemetry API. (#702)
mkhazraee Sep 2, 2025
3911d60
SRC/BINDINGS/RUST: Added get_local_partial_md, send_local_partial_md …
roiedanino Sep 2, 2025
1d68e70
chore: Update release version for NIXL (#762)
nv-nmailhot Sep 3, 2025
2a7b80b
Nixlbench: Install torch with CUDA support (#758)
ovidiusm Sep 4, 2025
531e803
CI: fix for blossom-ci auto trigger without comment (#771)
dpressle Sep 4, 2025
8d78f89
Revert "CI: fix for blossom-ci auto trigger without comment (#771)" (…
dpressle Sep 4, 2025
fc3ed17
Codeowners: create entry for python (#768)
ovidiusm Sep 4, 2025
292e28a
CODEWONERS: Fix syntax (#776)
ovidiusm Sep 4, 2025
237ac84
Added debug prints to serdes class and removed the macros in nixl_age…
mkhazraee Sep 4, 2025
f0ee4a3
NIXLBENCH: Add CUDA detection fallback to build script (#777)
ovidiusm Sep 4, 2025
920335b
Make ETCD watch timeout configurable (#766)
michal-shalev Sep 7, 2025
98f8f06
[CI] run test on DGX host (#752)
dpressle Sep 8, 2025
3cc77c6
LISTENER: Prevent double-set of promise in etcd metadata watcher (#765)
ovidiusm Sep 8, 2025
18b9f1d
Add host-side signal device API + implementation (#756)
michal-shalev Sep 8, 2025
0d74ea7
API/GPU/UCX: Implement GPU Device API (#751)
michal-shalev Sep 8, 2025
97dbf40
CORE: Do not delete requests unless we own them (#782)
ovidiusm Sep 9, 2025
7060d70
Telemetry small fixes (#750)
rafiw Sep 9, 2025
86da616
Add a flag to agent config to captureTelemetry (#764)
mkhazraee Sep 10, 2025
8708e35
Fix signature mismatch in xferBenchNvshmemWorker::exchangeIOV (#786)
foraxe Sep 15, 2025
51a045a
Simplify copyright-check (#790)
dmitry-tokarev-nv Sep 16, 2025
cb025cc
Implement host device API (#789)
michal-shalev Sep 16, 2025
7f078cd
Add libfabric plugin with topology-aware EFA device management (#784)
akkart-aws Sep 16, 2025
cdb0a9d
DEVICE/API: Remove deviceMemList class and simplify create/release GP…
michal-shalev Sep 16, 2025
cd411bb
Added missing if in libfabric meson file (#801)
ovidiusm Sep 16, 2025
9c0ed38
Implement host-side API 2.0 (#797)
michal-shalev Sep 18, 2025
3daa987
CI: disable DGX tests in CI (#811)
dpressle Sep 19, 2025
d865179
DEVICE/API: Add nixlGpuWriteSignal API for local signal writing (#805)
michal-shalev Sep 22, 2025
3978a64
Nixlbench: Upgrade DOCA to 3.1 in nixlbench container (#760)
ovidiusm Sep 22, 2025
c15e64e
[Libfabric] Add same-agent transfer optimization with memcpy fallback…
akkart-aws Sep 22, 2025
a7851fd
[Libfabric] Efa direct fallback and device mapping improvements (#817)
akkart-aws Sep 23, 2025
99bc5cd
Crash handler
ovidiusm Sep 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .ci/assets/nixl-version-info.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# NIXL Container Version Information

# Version information
NIXL_VERSION="${NIXL_VERSION}"
UCX_VERSION="${UCX_VERSION}"
EFA_INSTALLER_VERSION="${EFA_INSTALLER_VERSION}"

# Build information
BUILD_TARGET="${BUILD_TARGET}"
BUILD_TIMESTAMP="${BUILD_TIMESTAMP}"
ARCHITECTURE="${arch}"
BASE_IMAGE_NAME="${BASE_IMAGE}"
BASE_IMAGE_TAG="${BASE_IMAGE_TAG}"
TAG_NAME="${TAG_NAME}"

# Jenkins build information
BUILD_NUMBER="${BUILD_NUMBER}"
BUILD_URL="${BUILD_URL}"
JOB_NAME="${JOB_NAME}"
NODE_NAME="${NODE_NAME}"
WORKSPACE="${WORKSPACE}"
19 changes: 0 additions & 19 deletions .ci/assets/nixlbench-version-info.json.template

This file was deleted.

5 changes: 5 additions & 0 deletions .ci/docs/setup_nvidia_gpu_with_rdma_support_on_ubuntu.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@ sudo apt install nvidia-kernel-open-<version> # e.g., nvidia-kernel-open-575
sudo reboot
```

If running on nvlink hosts like DGX we should also install fabric manager
```bash
sudo apt install nvidia-fabricmanager-<version> # should be same as kernel version nvidia-fabricmanager-575
```

Verify with `nvidia-smi`. Driver compatibility is critical for RDMA support[^1_1][^1_3].


Expand Down
210 changes: 210 additions & 0 deletions .ci/jenkins/lib/build-container-matrix.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,210 @@
# NIXL Container Build Configuration
# Builds and pushes NIXL and NIXLBench containers with configurable NIXL/UCX versions

---
job: nixl-ci-build-container

# Build settings
failFast: false
timeout_minutes: 240

# Infrastructure
kubernetes:
cloud: il-ipp-blossom-prod
namespace: swx-media
limits: "{memory: 16Gi, cpu: 8000m}"
requests: "{memory: 8Gi, cpu: 4000m}"

runs_on_dockers:
- { name: "podman-v5.0.2", url: "quay.io/podman/stable:v5.0.2", privileged: true }

# Build matrix
matrix:
axes:
arch:
- x86_64
- aarch64

# Configuration
env:
REGISTRY_HOSTESS: "urm.nvidia.com"
REGISTRY_REPO: "sw-nbu-swx-nixl-docker-local/verification"
LOCAL_TAG_BASE: "nixl-ci:build-"
MAIL_FROM: "jenkins@nvidia.com"
NPROC: "16"

taskName: "${BUILD_TARGET}/${arch}/${axis_index}"

credentials:
- credentialsId: 'svc-nixl-artifactory-token'
usernameVariable: 'ARTIFACTORY_USERNAME'
passwordVariable: 'ARTIFACTORY_PASSWORD'

pipeline_start:
shell: action
module: groovy
run: |
def suffix = params.TAG_SUFFIX ? "-${params.TAG_SUFFIX}" : ""
def buildName = params.BUILD_TARGET
currentBuild.displayName += "-${buildName}-${params.NIXL_VERSION}-${params.UCX_VERSION}${suffix}"
env.ENABLE_NIXL_BUILD = params.BUILD_TARGET == 'nixl' ? 'true' : 'false'
env.ENABLE_NIXLBENCH_BUILD = params.BUILD_TARGET == 'nixlbench' ? 'true' : 'false'
echo "ENABLE_NIXL_BUILD: ${env.ENABLE_NIXL_BUILD}"
echo "ENABLE_NIXLBENCH_BUILD: ${env.ENABLE_NIXLBENCH_BUILD}"
echo "BUILD_TARGET: ${params.BUILD_TARGET}"

# Build pipeline
steps:
- name: Prepare
run: |
# Setup podman and dependencies
rm -f /etc/containers/storage.conf
podman system reset -f || true
ln -sfT $(type -p podman) /usr/bin/docker
yum install -y git gettext

- name: Build NIXLBench
enable: ${ENABLE_NIXLBENCH_BUILD}
run: |
# Clone UCX source for nixlbench
git clone https://github.com/openucx/ucx.git ucx-src
git -C ucx-src checkout "${UCX_VERSION}"

"benchmark/nixlbench/contrib/build.sh" \
--base-image "${BASE_IMAGE}" \
--base-image-tag "${BASE_IMAGE_TAG}" \
--tag "${LOCAL_TAG_BASE}${arch}" \
--arch "${arch}" \
--no-cache \
--nixl "$WORKSPACE" \
--ucx "$WORKSPACE/ucx-src"

- name: Build NIXL
enable: ${ENABLE_NIXL_BUILD}
run: |
export UCX_REF="${UCX_VERSION}"

"contrib/build-container.sh" \
--base-image "${BASE_IMAGE}" \
--base-image-tag "${BASE_IMAGE_TAG}" \
--tag "${LOCAL_TAG_BASE}${arch}" \
--arch "${arch}" \
--no-cache

- name: Add Version Info
run: |
# Extract standardized 8-char commit hash for UCX version info:
if [[ "$BUILD_TARGET" == "nixlbench" ]]; then
CLEAN_UCX=$(cd "$WORKSPACE/ucx-src" && git rev-parse --short=8 HEAD)
else
UCX_REF="$UCX_VERSION"

# Hash? if yes truncate, else ls-remote then truncate
if [[ "$UCX_REF" =~ ^[a-f0-9]{8,40}$ ]]; then
CLEAN_UCX="${UCX_REF:0:8}"
else
CLEAN_UCX=$(git ls-remote https://github.com/openucx/ucx.git "$UCX_REF" | head -n1 | cut -c1-8)
fi

# Verify
[[ -n "$CLEAN_UCX" ]] || { echo "ERROR: failed to resolve UCX_REF=$UCX_REF"; exit 1; }
fi

# Calculate tag name
NIXL_VERSION="$(git rev-parse --short=8 HEAD)"
TAG_NAME="${BASE_IMAGE_TAG}-nixl-${NIXL_VERSION}-ucx-${CLEAN_UCX}-${arch}${TAG_SUFFIX:+-${TAG_SUFFIX}}"

# Generate version info file from template
export BUILD_TIMESTAMP="$(date -u '+%Y-%m-%dT%H:%M:%SZ')" \
BUILD_TARGET BASE_IMAGE BASE_IMAGE_TAG arch \
BUILD_NUMBER BUILD_URL JOB_NAME NODE_NAME WORKSPACE \
NIXL_VERSION UCX_VERSION="${CLEAN_UCX}" TAG_NAME
envsubst < .ci/assets/nixl-version-info.template > version-info

# Add version info to the image
docker run -itd --name tempcontainer "${LOCAL_TAG_BASE}${arch}"
docker cp version-info "tempcontainer:/opt/nixl-version"
docker commit tempcontainer "${LOCAL_TAG_BASE}${arch}"
docker rm -f tempcontainer || true

- name: Push
credentialsId: 'svc-nixl-artifactory-token'
run: |
source version-info
ARTIFACTORY_REGISTRY="${REGISTRY_HOSTESS}/${REGISTRY_REPO}/${BUILD_TARGET}"
ARTIFACTORY_API="https://${REGISTRY_HOSTESS}/artifactory/api/storage/${REGISTRY_REPO}/${BUILD_TARGET}"

# Prepare image properties
IMAGE_PROPERTIES="BUILD_TARGET=${BUILD_TARGET};NIXL_VERSION=${NIXL_VERSION};UCX_VERSION=${UCX_VERSION};arch=${arch};"
IMAGE_PROPERTIES+="BUILD_NUMBER=${BUILD_NUMBER};JOB_NAME=${JOB_NAME};BUILD_URL=${BUILD_URL};NODE_NAME=${NODE_NAME};"
IMAGE_PROPERTIES+="BASE_IMAGE=${BASE_IMAGE};BASE_IMAGE_TAG=${BASE_IMAGE_TAG}"

# Login to Artifactory
echo "$ARTIFACTORY_PASSWORD" | docker login "${REGISTRY_HOSTESS}" -u "$ARTIFACTORY_USERNAME" --password-stdin

# Function to tag, push, and set properties
tag_push_set_properties() {
local target_tag="$1"
echo "Creating tag: ${target_tag}"
docker tag "${LOCAL_TAG_BASE}${arch}" "${ARTIFACTORY_REGISTRY}:${target_tag}"
docker push "${ARTIFACTORY_REGISTRY}:${target_tag}"
curl -H "Authorization: Bearer ${ARTIFACTORY_PASSWORD}" -X PUT \
"${ARTIFACTORY_API}/${target_tag}?properties=${IMAGE_PROPERTIES}"
}

# Always create standard tag
tag_push_set_properties "${TAG_NAME}"

# Check if latest tag should be updated
if [[ "${UPDATE_LATEST}" == "true" ]]; then
tag_push_set_properties "${BASE_IMAGE_TAG}-${arch}-latest"
fi

- name: Show Results
run: |
source version-info
echo "Image type built: ${BUILD_TARGET} (${arch})"
echo "Image pushed to: ${REGISTRY_HOSTESS}/${REGISTRY_REPO}/${BUILD_TARGET}:${TAG_NAME}"
if [[ "${UPDATE_LATEST}" == "true" ]]; then
echo "Latest tag updated: ${REGISTRY_HOSTESS}/${REGISTRY_REPO}/${BUILD_TARGET}:${BASE_IMAGE_TAG}-${arch}-latest"
fi

echo -e "\nBuild config for manual repro:"
if [[ "${BUILD_TARGET}" == "nixlbench" ]]; then
echo "git clone https://github.com/openucx/ucx.git ucx-src && (cd ucx-src && git checkout ${UCX_VERSION})"
echo "benchmark/nixlbench/contrib/build.sh --base-image ${BASE_IMAGE} --base-image-tag ${BASE_IMAGE_TAG} --tag local-test-tag --arch ${arch} --no-cache --nixl \$WORKSPACE --ucx \$WORKSPACE/ucx-src"
else
echo "export UCX_REF=${UCX_VERSION}"
echo "contrib/build-container.sh --base-image ${BASE_IMAGE} --base-image-tag ${BASE_IMAGE_TAG} --tag local-test-tag --arch ${arch} --no-cache"
fi

pipeline_stop:
shell: action
module: groovy
run: |
if (params.MAIL_TO) {
def jobStatus = currentBuild.result ?: 'SUCCESS'
def statusColor = jobStatus == 'SUCCESS' ? 'green' : 'red'

def userName = currentBuild.rawBuild.getCause(hudson.model.Cause.UserIdCause)?.userName ?: 'schedule'

mail(
from: env.MAIL_FROM,
to: params.MAIL_TO,
subject: "Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' - ${jobStatus}",
mimeType: 'text/html',
body: """
<p>Started by: <b>${userName}</b></p>
<p>Status: <span style="color: ${statusColor};"><b>${jobStatus}</b></span></p>
<p>Job: <a href='${env.JOB_URL}'>${env.JOB_NAME}</a></p>
<p>Build: <a href='${env.BUILD_URL}'>#${env.BUILD_NUMBER}</a></p>
<p>Console Output: <a href='${env.BUILD_URL}console'>Full Log</a></p>
<p>Build Target: <b>${params.BUILD_TARGET}</b></p>
<p>NIXL Version: <b>${params.NIXL_VERSION}</b></p>
<p>UCX Version: <b>${params.UCX_VERSION}</b></p>
<p>Base Image: <b>${params.BASE_IMAGE}:${params.BASE_IMAGE_TAG}</b></p>
<p>Architectures: <b>x86_64, aarch64</b></p>
${params.UPDATE_LATEST ? '<p>Latest tag updated: <b>Yes</b></p>' : ''}
"""
)
}
16 changes: 16 additions & 0 deletions .ci/jenkins/lib/build-matrix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ matrix:

env:
NIXL_INSTALL_DIR: /opt/nixl
TEST_TIMEOUT: 30
NPROC: "16"

steps:
- name: Build
Expand All @@ -59,14 +61,28 @@ steps:

- name: Test CPP
parallel: false
timeout: "${TEST_TIMEOUT}"
run: |
.gitlab/test_cpp.sh ${NIXL_INSTALL_DIR}

- name: Test Python
parallel: false
timeout: "${TEST_TIMEOUT}"
run: |
.gitlab/test_python.sh ${NIXL_INSTALL_DIR}

- name: Test Nixlbench
parallel: false
timeout: "${TEST_TIMEOUT}"
run: |
.gitlab/test_nixlbench.sh ${NIXL_INSTALL_DIR}

- name: Test Rust
parallel: false
timeout: "${TEST_TIMEOUT}"
run: |
.gitlab/test_rust.sh ${NIXL_INSTALL_DIR}

- name: Build Docker Image
parallel: false
containerSelector: "{ name: 'podman.*' }"
Expand Down
Loading