-
Notifications
You must be signed in to change notification settings - Fork 66
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
LDE cleanup, omit redundant argument and fix larger domain sizes. #30
Conversation
And an additional thought, also in the LDE_aux() context. As well as in LDE(). The first commit removes |
It's a bit of a mess. LDE_aux was meant to be something where one can also get the intermediate data in natural-order, but current version doesn't return the intermediate data. |
|
It doesn't matter what is was meant to be, once exposed to the public all that matter what it is :-) Anyway, see additional commit. |
Looks good. With this change I think we can replace LDE with LDE_aux. |
No, it's not. In all cases the existing parameters are sufficient to describe any particular operation. As commit message says "In the LDE_powers() case the operation is fully described by |lg_blowup| parameter, and in the NTT_internal() case - by the |type| parameter.
I see no reason to. Again, LDE_powers has |
Done. |
As a point of clarification in regard to "allegedly" in the following sentence from above:
Judging from the implementation in isolation one can imagine a case when Or looking at it from a slightly different angle. As it stands now LDE_spread_distribute_powers with
|
You're right in the context of LDE_powers. In the context of LDE itself where we call
Yes, this is intended. The idea behind is there might be cases where one might want the intermediate data to be also shifted. This would require calling LDE_distribute_powers then LDE_spread_distribute_powers.
Yes. In fact this is the usual way LDE is done. The exponent usually isn't shifted by |
Just in case, I've re-based it. But note that it now performs test-compile :-) |
What do you mean "still"? One of my original points is that it's not exposed to the application, there is no "still." Also note that I didn't touch the flag in |
I mean that we still need for LDE_spread_distribute_powers, and the option should be exposed to the application. I agree with removing it from LDE_distribute_powers. |
So there are no objections then. As it stands here and now that is. Yes, LDE_aux needs more work, but it can be done separately... |
I can do that at a later time. |
In the LDE_powers() case the operation is fully described by |lg_blowup| parameter, and in the NTT_internal() case - by the |type| parameter.
I've squashed [some] commits, could you skim through it one more time, please? |
I also have question about LDE_aux. I don't see that
aux_data
is used for anything. The DtoH transfers onlyext_domain_data
and then dev_ptr_t is freed hence simply omittingaux_data
. What am I missing?