C++利用内部库进行并行加速的实例,但实际效果确更慢,找不出原因。希望各路大神帮忙。

基本功能是计算$\pi$:

$$ \pi = 4\int^1_0 \frac{1}{1+x^2}dx $$ ```c //g++ avx_omp.cpp -fopenmp -O2 #include #include #include using namespace std; //正常的逐个累加运算 double compute_pi_naive(size_t dt){ double pi = 0.0; double delta = 1.0/dt; for (size_t i =0;ireturn 0;

}

![image.png](//www.icfgblog.com/usr/uploads/auto_save_image/922041a505b1b5234db46db1e348727c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

利用了四个线程,结果竟然更慢,真是无语了。

标签: 算法

添加新评论