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