【发布时间】:2014-02-18 23:16:34
【问题描述】:
我有很多复数计算(通常是一个数组,其中包含一个由两个浮点数组成的结构来表示 im 和 re;见下文),并希望使用 NEON C 内在函数加速它们。如果你能给我一个例子来说明如何加速这样的事情,那就太棒了:
for(n = 0;n < 1024;n++,p++,ptemp++){ // get cir_abs, also find the biggest point (value and location).
abs_squared = (Uns32)(((Int32)(p->re)) * ((Int32)(p->re))
+ ((Int32)(p->im)) * ((Int32)(p->im)));
// ...
}
p 是一个这样的数组:
typedef struct {
Int16 re;
Int16 im;
} Complex;
我已经阅读了“ARM C 语言扩展”的第 12 章,但仍然无法理解如何在此处加载和存储我的构造类型以对其进行计算。
【问题讨论】:
-
我认为将其发布在另一个 StackExchange 站点上更合适,例如
Code Review。