Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

パフォーマンスとメモリ

コードのプロファイリング、パフォーマンスの改善、必要なメモリの削減

コードは、特に最初の実装の場合、単純かつ読みやすく記述します。コードの最適化を急ぎ過ぎると、パフォーマンスを著しく向上させることなく、不必要にコードが複雑になる場合があります。速度が問題である場合には、コードの実行にどの程度の時間がかかるかを測定し、コードをプロファイリングしてボトルネックを特定します。必要に応じて、パフォーマンスを改善するための操作を行うことができます。

MATLAB® ではデータ ストレージが自動的に処理されます。ただし、メモリに問題がある場合は、メモリ要件を特定して、メモリをより効率的に使用する手法を適用できます。

関数

すべて展開する

ticストップウォッチ タイマーを開始
tocストップウォッチから経過時間を読み取る
cputimeMATLAB で使用される CPU 時間
timeit関数の実行に必要な時間の測定
profile関数実行時間のプロファイル
benchMATLAB ベンチマーク
memoryメモリ情報
inmemメモリ内の関数、MEX ファイル、クラスの名前
packワークスペース メモリの整理
memoizeメモ化のセマンティクスを関数ハンドルに追加
MemoizedFunctionメモ化された関数を呼び出して結果をキャッシュ
clearAllMemoizedCachesすべての MemoizedFunction オブジェクトのキャッシュのクリア

トピック

コードでの測定とプロファイリング

コードのパフォーマンスの測定

関数 timeit またはストップウォッチ タイマー関数の tic および toc を使用して、コードの実行時間を計測する。

パフォーマンス向上のためのコードのプロファイリング

プロファイラーを使用してコード実行の所要時間を測定し、コードの中で最も時間を消費した行または実行されない行を特定する。

プロファイラーを使用したコード カバレッジの判定

プロファイリング時にファイルのどの部分が MATLAB で実行されるかを判断するために、カバレッジ レポートを実行する。

パフォーマンスの向上

パフォーマンス向上の手法

コードのパフォーマンスを高速化するために検討できる手法がいくつかあります。

メモリ要件の特定と軽減

MATLAB でのメモリの割り当て方法

MATLAB によるメモリの割り当て方法を理解することで、メモリを効率良く使用するコードを作成。

メモリを効率的に使用するための対策

プログラムのメモリ使用量の削減、適切なデータ ストレージの使用、メモリの断片化の回避、および使用されたメモリの再利用。

データの不要なコピーの回避

MATLAB では、値により関数入力を渡すときにメモリの最適化を適用できます。

メモリ不足エラーの解決

オペレーティング システムに対して使用可能なメモリより大きなセグメントを要求する場合、MATLAB はエラーを返します。