我在统计如下代码耗时的时候,发现有这么个问题。
这段代码是对im和meanparameter两个指针对应数据做加法,在STM32F746上运行。通过DWT-CYCCNT来计算时间。其中两个做加法的指针指向两个随机生成的float数组,运算使用了FPU。对于每一种size,做一万次运算后取平均值,即为该size下的平均耗时
然而随着我增加size的大小,却发现循环耗时不是跟着size增加呈线性变化的。
如图所示,在800之前,拟合的曲线是个二次方函数,甚至R是1.
其中常数项29可以解释…