abhishekl
abhishekl

Reputation: 65

MPI number of process

I am running a sample MPI program which prints hello world. When I am running with 1,2....330 process it runs as expected. But when the number goes beyond 330 it fails with below error. Can some explain the reason for this. I am running the program on my laptop which has i5 processor with 4 cores and 8 GB RAM.

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

Upvotes: 0

Views: 983

Answers (1)

Jeff Hammond
Jeff Hammond

Reputation: 5642

You are hitting an OS limit for socket descriptors or similar. Over subscribing your workstation to this degree is not a good idea and unlikely to work unless you change your system settings (which is not a good idea for this use case).

Upvotes: 3

Related Questions