I am looking for a way to interrupt cuda FFT computation if it runs for too long. How can it be accomplished?
I was looking for some timeout setting in the API, but I found no such option. When googling, most hits talk about an unwanted timeout from the GPU driver, which is an entirely different topic.
I am computing rather big 3D FFTs (size is around [1k,1k,0.5k]). Usually it takes a few minutes to complete. However, sometimes it can take hours for some unknown reason. One of more extreme cases I found in logs is:
2023-02-17 21:41:02.174 FFT<C,R> size [960, 1125, 480]
2023-02-18 09:24:46.503 FFT<C,R> complete
In this particular case, the input complex array sits on the GPU, but the output real array is mapped from RAM. Otherwise it would probably not fit the 8GB memory of RTX 3060 Ti that it ran on. Despite the mapping, in most cases few minutes is enough to complete the task.