mgcpp
mgcpp copied to clipboard
Implement Fast Fourier Transform CUDA kernel
Implement Fast Fourier Transform CUDA kernel or add cuFFT into the library.
preliminaries
- Implement complex type matrix/vector
@mujjingun do you consider this issue solved?
Not yet, there still is some work to be done, namely implementing padded (upsampling) ffts and 2d/3d ffts.
@mujjingun ok
@mujjingun cuFFT have some serious 'warming up' issues. On multi-GPU servers constructing even takes 1000ms or so. I think implementing our own parallel FFT with upsampling built in, is a considerable option
@Red-Portal Implementing our own FFT would be great. But considering the advanced features that CuFFT offers, such as operating on non-power-of-two size FFTs, which could be a challenge for us to implement, I think it would be better to somehow work around that problem by caching and such.