buildInstrumentedMex
生成编译后的C代码函数,包括日志工具
描述
例子
输入参数
提示
你不能仪表MATLAB函数提供的软件。如果顶层函数是这样一个MATLAB函数,则不会记录任何内容。您也不能工具脚本。
每次调用已检测的MEX函数时,都会累积检测结果。使用
clearInstrumentationResults
清除日志中以前的结果。有些编码模式传递大量数据,但只使用其中的一小部分。在这种情况下,使用时可能会看到性能下降
buildInstrumentedMex
.按照下面的模式,subfun
只使用输入数组的一个元素,一个
.对于正常执行,表示执行的时间subfun
无论大小,Once保持不变一个
.这个函数汀
调用subfun
N
次数,因此是执行的总时间汀
正比于N
.然而,当仪器化时,执行的时间subfun
一旦成正比N
^ 2。发生这种变化是因为在整个数组中计算最小和最大数据。当一个
较大时,计算会导致显著的性能下降。因此,只要可能,您应该只传递函数实际需要的数据。函数A = topfun(A) N = numel(A);for i=1: A(i) = subfun(A,i);end end函数b = subfun(A,i) b = 0.5 * A(i);结束函数A = topfun(A) N = numel(A);for i=1: A(i) = subfun(A(i));结束结束函数b = subfun(a) b = 0.5 * a;结束
另请参阅
clearInstrumentationResults
|fiaccel
|墨西哥人
|NumericTypeScope
|showInstrumentationResults
|codegen
(MATLAB编码器)
在R2011b中介绍