2011-06-22 59 views
3

在评价负对数似然性的上下文中,我必须 执行一串操作,可以从矢量使用gcc实现自动矢量化?

0),用于(ⅰ= 1 ... N){A [1] = 0受益; } //但是这个我觉得

的std ::填充(a.begin(),a.end(),0)已经是最佳

1)(i = 1,...,N){ a [i] + = b * c [i]; }

2)sum = 0; for(i = 1..n){sum + = a [i] * log(b [i]/c); }

你知不知道是否有任何希望得到GCC 434做 自动矢量化,我应该如何编写循环,帮助他(例如 使用指数VS使用迭代器,我应该分手了(2)更简单的 循环,...) 到现在为止我使用双打,必须检查我是否可以移动到至少浮动在(1) 。

+1

你指定-ftree,矢量化? – mattn

回答

0

浮点减少像2)您需要启用-funsafe-数学优化

像目标I386的自动向量化,你还需要添加-mfpmath = SSE