このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
実行速度
生成されたコードの実行速度を改善する
コード ジェネレーターでは、グローバル変数をローカル変数に置き換えたり、データ コピーを削除したり、関数 memset
と関数 memcpy
を使用したり、データを保存するためのメモリ量を減らすことで、可能な限り生成コードの実行速度を向上させます。コンパイラとプロセッサ固有の最適化を実装したり、バッファーの再利用を指定したり、必要のないコードを削除することで、生成コードの実行速度を向上させることができます。
トピック
プロセッサ固有の最適化
- Control Data and Function Placement in Memory by Inserting Pragmas
Increase code efficiency on your hardware by inserting pragmas in the generated code. Pragmas specify locations in memory to store data and functions. - Replace boolean with Specific Integer Data Type
Improve the execution speed of the generated code by replacing theboolean
built-in data type with a specific integer data type. - 非正規数の実行速度
非正規数計算のレイテンシのために実行に時間がかかったり、オーバーランする可能性を最小化します。 - 勾配設定を補正する浮動小数点の乗算
効率的な乗算をサポートするプロセッサの場合、勾配設定を補正する浮動小数点の乗算を使用して、コードの効率を向上します。 - Simulink、Stateflow および MATLAB の固定小数点データを使用した生成コードの最適化
Simulink®、Stateflow® および MATLAB® に固定小数点コードを生成します。 - アルゴリズム コード内でのターゲット最適化の生成
生成されたアルゴリズム コードをターゲット固有の最適化でカスタマイズします。 - Simulink ブロックからの SIMD コードの生成
Intel® SSE および Intel AVX テクノロジーを使用して生成コードの実行速度を改善する。 - Optimize SIMD Code by Performing Fused Multiply Add Operations
For processors that support FMA instructions, improve execution efficiency by performing fused multiply-add operations. - Optimize Code for Reduction Operations by Using SIMD
Generate optimized code for reduction operations using SIMD instruction sets. - Set Hardware Implementation Parameters
Specify target hardware device characteristics that can be critical in embedded systems development (such as word sizes forchar
,short
,int
, andlong
data types, or desired rounding behaviors in integer operations).
実行効率性を向上させる最適化
- Optimize Generated Code Using Minimum and Maximum Values
To optimize the generated code for your model, you can choose an option to use input range information, also known as design minimum and maximum, that you specify on signals and parameters. These minimum and maximum values usually represent environmental limits, such as temperature, or mechanical and electrical limits, such as output ranges of sensors. - グローバル変数の使用の最適化
メモリ使用量および実行速度の要件を満たすためのグローバル変数参照の最適化を選択する。 - Improve Execution Efficiency by Reordering Block Operations in the Generated Code
The code generator can change the block execution order to improve execution efficiency. - 複数の for 構造の組み合わせによる生成コードの最適化
コード ジェネレーターはデータの依存関係の分析を使用して、for
構造を組み合わせて静的なコード サイズとランタイム分岐を削減します。 - 生成されたコードの複素数信号に対する最適化
コード ジェネレーターは、生成されたコードで信号を表す構造体に対し、さまざまな最適化を実行します。 - ループ展開のしきい値の構成
既定値の 5 からスタートし、コード ジェネレーターは信号またはパラメーターの配列の要素に値を割り当てるために、個別のステートメントではなくfor
ループの使用を開始します。 - Simplify Multiply Operations in Array Indexing
The code generator reduces the number of times a multiply operation executes in an array index by replacing the multiply operation with a temporary variable. - 関数 memset を使用した生成コードの最適化
関数memset
は、型にかかわらず内部ストレージを整数ビット パターン 0 (つまり、全ビットがオフ) にクリアします。 - 関数 memcpy を使用したベクトルの代入に対する生成コードの最適化
コード ジェネレーターは、for
ループを関数memcpy
の呼び出しで置き換え、ベクトルの代入に対して生成されたコードを最適化します。 - 条件付き入力分岐実行の使用
Switch ブロックと Multiport Switch ブロックでは、Simulink は制御入力と制御入力によって選択されたデータ入力を計算するブロックのみを実行します。 - Optimize Generated Code for Fixed-Point Data Operations
The code generator optimizes fixed-point operations by replacing expensive division operations with highly efficient product operations. - MATLAB Function ブロック内の可変サイズ配列に対するメモリ割り当ての制御
MATLAB Function ブロックの動的メモリ割り当てを無効にする、または動的メモリ割り当てのしきい値を指定する。 - MATLAB Function ブロックからの生成コード内の線形代数の高速化
MATLAB Function ブロックで特定の線形代数関数に対して LAPACK 呼び出しを生成する。使用する LAPACK ライブラリを指定する。 - MATLAB Function ブロックからの生成コード内の行列演算の高速化
特定の低水準行列演算の BLAS 呼び出しを生成します。使用する BLAS ライブラリを指定します。 - MATLAB Function ブロックからの生成コード内の高速フーリエ変換の高速化
MATLAB Function ブロックの高速フーリエ変換に対する FFTW ライブラリ呼び出しを生成する。FFTW ライブラリを指定する。 - Speed Up Generated Code Execution with Halide Code
Generate Halide code from Simulink models for faster array computation. - MATLAB Function ブロックからの生成コード内のマルチスレッド FFTW 計画の同期
FFT ライブラリ コールバック クラスのメソッドを実装し、サポート C コードを提供して FFTW 計画への同時アクセスを行わないようにする。 - Unroll Parallel for-Loop That Has Small Number of Iterations
Unrollparfor
-loops that have small number of iterations.