We discussed this on the OMPI teleconf this week. Geoff has some notes from the 
meeting, but I don't think they are posted yet. I updated the issue with my 
notes - please let me know if I missed anything.
  https://github.com/open-mpi/ompi/issues/7486#issuecomment-772589937

Thanks!
 

On Mon, Feb 1, 2021 at 6:24 PM Barrett, Brian via devel 
<devel@lists.open-mpi.org <mailto:devel@lists.open-mpi.org> > wrote:
Josh posted https://github.com/open-mpi/ompi/pull/8432 last week to propagate 
arguments from PMIx and PRRTE into the top level configure --help, and it 
probably deserves more discussion.

 

There are three patches, the last of which renames arguments so you could (for 
example) specify different –with-slurm arguments to PMIx, PRRTE, and Open MPI.  
I would strongly encourage us not to bring in that patch.  Ralph and I 
discussed that handling when we revamped the configure system last fall and the 
platform file was the only place we could think of where anything sane would 
happen in that case.  For the one in a million situation, customers can always 
build external PMIx and PRRTE to achieve the same outcome.

 

The rest of this email focuses on what we want to have happen with configure 
–help.  By default, Autoconf’s generated configure –help provides the long 
format of help, with all arguments and descriptions, for the top level 
configure only.  The Autoconf way of handling sub-configures is to expect the 
user to know to specify “./configure –help=recursive” to see all the arguments 
for sub-configure scripts.  This does work correctly in Open MPI, but isn’t 
what users expect.  I spent some time looking, and there does not appear to be 
a sane way to make ./configure –help=recursive the default.  So that leaves us 
with three options:

 

1.      Document (possibly at the end of the default –help output, definitely 
in the README) that you need to run –help=recursive to see the options for PMIx 
and PRRTE
2.      Add “dummy” help options for the parameters from PMIx and PRRTE we 
think are worth exporting.  This is likely prime for bit rot
3.      Josh’s script to create a dummy help option for each argument in PMIx 
and PRRTE not in the top level configure.

 

While (3) bothers me from a code complexity standpoint, it is probably the 
easiest on our customers.  I do worry about expectation setting when those 
arguments don’t do anything because external PMIx/PRRTE are being built, but 
that is probably worth the tradeoff.

 

Anyone else have thoughts or better ideas?

 

Brian



-- 
Josh Hursey
IBM Spectrum MPI Developer

Reply via email to