2
votes

I googled this topic and didn't find anything new. I am aware of Nvidia's FFT implementation which is great, but for CUDA only. AMD just released their implementation, but it doesn't work on Nvidia cards. Apple has an older and slower implementation. Are there any other good FFT libraries out there? It would be nice if there was an implementation that was meant to work on Nvidia and AMD cards and other possible platforms and is being actively maintained.

4
are you sure about all the assertions here? amd opencl code should work with cuda and the apple fft code is based on work that was faster than cuda - see cs.berkeley.edu/~volkov (comments at bottom of page).andrew cooke

4 Answers

3
votes

The AMD clAmdFft library should work on NVidia GPUs.

I was involved in the development and I know that was the intention. The code was written to the OpenCL standard and doesn't use any proprietary tricks. Of course, AMD didn't do QA testing on NVidia hardware. It could be that NVidia's OpenCL implementation isn't quite 100% compliant to the standard yet. Or it could be something about your particular video card.

Please post more details here as to exacly what is happening. You should also post that information in the AMD developer forums as a bug.

1
votes

AMD recently released an OpenCL SDK for their CPUs as wel as GPUs. Included in it are FFT and BLAS libraries. You can go to the bottom of the page to find out about the supported devices.

But I am not really sure about the performance.

0
votes
0
votes

I know Apple has released an OpenCL FFT package, but I don't know much about it. I've heard that they make the source available.