このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
コードを高速化するには、まずプロファイリングとベクトル化を試します。詳細については、パフォーマンスとメモリを参照してください。プロファイリングとベクトル化の後、コンピューターの GPU を使用した計算の高速化も試すことができます。使用するすべての関数が GPU でサポートされる場合は、単純にgpuArray
を使用して入力データを GPU に転送し、gather
を呼び出して出力データを GPU から取得できます。GPU コンピューティングを始めるには、GPU での MATLAB 関数の実行を参照してください。
深層学習向けに、MATLAB®は複数の GPU の自動並列処理をサポートしています。MATLAB による複数の GPU での深層学習(Deep Learning Toolbox)を参照してください。
MATLAB および他のツールボックスの数百もの関数はgpuArray
引数を渡すことで自動的に GPU で実行されます。
この例では、gpuDevice
を使用して、使用するデバイスの識別と選択を行う方法を説明します。
MATLAB リリース別の NVIDIA®GPU アーキテクチャのサポート。
MATLAB のgpuArray
は GPU に格納される配列を表します。
この例ではParallel Computing Toolbox™ を使用して、GPU で 2 次元の高速フーリエ変換 (FFT) を実行します。
この例では、MATLAB コードを複数の GPU で並列に実行する方法を説明します。
この例では、自動並列サポートにより、ローカル マシン上の複数の GPU を使用して深層学習を行う方法を説明します。
arrayfun を使用した、要素単位の MATLAB® 関数の GPU におけるパフォーマンス改善
この例では、arrayfun
を使用して MATLAB® 関数を GPU でネイティブに実行する方法を説明します。
PAGEFUN による GPU 上の小さな行列問題のパフォーマンス改善
この例では、多くの独立した回転と平行移動を 3 次元環境のオブジェクトに適用するときにpagefun
を使用してパフォーマンスを改善する方法を説明します。
MATLAB のベンチマーク テストを使用して GPU のパフォーマンスを測定します。
この例では、GPU における線形計算の求解のベンチマークを実行する方法について考えます。
プロファイラーを使用してコード実行の所要時間を測定し、コードの中で最も時間を消費した行または実行されない行を特定する。
ループベースのスカラー指向コードを、MATLAB 行列とベクトル操作を使用するように変更する。
CPU 上のものと同じ乱数列を生成するように、GPU 上の乱数ストリームを制御します。
この例では、GPU でサポートされているいくつかの乱数発生器の間で切り替えを行う方法を示します。
この例ではConway の "ライフ ゲーム" を使用し、GPU を使ってステンシル演算をどのように実行するのかを示します。