Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

Separable convolution

rahul_modi
Beginner
533 Views
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
0 Kudos
1 Solution
Victor_Gladkikh
New Contributor I
533 Views
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.

View solution in original post

0 Kudos
4 Replies
Victor_Gladkikh
New Contributor I
533 Views
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.
0 Kudos
rahul_modi
Beginner
533 Views

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.

0 Kudos
Victor_Gladkikh
New Contributor I
534 Views
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.
0 Kudos
rahul_modi
Beginner
533 Views
Thanks Victor. That helps.
-Rahul
0 Kudos
Reply