I was trying to see the impact of the mpi parameters (including mpi.queue) mentioned in Section 8.4 of the user's manual, but I wasn't able to get the simulator to read them, since it kept using the default values. After some digging in the code I found out that the mpi parameters are actually part of the node.appN namespace, and therefore they should be put in there. Moreover, I suggest putting the mpi.queue parameters mentioned in Section 8.4.1 of the user's manual outside of the queue subsection (e.g., instead of node.appN.mpi.queue.post_rdma_delay I suggest you have node.appN.mpi.post_rdma_delay), otherwise they are not being read. I thought it would be worth sharing it here, just in case someone runs into the same trouble as me in the future, or so that it can be adapted in the user's manual and examples. And please correct me if I'm getting something terribly wrong here!
Also, heads-up, I believe the test_delay parameter is not actually 0 by default (as mentioned in Section 8.4 of the user's manual), but 1us instead. If you want to make it 0 you can either put it in the parameters file like node.appN.mpi.test_delay = 0, or of course you can modify mpi_api.cc and replace the line:
double test_delay_s = params.find<SST::UnitAlgebra>("test_delay", "1us").getValue().toDouble();
for
double test_delay_s = params.find<SST::UnitAlgebra>("test_delay", "0").getValue().toDouble();
Maybe everything I just described here only applies to using SST-Macro with the integrated SST-Core (which is what I am using), and not to using it in standalone mode, I haven't tested that.
Hello!
I was trying to see the impact of the
mpi
parameters (includingmpi.queue
) mentioned in Section 8.4 of the user's manual, but I wasn't able to get the simulator to read them, since it kept using the default values. After some digging in the code I found out that thempi
parameters are actually part of thenode.appN
namespace, and therefore they should be put in there. Moreover, I suggest putting thempi.queue
parameters mentioned in Section 8.4.1 of the user's manual outside of thequeue
subsection (e.g., instead ofnode.appN.mpi.queue.post_rdma_delay
I suggest you havenode.appN.mpi.post_rdma_delay
), otherwise they are not being read. I thought it would be worth sharing it here, just in case someone runs into the same trouble as me in the future, or so that it can be adapted in the user's manual and examples. And please correct me if I'm getting something terribly wrong here!Also, heads-up, I believe the
test_delay
parameter is not actually0
by default (as mentioned in Section 8.4 of the user's manual), but1us
instead. If you want to make it0
you can either put it in the parameters file likenode.appN.mpi.test_delay = 0
, or of course you can modifympi_api.cc
and replace the line:double test_delay_s = params.find<SST::UnitAlgebra>("test_delay", "1us").getValue().toDouble();
fordouble test_delay_s = params.find<SST::UnitAlgebra>("test_delay", "0").getValue().toDouble();
Maybe everything I just described here only applies to using SST-Macro with the integrated SST-Core (which is what I am using), and not to using it in standalone mode, I haven't tested that.
EDIT: I later found
bin/uq/exampleTemplate.ini
which shows the right place to put thempi
parameters.Cheers, Antonio