RuntimeOptions

RuntimeOptions
Compileのオプションで,Compileがコンパイルする関数のランタイム設定を指定する.

詳細詳細

  • RuntimeOptionsはコンパイルされた関数が実行される際に適用される.
  • RuntimeOptionsの可能な全体的設定値
  • "Quality"最終結果の質に最適化
    "Speed"結果を得るスピードに最適化
  • RuntimeOptionsは次のネスト構造を許容する.
  • "CatchMachineOverflow"False実数のオーバーフローを発生と同時にキャッチするかどうか
    "CatchMachineUnderflow"False実数のアンダーフローを発生と同時にキャッチするかどうか
    "CatchMachineIntegerOverflow"True整数のオーバーフローをキャッチするかどうか
    "CompareWithTolerance"True比較がSameQと同じように作用すべきかどうか
    "EvaluateSymbolically"True記号引数で評価するかどうか
    "RuntimeErrorHandler"Evaluate関数の実行に際して致命的なランタイムエラーが発生した場合に適用する関数
    "WarningMessages"True警告メッセージを出すべきかどうか
  • RuntimeOptions->"Speed"は以下のネスト設定に等しい.
  • "CatchMachineOverflow"False
    "CatchMachineUnderflow"False
    "CatchMachineIntegerOverflow"False
    "CompareWithTolerance"False
    "EvaluateSymbolically"True
    "RuntimeErrorHandler"Evaluate
    "WarningMessages"True
  • RuntimeOptions->"Quality"は以下のネスト設定に等しい.
  • "CatchMachineOverflow"True
    "CatchMachineUnderflow"True
    "CatchMachineIntegerOverflow"True
    "CompareWithTolerance"True
    "EvaluateSymbolically"True
    "RuntimeErrorHandler"Evaluate
    "WarningMessages"True

例題例題すべて開くすべて閉じる

  (1)  (1)

一般に,整数演算のオーバーフローはキャッチされ,計算は大数を使ったものに切り換えられる:

In[1]:=
Click for copyable input
Out[1]=

ランタイムのチェックをオフにするとスピードは最速になるが数値のオーバーフローがあった場合の結果は不正確になることがある:

In[2]:=
Click for copyable input
Out[2]=
2010年に導入
(8.0)