How is convolution and FFT related?
FFT convolution uses the overlap-add method together with the Fast Fourier Transform, allowing signals to be convolved by multiplying their frequency spectra. For filter kernels longer than about 64 points, FFT convolution is faster than standard convolution, while producing exactly the same result.
Why is FFT faster than convolution?
The convolution uses your O(n) per output sample. But because the FFT over 2n points coughs up 2n points, and n of those points are 'new', you only do the FFT 1/n as many times as you'd do the convolution.