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