1
1

Merge pull request #4809 from rhc54/topic/outputfile

Ensure that output-filename is passed as an absolute path
Этот коммит содержится в:
Ralph Castain 2018-02-13 17:45:45 -08:00 коммит произвёл GitHub
родитель 6ef9d11cdb af07b3df89
Коммит cde68c9306
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
4 изменённых файлов: 31 добавлений и 14 удалений

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