File Exchange

image thumbnail

Beating MatLab's Convolution Function conv.m for Long Real Sequences!

version 1.2 (4.71 KB) by

This submission contains three fast convolution functions suitable for real signals only.

2 Downloads

Updated

View License

Fast convolution is a primary goal in real-time DSP applications. Here I provide three custon convolution computation functions, suitable for real signals only. Quite remarkably, they outperform MatLab's built-in conv.m function when the length of both sequences is greater than 2^12! I also provide a benchmarking script and some figures of my results. Even more suprisingly, there is no coding in a lower level language like C or assembly. Therefore great room for further speed improvements exists!

Comments and Ratings (4)

Fan D.Chen

Running very smooth, helped me a lot, thank you

Ilias Konsoulas

OK, the missing file is uploaded now, you may download and run without problems.

Ilias Konsoulas

Please wait a bit until the latest update is approved. The custom function my_DHT.m was omitted in the original submission.

Updates

1.2

I have improved the fastconvrealDFT.m file. Now it takes advantage the special structure of the intermediate signal Z for faster execution. Since it corresponds to a real-signal DFT, I now use the ifftreal.m function.

1.1

I included the custom function my_DHT.m which was inadvertently omitted in the initial .zip file.

MATLAB Release
MATLAB 7.13 (R2011b)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video