openmp的问题

edwardliqi 2011-10-21 11:22:41
#pragma omp parallel for
for(int i = 0 ; i < 10; i++)

如果是双核的机器上跑,怎么让第一个线程跑i = 0~3, 第二个线程跑 4~9?
...全文
140 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mydear_33000 2011-11-16
  • 打赏
  • 举报
回复
使用sections切割

section 1 指定完成0~3
section 2 指定完成4~9
intel_iclifort 2011-11-09
  • 打赏
  • 举报
回复
一般的调度分配可以利用 OpenMP的guide 调度机制完成,任意指定无法做到。 请参考 http://topic.csdn.net/u/20111020/18/95591ff6-0a97-4007-a335-1943ae5edff9.html


关键的问题是,为什么要这样分配,而不是平均分? 是不是你觉得这样可以做到负载平衡呢 ?


薛定谔之死猫 2011-10-21
  • 打赏
  • 举报
回复
程序是静态的,运行资源的调度时动态的,这个没办法,要完成类似的功能,可以参考下Windows下的纤程时怎么运作的

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧