Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
124 changes: 77 additions & 47 deletions .github/workflows/whl-build-all.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
runs-on: [self-hosted]
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.HABITAT_AWS_ACCESS_KEY }}
aws-region: ${{ secrets.HABITAT_AWS_REGION }}
Expand All @@ -27,7 +27,7 @@ jobs:
runs-on: [self-hosted, cu113]
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.HABITAT_AWS_ACCESS_KEY }}
aws-region: ${{ secrets.HABITAT_AWS_REGION }}
Expand All @@ -42,28 +42,36 @@ jobs:
ls -la

- name: Fetch repository
uses: actions/checkout@v3

- name: Build Python3.7 wheel
run: |
./build_scripts/build_wheel.sh python3.7
uses: actions/checkout@v4

- name: Build Python3.8 wheel
run: |
./build_scripts/build_wheel.sh python3.8
env:
CUDA_TAG: cu113
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.9 wheel
run: |
./build_scripts/build_wheel.sh python3.9

env:
CUDA_TAG: cu113
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.10 wheel
run: |
./build_scripts/build_wheel.sh python3.10

env:
CUDA_TAG: cu113
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.11 wheel
run: |
./build_scripts/build_wheel.sh python3.11

env:
CUDA_TAG: cu113
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Upload wheels to S3
run: |
aws s3 cp analyzer/dist/ s3://centml-releases/habitat/wheels-cu113/ --recursive --exclude "*" --include "*.whl"
Expand All @@ -82,7 +90,7 @@ jobs:
runs-on: [self-hosted, cu116]
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.HABITAT_AWS_ACCESS_KEY }}
aws-region: ${{ secrets.HABITAT_AWS_REGION }}
Expand All @@ -97,33 +105,35 @@ jobs:
ls -la

- name: Fetch repository
uses: actions/checkout@v3

- name: Build Python3.7 wheel
run: |
./build_scripts/build_wheel.sh python3.7
uses: actions/checkout@v4

- name: Build Python3.8 wheel
run: |
./build_scripts/build_wheel.sh python3.8

env:
CUDA_TAG: cu116
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.9 wheel
run: |
./build_scripts/build_wheel.sh python3.9

env:
CUDA_TAG: cu116
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.10 wheel
run: |
./build_scripts/build_wheel.sh python3.10

env:
CUDA_TAG: cu116
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.11 wheel
run: |
./build_scripts/build_wheel.sh python3.11

- name: Upload wheel artifact
uses: actions/upload-artifact@v3
with:
name: wheels-cu116
path: analyzer/dist/*.whl
env:
CUDA_TAG: cu116
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Upload wheels to S3
run: |
Expand All @@ -143,7 +153,7 @@ jobs:
runs-on: [self-hosted, cu117]
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.HABITAT_AWS_ACCESS_KEY }}
aws-region: ${{ secrets.HABITAT_AWS_REGION }}
Expand All @@ -158,27 +168,35 @@ jobs:
ls -la

- name: Fetch repository
uses: actions/checkout@v3

- name: Build Python3.7 wheel
run: |
./build_scripts/build_wheel.sh python3.7

uses: actions/checkout@v4

- name: Build Python3.8 wheel
run: |
./build_scripts/build_wheel.sh python3.8
env:
CUDA_TAG: cu117
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.9 wheel
run: |
./build_scripts/build_wheel.sh python3.9
env:
CUDA_TAG: cu117
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.10 wheel
run: |
./build_scripts/build_wheel.sh python3.10

env:
CUDA_TAG: cu117
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Build Python3.11 wheel
run: |
./build_scripts/build_wheel.sh python3.11
env:
CUDA_TAG: cu117
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.7.101,nvidia-cuda-runtime-cu11==11.7.99

- name: Upload wheels to S3
run: |
Expand All @@ -198,7 +216,7 @@ jobs:
runs-on: [self-hosted, cu118]
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.HABITAT_AWS_ACCESS_KEY }}
aws-region: ${{ secrets.HABITAT_AWS_REGION }}
Expand All @@ -213,27 +231,35 @@ jobs:
ls -la

- name: Fetch repository
uses: actions/checkout@v3

- name: Build Python3.7 wheel
run: |
./build_scripts/build_wheel.sh python3.7
uses: actions/checkout@v4

- name: Build Python3.8 wheel
run: |
./build_scripts/build_wheel.sh python3.8
env:
CUDA_TAG: cu118
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.8.87,nvidia-cuda-runtime-cu11==11.8.89

- name: Build Python3.9 wheel
run: |
./build_scripts/build_wheel.sh python3.9
env:
CUDA_TAG: cu118
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.8.87,nvidia-cuda-runtime-cu11==11.8.89

- name: Build Python3.10 wheel
run: |
./build_scripts/build_wheel.sh python3.10
env:
CUDA_TAG: cu118
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.8.87,nvidia-cuda-runtime-cu11==11.8.89

- name: Build Python3.11 wheel
run: |
./build_scripts/build_wheel.sh python3.11
env:
CUDA_TAG: cu118
EXTRA_REQUIRES: nvidia-cuda-cupti-cu11==11.8.87,nvidia-cuda-runtime-cu11==11.8.89

- name: Upload wheels to S3
run: |
Expand All @@ -253,7 +279,7 @@ jobs:
runs-on: [self-hosted, cu121]
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.HABITAT_AWS_ACCESS_KEY }}
aws-region: ${{ secrets.HABITAT_AWS_REGION }}
Expand All @@ -268,28 +294,32 @@ jobs:
ls -la

- name: Fetch repository
uses: actions/checkout@v3

- name: Build Python3.7 wheel
run: |
./build_scripts/build_wheel.sh python3.7
uses: actions/checkout@v4

- name: Build Python3.8 wheel
run: |
./build_scripts/build_wheel.sh python3.8
env:
CUDA_TAG: cu121

- name: Build Python3.9 wheel
run: |
./build_scripts/build_wheel.sh python3.9
env:
CUDA_TAG: cu121

- name: Build Python3.10 wheel
run: |
./build_scripts/build_wheel.sh python3.10

env:
CUDA_TAG: cu121

- name: Build Python3.11 wheel
run: |
./build_scripts/build_wheel.sh python3.11

env:
CUDA_TAG: cu121

- name: Upload wheels to S3
run: |
aws s3 cp analyzer/dist/ s3://centml-releases/habitat/wheels-cu121/ --recursive --exclude "*" --include "*.whl"
Expand Down
76 changes: 14 additions & 62 deletions .github/workflows/whl-build-ec2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,8 @@ jobs:

- name: Update version
run: |
pip install incremental
pushd analyzer
python3 -m incremental.update habitat --newversion=${{ github.event.inputs.tag }}
bash git_update_version.sh ${{ github.event.inputs.tag }}
popd

- name: Commit updated version number and tag it
Expand All @@ -43,89 +42,42 @@ jobs:
git push -u origin release/${{ github.event.inputs.tag }}
git tag ${{ github.event.inputs.tag }}

start-runner:
name: Start self-hosted EC2 runner
runs-on: ubuntu-latest
needs:
- create-release-branch
outputs:
label: ${{ steps.start-ec2-runner.outputs.label }}
ec2-instance-id: ${{ steps.start-ec2-runner.outputs.ec2-instance-id }}
steps:
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.DEV_AWS_ACCESS_KEY_ID }}
aws-region: us-east-1
aws-secret-access-key: ${{ secrets.DEV_AWS_SECRET_ACCESS_KEY }}
- name: Start EC2 runner
id: start-ec2-runner
uses: CentML/GPUClusterSwitchGithubAction@v1.3.10
with:
mode: start
github-token: ${{ secrets.CENTML_PAT }}
t4: true
a10g: false
v100: false

build-release:
runs-on: [self-hosted, cu117]
needs:
- start-runner
runs-on: [self-hosted, cu121]
steps:
- name: Fetch repository
uses: actions/checkout@v3
with:
ref: release/${{ github.event.inputs.tag }}

- name: Build Python3.7 distribution
run: |
./build_scripts/build_wheel.sh python3.7

- name: Build Python3.8 wheel
run: |
./build_scripts/build_wheel.sh python3.8

env:
CUDA_TAG: cu121

- name: Build Python3.9 wheel
run: |
./build_scripts/build_wheel.sh python3.9

env:
CUDA_TAG: cu121

- name: Build Python3.10 wheel
run: |
./build_scripts/build_wheel.sh python3.10

env:
CUDA_TAG: cu121

- name: Build Python3.11 wheel
run: |
./build_scripts/build_wheel.sh python3.11

env:
CUDA_TAG: cu121

- uses: actions/upload-artifact@v3
with:
name: ${{ github.event.inputs.tag }}
path: analyzer/dist/*.whl

stop-runner:
name: Stop self-hosted EC2 runner
needs:
- start-runner # required to get output from the start-runner job
- build-release # required to wait when the main job is done
runs-on: ubuntu-latest
if: ${{ always() }} # required to stop the runner even if the error happened in the previous jobs
steps:
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.DEV_AWS_ACCESS_KEY_ID }}
aws-region: us-east-1
aws-secret-access-key: ${{ secrets.DEV_AWS_SECRET_ACCESS_KEY }}
- name: Stop EC2 runner
id: stop-ec2-runner
uses: CentML/GPUClusterSwitchGithubAction@v1.3.10
with:
mode: stop
github-token: ${{ secrets.CENTML_PAT }}
t4: true # required to match the list above - otherwise the runners will not stop
a10g: false # required to match the list above - otherwise the runners will not stop
v100: false

publish-to-github:
name: Publish to Github
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ DeepView.Predict is a tool that predicts a deep neural network's training iterat
<h2 id="installation">Installation</h2>

To run DeepView.Predict, you need:
- [Python 3.6+](https://www.python.org/)
- [Pytorch 1.1.0+](https://pytorch.org/)
- [Python 3.8+](https://www.python.org/)
- [Pytorch 1.13.1+](https://pytorch.org/)
- A system equiped with an Nvidia GPU with properly configured CUDA

Currently, we have predictors for the following Nvidia GPUs:
Expand Down
Loading