CUDA Resizer AUFは、GeForce 8400GS以降のVGAとCUDAを用いて高速にリサイズすることを可能にする、AVIUTLのフィルタプラグインです。
今のところ、略式ニアレストネイバーと面積平均法(積分法)とLanczos(1〜32)ですが、最適化がすすんでおらず、Lanczosは、まるもさんのプラグインの速度に手元の環境では全然及びません。ただ、CUDAの最適化についてさっき知識が増えたので、まだのびしろはあると思います。
CUDA Resizer AUF copyright(c) 2008 Y.Nomura all rights reserved.
そのうちGPL2にしようと思ってますが、ちょっとお待ちを。
今のところ全然速くないですが、次のバージョンでは、CPUにもVGAと並行して演算させようと思っています。
nVidiaが配布しているCUDAのマニュアルから引用したのが下の表です。基本的に、CUDAでは、マルチプロセッサー数が増えるほど、同時に動作するスレッドが増えるので、高速動作を期待できます。Compute Capabilityは、数字が大きいほどCUDAの新しい機能を使える互換性を表しています。2008年8月現在、GeForce 8800GTは、1万円を切る製品も出てきたので、CUDAで動かすにはなかなか良さそうです。
model | Number of Multiprocessors | Compute Capability |
GeForce GTX 280 | 30 | 1.3 |
GeForce GTX 260 | 24 | 1.3 |
GeForce 9800 GX2 | 2x16 | 1.1 |
GeForce 9800 GTX | 16 | 1.1 |
GeForce 8800 Ultra, 8800 GTX | 16 | 1.0 |
GeForce 8800 GT | 14 | 1.1 |
GeForce 9600 GSO, 8800 GS, 8800M GTX | 12 | 1.1 |
GeForce 8800 GTS | 12 | 1.0 |
GeForce 9600 GT, 8800M GTS | 8 | 1.1 |
GeForce 9500 GT, 8600 GTS, 8600 GT, 8700M GT, 8600M GT, 8600M GS | 4 | 1.1 |
GeForce 8500 GT, 8400 GS, 8400M GT, 8400M GS | 2 | 1.1 |
GeForce 8400M G | 1 | 1.1 |
Tesla S1070 | 4x30 | 1.3 |
Tesla C1060 | 30 | 1.3 |
Tesla S870 | 4x16 | 1.0 |
上述の通り、CUDAだけでやるよりCPUにもやらせた方がよさそうなので、次のバージョンではそういう風にやってみようと思います。