Parallel Computing Toolbox では、マルチコアプロセッサ、GPU、計算クラスターを使用して、計算量やデータ量の多い問題を解くことができます。高水準の並列処理機能 (並列 for ループ、専用の配列型、並列数値アルゴリズム) により、CUDA や MPI のプログラミングを行うことなく、MATLAB アプリケーションの処理能力を向上できます。また、Parallel Computing Toolbox により、MATLAB や他のツールボックスで並列処理に対応した関数を使用したり、複数の Simulink シミュレーションを並列実行することもできます。プログラムとモデルは、対話形式モードとバッチモードの両方で実行できます。
このツールボックスを使用すると、ローカルで実行されるスレッドワーカーやプロセスワーカー (MATLAB 計算エンジン) 上でアプリケーションを実行することにより、マルチコア デスクトップや GPU 対応デスクトップの処理能力を十分に活用できます。コードを変更することなく、クラスターやクラウド上で同じアプリケーションを実行できます (MATLAB Parallel Server を使用)。また、このツールボックスと MATLAB Parallel Server を併用すると、1 台のマシンのメモリに収まらない大きな行列計算を実行することもできます。
マルチコア コンピューターを使用した MATLAB の高速化
パラメータースイープ、最適化、モンテ カルロ シミュレーションなどのタスクに parfor
やその他の関数を使用して、MATLAB のスレッドやプロセスを並列実行します。MATLAB 言語の機能 (Parallel Computing Toolbox を使用) によりリソース、ファイル依存関係、その他の詳細を処理することで、本来の作業に集中できるようになります。
ドキュメンテーション | 例
GPU を使用した MATLAB の高速化
コードを追加することなく NVIDIA® GPU を使用できるため、パフォーマンス チューニングではなくアプリケーションに集中できます。MATLAB、Simulink、Deep Learning Toolbox などのアドオン製品の主要な関数には、GPU 対応関数があります。上級開発者は、CUDA コードを含む MEX 関数を作成することもできます。デスクトップ、計算クラスター、クラウド環境で複数の GPU を使用します。
ドキュメンテーション | 例
MATLAB の追加の並列処理機能
MATLAB やアドオン製品の多くの機能で自動並列処理がサポートされており、多くのアプリケーションが並列処理機能に対応しています。Parallel Computing Toolbox には、アルゴリズムの再コーディングが不要な、関数の並列実行からデータの並列処理までの実行モデルをカバーする広範な並列処理言語が含まれています。
ドキュメンテーション | 例
複数の Simulink シミュレーションの並列実行
関数 parsim
を使用して、シミュレーションを並列実行します。この関数は、複数のシミュレーションをマルチコア CPU に分散し、全体的なシミュレーション時間を短縮します。parsim
を使用すると、並列プールの自動作成、ファイル依存関係の特定、ビルド アーティファクトの管理も実行できるため、設計作業に集中できます。並列シミュレーションは、対話的に実行することも、バッチで実行することもできます。
ドキュメンテーション | 例
シミュレーション マネージャー
parsim
と統合されているシミュレーション マネージャーを使用して、複数のシミュレーションを 1 つのウィンドウで監視および可視化できます。個々のシミュレーションを選択してその仕様を表示したり、シミュレーション データ インスペクターを使用してシミュレーション結果を調べたりすることもできます。また、診断タスクの実行やシミュレーションの中止も簡単にできます。
並列処理に対応した Simulink 機能の使用
関数 parsim
や batchsim
を使用して Simulink シミュレーションを実行するほか、Simulink には、Simulink Design Optimization、Reinforcement Learning Toolbox、Simulink Test、Simulink Coverage など、コードを記述せずにシミュレーションを並列実行するための並列処理機能を提供する多くのアドオン製品があります。
ドキュメンテーション | 例
パブリッククラウドとプライベートクラウドでの MATLAB デスクトップの実行
クラウドで利用可能なオンデマンドの高性能 CPU や GPU マシンを活用することで、解析やシミュレーションを高速化します。Amazon Web Services® (AWS) または Microsoft Azure® のバーチャルマシン上で MATLAB と Simulink を直接実行できます。
MATLAB Parallel Server を使用したクラスターへの拡張
デスクトップでプロトタイプを開発し、再コーディングを行わずに計算クラスターやクラウドに拡張できます。クラスター プロファイルを変更するだけで、デスクトップから別の実行環境にアクセスできます。
ドキュメンテーション | 例
MATLAB Parallel Server での分散配列の使用
アルゴリズムを再コーディングすることなく、1 台のマシンのメモリに収まり切らない計算を実行できます。分散配列の入力で呼び出されると分散計算として自動的に実行される、多くの関数を使用します。デスクトップでプロトタイプを作成し、MATLAB Parallel Server を使用して追加のリソースにスケールアップすることで、フルスケールでの実行が可能です。
ドキュメンテーション | 例
製品リソース:
「Parallel Computing Toolbox と MATLAB Parallel Server を使用して、56 プロセッサのクラスターに作業を分散しました。これにより、MATLAB と Deep Learning Toolbox を使用して最適なニューラル ネットワーク構成をすばやく特定し、移植データベースのデータを使用してネットワークを学習させ、シミュレーションを実行してリスク要因と生存率を分析できました。」
Dr. Johan Nilsson, Skåne University Hospital, Lund University
あなたは学生ですか?
ご所属の学校にはすでに Campus-Wide License が導入されていて、MATLAB、Simulink、その他のアドオン製品を利用できる可能性があります。