Skip to content
Open
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
34 changes: 0 additions & 34 deletions .github/workflows/build_cuda.yml

This file was deleted.

97 changes: 97 additions & 0 deletions .github/workflows/build_cuda12.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: Build CUDA 12

on:
push:
branches: [ master, develop**, ci ]
tags:
- '*'
pull_request:
branches: [ master, develop** ]

env:
CUDATOOLKIT_URL: https://developer.download.nvidia.com/compute/cuda/12.9.0/local_installers/cuda_12.9.0_576.02_windows.exe
CUDATOOLKIT_COMPONENTS: nvcc_12.9 cudart_12.9 cublas_dev_12.9 curand_dev_12.9 cusparse_dev_12.9 thrust_12.9 visual_studio_integration_12.9

jobs:
build_wheels_linux:
name: Build wheel on Linux
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master

- name: Build wheels
uses: pypa/cibuildwheel@v2.23
with:
package-dir: backend/cuda12
config-file: backend/cuda12/cibuildwheel.toml
output-dir: wheelhouse

- name: Upload artifacts to github
uses: actions/upload-artifact@v5
with:
name: wheels-cuda12-linux
path: ./wheelhouse

build_wheels_windows:
name: Build wheel on Windows
runs-on: windows-2025
defaults:
run:
shell: cmd
steps:
- uses: actions/checkout@master

- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2.0.0

- name: Add Windows SDK
run: |
choco install windows-sdk-8.1

- name: cache install cuda
id: cache-install
uses: actions/cache@v4
with:
path: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9
key: install-cuda-12.9.0

- name: install cuda
if: steps.cache-install.outputs.cache-hit != 'true'
run: |
curl.exe --output %TEMP%\cuda.exe --url %CUDATOOLKIT_URL% --retry 5 --retry-delay 5
start /b /wait %TEMP%\cuda.exe -s %CUDATOOLKIT_COMPONENTS%
del %TEMP%\cuda.exe

- name: Build wheels
uses: pypa/cibuildwheel@v2.23
with:
package-dir: backend/cuda12
config-file: backend/cuda12/cibuildwheel.toml
output-dir: wheelhouse

- name: Upload artifacts to github
uses: actions/upload-artifact@v5
with:
name: wheels-cuda12-windows
path: ./wheelhouse

publish_to_pypi:
name: Publish CUDA 12 wheels to PyPI
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
needs: [build_wheels_linux, build_wheels_windows]
runs-on: ubuntu-latest
steps:
- name: Download packages
uses: actions/download-artifact@v4
with:
pattern: wheels-cuda12-*
path: dist
merge-multiple: true

- name: Upload wheels to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.pypi_password }}
run: |
python -m pip install --upgrade twine
twine upload dist/*
97 changes: 97 additions & 0 deletions .github/workflows/build_cuda13.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: Build CUDA 13

on:
push:
branches: [ master, develop**, ci ]
tags:
- '*'
pull_request:
branches: [ master, develop** ]

env:
CUDATOOLKIT_URL: https://developer.download.nvidia.com/compute/cuda/13.1.0/local_installers/cuda_13.1.0_windows.exe
CUDATOOLKIT_COMPONENTS: nvcc_13.1 nvvm_13.1 crt_13.1 cudart_13.1 cublas_13.1 cublas_dev_13.1 curand_13.1 curand_dev_13.1 cusparse_13.1 cusparse_dev_13.1 thrust_13.1 visual_studio_integration_13.1

jobs:
build_wheels_linux:
name: Build wheel on Linux
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master

- name: Build wheels
uses: pypa/cibuildwheel@v2.23
with:
package-dir: backend/cuda13
config-file: backend/cuda13/cibuildwheel.toml
output-dir: wheelhouse

- name: Upload artifacts to github
uses: actions/upload-artifact@v5
with:
name: wheels-cuda13-linux
path: ./wheelhouse

build_wheels_windows:
name: Build wheel on Windows
runs-on: windows-2025
defaults:
run:
shell: cmd
steps:
- uses: actions/checkout@master

- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2.0.0

- name: Add Windows SDK
run: |
choco install windows-sdk-8.1

- name: cache install cuda
id: cache-install
uses: actions/cache@v4
with:
path: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.1
key: install-cuda-13.1.0

- name: install cuda
if: steps.cache-install.outputs.cache-hit != 'true'
run: |
curl.exe --output %TEMP%\cuda.exe --url %CUDATOOLKIT_URL% --retry 5 --retry-delay 5
start /b /wait %TEMP%\cuda.exe -s %CUDATOOLKIT_COMPONENTS%
del %TEMP%\cuda.exe

- name: Build wheels
uses: pypa/cibuildwheel@v2.23
with:
package-dir: backend/cuda13
config-file: backend/cuda13/cibuildwheel.toml
output-dir: wheelhouse

- name: Upload artifacts to github
uses: actions/upload-artifact@v5
with:
name: wheels-cuda13-windows
path: ./wheelhouse

publish_to_pypi:
name: Publish CUDA 13 wheels to PyPI
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
needs: [build_wheels_linux, build_wheels_windows]
runs-on: ubuntu-latest
steps:
- name: Download packages
uses: actions/download-artifact@v4
with:
pattern: wheels-cuda13-*
path: dist
merge-multiple: true

- name: Upload wheels to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.pypi_password }}
run: |
python -m pip install --upgrade twine
twine upload dist/*
62 changes: 0 additions & 62 deletions .github/workflows/build_cuda_windows.yml

This file was deleted.

64 changes: 32 additions & 32 deletions .github/workflows/build_default.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ name: Build Default

on:
push:
branches: [ master, develop**, ci ]
branches: [master, develop**, ci]
tags:
- '*'
- "*"
pull_request:
branches: [ master, develop** ]
branches: [master, develop**]

jobs:
build_sdist:
Expand All @@ -15,21 +15,21 @@ jobs:
strategy:
fail-fast: false
steps:
- uses: actions/checkout@master
with:
submodules: 'recursive'
- uses: actions/checkout@master
with:
submodules: "recursive"

- name: Build source
run: |
python -m pip install build
python -m build --sdist --outdir=wheelhouse
- name: Build source
run: |
python -m pip install build
python -m build --sdist --outdir=wheelhouse

- name: Upload sdist to github
uses: actions/upload-artifact@v5
with:
name: wheels-sdist
path: wheelhouse/*.tar.gz
if-no-files-found: error
- name: Upload sdist to github
uses: actions/upload-artifact@v5
with:
name: wheels-sdist
path: wheelhouse/*.tar.gz
if-no-files-found: error

build_wheels:
name: Build wheel on ${{ matrix.os }} for ${{ matrix.cibw_archs }}
Expand All @@ -44,29 +44,29 @@ jobs:
cibw_archs: "auto"
- os: windows-2022
cibw_archs: "auto64"
# Include macos-13 to get Intel x86_64 macs and maos-latest to get the Aaarch64 macs
- os: macos-13
# Include macos-15 to get Intel x86_64 macs and maos-latest to get the Aaarch64 macs
- os: macos-15-intel
cibw_archs: "x86_64"
- os: macos-latest
cibw_archs: "arm64"

steps:
- uses: actions/checkout@master
- uses: actions/checkout@master

- name: Build wheels
uses: pypa/cibuildwheel@v2.23
with:
config-file: cibuildwheel.toml
output-dir: wheelhouse
env:
CIBW_ENVIRONMENT_MACOS: CMAKE_OSX_ARCHITECTURES=${{ matrix.cibw_archs }}
- name: Build wheels
uses: pypa/cibuildwheel@v2.23
with:
config-file: cibuildwheel.toml
output-dir: wheelhouse
env:
CIBW_ENVIRONMENT_MACOS: CMAKE_OSX_ARCHITECTURES=${{ matrix.cibw_archs }}

- name: Upload artifacts to github
uses: actions/upload-artifact@v5
with:
name: wheels-${{ runner.os }}-${{ matrix.cibw_archs }}
path: ./wheelhouse/*.whl
if-no-files-found: error
- name: Upload artifacts to github
uses: actions/upload-artifact@v5
with:
name: wheels-${{ runner.os }}-${{ matrix.cibw_archs }}
path: ./wheelhouse/*.whl
if-no-files-found: error

publish_to_pypi:
name: Publish wheels to PyPi
Expand Down
Loading
Loading