2016-01-09 51 views
0

我正在运行一个打印hello world的示例MPI程序。 当我运行1,2 .... 330过程时,它按预期运行。 但是,当数字超过330时,会失败,并显示以下错误。 有些人可以解释这个原因。 我正在我的笔记本电脑上运行该程序,该笔记本电脑上有4个内核和8 GB RAM的i5处理器。MPI进程号

[proxy:0:[email protected]] HYDU_create_process (./utils/launch/launch.c:25): pipe error (Too many open files) 
[proxy:0:[email protected]] launch_procs (./pm/pmiserv/pmip_cb.c:705): create process returned error 
[proxy:0:[email protected]] HYD_pmcd_pmip_control_cmd_cb (./pm/pmiserv/pmip_cb.c:893): launch_procs returned error 
[proxy:0:[email protected]] HYDT_dmxu_poll_wait_for_event (./tools/demux/demux_poll.c:77): callback returned error status 
[proxy:0:[email protected]] main (./pm/pmiserv/pmip.c:206): demux engine error waiting for event 
[mpiexec[email protected]] control_cb (./pm/pmiserv/pmiserv_cb.c:202): assert (!closed) failed 
[[email protected]] HYDT_dmxu_poll_wait_for_event (./tools/demux/demux_poll.c:77): callback returned error status 
[[email protected]] HYD_pmci_wait_for_completion (./pm/pmiserv/pmiserv_pmci.c:197): error waiting for event 
[[email protected]] main (./ui/mpich/mpiexec.c:331): process manager error waiting for completion 
+1

是否有任何理由在笔记本电脑上需要如此多的进程?注意句子**'太多打开的文件**。 MPI库和操作系统对可以运行多少个进程以及可以打开多少个文件有一定的限制。 –

+0

你能解释一下谁打开这个文件是为了什么目的? – abhishekl

回答

3

您正在触发套接字描述符或类似的操作系统限制。过度订阅你的工作站到这个学位不是一个好主意,除非你改变你的系统设置(这不是一个好主意)。