[vsipl++] [patch] Scalable SAR benchmark
Don McCoy
don at codesourcery.com
Tue Oct 31 00:23:49 UTC 2006
Jules Bergmann wrote:
> This looks good. I have several comments below, plus some general
> comments.
>
> Since this code isn't going into the core library, and since this is
> going to be in a flux as we optimize, let's do the following:
>
> - address the easy comments:
> - Definitely 1, 5, 8
> - Perhaps 4, 6, 7
> - Later: 2, 3, 9.
>
I did 1, 5 and 8. Also, I converted it to a template class (back to a
template class, that is) and eliminated the passing of member views.
Ok to check in?
> - Avoid returning views by value (both for builtin operations, like
> Fftm, and for user defined functions, like fft_shift, load_view,
> and ...).
>
> Do you think the by-value notation is easier to read? If so, let
> me know. I have a partially finished patch for return-block
> optimization that can make the by-value forms as efficient as
> by-reference. However, this would be for builtin operations only,
> not user defined ones.
>
I blithely followed the matlab code here. It is easier just in the
sense that it can be combined into expressions more easily, but passing
(in, out) and returning 'out' will be almost as good.
> - Continue to move intermediate views out of Kernel1 member functions
> and replace them with Kernel1 member variables.
>
I believe there are no more views to handle this way, specifically
because the number of columns in the final image is not known until the
interpolation phase (member nx_). I have an idea for how to fix this:
If the bits to compute nx_ can be factored out, putting them into a
separate class (sort of a SAR imaging pre-processor), it would allow the
remaining views to be member variables, in addition to the last two
inverse FFT's. I'll let you know if I run into a problem doing this.
But if you know a better way...
> - To avoid confusion, I think it would be better to have Kernel1
> member functions work directly on member variables, instead of
> passing them as arguments.
>
> For example, digital_spotlighting should just use s_filt_ instead
> of having it passed in as a parameter.
>
I'd debated this. I think I've changed my mind (and now agree with your
suggestion).
Thanks for the comments!
--
Don McCoy
don (at) CodeSourcery
(888) 776-0262 / (650) 331-3385, x712
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ssar3.changes
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20061030/412d5edb/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ssar3.diff
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20061030/412d5edb/attachment-0001.ksh>
More information about the vsipl++
mailing list