最近あまり聞かなくなった、GPGPUですが、
実際のところ、どうだったのか。
経験からのお話です。
GPGPUは、条件さえ満たせば、爆速保証されます。
私の場合、非常に厳しい前提条件の元、SSEで実装されたものを
チンチンに抜去りました。
普通、考えるのが、画像処理や動画処理です。
先ず、静止画画像処理ですが、意味があまり無いです。
プレビュー用(モニタ出力用)としてのみ、GPUを用いるのは、ありなケースです。
しかし、GPUで処理を行い、メモリに書き戻す(ファイル保存するため)というのは、
PCIExpress2.0では、CPUでガチガチにチューニングされたものと比べると、
勝機が見いだせないのが現状です。
画像のサイズが4k8kとか、とんでもない大きさになった場合、うっすら勝機が見えてきます。
動画処理(エンコードとか)については、かなり有効であります。
動画処理は、とどのつまり、大量の静止画処理なので、例えば1分の動画であっても、
静止画に直すと、なかなかの大きさになります。
従って、普通の人がお世話になる事はほとんどありません。
いかにGPUが良くなったとしても、バスがこれじゃあしょうがないのです。
まぁ、FXやら、CFDやらやってる人は、お世話になっている可能性大ですよ。
実際のところ、どうだったのか。
経験からのお話です。
GPGPUは、条件さえ満たせば、爆速保証されます。
私の場合、非常に厳しい前提条件の元、SSEで実装されたものを
チンチンに抜去りました。
普通、考えるのが、画像処理や動画処理です。
先ず、静止画画像処理ですが、意味があまり無いです。
プレビュー用(モニタ出力用)としてのみ、GPUを用いるのは、ありなケースです。
しかし、GPUで処理を行い、メモリに書き戻す(ファイル保存するため)というのは、
PCIExpress2.0では、CPUでガチガチにチューニングされたものと比べると、
勝機が見いだせないのが現状です。
画像のサイズが4k8kとか、とんでもない大きさになった場合、うっすら勝機が見えてきます。
動画処理(エンコードとか)については、かなり有効であります。
動画処理は、とどのつまり、大量の静止画処理なので、例えば1分の動画であっても、
静止画に直すと、なかなかの大きさになります。
従って、普通の人がお世話になる事はほとんどありません。
いかにGPUが良くなったとしても、バスがこれじゃあしょうがないのです。
まぁ、FXやら、CFDやらやってる人は、お世話になっている可能性大ですよ。