MATLAB Compiler Release Notes    

第 2 章
MATLAB Compiler 2.1 Release Notes


新機能

本節では、MATLAB Compiler 2.0.1 (Release 11.0)以降に、MATLAB Compiler 2.1で追加された新機能を紹介します。

最適化

MATLAB Compiler 2.1 は、複数のタイプの最適化をサポートします。最適化オプションのフォーマットは以下の通りです。

3つの可能性があります。

最初の形式

は、最適化クラスをonまたはoffにします。つぎの表は、可能性について記述しています。

最適化クラス
詳細
fold_scalar_mxarrays
スカラ値配列を定数にします
fold_non_scalar_mxarrays
非スカラ値配列を定数にします
optimize_integer_for_loops
開始値と増分が整数であるforループを最適化
optimize_conditionals
両方のオペランドが整数であるとき、条件式を最適化
array_indexing
簡単な1および2次元配列のインデックス表現を最適化

最適化オプションの2番目の形式

は、利用可能な最適化クラスをリスト表示します。

3番目の形式

は、opt_bundle_<level>といるファイルを利用して、その最適化がonまたはoffであるかを決定します。たとえば、

は、opt_bundle_allというファイルを探し、ファイル内のオプションを利用します。-O allおよび-O noneに対するbundleは、デフォルトで与えられます。

スタンドアロン環境でのMEX-ファイルのダイナミックリンク

MATLAB Compiler 2.1 は、スタンドアロン環境でのMEX-ファイルのダイナミックリンクをサポートします。-hを指定すると、参照されたMEX-ファイルを自動的にコンパイルします。コマンドラインでのMEX-ファイルの指定がサポートされ、M-ファイルのコンパイルと同様に機能します。

唯一の制約は、スタンドアロンコードからCompiler生成MEX-ファイルを実行できないことです。M-ファイルのソースを直接インクルードでき、これはCompilerにより優先されるるため、この制約は最小限です。

Visual Studio®に対するMATLABアドイン

Visual Studio開発環境に対するMATLABアドインは、MATLAB Compiler 2.1 とVisual C/C++ 5 または 6 を統合します。mbuild -setupまたはmex -setupを実行すると、Project WizardをMicrosoft Visual Studioに自動的に追加するので、M-ファイルをコンパイル、実行するためにVisual Studio環境を利用することができます。設定に関する情報は、MATLAB Compiler User's Guide を参照してください。

mlibファイル

mlibファイルの導入により、ツールボックスの外部で共有ライブラリを作成することが可能となり、呼び出すM-ファイルをツールボックス内でコンパイルすることができます。

(たとえば、ツールボックスから)ファイルの集合をライブラリにコンパイルするとき、Compilerは、ライブラリ内で利用可能な様々なM-functionのMインタフェースの記述をもつ別々のファイルを作成します。その後で、このファイルを使ってM-ファイルをリコンパイルせずにライブラリ内でM-ファイルを呼び出すその他の関数をコンパイルすることができます。これらのライブラリ記述ファイルの拡張子は、.mlibです。

本リリースよりも以前は、CompilerはコマンドラインではM-ファイルとして認識しなかったファイルをmbuildに渡します。本リリースでは、Compilerは、.mlib拡張子付きのファイルを使ってコンパイルされたM-ファイルのライブラリへのコンパイルを行うことができます。詳細は、MATLAB Compiler User's Guide を参照してください。

Datatypeサポートの追加

Integerデータタイプ.   MATLAB Compiler 2.1 は、integerデータタイプをサポートします。

int8
uint8
int16
uint16
int32
uint32

関数ハンドル.   関数ハンドルは、MATLABが実行または評価する必要がある関数のすべての情報をキャプチャする新規MATLABデータタイプです。MATLAB Compiler 2.1は、関数ハンドルをサポートします。関数ハンドルに関する詳細は、function_handleリファレンスページを参照してください。

loadおよびsaveのサポートの改良

loadおよびsaveコマンドは、それらがロードあるいは保存される変数をリストしないときにサポートされます。

C/C++ Math Libraryアプリケーションの高速化

C/C++ Math Libraryのパフォーマンスは、かなり改良されています。多くのライブラリ関数の段階的な加速バージョンが追加され、すべてのライブラリアプリケーションのパフォーマンス全体に対する改善が行われています。

C/C++ Graphics Libraryからの印刷

MATLAB C/C++ Graphics Libraryは、印刷をサポートします。

言語サポートの追加

pauseとcontinue.   MATLAB Compiler 2.1 は、MATLABコマンドpauseおよびcontinueをサポートします。

evalとinput.   evalおよびinputは、ワークスペース変数を含まない文字列に対してサポートされます。


  旧リリースからのアップグレード サードパーティコンパイラ