Mathematica 9 is now available
テクノロジーガイド--この技術が違いを生み出す
透過的自動コンパイル(TAC: Transparent Auto-Compilation)

繰返しを含む大規模な数値計算をユーザの要求によって直接(表の作成等),あるいは暗示的に(微分方程式の数値解法等)実行するとき,Mathematica は自動的に最適化されたバイトコードを生成し,計算のスピードアップを図ります.このプロセスは,Just In Timeのコンパイルとして知られています.

作成された命令は,一般的なコンピュータの機械語に近くなるように選択されているため,素早く実行されます.大規模な式については,コンパイルすることにより,実行速度が20倍以上も速くなることがあります.多くの Mathematica 関数(例えばNIntegrate)は,デフォルトでコンパイルを行います.また,評価する式のタイプと複雑さ,要求された評価回数に応じて,動的にコンパイルを行うTableコマンド等の関数もあります.

コンパイルには時間がかかりますが,結果的に繰返し行う計算のスピードアップが可能です.Mathematica のTACはコンパイルした方がよいかどうかを判断し,必要な場合にのみ適用します.



Select Language: en