On 8/31/2011 4:48 AM, Ralph Castain wrote:
Perhaps it would help if you had clearly stated your concern.
Yeah. It would have helped had I clearly understood what was going on.
Most of all, that way I wouldn't have had to ask any questions! :^)
From this description, I gather your concern is -not- that remote processes
don't see the setting, but that the remote -orteds- don't see it.
Let's dumb this down a notch for my sake. Let's say I want to run a job
with the TCP BTL and have lots of processes. I hit a descriptor limit
and so my friend tells me to use the MCA parameter
opal_set_max_sys_limits. So, is the point that while most MCA
parameters can be set on the mpirun command line *OR* in param files
*OR* with environment variables, in this case the environment-variable
setting should be avoided?
Yes, I'm aware of that issue for rsh-based launches. It stems from rsh not
allowing one to extend the environment. If you place the param on the cmd line,
then it gets propagated because we collect and extend the cmd line params. If
you place it in the environment, then we don't - because (as we have repeatedly
explained to people) we cannot pass all relevant envars on the cmd line due to
length restrictions. We don't have this issue with cmd line params because (the
thinking goes) it already fit on the cmd line.
So for rsh-like launches, there is an unavoidable discrepancy. It's one reason
why we have both system-level and personal-level MCA param files.