Issues with MPI: No Speedup on More Ranks #467
-
I have successfully compiled Athena++ with the parallelised hdf5 library, and am attempting to run one of the test simulations (MBH blastwave, as described in the wiki tutorial) on a few courses to test the parallelisation. However, I do not see any speedup when increasing the number of mpi tasks. In fact, the simulation takes longer to reach the same number of CPU cycles when run on more ranks. This is despite htop showing that the right number of tasks are being launched on runtime. From my own brief testing, on 1, 2, 4 and 8 ranks it took the simulation ~1.5, 1.5, 2-3 and 7-8 minutes to reach ~300 CPU cycles, as tracked by the log file. The simulation setup uses 8 MeshBlocks, each with 64^3 cells. Each time the run command has been: mpiexec -np [numranks] ~/athena/bin/athena -i athinput.blast > log I acknowledge that this may be an issue that leans more towards the hardware side, but I (and others) have run other simulation codes in parallel with mpi/hdf5 on this machine without issue. I could not find any mention of issues like this on the forum, is this an issue that other users have experienced? It would also be useful to know if there are any other tools that might help breakdown exactly whats going on here. Is it possible that the code is just launching the same task multiple times? Any advice on how to approach this issue would be much appreciated. I can provide file specifics if required, but I have been following the tutorial setup from this link exactly. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 4 replies
-
Does the log file show any signs of duplication, or is the output the same no matter how many processes are spawned? Another thing to check is try turning off all outputs and see what the timing is then. |
Beta Was this translation helpful? Give feedback.
Does the log file show any signs of duplication, or is the output the same no matter how many processes are spawned?
Another thing to check is try turning off all outputs and see what the timing is then.