Finite Impulse Response (FIR) Filter in CUDA implemented as a 1D convolution

In this post, we consider the problem of calculating the output of a FIR (Finite Impulse Response) filter by directly evaluating the 1D convolution in CUDA. In the case when the filter impulse response duration is long, one thing that can be done to evaluate the filtered input is performing the calculations directly in the conjugate domain using FFTs. On our GitHub website, a sample code using the cuFFT library is reported. It is a direct translation of the Matlab-based example reported at Low...
More

Finite Impulse Response Filter in CUDA

Perhaps the best way to evaluate the output of a FIR (Finite Impulse Response) filter is performing the calculations directly in the conjugate domain using FFTs. Below, a sample code using CUDA Thrust and the cuFFT library is provided. It is a direct translation of the Matlab-based example reported at Low-Pass Filtering by FFT Convolution. It should be disclaimed that some optimizations are possible with this code, but it has been preferred to leave it as it is so that it could be more easily c...
More