2014年3月26日

OpenMP 中的线程任务调度

摘要: OpenMP中任务调度主要针对并行的for循环,当循环中每次迭代的计算量不相等时,如果简单地给各个线程分配相同次数的迭代,则可能会造成各个线程计算负载的不平衡,影响程序的整体性能。如下面的代码中,如果每个线程执行的任务数量平均分配,有的线程会结束早,有的线程结束晚: 1 #include 2 #include 3 4 int main(){ 5 int a[100][100] = {0}; 6 #pragma omp parallel for 7 for (int i =0; i 2 #include 3 int main(){ 4 int a[100][100] ... 阅读全文

posted @ 2014-03-26 16:16 旭东的博客 阅读(12541) 评论(1) 推荐(1) 编辑

导航