Set the bookmark so the first process of a comm_spawn'd job will be mapped to the same node as the spawning proc, assuming it has space. If not, then the mapper will automatically move to the next node.
This commit was SVN r18346.
Этот коммит содержится в:
родитель
8dd0421015
Коммит
ad894b050b
@ -135,8 +135,14 @@ void orte_plm_base_receive_process_msg(int fd, short event, void *data)
|
||||
ORTE_ERROR_LOG(ORTE_ERR_NOT_FOUND);
|
||||
goto ANSWER_LAUNCH;
|
||||
}
|
||||
/* xfer the parent's bookmark so the child starts from that place */
|
||||
jdata->bookmark = parent->bookmark;
|
||||
/* find the sender's node in the job map */
|
||||
procs = (orte_proc_t**)parent->procs->addr;
|
||||
/* set the bookmark so the child starts from that place - this means
|
||||
* that the first child process could be co-located with the proc
|
||||
* that called comm_spawn, assuming slots remain on that node. Otherwise,
|
||||
* the procs will start on the next available node
|
||||
*/
|
||||
jdata->bookmark = procs[mev->sender.vpid]->node;
|
||||
|
||||
/* launch it */
|
||||
if (ORTE_SUCCESS != (rc = orte_plm.spawn(jdata))) {
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user