ターゲット ハードウェアの命令セット拡張を活用
単一命令複数データ (SIMD) コードを生成するための命令セット
R2021b 以降
モデル コンフィギュレーション ペイン: [コード生成] / [最適化]
説明
[ターゲット ハードウェアの命令セット拡張を活用] パラメーターは、ターゲット ハードウェアの単一命令複数データ (SIMD) コードを生成するために使用する命令セットを指定します。
依存関係
このパラメーターを使用するには、[デバイス ベンダー] を Intel
、AMD
、ARM Compatible
、または Generic
に設定し、[デバイス タイプ] を x86-64 (Windows 64)
、x86-64 (Linux 64)
、Athlon 64
、ARM Cortex-A (32-bit)
、ARM Cortex-A (64-bit)
、または MATLAB Host Computer
に設定する必要があります。MATLAB Host Computer
を使用した場合は、お使いのコンピューターでサポートされている命令セットのみを選択できます。
設定
SSE2
| SSE
| SSE4.1
| AVX
| AVX2
| FMA
| AVX512F
| Neon v7
| なし
Intel® ハードウェアの GRT ベースのターゲットに対する命令セット:
SSE2
(既定)なし
— SIMD コードを生成しません。
Intel ハードウェアの ERT ベースのターゲットに対する命令セット:
SSE
(既定)SSE2
SSE4.1
AVX
AVX2
FMA
AVX512F
なし
— SIMD コードを生成しません。
Embedded Coder® Support Package for ARM® Cortex®-A Processors に対する命令セット:
なし
(既定) — SIMD コードを生成しません。Neon v7
ERT ベースのターゲットの命令セットのリストでは、命令セットの依存関係が示されています。各命令セットは、それより前の命令セットに依存しています。コード ジェネレーターは、選択した命令セットおよびそれが依存する命令セットを読み込みます。たとえば、AVX
を選択した場合、コード ジェネレーターは AVX
、SSE4.1
、SSE2
、および SSE
を読み込みます。GRT ベースのターゲットまたは ERT ベースのターゲットで SSE2
を選択した場合、コード ジェネレーターは SSE2
および SSE
を読み込みます。
推奨設定
アプリケーション | 設定 |
---|---|
デバッグ | 影響なし |
トレーサビリティ | 影響なし |
効率性 | 影響なし |
安全対策 | 影響なし |
プログラムでの使用
パラメーター: InstructionSetExtensions |
型: 文字ベクトル |
値: 'None' | 'SSE' | 'SSE2' | 'SSE4.1' | 'AVX' | 'AVX2' | 'FMA' | 'AVX512F' | 'Neon v7' |
制限
生成コード用にカスタム ツールチェーンを使用する場合は、[命令セット拡張] を
[なし]
に設定する必要があります。命令セット拡張ではカスタム ツールチェーンの使用はサポートされていません。DSP System Toolbox™ のブロックには、SIMD コードを生成するには [最適化レベル] 、 [優先度] を
[RAM と速度のバランス]
または[実行速度を最大化]
に設定しなければならないものがあります。
バージョン履歴
R2021b で導入