Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [OMPI devel] RFC - "system-wide-only" MCA parameters
From: Nadia Derbey (Nadia.Derbey_at_[hidden])
Date: 2009-09-04 01:26:39


On Thu, 2009-09-03 at 19:29 -0400, Graham, Richard L. wrote:
> What happens if $sysconfdir/openmpi-priv-mca-params.conf is missing ?

If it is missing, everything works as today: any parameter declared in
$sysconfdir/openmpi-mca-params.conf is considered as system-wide and can
be overwritten as usual.

>
> Can the file name ( openmpi-priv-mca-params.conf ) also be configurable ?

No, it isn't, presently, but this can be changed if needed.

Regards,
Nadia

>
> Rich
>
>
> On 9/3/09 5:23 AM, "Nadia Derbey" <Nadia.Derbey_at_[hidden]> wrote:
>
>
>
> What: Define a way for the system administrator to prevent users from
> overwriting the default system-wide MCA parameters settings.
>
> Why: Letting the user completely free of changing any MCA parameter
> that has been defined on a system-wide basis may sometimes be
> undesirable.
>
> Where: code can be found at
> http://derbeyn@bitbucket.org/derbeyn/opal-ro-mca-params/
>
> -------------------------------------------------------------------
>
> Description:
>
>
> Letting the user completely free of changing any parameter that has been
> defined on a system-wide basis may sometimes be undesirable. For
> example, on a node with multiple TCP interfaces, the system
> administrator may for some reason want to restrict MPI applications to a
> fixed subset of these TCP interfaces.
>
> Today, there is no way for the system administrator to prevent users
> from overwriting the default system-wide settings: even if he has
> excluded eth0 from the interfaces usable by an MPI application, he
> cannot prevent any user from explicitly using that excluded interface.
>
> The purpose of this feature is to provide a new "system-wide-only"
> property for the MCA parameters, specifying that their system-wide
> value, if it has been defined, can never be overridden. This implies
> changing the existing parameters setting rules.
>
>
> Implementation:
>
> It should be noted that this feature is already described in
> https://svn.open-mpi.org/trac/ompi/ticket/75 as follows:
> "another MCA parameter file that has "privileged" MCA parameters. This
> file is hard-coded in the code base (based on $prefix, likely
> "$sysconfdir/openmpi-priv-mca-params.conf", or somesuch). Any parameters
> set in this file will be treated specially and cannot be overridden."
>
> But we chose another way to implement this feature: the file
> $sysconfdir/openmpi-mca-params.conf is kept with all the parameters
> settings (even those that are considered as system-wide-only).
> And the new file $sysconfdir/openmpi-priv-mca-params.conf is introduced
> to contain only the list of the "privileged" parameters (not their value).
> Doing it that way makes it easier to change the status of the MCA
> parameters: moving them from privileged to non privileged is only a
> matter of removing the new file, which preserves compatibility.
> While with the solution proposed in the ticket, we have to merge both files.
>
> The configuration files are parsed in the following order:
> 1. $sysconfdir/openmpi-mca-params.conf.
> 2. $sysconfdir/openmpi-priv-mca-params.conf
> 3. $HOME/.openmpi/mca-param.conf
>
> When openmpi-priv-mca-params.conf is parsed, any parameter listed in
> that file is moved from the mca_base_param_file_values list to a new
> parallel list (mca_base_priv_param_file_values). The parameter remains
> "hidden" in that new list.
> The lookup order has been changed: the new
> mca_base_priv_param_file_values list is the very 1st one to be scanned:
> this is how we ensure that the "privileged" parameters are never
> overwritten once defined on a system-wide basis.
>
> Other external changes:
> 1. The man page for mpirun(1) has been changed.
> 2. The ompi_info(1) output has been changed to reflect the status of
> these "privileged" parameters. The status field can now be one of
> "read-only", "writable" or "privileged".
> 3. A new option has been added to ompi_info(1): --privileged
> it outputs only the list of parameters that have been defined as
> system-wide-only.
>
>
> TODO list:
> . Make this feature configurable.
> . Output a warning message as described in the ticket.
>
>
> Possible extension to this functionality:
>
> This new functionality can be extended in the future in the following
> way: allow the administrator to specify boundaries within which an MCA
> parameter is allowed to be changed by a higher priority setting. This
> means that the administrator should declare min and max values (or even
> a set of discrete values) for any such parameter. Then, any higher
> priority setting will be done only if the new value belongs to the
> declared set.
> In other word, each MCA parameter can be
> 1. set to a given value in openmpi-mca-params.conf
> 2. declared in openmpi-priv-mca-params.conf with its allowed boundaries
> Then, if the user calls mpirun with that MCA parameter set in his
> private mca-params.conf file, or in an AMCA file, or in an environment
> variable, or on the command line, the new value will override the
> system-wide value only if it is within the declared boundaries.
>
> This could be thought of as a future development.
>
> --
> Nadia Derbey <Nadia.Derbey_at_[hidden]>
>
>
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>

-- 
Nadia Derbey <Nadia.Derbey_at_[hidden]>