-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
ENH: signal: add CuPy/JAX delegation to scipy.signal #22142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
model the structure on scipy.ndimage: - add `_delegators.py` with *_signature functions - add _signal_api.py to collect "bare" imports from _private modules - add _support_alternative_backends.py to decorate "bare" functions - in __init__.py, import decorated names from _support_alternative_backends.py
This is ready from my side, now that the delegation machinery skips classes, mypy noise is suppressed, and This PR, strictly speaking, does not bring anything new. It only streamlines the foundation for further array api work in scipy.signal. So it'd be most convenient to land this before other ones (gh-22122, gh-22008, gh-21783 will need to be rebased after this one lands). EDIT: this PR actually does bring a blanket delegation to CuPy for all of scipy.signal namespace:
the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, thanks! I'll run GPU tests before merging
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pixi run test-cuda -s signal
is all green, thanks Evgeni!
Model the structure on scipy.ndimage:
_delegators.py
with *_signature functions_signal_api.py
to collect "bare" imports from _private modules_support_alternative_backends.py
to decorate "bare" functions__init__.py
, import decorated names from_support_alternative_backends.py
This is still WIP for:no longer WIP.windows
subpackagepython dev.py -b all
works without errors