TI中文支持网
TI专业的中文技术问题搜集分享网站

复数函数库运行效率问题

我采用double类型的复数形式,但是我发现用复数函数库进行运算的时间比不用复数函数库的时间更久,比如两个复数相乘,用库函数的_Cmulcc比直接用*更慢,这是为什么,为什么库的效率这么低,是要设置什么吗。

Adam Yao94020:

你直接用*的代码是什么样的,运行结果正确么。

我理解C6000是不能自己识别出复数数据类型,进行复数乘法运算的,必须要调用库。

xinxin lai:

回复 Adam Yao94020:

你好,6678可以直接进行复数的*运算,结果是对的,

第一行和第二行的运算是一样的,但是用第一行的时间比用第二行的时间少,还有就是想问下,为什么6678提供的double类型函数库那么少,比如常用的点成和矩阵相乘的复数运算。用for循环对于实时系统太耗时间了,如何优化如我这个程序中的循环,这个循环花了将近1.6ms

Zhan Xiang:

回复 xinxin lai:

C66 double类型的硬件指令比较少,像复数乘法,目前只有定点数和单精度浮点的复数乘法指令,你可以参考c66的指令集,在代码中用instrisic来优化,循环中调用函数有时候无法排流水,导致执行效率较差。

赞(0)
未经允许不得转载:TI中文支持网 » 复数函数库运行效率问题
分享到: 更多 (0)