0

効率を高めるために gpgpu に移植できるいくつかの CPU アプリケーションを探しています。gpgpu は画像処理領域以外のどこで使用できますか? これは実際には私の卒業プロジェクト用です。

4

3 に答える 3

2

GPU 計算エンジンの特殊な処理アーキテクチャは、次のようなほぼすべてのデータ処理の問題に役立ちます。

  1. かなりの量のデータ
  2. そのデータのすべての要素に対して実行する重要な計算、
  3. 各出力要素を計算するために必要な入力データは、GPU メモリに収まるか、必要なときに GPU メモリに到達するようにコレオグラフ化できます。

すべてのデータ要素に対して同時に計算を個別に実行できると便利ですが、これは厳密には必須ではありません。

画像処理はたまたまそのシナリオの 1 つの例です。処理するピクセルの数は有限ですが (ただし、多数)、多くの画像アルゴリズムを各ピクセルに対して並列に実行できます。

その他の例としては、オーディオ信号の処理などの一般化された信号解析があります。画像処理は信号解析の特殊な形式です。課題の多くがノイズから信号を分離することであるパターン認識。音声認識、誰か?化学結合の屈曲角に基づいて有機化合物の形状を把握したり、2 つの有機化合物が興味深い方法で相互作用する可能性があるかどうかを判断したりするなど、3 次元の表面マッチング (バイオ受容体など)。あらゆる種類の物理モデリング (衝突シミュレーション、地震解析など)。そしてもちろん、暗号化では、同じデータを何度も何度も処理するためにより多くの計算時間を費やすことができます。

GPU 計算エンジンは、実行する計算がデータ量によって大幅に縮小される問題にはあまり適していません。GPU は、メモリ内のものに対して適切に機能します。GPU メモリへのデータの移動、または GPU メモリからのデータの移動は、多くの場合、計算全体の中で最もコストのかかるステップです。そのため、データをメモリにロードするコストを「補う」ために十分な計算が行われていることを確認する必要があります。データが大きすぎてメモリに収まらない場合は、分散コンピューティングの戦術を採用する必要があります。

たとえば、ペタバイト データベースの主キー インデックスの計算はおそらく GPU にはあまり適していません。ハード ディスクからメモリにデータを取得するだけでほとんどの労力が費やされるからです。インデックスの計算自体はかなり些細なものであり、これは GPU にとって非常に興味深い勝利にはなりません。また、データを複数のチャンクに分割し、大量の GPU コアによってチャンクに個別にインデックスを付けることができると確信していますが、データの変動性はGPU がフル キャパシティで動作するのを妨げる可能性があります。(GPU コードは、すべての「漕ぎ手」(プロセッサ コア/スレッド) が同じ方向に引っ張られている場合に最適に機能します。つまり、別々のデータで均一に実行されます) データベースのインデックス作成は、GPU アプローチを使用することである程度の利点が見られるかもしれませんが、確かにそうではありません。

于 2012-07-21T06:37:06.233 に答える
0

どの種類のアプリケーションがGPGPUに適しているかを判断する最も簡単な方法は、他のグループが達成したスピードアップを調べることです。その情報へのリンクは次のとおりです。

軍事/航空宇宙、ライフサイエンス、エネルギー、金融、製造、メディア、およびその他のいくつかの小規模な業界には、強力な高速化の例があるようです。

于 2012-07-21T12:50:52.803 に答える
0

ブルートフォース暗号攻撃? MD5 はWhitepixelによって行われ、SHA-256 はすべてのビットコイン マイナーによって行われました。一方、bcrypt()またはの GPU 実装については知りませんscrypt()が、その分野で働いている学者に尋ねるのがおそらくより適切な人です。

于 2012-07-21T06:08:22.587 に答える