The --output-filename option currently mixes the output from all processes with the same rank, but different jobids. Thus, the output from comm_spawn'd processes gets intermingled with their parents and each other.
Adding the jobid to the output filename solves the problem. Thanks to Jody for pointing this out! This commit was SVN r23380.
Этот коммит содержится в:
родитель
4a94ea53d3
Коммит
0b4081b162
@ -207,7 +207,9 @@ static int hnp_push(const orte_process_name_t* dst_name, orte_iof_tag_t src_tag,
|
||||
np = np / 10;
|
||||
}
|
||||
/* construct the filename */
|
||||
asprintf(&outfile, "%s.%0*lu", orte_output_filename, numdigs, (unsigned long)proct->name.vpid);
|
||||
asprintf(&outfile, "%s.%d.%0*lu", orte_output_filename,
|
||||
(int)ORTE_LOCAL_JOBID(proct->name.jobid),
|
||||
numdigs, (unsigned long)proct->name.vpid);
|
||||
/* create the file */
|
||||
fdout = open(outfile, O_CREAT|O_RDWR|O_TRUNC, 0644);
|
||||
free(outfile);
|
||||
|
@ -184,7 +184,9 @@ static int orted_push(const orte_process_name_t* dst_name, orte_iof_tag_t src_ta
|
||||
np = np / 10;
|
||||
}
|
||||
/* construct the filename */
|
||||
asprintf(&outfile, "%s.%0*lu", orte_output_filename, numdigs, (unsigned long)proct->name.vpid);
|
||||
asprintf(&outfile, "%s.%d.%0*lu", orte_output_filename,
|
||||
(int)ORTE_LOCAL_JOBID(proct->name.jobid),
|
||||
numdigs, (unsigned long)proct->name.vpid);
|
||||
/* create the file */
|
||||
fdout = open(outfile, O_CREAT|O_RDWR|O_TRUNC, 0644);
|
||||
free(outfile);
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user