Main Content

GPU でのイメージ処理

最新の GPU (グラフィックス処理装置) が提供するパフォーマンス上のメリットを利用するために、Image Processing Toolbox™ の一部の関数は GPU でのイメージ処理の実行に対応しています。これにより、複雑なイメージ処理ワークフローに GPU 高速化を提供できます。これらの手法は、設計要件やパフォーマンス上の目標を達成するために単独または組み合わせて使用できます。

GPU でイメージ処理コードを実行するには、Parallel Computing Toolbox™ ソフトウェアが必要です。サポートされているイメージ処理演算を GPU で実行するには、以下の手順に従います。

  • データを CPU から GPU に移動します。関数 gpuArray (Parallel Computing Toolbox) を使用して、配列を MATLAB® から GPU に転送します。詳細については、既存のデータからの GPU 配列の作成 (Parallel Computing Toolbox)を参照してください。

  • GPU でイメージ処理演算を実行します。GPU 対応のすべてのツールボックス関数の一覧は、GPU コンピューティングをサポートする関数を参照してください。

  • データを GPU から CPU に戻します。関数 gather (Parallel Computing Toolbox) を使用して、GPU から配列を取得し、その配列を通常の MATLAB 配列として MATLAB ワークスペースに転送します。

GPU をサポートする関数を、入力引数 gpuArray (Parallel Computing Toolbox) を 1 つ以上使用して呼び出した場合、その関数は自動的に GPU で実行され、結果として gpuArray を生成します。gpuArray 配列と MATLAB 配列の両方を同じ関数呼び出しに使用して、入力を混在させることができます。この場合、関数は自動的に MATLAB 配列を GPU に転送して実行します。

GPU を使用して作業する際には、以下の点に注意してください。

  • パフォーマンスの向上は GPU デバイスに依存します。

  • GPU で返される結果と CPU で返される結果はわずかに異なる場合があります。

カスタム CUDA カーネルを MATLAB に直接統合して複雑なアルゴリズムを高速化する方法については、GPU での CUDA または PTX コードの実行 (Parallel Computing Toolbox)を参照してください。

参考

(Parallel Computing Toolbox) | (Parallel Computing Toolbox)

関連する例

詳細