octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #64733] IFFT returns wrong data for dNDArray i


From: Hg200
Subject: [Octave-bug-tracker] [bug #64733] IFFT returns wrong data for dNDArray input
Date: Sun, 1 Oct 2023 18:36:58 -0400 (EDT)

Follow-up Comment #3, bug #64733 (project octave):

Thank you very much for your fast response. I have read some FFTW
documentation. I think your proposal goes in the direction of what the
oct-fftw.cc author originally intended with the "plan_destroys_in" variable:
If the FFTW planner is in "ESTIMATE", then it creates a default plan. "in" and
"out" arrays remains unchanged. In this case the "else" branch should be
executed. Where as in the "MEASURE" state, the planner performs test
transformations to improve its plan. Then the "in" and "out" arrays are
destroyed. In this case, the "if" branch should be executed. But only the
handling of the input array is implemented. I also agree that the code becomes
convoluted now.

Comment: If the Octave command "y=ifft(x)" is executed, then finally two
different memory spaces must exist. One for the input array "x" and a separate
one for the ouptut array "y". So what is the benefit of an in place
transformation, if in the end a copy action of the result to "y" has to be
performed anyway? You can do this copy action directly with an out of place
transformation. Are there any other disadvantages if we would change
everything to out of place transformations?

Side note: Actually "plan_destroys_in" exactly tells us what the code is
doing. Translation: "This var indicates when the planner destroys its input
array". Nothing is said about output array ;-)


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?64733>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]