Jeff Squyres wrote:
> On Oct 6, 2007, at 9:59 PM, Andrew Friedley wrote:
>>> Yes, I very much care about backward compatibility of the openib name
>>> and MCA parameters... This is, as I see it, the biggest issue with
>>> changing the name. Stuff like this has to work:
>>> mpirun --mca btl openib,self ...
>>> mpirun --mca btl_openib_foo 32 ...
>> Ah that could be fun, do you have ideas or should I try to figure this
>> out myself?
> I was kinda assuming that it would be some kind of aliasing in the
> MCA parameter engine...? I dunno -- I hadn't really thought about
> this much.
If creating an aliasing mechanism in the parameter engine for supporting
renamed parameters (as opposed to a "macro" facility) , I have some
suggestions based on past experience/mistakes:
1) If the parameters include both the "aliased from" and "aliased to"
parameter names in the same invocation, consider this a fatal error.
Doing this does require a little bit of extra work, but the extremely
confusing/non-obvious behavior that is allowed otherwise is a big
headache. If there is a need to specify the same "effective" parameter
multiple times (e.g. command line to override a defaults file), then
force the user to use the same parameter name in both/all parameter
sources. You may wish to offer an option to suppress this behavior if
one thinks it is to paranoid/draconian.
2) Consider having something like gcc's deprecated attribute to print a
warning that the parameter the user has specified has been replaced by a
new name, and that support for the old name will be removed in OpenMPI
version x.y. After all, you don't want the aliases to grow without
bound, and we do want to see OpenMPI in use for many years to come.
Paul H. Hargrove PHHargrove_at_[hidden]
Future Technologies Group
HPC Research Department Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory Fax: +1-510-486-6900