-
Notifications
You must be signed in to change notification settings - Fork 81
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
finufft/cufinufft interface rationalization (C) #255
Comments
So while writing up the docs, I'm realizing that we forgot one change: in |
Actually, looking through the code, it seems that we're defining |
we should make it match finufft and do the check, i think. the reason we have to limit to int32 is that's the limit for |
Ok sounds good. Will take a look tomorrow. |
Closed by #411. |
Currently, the C interfaces for finufft and cufinufft are quite close, but don't match up exactly, which could lead to confusion. We currently have:
Makeplan
The proposed solution here is to remove
maxbatchsize
(i.e., move it intoopts
), useint64_t
fornmodes
and renamentransf
andtol
.Setpts
Proposed solution is to move plan to first argument and use
int64_t
.Execute
Again, plan should be moved to the beginning.
Destroy
Same.
Default_opts
There are a few things to deal with here. We'd like to be able to call
default_opts
in cufinufft without specifying dimension or type (this should also allow us to returnvoid
as well). To achieve this, certain options need to have an “auto” setting, where their exact values are set duringmakeplan
depending ondim
andopts
. Looking atcufinufft_default_opts
, it looks like the only option that is dependent on the type (there is no dependence on dimension) isgpu_method
(method #2 for type 1 and method #1 for type 2), so this should be fairly straightforward (specifygpu_method = 0
for “auto”).The text was updated successfully, but these errors were encountered: