Hi,
I need to know if the current implementation of multi-dimensional convolution allows convolution by seperability (for faster computation), if the input kernel is separable (http://www.dspguide.com/ch24/3.htm).I know I can implement this myself using repeated application of one-dimensional convolution, but this is just to avoid reinventing the wheel in case MKL already offers such a method.
Thanks,
Rahul Modi
1 解答
No, MKL doesn't provide such functionality, alsothis optimizationdoesn't help for FFT mode because separate kernels doesn't significantly reduce nuber of operation in this mode.
链接已复制
4 回复数
MKL provides 2 modes for compiting convolution. MKL can compute convolution directly or by using fast Fourier transform.Youcould use the second way to compute convolution becausein general it requires lessfloat pointer operations thencomputing convolution directly.
Hey Victor,
Thanks for replying back. I am aware of MKL allowing two modes for convolution and as of nowI am using the FFT method. My question is more toward a specific case, of separable kernels used for convolution. (http://blogs.mathworks.com/steve/2006/10/04/separable-convolution/). I need to know if MKL incorporates any such optimization for N-D convolutions.
Thanks,
Rahul modi.
No, MKL doesn't provide such functionality, alsothis optimizationdoesn't help for FFT mode because separate kernels doesn't significantly reduce nuber of operation in this mode.
Thanks Victor. That helps.
-Rahul
-Rahul