Merge pull request #4809 from rhc54/topic/outputfile
Ensure that output-filename is passed as an absolute path
Этот коммит содержится в:
Коммит
cde68c9306
2
.gitignore
поставляемый
2
.gitignore
поставляемый
@ -181,6 +181,8 @@ ompi/mca/io/romio314/romio/test/pfcoll_test.f
|
||||
ompi/mca/io/romio314/romio/test/runtests
|
||||
ompi/mca/io/romio314/romio/util/romioinstall
|
||||
|
||||
ompi/mca/osc/monitoring/osc_monitoring_template_gen.h
|
||||
|
||||
ompi/mca/pml/v/autogen.vprotocols
|
||||
ompi/mca/pml/v/mca_vprotocol_config_output
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
* Copyright (c) 2009-2016 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2011-2017 Oak Ridge National Labs. All rights reserved.
|
||||
* Copyright (c) 2017 UT-Battelle, LLC. All rights reserved.
|
||||
* Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
@ -139,7 +139,7 @@ static opal_cmd_line_init_t cmd_line_init[] = {
|
||||
"Timestamp all application process output", OPAL_CMD_LINE_OTYPE_OUTPUT },
|
||||
{ "orte_output_filename", '\0', "output-filename", "output-filename", 1,
|
||||
&orte_cmd_options.output_filename, OPAL_CMD_LINE_TYPE_STRING,
|
||||
"Redirect output from application processes into filename/job/rank/std[out,err,diag]",
|
||||
"Redirect output from application processes into filename/job/rank/std[out,err,diag]. A relative path value will be converted to an absolute path",
|
||||
OPAL_CMD_LINE_OTYPE_OUTPUT },
|
||||
{ NULL, '\0', "merge-stderr-to-stdout", "merge-stderr-to-stdout", 0,
|
||||
&orte_cmd_options.merge, OPAL_CMD_LINE_TYPE_BOOL,
|
||||
|
@ -14,7 +14,7 @@
|
||||
* Copyright (c) 2007-2009 Sun Microsystems, Inc. All rights reserved.
|
||||
* Copyright (c) 2007-2017 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2015-2017 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* Copyright (c) 2017 IBM Corporation. All rights reserved.
|
||||
@ -813,7 +813,19 @@ int orte_submit_job(char *argv[], int *index,
|
||||
}
|
||||
/* if we were asked to output to files, pass it along */
|
||||
if (NULL != orte_cmd_options.output_filename) {
|
||||
orte_set_attribute(&jdata->attributes, ORTE_JOB_OUTPUT_TO_FILE, ORTE_ATTR_GLOBAL, orte_cmd_options.output_filename, OPAL_STRING);
|
||||
/* if the given filename isn't an absolute path, then
|
||||
* convert it to one so the name will be relative to
|
||||
* the directory where prun was given as that is what
|
||||
* the user will have seen */
|
||||
if (!opal_path_is_absolute(orte_cmd_options.output_filename)) {
|
||||
char cwd[OPAL_PATH_MAX], path;
|
||||
getcwd(cwd, sizeof(cwd));
|
||||
path = opal_os_path(false, cwd, orte_cmd_options.output_filename, NULL);
|
||||
orte_set_attribute(&jdata->attributes, ORTE_JOB_OUTPUT_TO_FILE, ORTE_ATTR_GLOBAL, path, OPAL_STRING);
|
||||
free(path);
|
||||
} else {
|
||||
orte_set_attribute(&jdata->attributes, ORTE_JOB_OUTPUT_TO_FILE, ORTE_ATTR_GLOBAL, orte_cmd_options.output_filename, OPAL_STRING);
|
||||
}
|
||||
}
|
||||
/* if we were asked to merge stderr to stdout, mark it so */
|
||||
if (orte_cmd_options.merge) {
|
||||
|
@ -1,7 +1,7 @@
|
||||
.\" -*- nroff -*-
|
||||
.\" Copyright (c) 2009-2016 Cisco Systems, Inc. All rights reserved.
|
||||
.\" Copyright (c) 2008-2009 Sun Microsystems, Inc. All rights reserved.
|
||||
.\" Copyright (c) 2017 Intel, Inc. All rights reserved.
|
||||
.\" Copyright (c) 2017-2018 Intel, Inc. All rights reserved.
|
||||
.\" Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
.\" reserved.
|
||||
.\" $COPYRIGHT$
|
||||
@ -192,14 +192,14 @@ Number of processes to run.
|
||||
.
|
||||
.TP
|
||||
.B -novm\fR,\fP --novm
|
||||
Execute without creating an allocation-spanning virtual machine (only start
|
||||
Execute without creating an allocation-spanning virtual machine (only start
|
||||
daemons on nodes hosting application procs).
|
||||
.
|
||||
.
|
||||
.
|
||||
.TP
|
||||
.B -hnp\fR,\fP --hnp \fR<arg0>\fP
|
||||
Specify the URI of the Head Node Process (HNP), or the name of the file (specified as
|
||||
Specify the URI of the Head Node Process (HNP), or the name of the file (specified as
|
||||
file:filename) that contains that info.
|
||||
.
|
||||
.
|
||||
@ -330,7 +330,7 @@ each node. (Enabled by default).
|
||||
.
|
||||
.TP
|
||||
.B -oversubscribe\fR,\fP --oversubscribe
|
||||
Nodes are allowed to be oversubscribed, even on a managed system, and
|
||||
Nodes are allowed to be oversubscribed, even on a managed system, and
|
||||
overloading of processing elements.
|
||||
.
|
||||
.TP
|
||||
@ -414,7 +414,10 @@ Redirect the stdout, stderr, and stddiag of all processes to a process-unique ve
|
||||
the specified filename. Any directories in the filename will automatically be created.
|
||||
Each output file will consist of filename.id, where the id will be the
|
||||
processes' rank in MPI_COMM_WORLD, left-filled with
|
||||
zero's for correct ordering in listings.
|
||||
zero's for correct ordering in listings. A relative path value will be converted to an
|
||||
absolute path based on the cwd where mpirun is executed. Note that this \fIwill not\fP work
|
||||
on environments where the file system on compute nodes differs from that where mpirun
|
||||
is executed.
|
||||
.
|
||||
.
|
||||
.TP
|
||||
@ -724,15 +727,15 @@ Report events to a tool listening at the specified URI.
|
||||
.
|
||||
.TP
|
||||
.B -report-pid\fR,\fP --report-pid \fR<channel>\fP
|
||||
Print out mpirun's PID during startup. The channel must be either a '-' to indicate
|
||||
that the pid is to be output to stdout, a '+' to indicate that the pid is to be
|
||||
Print out mpirun's PID during startup. The channel must be either a '-' to indicate
|
||||
that the pid is to be output to stdout, a '+' to indicate that the pid is to be
|
||||
output to stderr, or a filename to which the pid is to be written.
|
||||
.
|
||||
.
|
||||
.TP
|
||||
.B -report-uri\fR,\fP --report-uri \fR<channel>\fP
|
||||
Print out mpirun's URI during startup. The channel must be either a '-' to indicate
|
||||
that the URI is to be output to stdout, a '+' to indicate that the URI is to be
|
||||
Print out mpirun's URI during startup. The channel must be either a '-' to indicate
|
||||
that the URI is to be output to stdout, a '+' to indicate that the URI is to be
|
||||
output to stderr, or a filename to which the URI is to be written.
|
||||
.
|
||||
.
|
||||
@ -1629,7 +1632,7 @@ we return the exit status of the process with the lowest MPI_COMM_WORLD rank to
|
||||
.IP \[bu]
|
||||
if all processes in the primary job normally terminate with exit status 0, and one or more
|
||||
processes in a secondary job normally terminate with non-zero exit status, we (a) return
|
||||
the exit status of the process with the lowest MPI_COMM_WORLD rank in the lowest jobid to have a non-zero
|
||||
the exit status of the process with the lowest MPI_COMM_WORLD rank in the lowest jobid to have a non-zero
|
||||
status, and (b) output a message summarizing the exit status of the primary and all secondary jobs.
|
||||
.IP \[bu]
|
||||
if the cmd line option --report-child-jobs-separately is set, we will return -only- the
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user