From 65d7d6cf4d041f7a0b9430e45a358088e2d28e3d Mon Sep 17 00:00:00 2001 From: filipovic Date: Sun, 21 Jun 2026 22:26:11 +0200 Subject: [PATCH 1/4] add gpu support to wheel --- .github/workflows/build.yml | 2 +- .github/workflows/docs.yml | 2 +- .github/workflows/format.yml | 2 +- .github/workflows/python.yml | 13 ++++++++----- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 19162df5..5d24b799 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -41,7 +41,7 @@ jobs: steps: - name: 📥 Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: 🖥️ Setup Environment uses: ./.github/actions/setup diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index aa3efba7..e6ed43bf 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -25,7 +25,7 @@ jobs: run: pacman --noconfirm -Syu doxygen git - name: 📥 Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: submodules: "recursive" diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 44963bfb..48b94f4e 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -18,7 +18,7 @@ jobs: steps: - name: 📥 Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: set-safe-directory: true diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 8f2faaac..9df28d54 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -38,7 +38,7 @@ jobs: steps: - name: 📥 Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: 🖥️ Setup Environment uses: ./.github/actions/setup @@ -102,7 +102,7 @@ jobs: ./venv/bin/python -c "import viennals; print(viennals.__doc__)" - name: 📦 Upload Artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: Pre-Built (${{ matrix.os }}) path: venv @@ -137,7 +137,7 @@ jobs: steps: - name: 📥 Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: 🖥️ Setup Environment uses: ./.github/actions/setup @@ -152,6 +152,7 @@ jobs: run: python -m cibuildwheel --output-dir wheelhouse env: CIBW_SKIP: ${{ matrix.skip }} + CIBW_MANYLINUX_X86_64_IMAGE: ghcr.io/viennatools/vienna-builder:cuda-python CIBW_TEST_COMMAND: >- python -c "import viennals; print(viennals.__file__); @@ -161,6 +162,8 @@ jobs: cmake.define.VIENNALS_PACKAGE_PYTHON=ON cmake.define.VIENNALS_IS_CI=ON cmake.define.VIENNALS_VTK_RENDERING=ON + cmake.define.VIENNALS_GPU_BICGSTAB=ON + cmake.define.VIENNACORE_LINK_CUDA_DRIVER=OFF cmake.define.USE_IPO=OFF - name: 🏗️ Build Wheels (Other) @@ -228,7 +231,7 @@ jobs: PY - name: 📦 Upload Artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: wheels-${{ matrix.os }} path: ./wheelhouse/*.whl @@ -245,7 +248,7 @@ jobs: steps: - name: 📦 Download Wheels - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: pattern: wheels-* path: dist From 67f2be4d91399ca39656810650a988cd94b69e77 Mon Sep 17 00:00:00 2001 From: filipovic Date: Sun, 21 Jun 2026 23:17:47 +0200 Subject: [PATCH 2/4] add VIENNALS_USE_GPU --- .github/workflows/python.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 9df28d54..372001c0 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -162,7 +162,7 @@ jobs: cmake.define.VIENNALS_PACKAGE_PYTHON=ON cmake.define.VIENNALS_IS_CI=ON cmake.define.VIENNALS_VTK_RENDERING=ON - cmake.define.VIENNALS_GPU_BICGSTAB=ON + cmake.define.VIENNALS_USE_GPU=ON cmake.define.VIENNACORE_LINK_CUDA_DRIVER=OFF cmake.define.USE_IPO=OFF From 57cf07a67f198b46d3feca59b2aab2ed7c499f05 Mon Sep 17 00:00:00 2001 From: filipovic Date: Mon, 22 Jun 2026 08:55:06 +0200 Subject: [PATCH 3/4] fix missing cuda libs --- .github/workflows/python.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 372001c0..776996bf 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -153,6 +153,13 @@ jobs: env: CIBW_SKIP: ${{ matrix.skip }} CIBW_MANYLINUX_X86_64_IMAGE: ghcr.io/viennatools/vienna-builder:cuda-python + CIBW_REPAIR_WHEEL_COMMAND_LINUX: >- + auditwheel repair + --exclude libcuda.so.1 + --exclude libcudart.so.12 + --exclude libcusparse.so.12 + --exclude libnvJitLink.so.12 + -w {dest_dir} {wheel} CIBW_TEST_COMMAND: >- python -c "import viennals; print(viennals.__file__); From 298441dc734ed04ddc55b630eee766d7d18e87e0 Mon Sep 17 00:00:00 2001 From: filipovic Date: Mon, 22 Jun 2026 11:42:07 +0200 Subject: [PATCH 4/4] bump version to 5.8.1 --- CMakeLists.txt | 2 +- README.md | 2 +- include/viennals/lsVersion.hpp | 4 ++-- pyproject.toml | 2 +- python/viennals/__init__.pyi | 4 ++-- python/viennals/_core.pyi | 4 ++-- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 79b008dc..81b1ef62 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.20 FATAL_ERROR) project( ViennaLS LANGUAGES CXX - VERSION 5.8.0) + VERSION 5.8.1) # -------------------------------------------------------------------------------------------------------- # Library options diff --git a/README.md b/README.md index 6e167460..dab99516 100644 --- a/README.md +++ b/README.md @@ -175,7 +175,7 @@ We recommend using [CPM.cmake](https://github.com/cpm-cmake/CPM.cmake) to consum * Installation with CPM ```cmake - CPMAddPackage("gh:viennatools/viennals@5.8.0") + CPMAddPackage("gh:viennatools/viennals@5.8.1") ``` * With a local installation diff --git a/include/viennals/lsVersion.hpp b/include/viennals/lsVersion.hpp index 2d6b556d..94ee7d6d 100644 --- a/include/viennals/lsVersion.hpp +++ b/include/viennals/lsVersion.hpp @@ -5,10 +5,10 @@ namespace viennals { // Version information generated by CMake -inline constexpr const char *version = "5.8.0"; +inline constexpr const char *version = "5.8.1"; inline constexpr int versionMajor = 5; inline constexpr int versionMinor = 8; -inline constexpr int versionPatch = 0; +inline constexpr int versionPatch = 1; // Utility functions for version comparison inline constexpr uint32_t versionAsInteger() { diff --git a/pyproject.toml b/pyproject.toml index 4b5cc346..53980be3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ requires = [ build-backend = "scikit_build_core.build" [project] -version = "5.8.0" +version = "5.8.1" name = "ViennaLS" readme = "README.md" license = {file = "LICENSE"} diff --git a/python/viennals/__init__.pyi b/python/viennals/__init__.pyi index 0ae66518..2b05b0b5 100644 --- a/python/viennals/__init__.pyi +++ b/python/viennals/__init__.pyi @@ -133,7 +133,7 @@ ILU0: _core.GpuPreconditioner # value = Jacobi: _core.GpuPreconditioner # value = PROXY_DIM: int = 2 _SHARED_OXIDATION_TYPES: tuple = ('OxidationParameters', 'OxidationPresets', 'OxidationDeformationParameters', 'OxidationMaskParameters', 'OxidationCouplingParameters') -__version__: str = '5.8.0' +__version__: str = '5.8.1' _name: str = 'OxidationCouplingParameters' -version: str = '5.8.0' +version: str = '5.8.1' _C = _core diff --git a/python/viennals/_core.pyi b/python/viennals/_core.pyi index d085fb85..4049a060 100644 --- a/python/viennals/_core.pyi +++ b/python/viennals/_core.pyi @@ -1063,6 +1063,6 @@ Cpu: GpuMode # value = Gpu: GpuMode # value = ILU0: GpuPreconditioner # value = Jacobi: GpuPreconditioner # value = -__version__: str = '5.8.0' -version: str = '5.8.0' +__version__: str = '5.8.1' +version: str = '5.8.1' IntegrationSchemeEnum = SpatialSchemeEnum