diff --git a/.github/actions/compute-matrix/action.yaml b/.github/actions/compute-matrix/action.yaml index 4672fba3..6e421c69 100644 --- a/.github/actions/compute-matrix/action.yaml +++ b/.github/actions/compute-matrix/action.yaml @@ -3,8 +3,10 @@ name: Compute matrix outputs: BUILD_MATRIX: value: ${{ steps.compute-matrix.outputs.BUILD_MATRIX }} - TEST_MATRIX: - value: ${{ steps.compute-matrix.outputs.TEST_MATRIX }} + TEST_MATRIX_WHEELS: + value: ${{ steps.compute-matrix.outputs.TEST_MATRIX_WHEELS }} + TEST_MATRIX_CONDA: + value: ${{ steps.compute-matrix.outputs.TEST_MATRIX_CONDA }} runs: using: composite @@ -24,7 +26,7 @@ runs: - { CUDA_VER: '12.0.1', ARCH: 'arm64', PY_VER: '3.11', LINUX_VER: 'rockylinux8' } " - export TEST_MATRIX=" + export TEST_MATRIX_WHEELS=" - { CUDA_VER: '12.0.1', ARCH: 'amd64', PY_VER: '3.9', LINUX_VER: 'ubuntu18.04', gpu: 'v100', driver: 'latest' } - { CUDA_VER: '12.0.1', ARCH: 'amd64', PY_VER: '3.10', LINUX_VER: 'ubuntu18.04', gpu: 'v100', driver: 'latest' } - { CUDA_VER: '12.0.1', ARCH: 'amd64', PY_VER: '3.11', LINUX_VER: 'ubuntu18.04', gpu: 'v100', driver: 'latest' } @@ -33,12 +35,26 @@ runs: - { CUDA_VER: '12.0.1', ARCH: 'arm64', PY_VER: '3.11', LINUX_VER: 'ubuntu20.04', gpu: 'a100', driver: 'latest' } " + export TEST_MATRIX_CONDA=" + - { CUDA_VER: '12.0.1', ARCH: 'amd64', PY_VER: '3.9', LINUX_VER: 'ubuntu20.04', gpu: 'v100', driver: 'latest' } + - { CUDA_VER: '12.0.1', ARCH: 'amd64', PY_VER: '3.10', LINUX_VER: 'ubuntu20.04', gpu: 'v100', driver: 'latest' } + - { CUDA_VER: '12.0.1', ARCH: 'amd64', PY_VER: '3.11', LINUX_VER: 'ubuntu20.04', gpu: 'v100', driver: 'latest' } + - { CUDA_VER: '12.0.1', ARCH: 'arm64', PY_VER: '3.9', LINUX_VER: 'ubuntu20.04', gpu: 'a100', driver: 'latest' } + - { CUDA_VER: '12.0.1', ARCH: 'arm64', PY_VER: '3.10', LINUX_VER: 'ubuntu20.04', gpu: 'a100', driver: 'latest' } + - { CUDA_VER: '12.0.1', ARCH: 'arm64', PY_VER: '3.11', LINUX_VER: 'ubuntu20.04', gpu: 'a100', driver: 'latest' } + " + echo "BUILD_MATRIX=$( yq -n -o json 'env(BUILD_MATRIX)' | \ jq -c '.' \ )" | tee --append "${GITHUB_OUTPUT}" - echo "TEST_MATRIX=$( - yq -n -o json 'env(TEST_MATRIX)' | \ + echo "TEST_MATRIX_WHEELS=$( + yq -n -o json 'env(TEST_MATRIX_WHEELS)' | \ + jq -c '.' \ + )" | tee --append "${GITHUB_OUTPUT}" + + echo "TEST_MATRIX_CONDA=$( + yq -n -o json 'env(TEST_MATRIX_CONDA)' | \ jq -c '.' \ )" | tee --append "${GITHUB_OUTPUT}" diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index fb9f7c7c..6b9c90b2 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -15,10 +15,10 @@ jobs: needs: - checks - compute-matrix - - build-wheels - - test-wheels - build-conda - test-conda + - build-wheels + - test-wheels secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@branch-24.02 checks: @@ -30,7 +30,8 @@ jobs: runs-on: ubuntu-latest outputs: BUILD_MATRIX: ${{ steps.compute-matrix.outputs.BUILD_MATRIX }} - TEST_MATRIX: ${{ steps.compute-matrix.outputs.TEST_MATRIX }} + TEST_MATRIX_WHEELS: ${{ steps.compute-matrix.outputs.TEST_MATRIX_WHEELS }} + TEST_MATRIX_CONDA: ${{ steps.compute-matrix.outputs.TEST_MATRIX_CONDA }} steps: - uses: actions/checkout@v4 - name: Compute Build Matrix @@ -52,7 +53,7 @@ jobs: with: build_type: pull-request test_script: "ci/test_conda.sh" - matrix_filter: ${{ needs.compute-matrix.outputs.TEST_MATRIX }} + matrix_filter: ${{ needs.compute-matrix.outputs.TEST_MATRIX_CONDA }} build-wheels: needs: - compute-matrix @@ -69,4 +70,4 @@ jobs: with: build_type: pull-request script: "ci/test_wheel.sh" - matrix_filter: ${{ needs.compute-matrix.outputs.TEST_MATRIX }} + matrix_filter: ${{ needs.compute-matrix.outputs.TEST_MATRIX_WHEELS }} diff --git a/CMakeLists.txt b/CMakeLists.txt index 972328bf..adbe38fc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,7 +11,8 @@ find_package(Python COMPONENTS Interpreter Development REQUIRED) Python_add_library(_nvjitlinklib MODULE pynvjitlink/_nvjitlinklib.cpp WITH_SOABI) find_package( - CUDAToolkit 12.2.1 REQUIRED + # Require CUDA 12.2 Update 2 to avoid nvjitlink bugs + CUDAToolkit 12.2.140 REQUIRED ) target_link_libraries(_nvjitlinklib PRIVATE CUDA::nvJitLink_static CUDA::nvptxcompiler_static) diff --git a/conda/recipes/pynvjitlink/meta.yaml b/conda/recipes/pynvjitlink/meta.yaml index d5428906..248ab57c 100644 --- a/conda/recipes/pynvjitlink/meta.yaml +++ b/conda/recipes/pynvjitlink/meta.yaml @@ -12,6 +12,8 @@ source: build: script: - {{ PYTHON }} -m pip install . -vv + ignore_run_exports_from: + - libnvjitlink-dev requirements: build: