Skip to content

Conversation

@gigony
Copy link
Contributor

@gigony gigony commented Aug 20, 2024

Addresses #763

This PR builds the wheel for Windows (only for amd64) if the current arch is x86_64, by updating build_wheel.sh.

Since CI is building the wheel with multiple configurations, it is currently generating the same Windows wheel for both Python 3.10 and 3.11 (resulting in four identical Windows wheels for both cucim-cu11 and cucim-cu12 PyPI registry).

Currently, there is no way to determine if the build is using the latest available Python version from build_wheel.sh. It can be controlled by updating the CI workflow, but we'll need help from the DevOps team.

The Windows wheel size is around 700KB, and hopefully, the redundant wheel files across multiple configurations won't cause any issues when registering them to PyPI from the S3 location (such as this).

@gigony gigony added feature request New feature or request non-breaking Introduces a non-breaking change labels Aug 20, 2024
@gigony gigony requested review from grlee77 and jakirkham August 20, 2024 22:43
@gigony gigony self-assigned this Aug 20, 2024
@gigony gigony requested a review from a team as a code owner August 20, 2024 22:43
@gigony gigony requested a review from jameslamb August 20, 2024 22:43
@gigony gigony force-pushed the support_windows_wheel branch 4 times, most recently from 5727f4d to 06b46a6 Compare August 21, 2024 00:02
@gigony gigony force-pushed the support_windows_wheel branch from 06b46a6 to 2ec710e Compare August 21, 2024 01:08
@gigony
Copy link
Contributor Author

gigony commented Aug 21, 2024

I can see windows wheels are available here: https://downloads.rapids.ai/ci/cucim/pull-request/765/2ec710e/

@grlee77
Copy link
Contributor

grlee77 commented Aug 26, 2024

Thanks @gigony,

I downloaded the Python 3.10 artifacts from the link you provided and installed the cucim_cu12-24.10.0a9-py3-none-win_amd64.whl in a Python 3.10 environment on a Windows 11 system with an RTX A3000 GPU and CUDA Toolkit 12.6 installed.

I used a Python 3.10 conda environment with NumPy 1.26.4 and CuPy 13.3.0 (cupy_cuda12x installed via pip). This was in native Windows 11 (not WSL). I ran the test suites for cucim.core and cucim.skimage and almost all test cases pass.

The only failures were in a small number of tests internal 2D separable filtering kernels that are not part of CuPy. I will make a separate MR to disable using these cuCIM kernels on Windows and always fall back to the default CuPy elementwise kernels on Windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature request New feature or request non-breaking Introduces a non-breaking change

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants