1
1
Ralph Castain 7e3ddb09d3 As requested by Aurelien at the July design meeting - long time coming, but finally got around to it.
Enable one mpirun to act as the server for another mpirun when doing MPI_Publish_name and its associated operations. The user is responsible, of course, for ensuring that the mpirun acting as a server outlives any mpiruns using it in that capacity.

Add a cmd line option to mpirun --report-pid that prints out mpirun's pid. Allow the --ompi-server option to now take pid:# (or PID:#) of the mpirun to be used as the server, and then look that pid up by searching the local mpirun contact infos for it.

This commit was SVN r20102.
2008-12-10 17:10:39 +00:00

76 строки
1.8 KiB
C

/*
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2007 Cisco, Inc. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#ifndef ORTERUN_ORTERUN_H
#define ORTERUN_ORTERUN_H
#include "orte_config.h"
#include "opal/threads/condition.h"
#include "opal/util/cmd_line.h"
#include "orte/runtime/orte_globals.h"
BEGIN_C_DECLS
/**
* Main body of orterun functionality
*/
int orterun(int argc, char *argv[]);
/**
* Global struct for catching orterun command line options.
*/
struct orterun_globals_t {
bool help;
bool version;
bool verbose;
bool quiet;
bool report_pid;
bool report_uri;
bool exit;
bool by_node;
bool by_slot;
bool debugger;
int num_procs;
char *env_val;
char *appfile;
char *wdir;
char *path;
bool preload_binary;
char *preload_files;
char *preload_files_dest_dir;
opal_mutex_t lock;
bool sleep;
char *ompi_server;
bool wait_for_server;
int server_wait_timeout;
char *stdin_target;
};
/**
* Struct holding values gleaned from the orterun command line -
* needed by debugger init
*/
ORTE_DECLSPEC extern struct orterun_globals_t orterun_globals;
END_C_DECLS
#endif /* ORTERUN_ORTERUN_H */