From 828103b421f7f49fe3fffd72129b1ee5fc93b8a4 Mon Sep 17 00:00:00 2001 From: William Allen Date: Thu, 20 Jul 2023 16:05:12 -0500 Subject: [PATCH 01/10] Shrinking cuda install, add all assets to attach --- .github/workflows/attach-release-assets.yml | 11 +++++++++-- .github/workflows/build-release.yml | 9 ++++++--- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/.github/workflows/attach-release-assets.yml b/.github/workflows/attach-release-assets.yml index ede71cb7..c7f5fdda 100644 --- a/.github/workflows/attach-release-assets.yml +++ b/.github/workflows/attach-release-assets.yml @@ -37,8 +37,15 @@ jobs: bladebit-v${BB_VERSION}-windows-x86-64.zip bladebit-v${BB_VERSION}-macos-arm64.tar.gz bladebit-v${BB_VERSION}-macos-x86-64.tar.gz - green_reaper-v${BB_VERSION}-ubuntu-x86-64.tar.gz - green_reaper-v${BB_VERSION}-centos-x86-64.tar.gz + bladebit-cuda-v${BB_VERSION}-ubuntu-x86-64.tar.gz + bladebit-cuda-v${BB_VERSION}-centos-x86-64.tar.gz + bladebit-cuda-v${BB_VERSION}-ubuntu-arm64.tar.gz + bladebit-cuda-v${BB_VERSION}-windows-x86-64.zip + green_reaper-v${BB_VERSION}-linux-x86-64.tar.gz + green_reaper-v${BB_VERSION}-linux-ARM64.tar.gz + green_reaper-v${BB_VERSION}-macos-x86-64.tar.gz + green_reaper-v${BB_VERSION}-macos-arm64.tar.gz + green_reaper-v${BB_VERSION}-windows-x86-64.zip ) mkdir -p bin diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 6fba0e5a..344a4896 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -29,10 +29,11 @@ jobs: yum install -y sudo make git wget subscription-manager - name: Setup CUDA - uses: Jimver/cuda-toolkit@v0.2.10 + uses: Jimver/cuda-toolkit@v0.2.11 id: cuda-toolkit with: cuda: '12.1.0' + method: network - name: Verify CUDA shell: bash @@ -75,10 +76,11 @@ jobs: choco install -y sed - name: Setup CUDA - uses: Jimver/cuda-toolkit@v0.2.10 + uses: Jimver/cuda-toolkit@v0.2.11 id: cuda-toolkit with: cuda: '12.1.0' + method: network - name: Verify CUDA shell: bash @@ -443,10 +445,11 @@ jobs: choco install -y sed - name: Setup CUDA - uses: Jimver/cuda-toolkit@v0.2.10 + uses: Jimver/cuda-toolkit@v0.2.11 id: cuda-toolkit with: cuda: '12.1.0' + method: network - name: Verify CUDA shell: bash From f20f93aa2ae66a9d8bc05d63da00f8fe135d215d Mon Sep 17 00:00:00 2001 From: William Allen Date: Thu, 20 Jul 2023 16:11:40 -0500 Subject: [PATCH 02/10] Bumping runner image --- .github/workflows/build-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 344a4896..9627247a 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -9,7 +9,7 @@ env: jobs: build-harvester-linux-x86-64: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 container: image: quay.io/pypa/manylinux2014_x86_64 steps: From 650510b01b4101eb3041dc9d47a5604fce9a6468 Mon Sep 17 00:00:00 2001 From: William Allen Date: Thu, 20 Jul 2023 16:20:36 -0500 Subject: [PATCH 03/10] Adding redhat-lsb-core --- .github/workflows/build-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 9627247a..4d3e94d8 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -9,7 +9,7 @@ env: jobs: build-harvester-linux-x86-64: - runs-on: ubuntu-22.04 + runs-on: ubuntu-20.04 container: image: quay.io/pypa/manylinux2014_x86_64 steps: @@ -26,7 +26,7 @@ jobs: run: | set -eo pipefail yum group install -y "Development Tools" - yum install -y sudo make git wget subscription-manager + yum install -y sudo make git wget subscription-manager redhat-lsb-core - name: Setup CUDA uses: Jimver/cuda-toolkit@v0.2.11 From 77ce3a54e29ce3b0a3c0481c822a4e53487cd364 Mon Sep 17 00:00:00 2001 From: William Allen Date: Thu, 20 Jul 2023 16:28:33 -0500 Subject: [PATCH 04/10] Trying local install without samples --- .github/workflows/build-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 4d3e94d8..0fd72016 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -26,14 +26,14 @@ jobs: run: | set -eo pipefail yum group install -y "Development Tools" - yum install -y sudo make git wget subscription-manager redhat-lsb-core + yum install -y sudo make git wget subscription-manager - name: Setup CUDA uses: Jimver/cuda-toolkit@v0.2.11 id: cuda-toolkit with: cuda: '12.1.0' - method: network + linux-local-args: '["--toolkit"]' - name: Verify CUDA shell: bash From 996f57ee99c4389dd086b1ee5f3879bf55a64f37 Mon Sep 17 00:00:00 2001 From: William Allen Date: Thu, 20 Jul 2023 18:32:13 -0500 Subject: [PATCH 05/10] Trying our manylinux cuda image --- .github/workflows/build-release.yml | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 0fd72016..704205c3 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -11,7 +11,7 @@ jobs: build-harvester-linux-x86-64: runs-on: ubuntu-20.04 container: - image: quay.io/pypa/manylinux2014_x86_64 + image: ghcr.io/chia-network/build-images/manylinux2014_cuda_x86_64:sha-1caf046d5ff19b7c743de2a106dd86928794032b steps: - name: Checkout Repo uses: actions/checkout@v3 @@ -28,20 +28,6 @@ jobs: yum group install -y "Development Tools" yum install -y sudo make git wget subscription-manager - - name: Setup CUDA - uses: Jimver/cuda-toolkit@v0.2.11 - id: cuda-toolkit - with: - cuda: '12.1.0' - linux-local-args: '["--toolkit"]' - - - name: Verify CUDA - shell: bash - run: | - echo "Installed cuda version is: ${{ steps.cuda-toolkit.outputs.cuda }}" - echo "Cuda install location: ${{ steps.cuda-toolkit.outputs.CUDA_PATH }}" - nvcc -V - - name: Build Harvester shell: bash run: | From 8829300aa67e57ba02cf65687804d5a5ea7a53b0 Mon Sep 17 00:00:00 2001 From: William Allen Date: Fri, 21 Jul 2023 06:38:43 -0500 Subject: [PATCH 06/10] More cleanup --- .github/workflows/build-release.yml | 50 ++++++++--------------------- 1 file changed, 13 insertions(+), 37 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 704205c3..f522bd36 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -93,7 +93,7 @@ jobs: build-harvester-linux-arm64: runs-on: [ARM64, Linux] container: - image: quay.io/pypa/manylinux2014_aarch64 + image: ghcr.io/chia-network/build-images/manylinux2014_cuda_aarch64:sha-1caf046d5ff19b7c743de2a106dd86928794032b steps: - name: Checkout Repo uses: actions/checkout@v3 @@ -129,21 +129,6 @@ jobs: dnf group install -y "Development Tools" dnf install -y gmp-devel numactl-devel make git wget sed - - name: Setup CUDA - run: | - set -eo pipefail - module_platform_id=platform:el9 - export MODULE_PLATFORM_ID=platform:el9 - export PLATFORM_ID=platform:el9 - dnf config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/rhel9/$(uname -i)/cuda-rhel9.repo - dnf config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/cuda-rhel9.repo - dnf makecache - #dnf install -y cuda.aarch64 - dnf install -y cuda-toolkit - ls -la /usr/local/ - ls -la /usr/local/cuda* - export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}} - export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} - name: Build Harvester shell: bash run: | @@ -234,15 +219,12 @@ jobs: - name: Build Bladebit run: .github/actions/build-asset-unix.sh --artifact ${{ env.BB_ARTIFACT_NAME }} --version ${{env.BB_VERSION}} - - name: Install CUDA Prerequisites - run: | - distro=ubuntu2004 - arch=x86_64 - sudo apt-key del 7fa2af80 - wget https://developer.download.nvidia.com/compute/cuda/repos/$distro/$arch/cuda-keyring_1.0-1_all.deb - sudo dpkg -i cuda-keyring_1.0-1_all.deb - sudo apt-get update - sudo apt-get install cuda + - name: Setup CUDA + uses: Jimver/cuda-toolkit@v0.2.11 + id: cuda-toolkit + with: + cuda: '12.1.0' + method: network - name: Build Bladebit CUDA run: .github/actions/build-asset-unix.sh --cuda --artifact ${{ env.BB_ARTIFACT_NAME_CUDA }} --version ${{env.BB_VERSION}} @@ -286,18 +268,12 @@ jobs: source /opt/rh/gcc-toolset-9/enable .github/actions/build-asset-unix.sh --artifact ${{ env.BB_ARTIFACT_NAME }} --version ${{ env.BB_VERSION }} - - name: Install CUDA Prerequisites - run: | - distro=rhel8 - arch=x86_64 - dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm - - dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/$distro/$arch/cuda-$distro.repo - dnf clean expire-cache - dnf module install -y nvidia-driver:latest-dkms - dnf install -y cuda - ls -la /usr/local/ - ls -la /usr/local/cuda/ + - name: Setup CUDA + uses: Jimver/cuda-toolkit@v0.2.11 + id: cuda-toolkit + with: + cuda: '12.1.0' + method: network - name: Build Bladebit CUDA run: | From bab01dffe85ea8a2f5d0b34cbda1879ff95009f1 Mon Sep 17 00:00:00 2001 From: William Allen Date: Fri, 21 Jul 2023 06:47:48 -0500 Subject: [PATCH 07/10] toolkit only --- .github/workflows/build-release.yml | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index f522bd36..f60ada17 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -225,6 +225,7 @@ jobs: with: cuda: '12.1.0' method: network + linux-local-args: '["--toolkit"]' - name: Build Bladebit CUDA run: .github/actions/build-asset-unix.sh --cuda --artifact ${{ env.BB_ARTIFACT_NAME_CUDA }} --version ${{env.BB_VERSION}} @@ -259,7 +260,7 @@ jobs: run: | set -eo pipefail dnf install -y gcc-toolset-9-gcc gcc-toolset-9-gcc-c++ \ - gmp-devel numactl-devel make git wget subscription-manager + gmp-devel numactl-devel make git wget subscription-manager bash .github/actions/install-cmake-linux.sh @@ -268,12 +269,17 @@ jobs: source /opt/rh/gcc-toolset-9/enable .github/actions/build-asset-unix.sh --artifact ${{ env.BB_ARTIFACT_NAME }} --version ${{ env.BB_VERSION }} - - name: Setup CUDA - uses: Jimver/cuda-toolkit@v0.2.11 - id: cuda-toolkit - with: - cuda: '12.1.0' - method: network + - name: Install CUDA Prerequisites + run: | + distro=rhel8 + arch=x86_64 + dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm + dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/$distro/$arch/cuda-$distro.repo + dnf clean expire-cache + dnf module install -y nvidia-driver:latest-dkms + dnf install -y cuda + ls -la /usr/local/ + ls -la /usr/local/cuda/ - name: Build Bladebit CUDA run: | From c8b29ce3b7c07adeb8116e10ce237750019e3cc1 Mon Sep 17 00:00:00 2001 From: William Allen Date: Fri, 21 Jul 2023 06:51:52 -0500 Subject: [PATCH 08/10] Set version for RC --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 419997c9..7abfd6c9 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ 3.0.0 -alpha4 +rc1 From 673722bc81de69e037bce7ab6c5eb4b7d862505f Mon Sep 17 00:00:00 2001 From: William Allen Date: Fri, 21 Jul 2023 16:53:03 -0500 Subject: [PATCH 09/10] Fixing artifact extension nesting --- .github/workflows/build-release.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index f60ada17..67f03022 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -39,7 +39,7 @@ jobs: - name: Upload Harvester Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.harvester_artifact_name }}.zip + name: ${{ env.harvester_artifact_name }} path: ${{ env.harvester_artifact_path }} if-no-files-found: error @@ -86,7 +86,7 @@ jobs: - name: Upload Harvester Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.harvester_artifact_name }}.zip + name: ${{ env.harvester_artifact_name }} path: ${{ env.harvester_artifact_path }} if-no-files-found: error @@ -140,7 +140,7 @@ jobs: - name: Upload Harvester Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.harvester_artifact_name }}.zip + name: ${{ env.harvester_artifact_name }} path: ${{ env.harvester_artifact_path }} if-no-files-found: error @@ -168,7 +168,7 @@ jobs: - name: Upload Harvester Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.harvester_artifact_name }}.zip + name: ${{ env.harvester_artifact_name }} path: ${{ env.harvester_artifact_path }} if-no-files-found: error @@ -196,7 +196,7 @@ jobs: - name: Upload Harvester Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.harvester_artifact_name }}.zip + name: ${{ env.harvester_artifact_name }} path: ${{ env.harvester_artifact_path }} if-no-files-found: error @@ -233,14 +233,14 @@ jobs: - name: Upload Bladebit Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME }}.zip + name: ${{ env.BB_ARTIFACT_NAME }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME }} if-no-files-found: error - name: Upload Bladebit CUDA Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME_CUDA }}.zip + name: ${{ env.BB_ARTIFACT_NAME_CUDA }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME_CUDA }} if-no-files-found: error @@ -289,14 +289,14 @@ jobs: - name: Upload Bladebit Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME }}.zip + name: ${{ env.BB_ARTIFACT_NAME }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME }} if-no-files-found: error - name: Upload Bladebit CUDA Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME_CUDA }}.zip + name: ${{ env.BB_ARTIFACT_NAME_CUDA }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME_CUDA }} if-no-files-found: error @@ -336,7 +336,7 @@ jobs: - name: Upload Artifact Ubuntu ARM64 uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME }}.zip + name: ${{ env.BB_ARTIFACT_NAME }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME }} if-no-files-found: error @@ -346,7 +346,7 @@ jobs: - name: Upload Bladebit CUDA Artifact uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME_CUDA }}.zip + name: ${{ env.BB_ARTIFACT_NAME_CUDA }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME_CUDA }} if-no-files-found: error From a0e3ca12277984d922f65c5565537f8b1a4a1439 Mon Sep 17 00:00:00 2001 From: William Allen Date: Fri, 21 Jul 2023 17:33:55 -0500 Subject: [PATCH 10/10] Fix windows artifact extension --- .github/workflows/build-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 67f03022..739cefc4 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -390,7 +390,7 @@ jobs: - name: Upload Bladebit Artifact Windows x86-64 uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME }}.zip + name: ${{ env.BB_ARTIFACT_NAME }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME }} if-no-files-found: error @@ -455,6 +455,6 @@ jobs: - name: Upload Bladebit CUDA Artifact Windows x86-64 uses: actions/upload-artifact@v3 with: - name: ${{ env.BB_ARTIFACT_NAME_CUDA }}.zip + name: ${{ env.BB_ARTIFACT_NAME_CUDA }} path: ${{ github.workspace }}/bin/${{ env.BB_ARTIFACT_NAME_CUDA }} if-no-files-found: error