This is a problem associated with the latest release of PS 2019 cluster ed. When running an MPI program from mpiexec, process 0 is unable to read stdin, at least on a Windows box (have not installed upgrade on CentOS yet) For instance, in this test program
integer myRank, mpierr, noProc, narg
call MPI_INIT( mpierr )
call MPI_COMM_RANK(MPI_COMM_WORLD, myRank, mpierr) ! get rank of this process in world
call MPI_COMM_SIZE(MPI_COMM_WORLD, noProc, mpiErr)
if (myRank == 0) write(*,'(a,i4)') 'Number of MPI processes: ', noProc
narg = command_argument_count () ! see if a filename has been included in command line
if (narg == 1) then
if (myRank == 0) then
write(*,'(a,$)') 'Enter parameter file base name, no extension: '
write(*,'(a,i3,a)') 'Process ', myRank,' filename: '//trim(basefilename)
end program MPItesting
Process 0 properly writes to the console, but any typing done at the prompt is not echoed, nor is stdin read. If I cntl-C out (which is the only way to exit), then what I typed at the program's prompt is instead passed to the windows command prompt. This just started occurring after upgrading to the 2019 PS XE cluster official release. I have tried using the -s option for mpiexec, which should default to process 0, but this does not help regardless of what process defined by -s is set to. Any ideas? Thanks!