Exceptions thrown by ITK VkFFT classes are disruptive to pipeline flow and difficult to read. For example, from Python benchmarking on BIL workshop2 node:
Experiment Image Len (px) Volume (px) CPU FFT Time (s) GPU FFT Time(s) Speedup
0 10 1.00e+03 0.000204 0.320318 -156668.8%
1 30 2.70e+04 0.001416 0.159839 -11186.4%
2 100 1.00e+06 0.042245 0.153889 -264.3%
3 200 8.00e+06 0.450544 0.824002 -82.9%
4 300 2.70e+07 1.304689 0.294664 77.4%
5 600 2.16e+08 12.178864 1.481467 87.8%
6 800 5.12e+08 44.749890 3.230387 92.8%
7 1000 1.00e+09 59.368654 6.215513 89.5%
8 1200 1.73e+09 123.027794 10.488541 91.5%
Traceback (most recent call last):
File "/bil/users/tbirdso/vkfft/benchmark.py", line 42, in <module>
vk_interval = run_fft(vk_type, image_size)
File "/bil/users/tbirdso/vkfft/benchmark.py", line 28, in run_fft
return benchmark_fft(fft_filter)
File "/bil/users/tbirdso/vkfft/benchmark.py", line 20, in benchmark_fft
itk_fft_filter.Update()
RuntimeError: ../../../include/itkVkForwardFFTImageFilter.hxx:100:
ITK ERROR: VkFFT third-party library failed with error code 4039.
Exceptions thrown by ITK VkFFT classes are disruptive to pipeline flow and difficult to read. For example, from Python benchmarking on BIL workshop2 node:
Proposals: