Thank you for the suggestion. I went through the documentation but could not really figure out the way to start the mpd from job script. For example, I tried following job script:
#SBATCH --nodes=2 --ntasks-per-node=8
## Set up job environment
mpdboot -n 2
But I get the following errors:
there are not enough hosts on which to start all processe
totalnum=2 numhosts=1there are not enough hosts on which to start all processes
Possible cause would be that other node is not visible, butI confirmed that I can ssh to all the nodes without password. I can run ordinary MPI program without problem using"mpirun -n 16 test"in the job script. But of course I cannot define the mpd.hosts file because in the big cluster I don't know in advance which nodes will be allocated for my job. I think I am missing some key points!
If you run your application under any job scheduler you need to use 'mpirun -n #_of_processes program' because mpirun understands scheduler's settings readding appropriate environment variables.
In case of co-array, it seems to me that compiler creates a config file which is used by a program itself and you don't need to create an mpd ring. I believe that people from Fortran forum may provide more information about co-array programs invocations.