Skip to content

Commit

Permalink
drop python 3.8, change prebuilt cudas
Browse files Browse the repository at this point in the history
  • Loading branch information
FindDefinition committed Oct 14, 2024
1 parent b3e2f11 commit 437508d
Show file tree
Hide file tree
Showing 9 changed files with 38 additions and 34 deletions.
24 changes: 12 additions & 12 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
runs-on: windows-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
cuda-version: ['11.7', '11.8', '12.0', '12.1', '12.2', '']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
cuda-version: ['11.4', '11.8', '12.1', '12.4', '12.6']
steps:
- uses: actions/checkout@master
- name: Install CUDA
Expand All @@ -26,7 +26,7 @@ jobs:
(env.CUDA_VERSION != '') && (
(github.event_name == 'push' && (startsWith(github.ref, 'refs/tags')) ) ||
(
(env.PYTHON_VERSION == '3.10')
(env.PYTHON_VERSION == '3.13')
)
)
shell: powershell
Expand All @@ -51,7 +51,7 @@ jobs:
(
(github.event_name == 'push' && (startsWith(github.ref, 'refs/tags')) ) ||
(
(env.PYTHON_VERSION == '3.10')
(env.PYTHON_VERSION == '3.13')
)
)
run: |
Expand All @@ -73,11 +73,11 @@ jobs:

build:
needs: build-windows
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
strategy:
matrix:
python-version: ['3.12'] # this version is only used for upload.
cuda-version: ['114', '117', '118', '120', '122']
cuda-version: ['114', '118', '121', '124', '126']

steps:
- uses: actions/checkout@master
Expand All @@ -97,8 +97,8 @@ jobs:
CUDA_VERSION: ${{ matrix.cuda-version }}
PYTHON_VERSION: ${{ matrix.python-version }}
DOCKER_IMAGE: scrin/manylinux2014-cuda:cu${{ matrix.cuda-version }}-devel-1.0.0
PLAT: manylinux2014_x86_64
if: (github.event_name == 'push' && (startsWith(github.ref, 'refs/tags')) && (env.CUDA_VERSION != '') ) || env.CUDA_VERSION == '120'
PLAT: manylinux_2_28_x86_64
if: (github.event_name == 'push' && (startsWith(github.ref, 'refs/tags')) && (env.CUDA_VERSION != '') ) || env.CUDA_VERSION == '126'
run: |
docker run --rm -e PLAT=$PLAT -e CUMM_CUDA_VERSION=${{ matrix.cuda-version }} -v `pwd`:/io $DOCKER_IMAGE bash -c "source /etc/bashrc && /io/tools/build-wheels.sh"
# python -m pip install myclang -f ./dist
Expand All @@ -108,8 +108,8 @@ jobs:
env:
CUDA_VERSION: ${{ matrix.cuda-version }}
PYTHON_VERSION: ${{ matrix.python-version }}
DOCKER_IMAGE: scrin/manylinux2014-cuda:cu120-devel-1.0.0
PLAT: manylinux2014_x86_64
DOCKER_IMAGE: scrin/manylinux2014-cuda:cu126-devel-1.0.0
PLAT: manylinux_2_28_x86_64
if: (github.event_name == 'push' && (startsWith(github.ref, 'refs/tags')) && (env.CUDA_VERSION == '') )
run: |
docker run --rm -e PLAT=$PLAT -e CUMM_CUDA_VERSION=${{ matrix.cuda-version }} -v `pwd`:/io $DOCKER_IMAGE bash -c "source /etc/bashrc && /io/tools/build-wheels.sh"
Expand All @@ -125,7 +125,7 @@ jobs:
runs-on: macos-latest
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@master
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -145,7 +145,7 @@ jobs:
(
(github.event_name == 'push' && (startsWith(github.ref, 'refs/tags')) ) ||
(
(env.PYTHON_VERSION == '3.10')
(env.PYTHON_VERSION == '3.13')
)
)
run: |
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,5 @@ dmypy.json
settings.json
__version__.py

.vscode
.vscode
wheelhouse_tmp
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
# Changelog
## [0.7.0] - 2024-10-14
### Changed
- drop python 3.8, add python 3.13.
- change cuda prebuilt to 11.4, 11.8, 12.1, 12.4, 12.6.
- change all linux prebuilt to `manylinux_2_28`, drop manylinux2014 support.

## [0.6.4] - 2024-09-01
### Added
- add fast obb-grid overlap for 3dgs.
Expand Down
14 changes: 5 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,21 +19,17 @@ Now ```pccm``` become a foundational framework of ```cumm``` and my other c++ pr

### Prebuilt

We offer python 3.7-3.11 and cuda 10.2/11.3/11.4/11.7/12.0 prebuilt binaries for linux (manylinux).
We offer python 3.9-3.13 and cuda 11.4/11.8/12.1/12.4/12.6 prebuilt binaries for linux (`manylinux_2_28`).

We offer python 3.7-3.11 and cuda 10.2/11.3/11.4/11.7/12.0 prebuilt binaries for windows 10/11.
We offer python 3.9-3.13 and cuda 11.4/11.8/12.1/12.4/12.6 prebuilt binaries for windows 10/11.

```pip install cumm``` for CPU-only

```pip install cumm-cu102``` for CUDA 10.2
We offer python 3.9-3.13 prebuilt binaries for Mac OS X >= 14.0 (Apple Silicon Only).

```pip install cumm-cu113``` for CUDA 11.3
```pip install cumm``` for CPU-only

```pip install cumm-cu114``` for CUDA 11.4

```pip install cumm-cu117``` for CUDA 11.7

```pip install cumm-cu120``` for CUDA 12.0
```pip install cumm-cu126``` for CUDA 12.6

### Build from source for development (JIT, recommend for develop)

Expand Down
2 changes: 1 addition & 1 deletion tools/build-wheels-dev.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ function repair_wheel {

export CUMM_DISABLE_JIT="1"
export CUMM_CUDA_ARCH_LIST="7.5;8.6"
"/opt/python/cp38-cp38/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp39-cp39/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp

# Bundle external shared libraries into the wheels
for whl in /io/wheelhouse_tmp/*.whl; do
Expand Down
5 changes: 3 additions & 2 deletions tools/build-wheels.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,14 @@ function repair_wheel {

export CUMM_DISABLE_JIT="1"
export CUMM_CUDA_ARCH_LIST="all"
# Compile wheels, we only support 3.7-3.11.
# Compile wheels, we only support 3.9-3.13.
# "/opt/python/cp36-cp36m/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp38-cp38/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
# "/opt/python/cp38-cp38/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp39-cp39/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp310-cp310/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp311-cp311/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp312-cp312/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp
"/opt/python/cp313-cp313/bin/pip" wheel /io/ --no-deps -w /io/wheelhouse_tmp

# Bundle external shared libraries into the wheels
for whl in /io/wheelhouse_tmp/*.whl; do
Expand Down
14 changes: 7 additions & 7 deletions tools/install_windows_cuda.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ $CUDA_KNOWN_URLS = @{
"11.6" = "https://developer.download.nvidia.com/compute/cuda/11.6.2/network_installers/cuda_11.6.2_windows_network.exe";
"11.7" = "https://developer.download.nvidia.com/compute/cuda/11.7.1/network_installers/cuda_11.7.1_windows_network.exe";
"11.8" = "https://developer.download.nvidia.com/compute/cuda/11.8.0/network_installers/cuda_11.8.0_windows_network.exe";
"12.0" = "https://developer.download.nvidia.com/compute/cuda/12.0.0/network_installers/cuda_12.0.0_windows_network.exe";
"12.1" = "https://developer.download.nvidia.com/compute/cuda/12.1.0/network_installers/cuda_12.1.0_windows_network.exe";
"12.2" = "https://developer.download.nvidia.com/compute/cuda/12.2.0/network_installers/cuda_12.2.0_windows_network.exe";
"12.3" = "https://developer.download.nvidia.com/compute/cuda/12.3.0/network_installers/cuda_12.3.0_windows_network.exe";
"12.4" = "https://developer.download.nvidia.com/compute/cuda/12.4.0/network_installers/cuda_12.4.0_windows_network.exe";
"12.5" = "https://developer.download.nvidia.com/compute/cuda/12.5.0/network_installers/cuda_12.5.0_windows_network.exe";

"12.0" = "https://developer.download.nvidia.com/compute/cuda/12.0.1/network_installers/cuda_12.0.1_windows_network.exe";
"12.1" = "https://developer.download.nvidia.com/compute/cuda/12.1.1/network_installers/cuda_12.1.1_windows_network.exe";
"12.2" = "https://developer.download.nvidia.com/compute/cuda/12.2.2/network_installers/cuda_12.2.2_windows_network.exe";
"12.3" = "https://developer.download.nvidia.com/compute/cuda/12.3.2/network_installers/cuda_12.3.2_windows_network.exe";
"12.4" = "https://developer.download.nvidia.com/compute/cuda/12.4.1/network_installers/cuda_12.4.1_windows_network.exe";
"12.5" = "https://developer.download.nvidia.com/compute/cuda/12.5.1/network_installers/cuda_12.5.1_windows_network.exe";
"12.6" = "https://developer.download.nvidia.com/compute/cuda/12.6.1/network_installers/cuda_12.6.1_windows_network.exe";
}

# cuda_runtime.h is in nvcc <= 10.2, but cudart >= 11.0
Expand Down
2 changes: 1 addition & 1 deletion tools/linux_test_build.sh
Original file line number Diff line number Diff line change
@@ -1 +1 @@
docker run --rm -it -e PLAT=manylinux2014_x86_64 -v `pwd`:/io -v $HOME:/myhome scrin/manylinux2014-cuda:cu114-devel bash -c "source /etc/bashrc && /io/tools/build-wheels-dev.sh"
sudo docker run --rm -it -e PLAT=manylinux_2_28_x86_64 -v `pwd`:/io -v $HOME:/myhome manylinux2014-cuda:cu126-devel bash -c "source /etc/bashrc && /io/tools/build-wheels-dev.sh"
2 changes: 1 addition & 1 deletion version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.6.4
0.7.0

0 comments on commit 437508d

Please sign in to comment.