pentschev · GitHub

The OpenCL backend for fft() is failing on NVIDIA GPUs when input is sufficiently large (but not large enough that it won't fit in GPU memory). This is apparently an issue with clFFT as I got similar behaviour when trying to implement large unit tests for fftconvolve().

A snippet that will cause is below:

af::array A = af::fft(randu(1048576, f32));
af_print(A);

The code above will fail with CL_OUT_OF_RESOURCES error, but if af_print() is changed to something else, the error code also changes. Note that it will only fail when there is another ArrayFire function call after the fft() call, if the program exits immediately after that, no errors are reported.

No errors were reported when testing large inputs with AMD Radeon HD 7970.

Read the original on github.com ↗