Skip to content
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

Add GPU Wavelet transform support. #338

Merged
merged 6 commits into from
Feb 16, 2024
Merged

Conversation

paquiteau
Copy link
Contributor

This PR add a new optional library for computing wavelet on GPU, using the pytorch wavelet toolbox. In order to make things easier, a wrapper using cupy is also provided.

The current support for GPU array (e.g. using cupy instead of numpy) is not possible everywhere yet. I propose that we tackle each operators/group of operator separatly. A possible way of doing is shown for SparseThreshold but maybe a more generic way is possible (using a decorator maybe?).

Copy link
Contributor

@chaithyagr chaithyagr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM except minor stuff. Also, can we add a test? I know it cant work on CPU, but for now with skip so that we can launch it later when we have local clusters

modopt/opt/linear/wavelet.py Outdated Show resolved Hide resolved
@chaithyagr
Copy link
Contributor

This is failing due to pipeline issues?

@chaithyagr
Copy link
Contributor

Thank you, LGTM. If you have time, do consider writing an example in pysap-mri using this! (All GPU reconstruction workflow)

@paquiteau paquiteau merged commit 753adbc into CEA-COSMIC:master Feb 16, 2024
1 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants