计算化学公社

 找回密码 Forget password
 注册 Register
Views: 3749|回复 Reply: 1
打印 Print 上一主题 Last thread 下一主题 Next thread

[并行运算] 并行进程问题

[复制链接 Copy URL]

26

帖子

0

威望

349

eV
积分
375

Level 3 能力者

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 西乡新丰客 于 2017-1-10 19:55 编辑

请问各位:我想看一个并行程序的进程关系,就试了一个小程序。如下
#include <stdio.h>
#include "mpi.h"
#include <unistd.h>

int main(int argc, char* argv[])
{
int myid,numprocs;
int namelen;
char processor_name[MPI_MAX_PROCESSOR_NAME];
pid_t fpid;
int count=0;


MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD,&myid);
MPI_Comm_size(MPI_COMM_WORLD,&numprocs);
MPI_Get_processor_name(processor_name,&namelen);

printf("hi!process %d of %d on %s*******child %d , parent %d \n",myid,numprocs,processor_name,getpid(),getppid());
MPI_Finalize();


fpid=fork();
if (fpid < 0)
  printf("error");
else if (fpid == 0)
  {printf("child,%d,parent,%d\n",getpid(),getppid());
  count++;}
else
  {printf("parent,%d,grandparent,%d\n",getpid(),getppid());
  count++;}
printf("count %d\n",count);

return 0;
}
然后编译,并行运行得出其结果(比如-np 3):
hi!process 1 of 3 on liqizhi-YangTianT4900c-00*******child 3301 , parent 3295
hi!process 2 of 3 on liqizhi-YangTianT4900c-00*******child 3302 , parent 3295
hi!process 0 of 3 on liqizhi-YangTianT4900c-00*******child 3300 , parent 3295
parent,3301,grandparent,3295
count 1
child,3309,parent,3301
count 1
parent,3302,grandparent,3295
count 1
parent,3300,grandparent,3295
count 1
child,3311,parent,1525
child,3310,parent,1525
count 1
count 1

其中这个1525是怎么来的?而且少了3203进程。有时会运行正常,有时就会出现这个1525进程。
查看其进程如下:
PID TTY      STAT   TIME COMMAND
1525 ?        Ss     0:00 /sbin/upstart --user
这是为什么


2

帖子

0

威望

7

eV
积分
9

Level 1 能力者

2#
发表于 Post on 2017-5-17 09:38:22 | 只看该作者 Only view this author
猜测你是在练手吧,看上去用的是ubuntu(upstart启动器),如果用root身份使用你的MPI运行时管理器运行这段代码,你会在3个节点上得到6个进程,其中派生了子进程的进程,3309-3310,它的父进程可能会是系统进程,这里就是1525。

至于3203,没看出来为什么一定得存在。

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-27 11:12 , Processed in 0.320141 second(s), 28 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list