假设我有一个循环,可以对数组做一些数学运算x
。是在每次迭代中在循环内分配一个临时double还是更好,还是应该array[i]
每次都使用?
更好的是,我的意思是使用C ++在性能方面。我想知道C ++是否破坏了某些矢量化或现金优化?
另外,如果我使用此数组调用函数,并且可能需要多次使用函数值,该怎么办,所以通常对函数也是如此。我认为这比多次调用该函数要好。
如果循环使用怎么样omp parallel
,我认为这应该是安全的,正确的?
for(int i=0; i<N; i++){
double xi = X[i];
double fi = f(xi);
t[i] = xi*xi + fi + xi/fi;
}
Run Code Online (Sandbox Code Playgroud)