From 535cedd395442c9b5d86522cb5f58e62292201c7 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Wed, 11 Dec 2024 17:42:06 -0800 Subject: [PATCH 1/9] add linux-aarch64 GPU runner --- .github/workflows/gh-build-and-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/gh-build-and-test.yml b/.github/workflows/gh-build-and-test.yml index 06f6a1685e4..7a22d295cec 100644 --- a/.github/workflows/gh-build-and-test.yml +++ b/.github/workflows/gh-build-and-test.yml @@ -82,7 +82,8 @@ jobs: permissions: id-token: write # This is required for configure-aws-credentials contents: read # This is required for actions/checkout - runs-on: ${{ (inputs.host-platform == 'linux-x64' && 'linux-amd64-gpu-v100-latest-1') }} + runs-on: ${{ (inputs.host-platform == 'linux-x64' && 'linux-amd64-gpu-v100-latest-1') || + (inputs.host-platform == 'linux-aarch64' && 'linux-arm64-gpu-a100-latest-1') }} # TODO: use a different (nvidia?) container, or just run on bare image container: options: -u root --security-opt seccomp=unconfined --privileged --shm-size 16g From a3f68aa6235eb8f766e918dca08c806fae2de476 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Wed, 11 Dec 2024 17:55:04 -0800 Subject: [PATCH 2/9] fix test skip condition --- .github/workflows/gh-build-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gh-build-and-test.yml b/.github/workflows/gh-build-and-test.yml index 7a22d295cec..6b4a4c484d1 100644 --- a/.github/workflows/gh-build-and-test.yml +++ b/.github/workflows/gh-build-and-test.yml @@ -76,9 +76,9 @@ jobs: test: # TODO: improve the name once a separate test matrix is defined name: Test (CUDA ${{ inputs.cuda-version }}) - # TODO: enable testing once linux-aarch64 & win-64 GPU runners are up + # TODO: enable testing once win-64 GPU runners are up if: ${{ (github.repository_owner == 'nvidia') && - startsWith(inputs.host-platform, 'linux-x64') }} + startsWith(inputs.host-platform, 'linux') }} permissions: id-token: write # This is required for configure-aws-credentials contents: read # This is required for actions/checkout From e2e64811b5e6c49bbba565f7030b7603a8f745d3 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Thu, 12 Dec 2024 18:03:58 -0500 Subject: [PATCH 3/9] check system --- .github/actions/test/action.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index 66468bd135a..fe5a2c9f902 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -14,6 +14,9 @@ runs: shell: bash --noprofile --norc -xeuo pipefail {0} run: nvidia-smi + - name: Check system + run: uname -a + - name: Download bindings build artifacts uses: actions/download-artifact@v4 with: From b0dc40f174e87ed15a8aee01af2da044139baf38 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Fri, 13 Dec 2024 00:12:11 +0000 Subject: [PATCH 4/9] try to run on bare image --- .github/workflows/gh-build-and-test.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/gh-build-and-test.yml b/.github/workflows/gh-build-and-test.yml index 6b4a4c484d1..0a306c6c8d4 100644 --- a/.github/workflows/gh-build-and-test.yml +++ b/.github/workflows/gh-build-and-test.yml @@ -84,12 +84,12 @@ jobs: contents: read # This is required for actions/checkout runs-on: ${{ (inputs.host-platform == 'linux-x64' && 'linux-amd64-gpu-v100-latest-1') || (inputs.host-platform == 'linux-aarch64' && 'linux-arm64-gpu-a100-latest-1') }} - # TODO: use a different (nvidia?) container, or just run on bare image - container: - options: -u root --security-opt seccomp=unconfined --privileged --shm-size 16g - image: condaforge/miniforge3:latest - env: - NVIDIA_VISIBLE_DEVICES: ${{ env.NVIDIA_VISIBLE_DEVICES }} + # # TODO: use a different (nvidia?) container, or just run on bare image + # container: + # options: -u root --security-opt seccomp=unconfined --privileged --shm-size 16g + # image: condaforge/miniforge3:latest + # env: + # NVIDIA_VISIBLE_DEVICES: ${{ env.NVIDIA_VISIBLE_DEVICES }} needs: - build steps: From eeda2ad84486587bcad9d89bde6bdb24d93fdd10 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Thu, 12 Dec 2024 19:13:58 -0500 Subject: [PATCH 5/9] fix --- .github/actions/test/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index fe5a2c9f902..b4be0aa329d 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -15,6 +15,7 @@ runs: run: nvidia-smi - name: Check system + shell: bash --noprofile --norc -xeuo pipefail {0} run: uname -a - name: Download bindings build artifacts From e6db490a047e2136349d2d1124c14ab6d820cf67 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Fri, 13 Dec 2024 01:08:10 +0000 Subject: [PATCH 6/9] change to ubuntu container --- .github/workflows/gh-build-and-test.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/gh-build-and-test.yml b/.github/workflows/gh-build-and-test.yml index 0a306c6c8d4..9c6b9dc4767 100644 --- a/.github/workflows/gh-build-and-test.yml +++ b/.github/workflows/gh-build-and-test.yml @@ -84,12 +84,13 @@ jobs: contents: read # This is required for actions/checkout runs-on: ${{ (inputs.host-platform == 'linux-x64' && 'linux-amd64-gpu-v100-latest-1') || (inputs.host-platform == 'linux-aarch64' && 'linux-arm64-gpu-a100-latest-1') }} - # # TODO: use a different (nvidia?) container, or just run on bare image - # container: - # options: -u root --security-opt seccomp=unconfined --privileged --shm-size 16g - # image: condaforge/miniforge3:latest - # env: - # NVIDIA_VISIBLE_DEVICES: ${{ env.NVIDIA_VISIBLE_DEVICES }} + # Our self-hosted runners require a container + # TODO: use a different (nvidia?) container + container: + options: -u root --security-opt seccomp=unconfined --privileged --shm-size 16g + image: ubuntu:20.04 + env: + NVIDIA_VISIBLE_DEVICES: ${{ env.NVIDIA_VISIBLE_DEVICES }} needs: - build steps: From 5eacb1be02b9a0ad3cf6760b2291dbabb90269c2 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Thu, 12 Dec 2024 20:53:42 -0500 Subject: [PATCH 7/9] Update gh-build-and-test.yml --- .github/workflows/gh-build-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gh-build-and-test.yml b/.github/workflows/gh-build-and-test.yml index 9c6b9dc4767..dac1ff48bd5 100644 --- a/.github/workflows/gh-build-and-test.yml +++ b/.github/workflows/gh-build-and-test.yml @@ -88,7 +88,7 @@ jobs: # TODO: use a different (nvidia?) container container: options: -u root --security-opt seccomp=unconfined --privileged --shm-size 16g - image: ubuntu:20.04 + image: ubuntu:22.04 env: NVIDIA_VISIBLE_DEVICES: ${{ env.NVIDIA_VISIBLE_DEVICES }} needs: From 589ea5a0866d6e049c1ee525337e9d874b24b679 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Thu, 12 Dec 2024 21:22:28 -0500 Subject: [PATCH 8/9] Update action.yml --- .github/actions/test/action.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index b4be0aa329d..8478aad0463 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -14,9 +14,10 @@ runs: shell: bash --noprofile --norc -xeuo pipefail {0} run: nvidia-smi - - name: Check system + - name: Install zstd shell: bash --noprofile --norc -xeuo pipefail {0} - run: uname -a + run: | + apt install zstd - name: Download bindings build artifacts uses: actions/download-artifact@v4 From 002dbff27a3b91416bb2409365dc9b2419c73f77 Mon Sep 17 00:00:00 2001 From: Leo Fang Date: Fri, 13 Dec 2024 02:49:31 +0000 Subject: [PATCH 9/9] fix apt install --- .github/actions/test/action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index 8478aad0463..079dd039910 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -14,9 +14,11 @@ runs: shell: bash --noprofile --norc -xeuo pipefail {0} run: nvidia-smi + # The cache action needs this - name: Install zstd shell: bash --noprofile --norc -xeuo pipefail {0} run: | + apt update apt install zstd - name: Download bindings build artifacts