Parallel Computing Toolbox

MATLAB アプリケーションのスケールアップ

Parallel Computing Toolbox で、マルチコアプロセッサと GPU を備えたコンピューターを活用してアプリケーションを実行できます。

マルチコア コンピューターで MATLAB を高速化

パラメータースイープ、最適化、およびモンテカルロ シミュレーションなど問題に対して、並列 for ループ(parfor) を使用して、マルチコア CPU で並行的に独立した反復処理を実行します。parfor は並列プールの作成とファイル依存の管理を自動化するので、他の作業に集中できます。MATLAB と Simulink 製品のいくつかの主要な関数は 並列処理に対応しています。Parallel Computing Toolbox でこれらの関数を使用することにより、使用可能な並列処理リソース全体に演算を分散できます。並列アプリケーションを対話形式およびバッチジョブとして実行できます。

Parallel Computing Toolbox を使用して、追加の CPU と GPU リソースにより MATLAB と Simulink を高速化。

Parallel Computing Toolbox を使用して、追加の CPU と GPU リソースにより MATLAB と Simulink を高速化。

GPU で MATLAB を高速化

Parallel Computing Toolbox で、gpuArray により MATLAB から直接 NVIDIA® GPU を使用できます。fft、要素ごとの操作、lu やバックスラッシュ演算子 (\) とも呼ばれる mldivide のような線型代数演算など、500 を超える MATLAB 関数が NVIDIA GPU で自動的に実行されます。Deep Learning Toolbox など、いくつかの MATLAB と Simulink 製品の主要な関数は GPU に対応しています。追加コードを記述することなく GPU リソースを使用できるため、パフォーマンス チューニングよりも自身のアプリケーションに注力できます。上級の開発者は、MATLAB から作成した CUDA コードを直接呼び出すことができます。デスクトップ、コンピューター クラスター、およびクラウド環境で複数の GPU が利用できます。

GPUArray と GPU 対応の MATLAB 関数を使用することで、低レベルの CUDA プログラミングを行うことなく、MATLAB 演算を高速化。

gpuArray と GPU 対応の MATLAB 関数を使用することで、低レベルの CUDA プログラミングを行うことなく、MATLAB 演算を高速化。

大規模データの処理

Parallel Computing Toolbox では、MATLAB に組み込まれた tall 配列と mapreduce の機能が拡張されるので、ローカルワーカーで実行して性能を改善できます。そして、tall 配列と mapreduce を MATLAB Parallel Server で追加のリソースにスケールアップできます。これは、従来型のクラスターまたは Apache Spark™ と Hadoop® クラスターで可能です。また、分散型配列をデスクトップでプロトタイプ作成して、MATLAB Parallel Server で追加のリソースにスケールアップすることもできます。

MATLAB tall 配列を使用した大規模データの並列解析。

MATLAB tall 配列を使用した大規模データの並列解析。 

Simulink シミュレーションを高速化

Parallel Computing Toolbox を使用すれば、同時に複数の CPU コアで、多数の Simulink シミュレーションを簡単に実行できます。 モンテカルロ解析、パラメータースイープ、モデルのテスト、実験計画、およびモデルの最適化では、異なった入力またはパラメーター設定で同じモデルを簡単に実行します。

複数のシミュレーションを並行して実行

parsim 関数を使用して、シミュレーションを並行して実行します。この関数は複数のシミュレーションをマルチコア CPU に分散し全体のシミュレーション時間を短縮します。また、parsim は並列プールの作成を自動化して、ファイルの依存関係を特定し、ビルド アーティファクトを管理するので、設計作業に集中することが可能になります。並列シミュレーションを対話形式およびバッチジョブとして実行できます。

parsim 関数を使用して、複数のシミュレーションを並行して実行。

parsim 関数を使用して、複数のシミュレーションを並行して実行。

シミュレーション マネージャー

シミュレーション マネージャーは parsim と統合されているので、単一のウィンドウで複数のシミュレーションを監視して可視化するために使用できます。個別のシミュレーションを選択して仕様を参照、またシミュレーション データインスペクターを使用してシミュレーション結果を調べることができます。また、便利な機能として、診断タスクの実行またはシミュレーションの停止もできます。

単一のウィンドウで複数のシミュレーションを監視。

シミュレーション マネージャーの単一のウィンドウで、複数のシミュレーションを監視。

並列処理に対応した Simulink 機能の利用

parsimbatchsim 関数を使用した Simulink シミュレーションの実行に加え、Simulink Design Optimization、Reinforcement Learning Toolbox、Simulink Test、および  Simulink Coverage など数多くの Simulink 製品で並列化された機能が提供されているので、コードの作成なしでシミュレーションの並列実行が可能です。

フラグまたは環境設定により Simulink アプリを並列処理化。

フラグまたは環境設定により Simulink アプリを並列処理化。

クラスターとクラウドでの並列処理

デスクトップまたはバーチャル デスクトップでアプリケーションのプロトタイプ作成およびデバッグを行い、コードを作成し直すことなくクラスターやクラウドに拡張できます。また、インタラクティブに開発を行い、バッチ ワークフローで実運用に移行できます。

MATLAB デスクトップのパブリッククラウドまたはプライベートクラウドでの実行

複数の高性能 CPU および GPU マシンをオンデマンドで活用して分析とシミュレーションを高速化します。MATLAB と Simulink を Amazon Web Services® (AWS) 環境または Microsoft Azure® 上の仮想マシンで直接実行します。

また NVIDIA GPU クラウド または NVIDIA DGX 上の MATLAB Deep Learning Container でニューラル ネットワークの学習をすることで、ディープラーニング アプリケーションを高速化することもできます。

Amazon Web Services (AWS) 環境の EC2 インスタンスで直接 MATLAB と Simulink を実行。

Amazon Web Services (AWS) 環境の EC2 インスタンスで直接 MATLAB と Simulink を実行。

MATLAB Parallel Server のあるクラスターに拡張

デスクトップでプロトタイプを開発すると、そのコードを作成し直すことなくコンピューティング クラスターまたはクラウドに拡張できます。クラスター プロファイルを変更するだけで、デスクトップからさまざまな実行環境にアクセスできます。 

コード変更なしに追加のクラスターとクラウドリソースを使用して簡単にアプリケーションをスケールアップ。

コード変更なしに追加のクラスターとクラウドリソースを使用して簡単にアプリケーションをスケールアップ。