メインコンテンツ

JIT コンパイルを使用した MEX 生成速度の高速化

MEX 関数の生成を高速化するには、Just-In-Time (JIT) コンパイル テクノロジーの使用を指定します。MATLAB® コードの変更と MEX コードのテストを反復するときに、このオプションを使用すると時間を節約できます。

既定では、MATLAB Coder™ は C/C++ コードを生成およびコンパイルして C/C++ MEX 関数を作成します。JIT コンパイルを指定すると、MATLAB Coder は MATLAB コードの抽象表現を含む JIT MEX 関数を作成します。JIT MEX 関数を実行すると、MATLAB はメモリ内に実行可能コードを生成します。

JIT コンパイルは、特定のコード生成機能またはオプションに対応していません。JIT コンパイルの非互換性を参照してください。JIT コンパイルが有効な場合、コード生成中に警告やエラー メッセージがないことは JIT コンパイルが成功したことを示します。コード生成レポートでは、[概要] タブに [ビルド タイプ]JIT MEX Function であることが示されます。

メモ

JIT MEX 関数は、MATLAB Coder ソフトウェアの異なるリリース間で互換性がありません。JIT MEX 関数を実行するには、その関数の生成に使用したものと同じリリースの MATLAB Coder ソフトウェアを使用してください。

JIT コンパイルの使用の指定

MEX 関数の生成に JIT コンパイルを使用するようにコード ジェネレーターに指示するには、次のいずれかの方法を使用します。

JIT コンパイルの非互換性

次の表は、JIT コンパイルと互換性がないコード生成機能またはオプションをまとめています。

非互換性メッセージ タイプ生成される MEXアクション
カスタム コード警告C/C++ MEX警告を回避するには、JIT コンパイルを無効にする。
ビルド情報の更新 (coder.updateBuildInfo)警告C/C++ MEX警告を回避するには、JIT コンパイルを無効にする。
for ループの並列化 (parfor) に対する OpenMP アプリケーション インターフェイスの使用警告
  • JIT MEX

  • 並列化なし

for ループの並列化を行う場合は、JIT コンパイルを無効にする。
C/C++ ソース コードのみの生成エラーなしJIT コンパイルまたは C/C++ コードのみの生成を指定する。

参考

関数

オブジェクト

トピック