标度因数误差越大的乘法运算的误差传播越大

楼上答案驴唇不对马嘴怒答一發:标度标度因数误差误差Scale Factor Error(ppm):传感器的输出值与实际角速度的误差;

你对这个回答的评价是?

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

主要探讨的有两个问题:

1、当矩陣维度为16*16时,可以计算出来(用全1矩阵进行测试)并且加速比大于1(GPU快),可是当矩阵维度提升到时此时会出错(计算不准确,显礻器驱动程序已停止响应 并且已成功恢复 怎么解决?

2、先前测试了全1矩阵现在改成随机数矩阵(包括小数和整数),16*16等矩阵都不能嘚到正确的结果怎么办?

首先贴出多线程的矩阵乘法代码:

第一个问题:当测试的矩阵时此时GPU的计算时间不仅超过了matlab的计算时间,更主要的时超出了GPU的设置时间(TDR一般为2s)测试需要打开nsight visual studio edition进行TDR的设置,至于如何设置博客中可以找见。

第二个问题实际上是编程的一个低級错误cuda是按列存储的,按列取出并计算而matlab是按行来的,所以计算结果会出现很大分歧、很大误差此时我们在调用矩阵计算函数matrixMulCuda(A,B)B之前将其转置后再计算,或者直接变成matrixMulCuda(BA)也可以,这样就可以和matlab的计算结果进行比对了

在整数的计算上,是没有误差的(随机矩阵)

浮点数的计算上误差较小(随机矩阵),F为误差如下所示。

我要回帖

更多关于 标度因数误差 的文章

 

随机推荐