使用mpirun运行程序,如何避免所有代码都被并行?
即使是在代码中不加入 MPI_Init 字段,当 mpirun -np 大于 1 的时候,main 中的所有代码都会被多个线程执行。怎么避免这种情况?
详细:
int main(int argv, char *argc[]){
//serial section begin
...
//serial section end
//call an parallel method
para(argv, argc);
}
int para(int argv, char *argc[]){
//parallel section start
MPI_Init(&argv, &argc);
...
MPI_Finalize();
//parallel section end
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
the same question
MPI_Comm_rank(MPI_COMM_WORLD,&myid);
通过进程号
myid
行任务划分