1D convolução rápida sem FFT

Preciso de uma convolução 1D contra 2 grandes matrizes. Estou usando esse código em c #, mas leva muito tempo para executa

Eu sei eu sei! As convulsões da FFT são muito rápidas. Mas neste projeto eu não posso usá-lo. É uma restrição do projeto não usar o FFT (por favor, não pergunte o porquê: /).

Este é o meu código em C # (portado de matlab, a propósito):

var result = new double[input.Length + filter.Length - 1];
for (var i = 0; i < input.Length; i++)
{
    for (var j = 0; j < filter.Length; j++)
    {
        result[i + j] += input[i] * filter[j];
    }
}

ntão, alguém conhece algum algoritmo de convolução rápida widthout FF

questionAnswers(4)

yourAnswerToTheQuestion