Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Mostyn Lewis (Mostyn.Lewis_at_[hidden])
Date: 2007-04-22 20:46:03


More information.

--mca mpi_paffinity_alone 0

still fails:

...
OMPI_MCA_mpi_paffinity_alone=0
OMPI_MCA_mpi_paffinity_processor=3
...

and it gets bound.

May I ask I question about the code, which I scanned.

I see in ompi/runtime/ompi_mpi_params.c you do a:

     mca_base_param_reg_int_name("mpi", "paffinity_alone",
                                 "If nonzero, assume that this job is the only (set of) process(es) r
unning on each node and bind processes to processors, starting with processor ID 0",
                                 false, false,
                                 (int) ompi_mpi_paffinity_alone, &value);
     ompi_mpi_paffinity_alone = OPAL_INT_TO_BOOL(value);

and in opal/mca/base/mca_base_param.c

/*
  * Register an integer MCA parameter that is not associated with a
  * component
  */
int mca_base_param_reg_int_name(const char *type,
                                 const char *param_name,
                                 const char *help_msg,
                                 bool internal,
                                 bool read_only,
                                 int default_value,
                                 int *current_value)
{
     int ret;
     mca_base_param_storage_t storage;
     mca_base_param_storage_t lookup;

     storage.intval = default_value;
     ret = param_register(type, NULL, param_name, help_msg,
                          MCA_BASE_PARAM_TYPE_INT, internal, read_only,
                          &storage, NULL, NULL, &lookup);
     if (ret >= 0 && NULL != current_value) {
         *current_value = lookup.intval;
     }
     return ret;
}

So, it appears that the "current_value" returned from lookup.intval may not happen
and you just get the "ret" value.
In the mca_base_param_reg_int_name call in ompi_mpi_params.c you don't check the
return code, so there may be junk in value? However, I don't see that explicitly
setting --mca mpi_paffinity_alone 0 would fail?

Regards,
Mostyn

P.S. I hope this doesn't seem too presumptious.

On Sun, 22 Apr 2007, Mostyn Lewis wrote:

> Using a lateish SVN, 1.3a1r14155 (circa April 1st), on a SuSE SLES10
> opteron system which has 2 dual core opterons per node, I can't seem
> to disable processor affinity? I have a small test program which call
> something else to detect CPU binding and whatever I've done it's still
> bound?
>
> tried:
>
> --mca mpi_paffinity_processor -1
> --mca mpi_paffinity_processor -99
> --mca mpi_paffinity_processor fred (desperation - still bound!)
>
> Any help?
>
> Regards,
> Mostyn
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>