用 GPU 跑 FFT
遲早會有人把腦筋動到 GPU 強大的運算能力上 :p
這次是利用 Nvidia 的 GPU 弄出一個數學函示庫 GPUFFTW,利用 GPU 計算 FFT 的基本運算加速:High performance FFT on GPUs。
在 Benchmark 中,透過 GPU 加速可以使得 FFT 整體的速度大約是純用 CPU 計算的四倍,但顯示卡的價錢卻只有 CPU 的 1/3。換句話說,把這類運算丟給 GPU 做,讓 CPU 計算其他的事情。
不過還是有些限制:
- 只有 32-bits (single-precision) float point 可以用,這是 GPU 所造成的限制,如果以後有 GPU 支援 64-bits 才有辦法支援上去。
- 只能跑 1-D FFT。
- 在科學計算上面還要考慮到「正確性」的問題:GPU 計算時可能會有誤差,在畫圖的時候差一些沒關係,但科學計算的時候是不被允許的…
所以這個 Math Library 實際能應用的領域其實就小很多了…