Main Content

モデル コンフィギュレーション パラメーター: コード生成最適化

[コード生成][最適化] カテゴリには、モデルのシミュレーション速度の向上、および生成コードのパフォーマンスの向上のためのパラメーターが含まれています。生成コードを改善するためのモデル コンフィギュレーション パラメーターには Simulink® Coder™ または Embedded Coder® が必要です。

パラメーター説明

既定のパラメーター動作 (Simulink Coder)

数値ブロック パラメーターを、生成コードの定数インライン値に変換します。

ターゲット ハードウェアの命令セット拡張を活用 (Simulink Coder)ターゲット ハードウェア用の SIMD (Single Instruction, Multiple Data) コードを生成する命令セットを選択します。
リダクションの最適化 (Simulink Coder)リダクション演算ループ用の Single Instruction, Multiple Data (SIMD) コードを生成します。

再利用可能なサブシステムの出力を渡す (Embedded Coder)

再利用可能なサブシステムが出力を渡す方法を指定します。

Remove root level I/O zero initialization (Embedded Coder)

ルートレベルの入力端子と出力端子をゼロに設定する初期化コードを生成するかどうかを指定します。

Remove internal data zero initialization (Embedded Coder)

ブロック状態やブロック出力などの内部作業構造体をゼロにする初期化コードを生成するかどうかを指定します。

Level (Embedded Coder)

生成されたコードに適用する最適化レベルを選択します。

Priority (Embedded Coder)

実行効率性の向上、RAM 消費の減少、またはこれら 2 つの均衡をとるために、生成コードを最適化します。

Specify custom optimizations (Embedded Coder)

このパラメーターを選択すると、最適化レベルが適用されず、[詳細] セクションの最適化パラメーターが選択されます。

ベクトルの割り当てに対して memcpy を使用 (Simulink Coder)

ベクトルの代入において for ループを memcpy に置き換えることで、生成コードを最適化します。

memcpy しきい値 (バイト) (Simulink Coder)

生成コードでのベクトルの代入において、for ループの代わりに関数 memcpy および memset の呼び出しに置き換える最小配列サイズをバイト単位で指定します。

ローカルなブロックの出力を有効にする (Simulink Coder)

ブロック信号がローカルとグローバルのどちらで宣言されるかを指定します。

ローカル ブロック出力の再利用 (Simulink Coder)

Simulink Coder ソフトウェアが信号メモリを再利用するかどうかを指定します。

余分なローカル変数の削除 (式の畳み込み) (Simulink Coder)

ブロックの計算を単一の式にします。

グローバル ブロック出力の再利用 (Embedded Coder)

ブロック出力でグローバル メモリを再利用します。

Model ブロックの出力バッファーを再利用する (Embedded Coder)

可能な場合は、参照モデル バッファーを再利用します。

Perform in-place updates for Assignment and Bus Assignment blocks (Embedded Coder)

可能な場合は、Bus Assignment ブロックおよび Assignment ブロックの入力変数と出力変数を再利用します。

Reuse buffers for Data Store Read and Data Store Write blocks (Embedded Coder)

Data Store Read ブロックと Data Store Write ブロックの一時的なバッファーを削除します。可能な場合は、Data Store Memory ブロックを直接使用します。

Simplify array indexing (Embedded Coder)

ループで配列にアクセスするときに配列インデックスの乗算演算を置き換えます。

boolean データをビットフィールドにパッキング (Embedded Coder)

Boolean 信号を 1 ビットのビットフィールドとして保存するか、Boolean データ型として保存するかを指定します。

Bitfield declarator type specifier (Embedded Coder)

コンフィギュレーション パラメーターboolean データをビットフィールドにパッキング (Embedded Coder)を選択する場合にビットフィールド型を指定します。

Reuse buffers of different sizes and dimensions (Embedded Coder)

バッファーを再利用してサイズと次元が異なるデータを保存することにより、メモリ消費量を削減します。

グローバル データ アクセスの最適化 (Embedded Coder)

グローバル変数の最適化を選択します。

Optimize block operation order in generated code (Embedded Coder)

生成されたコードにおけるブロック演算の順序を変えて、コードの実行速度を改善します。

ステート構成を保存するためにビットセットを使用 (Simulink Coder)

ステート構成変数の格納に必要なメモリ量を減らすために、ビットセットを使用します。

boolean データを保存するためにビットセットを使用 (Simulink Coder)

Boolean データの格納に必要なメモリ量を減らすために、ビットセットを使用します。

最大スタック サイズ (バイト) (Simulink Coder)

モデルの最大スタック サイズをバイト単位で指定します。

ループ展開のしきい値 (Simulink Coder)

for ループを生成する最小の信号またはパラメーター幅を指定します。

Optimize using the specified minimum and maximum values (Embedded Coder)

モデルの信号およびパラメーターに指定された最小値と最大値を使用して、生成コードを最適化します。

サブシステム出力に使用する引数の最大数

個別に渡すためのサブシステムの出力の最大数を設定してください。

インライン不変信号 (Simulink Coder)

不変信号のシンボリック名を定数値に変換します。

浮動小数点から整数への変換で NaN が 0 にマッピングされて飽和したコードを削除 (Simulink Coder)

結果が NaN 値になる浮動小数点数から整数への変換を処理するコードを削除します。

float と double を 0.0 に初期化するために memset を使用 (Simulink Coder)

浮動小数点データを 0.0 に明示的に初期化するコードを生成するかどうかを指定します。

範囲外の値をラップする浮動小数点から整数への変換コードを削除 (Simulink Coder)

範囲外の浮動小数点数から整数への変換結果を処理するラッピング コードを削除します。

Remove Code from Tunable Parameter Expressions That Saturate Out-of-Range Values (Embedded Coder)

調整可能なパラメーターのラッピング コードを削除します。

除算演算の例外処理を防止するコードを削除 (Embedded Coder)

整数と固定小数点のゼロ除算および INT_MIN/-1 演算を防ぐコードを生成するかどうかを指定します。

再利用可能なサブシステムのバッファー (Simulink Coder)再利用可能なサブシステムの境界にバッファーを挿入することにより、再利用を改善します。

互換性のない最適化を無効にする

Simulink Code Inspector と不整合な最適化を無効にするかどうかを指定します。

自動的に作成される列挙の基本ストレージ型 (Simulink Coder)アクティブ ステート出力とともに作成される列挙値のストレージ型とサイズを設定します。
Use signal labels to guide buffer reuse (Embedded Coder)信号が同じラベルをもつ場合、コード ジェネレーターは同じ信号メモリを使用しようとします。
並列 for ループの生成 (Embedded Coder)生成コード内の for ループが Matlab FunctionMatlab System、または For Each ブロックに並列で実装されるかどうかを指定します。
Automatically schedule for-loops (Embedded Coder)Neighborhood Processing ブロックに対して生成コード内で入れ子の for ループを自動スケジュールするかどうかを指定します。
信号ストレージの再利用 (Simulink Coder)ブロック入力信号と出力信号を保存するために割り当てられたメモリ バッファーを再利用して、リアルタイム プログラムのメモリ要件を減少させるように指定します。
Operator to represent Bitwise and Logical Operator blocks (Embedded Coder)生成コードにビット演算子か論理演算子のどちらか一方を含める、またはその両方を含めるかどうかを指定します。

関連するトピック