是 Compile 的一个选项,指定编译过程的设置.
CompilationOptions
是 Compile 的一个选项,指定编译过程的设置.
更多信息
- CompilationOptions 应用于编译函数的创建.
- CompilationOptions 接受 CompilationOptions->{…} 形式的设置列表.
- CompilationOptions 也可以采用下列嵌套设置:
-
"ExpressionOptimization" Automatic 是否优化输入表达式 "InlineCompiledFunctions" Automatic 是否扩展嵌套编译函数的主体部分 "InlineExternalDefinitions" Automatic 是否使用外部定义 - "ExpressionOptimization" 可能的值为:
-
False 不优化输入表达式 True 优化输入表达式 Automatic 如果编译函数不进行外部调用,仅使用优化的表达式 - "InlineCompiledFunctions" 的可能设置是:
-
False 不内联嵌套编译函数 True 内联嵌套编译函数 Automatic 内联较小的嵌套编译函数 - "InlineExternalDefinitions" 的可能设置是:
-
False 不使用外部定义 True 插入外部定义的主体 Automatic 使用外部定义类型
范例
打开所有单元 关闭所有单元基本范例 (1)
选项 (3)
ExpressionOptimization (1)
默认设置 Automatic 对输入表达式进行优化,使其避免对相同的子部分计算多于一次:
c = Compile[{{x}}, x ^ 2 + Sin[x ^ 2]]如果编译函数需要对 Wolfram 语言进行外部调用,则默认设置 Automatic 不执行优化操作:
c = Compile[{{x}}, f[x ^ 2] + Sin[x ^ 2]]c = Compile[{{x}}, x ^ 2 + Sin[x ^ 2], CompilationOptions -> {"ExpressionOptimization" -> False}]把 "CompileOptimizations" 设为 True 会引起优化操作,即使编译函数需要对 Wolfram 语言进行外部调用:
c = Compile[{{x}}, f[x ^ 2] + Sin[x ^ 2], CompilationOptions -> {"ExpressionOptimization" -> True}]InlineCompiledFunctions (1)
默认设置 Automatic 在嵌套的编译函数较小时对其进行内联:
cf = Compile[{{x}}, Sin[x]];
cf1 = With[{nestedCF = cf}, Compile[ {{x}}, nestedCF[x ^ 2]]]设置 False 将避免对编译函数进行内联:
cf = Compile[{{x}}, Sin[x]];
cf2 = With[{nestedCF = cf}, Compile[ {{x}}, nestedCF[x ^ 2], CompilationOptions -> {"InlineCompiledFunctions" -> False}]]InlineExternalDefinitions (1)
默认设置 Automatic 使用外部定义的类型,并执行一次外部调用. 在这种情况下,外部调用失效:
val = Floor[x];
cf = Compile[{{x, _Real}}, val];
cf[ 10.5]设置 True 对外部定义进行内联,并允许计算无误地继续:
cf1 = Compile[{{x, _Real}}, val, CompilationOptions -> {"InlineExternalDefinitions" -> True}];
cf1[ 10.5]设置 False 不对外部定义进行内联,并且将不使用类型信息. 在这种情况下,存在一个失效的外部调用:
cf2 = Compile[{{x, _Real}}, val, CompilationOptions -> {"InlineExternalDefinitions" -> False}];
cf2[ 10.5]文本
Wolfram Research (2010),CompilationOptions,Wolfram 语言函数,https://reference.wolfram.com/language/ref/CompilationOptions.html.
CMS
Wolfram 语言. 2010. "CompilationOptions." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/CompilationOptions.html.
APA
Wolfram 语言. (2010). CompilationOptions. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/CompilationOptions.html 年
BibTeX
@misc{reference.wolfram_2026_compilationoptions, author="Wolfram Research", title="{CompilationOptions}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/CompilationOptions.html}", note=[Accessed: 08-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_compilationoptions, organization={Wolfram Research}, title={CompilationOptions}, year={2010}, url={https://reference.wolfram.com/language/ref/CompilationOptions.html}, note=[Accessed: 08-September-2026]}