Seems like a reasonable, minimal risk request - will do

On Jan 22, 2014, at 4:28 PM, tmish...@jcity.maeda.co.jp wrote:

> 
> Hi Ralph, I want to ask you one more thing about default setting of
> num_procs
> when we don't specify the -np option and we set the cpus-per-proc > 1.
> 
> In this case, the round_robin_mapper sets num_procs = num_slots as below:
> 
> rmaps_rr.c:
> 130        if (0 == app->num_procs) {
> 131            /* set the num_procs to equal the number of slots on these
> mapped nodes */
> 132            app->num_procs = num_slots;
> 133        }
> 
> However, because of cpus_per_rank > 1, this num_procs will be refused at
> the
> line 61 in rmaps_rr_mappers.c as below, unless we switch on the
> oversubscribe
> directive.
> 
> rmaps_rr_mappers.c:
> 61    if (num_slots < ((int)app->num_procs *
> orte_rmaps_base.cpus_per_rank)) {
> 62        if (ORTE_MAPPING_NO_OVERSUBSCRIBE & ORTE_GET_MAPPING_DIRECTIVE
> (jdata->map->mapping)) {
> 63            orte_show_help("help-orte-rmaps-base.txt",
> "orte-rmaps-base:alloc-error",
> 64                           true, app->num_procs, app->app);
> 65            return ORTE_ERR_SILENT;
> 66        }
> 67    }
> 
> Therefore, I think the default num_procs should be equal to the number of
> num_slots divided by cpus/rank:
> 
>           app->num_procs = num_slots / orte_rmaps_base.cpus_per_rank;
> 
> This would be more convinient for most of people who want to use the
> -cpus-per-proc option. I already confirmed it worked well. Please consider
> to apply this fix to 1.7.4.
> 
> Regards,
> Tetsuya Mishima
> 
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users

Reply via email to