1
1
Граф коммитов

5848 Коммитов

Автор SHA1 Сообщение Дата
Ralph Castain
7d538c661c Initialize variable and correctly compare against success
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-29 16:07:42 -07:00
Ralph Castain
d5ce3c38e1 Begin cleaning up debugger support
Debugger daemons do not count against available slots. Clean up some leftover errors from the upgrade to HWLOC 2 in the mappers. Properly flag debugger jobs that come in via PMIx.

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-27 16:18:43 -05:00
Ralph Castain
fcb7a2f29b Minor cleanups for when using external pmix
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-24 09:53:04 -07:00
Ralph Castain
fe9b584c05 Fully support OMPI spawn options. Fix a bug in the round-robin mappers where we weren't adding nodes to the job map node array, and so resources were not released
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
(cherry picked from commit 285d8cfef74ffc899e9c51e1d9c597b7fb2ceb89)
2017-09-21 10:29:27 -07:00
Ralph Castain
e575c4d6f9 Fix tool connection logic so we properly search for default session server, perform specified number of retries, etc.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
(cherry picked from commit 7c755e01004f8b86c71f1729662979ea45ab1adb)
2017-09-19 13:35:46 -07:00
Ralph Castain
16de607607 Merge pull request #4234 from rhc54/topic/upstream
Ensure we update the total_slots_alloc field on each job. Correct the client example
2017-09-19 09:03:04 -07:00
Ralph Castain
658c3d1d51 Ensure we update the total_slots_alloc field on each job. Correct the client example
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
(cherry picked from commit bcedd12a8a24dd246f04ff13b4fd2f1bbac6ce5a)
2017-09-19 08:14:14 -07:00
Jeff Squyres
7cccee9d92 rmaps/base: remove debugging "DONE" message
Thanks for Ben Menadue for reporting and supplying the patch.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2017-09-19 07:10:00 -07:00
Ralph Castain
5708872112 Implement support for "local" range when publishing data
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
(cherry picked from commit 2d54f7e0dd3a47260b0b2634aae3361316005933)
2017-09-18 19:34:08 -07:00
Ralph Castain
08c93091f7 Merge pull request #4223 from rhc54/topic/stale
Remove stale tools
2017-09-18 09:43:06 -07:00
Josh Hursey
252be7ffb0 Merge pull request #4215 from jjhursey/fix/plm-lsf-rc
plm/lsf: Improve error message if lsb_launch fails
2017-09-18 11:14:25 -05:00
Ralph Castain
ed508010b4 Remove stale tools
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-18 07:30:47 -07:00
Ralph Castain
3c914a7a97 Complete the fix of the ORTE DVM. We will now use "prun" instead of "orterun -hnp foo" to execute jobs. This provides the feature of automatic discovery of the orte-dvm so you don't need to manually enter URI's or contact file locations. All IO is forwarded to prun.
Still in the "needs to be done" category:

* mapping/ranking/binding options aren't correctly supported

* if the DVM encounters some errors (e.g., not enough resources for the job), the resulting error is globally set and impacts any subsequent job submission

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-16 13:13:07 -07:00
Joshua Hursey
89c1aaf646 plm/lsf: Improve error message if lsb_launch fails
Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2017-09-15 09:45:58 -05:00
Ralph Castain
7c7d8a69a0 Backport changes from PMIx reference server
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-14 11:48:56 -07:00
Ralph Castain
8d336ddcc0 Merge pull request #4209 from rhc54/topic/foobar
Only build prun if building --with-devel-headers
2017-09-13 13:07:29 -07:00
Ralph Castain
3f8908871b Since the DVM is now tied to prun, don't build the DVM either unless prun can be built
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-13 11:55:10 -07:00
Ralph Castain
589cc03d8e Only build prun if building --with-devel-headers
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-13 11:38:11 -07:00
Ralph Castain
0a3d8af4c2 Merge pull request #4202 from anandhis/master
Choosing provider when user requests generic transport "fabric"
2017-09-13 11:21:24 -07:00
Ralph Castain
bbd83fd4c0 Add a new launcher "prun" for starting applications against the ORTE DVM.
Unlike "orterun", "prun" is a PMIx-only program that discovers the DVM connection instead of requiring that we explicitly provide it. Only build "prun" if PMIx v2.x is available.

This gets the DVM working again, but still is showing problems for multiple executions. I'll detail those in a separate issue. Thus, the DVM should still be considered "broken".

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-12 21:40:41 -07:00
anandhi
4d7de8882f Checking for generic transport "fabric" in mca parameter rml_ofi_transports
to choose the first available non-socket provider.
	modified:   orte/mca/rml/ofi/rml_ofi_component.c
	modified:   orte/mca/rml/ofi/rml_ofi_send.c

Signed-off-by: Anandhi Jayakumar <anandhi.s.jayakumar@intel.com>
2017-09-12 15:39:55 -07:00
Ralph Castain
3477079804 Repair the ORTE DVM
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-09-11 17:38:21 -07:00
Joshua Hursey
420ca65f4f orte/pmix: Always seed environment with global rank
* Even if we are only launching one app context, we might call spawn
   later and the remote groups might want their global rank information.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2017-09-08 08:53:49 -05:00
Howard Pritchard
5db9416724 rml/ofi: swat a compiler warning
On the path to -Werror passing builds!

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2017-08-30 09:16:49 -06:00
Josh Hursey
ad87aa2674 Merge pull request #4121 from jjhursey/explore/dlopen-local
mca: Dynamic components link against project lib
2017-08-25 13:15:51 -05:00
Joshua Hursey
e1d079544b mca: Dynamic components link against project lib
* Resolves #3705
 * Components should link against the project level library to better
   support `dlopen` with `RTLD_LOCAL`.
 * Extend the `mca_FRAMEWORK_COMPONENT_la_LIBADD` in the `Makefile.am`
   with the appropriate project level library:
```
MCA components in ompi/
       $(top_builddir)/ompi/lib@OMPI_LIBMPI_NAME@.la
MCA components in orte/
       $(top_builddir)/orte/lib@ORTE_LIB_PREFIX@open-rte.la
MCA components in opal/
       $(top_builddir)/opal/lib@OPAL_LIB_PREFIX@open-pal.la
MCA components in oshmem/
       $(top_builddir)/oshmem/liboshmem.la"
```

Note: The changes in this commit were automated by the script in
the commit that proceeds it with the `libadd_mca_comp_update.py`
script. Some components were not included in this change because
they are statically built only.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2017-08-24 11:56:16 -04:00
Ralph Castain
68029b27e4 Fix the orte-dvm operations so that orterun can connect and execute an application. There is a lingering problem, though. The first invocation of orterun succeeds every time. However, subsequent invocations have a high probability of hanging in the OOB connection handshake.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-23 17:31:08 -07:00
Ralph Castain
d80b0c7990 If the HWLOC shared memory system is unable to connect, then fallback to providing the topology via XML. Do not automatically provide the XML to every process as that defeats the purpose of the shared memory system. Instead, use PMIx_Query_info_nb to get the info from the server when required.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-22 18:12:26 -07:00
Brice Goglin
046d870124 rtc/hwloc/shmem: add Inria copyrights
The code for finding the hole for the shmem region actually came from me.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
2017-08-21 23:09:57 +02:00
Brice Goglin
baf762d99d rtc/hwloc/shmem: dump /proc/self/maps if failed to find a hole and verbosity > 4
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
2017-08-21 19:57:38 +02:00
Brice Goglin
8f6afbb641 rtc/hwloc/shmem: fix "heap" hole search kind
There can be multiple [heap] consecutively in proc/<pid>/maps,
and there's no room between them.
Don't use a hole after the first [heap] is there's another [heap]
immediately after it.

This code would fail to find the last [heap] if there were multiple
[heap] interleaved with non-heap VMA, but our kind "after heap"
wouldn't be meaningful anymore anyway.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
2017-08-21 15:42:38 +02:00
Brice Goglin
b8b46b253b rtc/hwloc/shmem: fix "libs" hole search kind
We want the biggest hole *between* heap and stack, not outside.

Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
2017-08-21 15:40:36 +02:00
Ralph Castain
d515f48885 The local PMIx server is notifying its clients of all events, but for some reason I don't recall, the broadcast notification was marked for delivery only to non-default event handlers. This creates a discrepancy between the two behaviors, so don't restrict the broadcast notifications.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-18 17:26:11 -07:00
Ralph Castain
b67b1e88a5 Merge pull request #4111 from rhc54/topic/multiconnect
Cleanup some issues in connect/accept support across jobs started by …
2017-08-17 12:49:01 -07:00
Ralph Castain
d85239e052 Cleanup some issues in connect/accept support across jobs started by different mpirun commands. Still not fully operational, but someone else will have to finish debugging it
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-17 11:58:48 -07:00
Ralph Castain
088b6cdeee Silence coverity warnings
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-17 09:49:35 -07:00
Ralph Castain
41df973359 Add diagnostics for hwloc get_topology
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-16 14:21:27 -07:00
Ralph Castain
65fb6070d9 Update tool support by adding MCA params to direct orted's to drop
session and/or system-level tool rendezous files. Ensure PMIx is
enabled for tools

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-15 17:49:47 -07:00
Ralph Castain
2fbce9d93c Fix hostfile filtering in allocated environments to preserve slot assignments
Refs #3984

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-15 14:41:12 -07:00
Artem Polyakov
10d6e90bf5 Revert "plm/rsh: Propagate PMIx prefix to orted's"
This reverts commit 71da0fcbef.
(per https://github.com/open-mpi/ompi/pull/4052).
Refs: https://github.com/open-mpi/ompi/issues/3980

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-08-14 21:37:57 +07:00
Ralph Castain
edccb258cb Provide the mapping, ranking, binding patterns
Apps might want to make use of the relative patterns used to place/assign their procs

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-09 11:34:43 -07:00
Nathan Hjelm
76320a8ba5 opal: rename opal_atomic_init to opal_atomic_lock_init
This function is used to initalize and opal atomic lock. The old name
was confusing.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-08-07 14:15:11 -06:00
Ralph Castain
9921237f99 Merge pull request #4012 from rhc54/topic/p3
Cover the use-cases for OPAL_PREFIX and PMIX_INSTALL_PREFIX options
2017-08-07 11:42:53 -07:00
Ralph Castain
d1b7c3d8d5 Silence some compile-time warnings. Update scripts now that AUTHORS is gone
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-04 20:08:31 -07:00
Ralph Castain
a239b4c3c3 Per discussion on the PMIx side, do a better job of detecting mismatches between location directives for OPAL and PMIx. Provide a more helpful error message and error out if we find a mismatch. If any OPAL values are set and the PMIx equivalent is not, then transfer it.
Do not clear PMIX_INSTALL_PREFIX from the daemon's launch environment

Fixes #3980
Closes #4007
Refs #3985

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-04 19:36:00 -07:00
Ralph Castain
88a7c9dca3 Merge pull request #4013 from rhc54/topic/hwloc
Silence warning on Mac - we know Mac doesn't support hwloc, and so it…
2017-08-03 15:52:44 -06:00
Howard Pritchard
897c62756b Merge pull request #3999 from hppritcha/topic/slurmd_controls_them_all
SLURM: launch all processes via slurmd
2017-08-03 15:33:44 -06:00
Gilles Gouaillardet
6b6e65a5bc rtc/hwloc: fix MCA parameter handling
always re-initialize vmhole *before* mca_base_component_var_register()
otherwise the vmhole gets NULL'ified if orte is initialized a second time.
that typically occurs when Open MPI is configure'd with --disable-dlopen
and the app does MPI_T_init_thread(); MPI_T_finalize(); MPI_T_init_thread();

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-08-03 14:45:43 +09:00
Ralph Castain
9f926b8083 Silence warning on Mac - we know Mac doesn't support hwloc, and so it doesn't matter if a VM hole isn't found. It also doesn't matter in general as all it really means is that we have to turn the hwloc shmem support "off".
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-02 20:20:45 -06:00
Howard Pritchard
d08be74573 SLURM: launch all processes via slurmd
It turns out that the approach of having the HNP do the
fork/exec of MPI ranks on the head node in a SLURM environment
introduces problems when users/sysadmins want to use the SLURM
scancl tool or sbatch --signal option to signal a job.

This commit disables use of the HNP fork/exec procedure when
a job is launched into a SLURM controlled allocation.

update NEWS with a blurb about new ras framework mca parameter.

related to #3998

Signed-off-by: Howard Pritchard <hppritcha@gmail.com>
2017-08-02 14:56:55 -06:00
Artem Polyakov
71da0fcbef plm/rsh: Propagate PMIx prefix to orted's
Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-08-02 08:06:13 +03:00
Ralph Castain
f39ce67982 Merge pull request #3951 from rhc54/topic/hwloc2
Update to hwloc 2.0.0a
2017-08-01 15:18:31 -06:00
Ralph Castain
e94786f4b7 Revert "Check for OPAL_PREFIX and set corresponding PMIX_PREFIX if found"
This reverts commit 3744967adb.

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-08-01 08:14:12 -06:00
Ralph Castain
3744967adb Check for OPAL_PREFIX and set corresponding PMIX_PREFIX if found
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-31 09:14:01 -06:00
Boris Karasev
e20b581529 pmix: fixed immediate request
This commit fixes a hang when using external PMIx v1 module

Signed-off-by: Boris Karasev <karasev.b@gmail.com>
2017-07-28 15:53:48 +06:00
Ralph Castain
7a83fdb9bb Update to hwloc 2.0.0a with shmem support.
Update to support passing of HWLOC shmem topology to client procs
Update use of distance API per @bgoglin
Have the openib component lookup its object in the distance matrix
Bring usnic up-to-date
Restore binding for hwloc2

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-25 20:26:22 -07:00
Ralph Castain
0042c758f1 Update the tools support so it allows tools to access PMIx
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-25 17:10:08 -07:00
Ralph Castain
af85e48dd7 Silence Coverity warning, silence pmix_error_log of success
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-21 15:33:16 -07:00
Ralph Castain
f7e8780a42 Remove fortran support from platform file
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-20 21:02:30 -07:00
Ralph Castain
b225366012 Bring the ofi/rml component online by completing the wireup protocol for the daemons. Cleanup the current confusion over how connection info gets created and
passed to make it all flow thru the opal/pmix "put/get" operations. Update the PMIx code to latest master to pickup some required behaviors.

Remove the no-longer-required get_contact_info and set_contact_info from the RML layer.

Add an MCA param to allow the ofi/rml component to route messages if desired. This is mainly for experimentation at this point as we aren't sure if routing wi
ll be beneficial at large scales. Leave it "off" by default.

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-20 21:01:57 -07:00
Artem Polyakov
79c10c884d orte/pmix/server: Fix direct modex response with error status
`send_error()` is only packing status and peer info in the reply.
While remote counterpart in `pmix_server_dmdx_resp()` expects
the "hotel room number" to proceed correctly.

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-07-20 23:50:57 +07:00
Gilles Gouaillardet
60aa9cfcb6 hwloc: add support for hwloc v2 API
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-07-20 17:39:44 +09:00
Gilles Gouaillardet
9f29f3bff4 hwloc: since WHOLE_SYSTEM is no more used, remove useless
checks related to offline and disallowed elements

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-07-20 17:39:21 +09:00
Gilles Gouaillardet
1a34224948 hwloc: do not set the HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM flag
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-07-20 17:39:16 +09:00
Ralph Castain
fca68b070b Merge pull request #3934 from rhc54/topic/singleton
Fix the isolated pmix component. Cleanup the ess/singleton component …
2017-07-19 16:02:37 -05:00
Ralph Castain
543c16b28d Fix the isolated pmix component. Cleanup the ess/singleton component - we shouldn't be automatically discovering the local topology as that is now done on-demand.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-19 12:14:29 -07:00
Geoffrey Paulsen
71333a4b14 Transitioning ownership of rmaps/seq and rmaps/rank_file from Intel to IBM. 2017-07-18 21:31:01 -04:00
Gilles Gouaillardet
da34e2f109 ess/base: silence a warning
by fixing a static initializer

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-07-19 09:30:53 +09:00
Ralph Castain
8a98aab6cc Fix signal forwarding on ORTE daemons so that _all_ daemons do it, regardless of environment. Add missing support for SIGTSTP and a few others.
Thanks to Eugene Dedits for reporting the problem.

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-18 09:58:55 -07:00
Jeff Squyres
ccf17808b6 Merge pull request #3258 from markalle/pr/symbol_name_pollution
symbol name pollution
2017-07-12 16:19:25 -05:00
Artem Polyakov
832f1b03a4 Merge pull request #3790 from artpol84/orte/iof_sbatch
orte/iof: Address the case when output is a regular file
2017-07-12 09:38:01 -05:00
Gilles Gouaillardet
626e94b689 oob/tcp: make mca_oob_tcp_msg_type_t an uint8_t
so no conversion is required when heterogeneous mode is enabled

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-07-12 10:27:45 +09:00
Mark Allen
552216f9ba scripted symbol name change (ompi_ prefix)
Passed the below set of symbols into a script that added ompi_ to them all.

Note that if processing a symbol named "foo" the script turns
    foo  into  ompi_foo
but doesn't turn
    foobar  into  ompi_foobar

But beyond that the script is blind to C syntax, so it hits strings and
comments etc as well as vars/functions.

    coll_base_comm_get_reqs
    comm_allgather_pml
    comm_allreduce_pml
    comm_bcast_pml
    fcoll_base_coll_allgather_array
    fcoll_base_coll_allgatherv_array
    fcoll_base_coll_bcast_array
    fcoll_base_coll_gather_array
    fcoll_base_coll_gatherv_array
    fcoll_base_coll_scatterv_array
    fcoll_base_sort_iovec
    mpit_big_lock
    mpit_init_count
    mpit_lock
    mpit_unlock
    netpatterns_base_err
    netpatterns_base_verbose
    netpatterns_cleanup_narray_knomial_tree
    netpatterns_cleanup_recursive_doubling_tree_node
    netpatterns_cleanup_recursive_knomial_allgather_tree_node
    netpatterns_cleanup_recursive_knomial_tree_node
    netpatterns_init
    netpatterns_register_mca_params
    netpatterns_setup_multinomial_tree
    netpatterns_setup_narray_knomial_tree
    netpatterns_setup_narray_tree
    netpatterns_setup_narray_tree_contigous_ranks
    netpatterns_setup_recursive_doubling_n_tree_node
    netpatterns_setup_recursive_doubling_tree_node
    netpatterns_setup_recursive_knomial_allgather_tree_node
    netpatterns_setup_recursive_knomial_tree_node
    pml_v_output_close
    pml_v_output_open
    intercept_extra_state_t
    odls_base_default_wait_local_proc
    _event_debug_mode_on
    _evthread_cond_fns
    _evthread_id_fn
    _evthread_lock_debugging_enabled
    _evthread_lock_fns
    cmd_line_option_t
    cmd_line_param_t
    crs_base_self_checkpoint_fn
    crs_base_self_continue_fn
    crs_base_self_restart_fn
    event_enable_debug_output
    event_global_current_base_
    event_module_include
    eventops
    sync_wait_mt
    trigger_user_inc_callback
    var_type_names
    var_type_sizes

Signed-off-by: Mark Allen <markalle@us.ibm.com>
2017-07-11 02:13:23 -04:00
Mark Allen
efc25168cd symbol name pollution: making some vars static
As part of addressing symbol name pollution, I'm switching a few
vars/functions to static.

Signed-off-by: Mark Allen <markalle@us.ibm.com>
2017-07-11 02:13:22 -04:00
Gilles Gouaillardet
823382f5d7 plm/base: do not abort when configure'd with --enable-heterogeneous
and a mix of BE/LE is detected

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-07-07 10:43:54 +09:00
Ralph Castain
2a580fa71e Merge pull request #3801 from rhc54/topic/hetero
Detect that we have a mix of BE/LE in the system
2017-07-06 15:29:06 -07:00
Ralph Castain
8979bfe71e Silence Coverity warnings
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-06 06:07:28 -07:00
anandhi
793ebc272e When opening conduit, checking for the transport preference in below order -
(1) rml_ofi_transports mca parameter.  This parameter should have the list of transports (currently ethernet,fabric are valid)
    fabric is higher priority if provided.
(2) ORTE_RML_TRANSPORT_TYPE key with values "ethernet" or "fabric". "fabric" is higher priority.
If specific provider is required use ORTE_RML_OFI_PROV_NAME key with values "socket" or "OPA" or any other supported in system.

	modified:   ../orte/mca/rml/ofi/rml_ofi.h
	modified:   ../orte/mca/rml/ofi/rml_ofi_component.c
	modified:   ../orte/mca/rml/ofi/rml_ofi_send.c

On send_msg choose the provider on local and peer to follow below rules -
1. if the user specified the transport for this conduit (even giving us a prioritized list of candidates), then the one we selected is the _only_ one we will use. If the remote peer has a matching endpoint, then we use it - otherwise, we error out

2. if the user didn't specify a transport, then we look for matches against _all_ of our available transports, starting with fabric and then going to Ethernet, taking the first one that matches.

3. if we can't find any match, then we error out

	modified:   ../orte/mca/rml/ofi/rml_ofi.h
	modified:   ../orte/mca/rml/ofi/rml_ofi_component.c
	modified:   ../orte/mca/rml/ofi/rml_ofi_send.c

send_msg() -> Fixed case when the local provider chosen at time of opening conduit
is not present in peer (destination) node
	modified:   ../orte/mca/rml/ofi/rml_ofi.h
	modified:   ../orte/mca/rml/ofi/rml_ofi_send.c

When opening conduit, checking for the transport preference in below order -

(1) rml_ofi_transports mca parameter.  This parameter should have the list of transports (currently ethernet,fabric are valid)
    fabric is higher priority if provided.
(2) ORTE_RML_TRANSPORT_TYPE key with values "ethernet" or "fabric". "fabric" is higher priority.
If specific provider is required use ORTE_RML_OFI_PROV_NAME key with values "socket" or "OPA" or any other supported in system.

	modified:   ../orte/mca/rml/ofi/rml_ofi.h
	modified:   ../orte/mca/rml/ofi/rml_ofi_component.c
	modified:   ../orte/mca/rml/ofi/rml_ofi_send.c

On send_msg choose the provider on local and peer to follow below rules -
1. if the user specified the transport for this conduit (even giving us a prioritized list of candidates), then the one we selected is the _only_ one we will use. If the remote peer has a matching endpoint, then we use it - otherwise, we error out

2. if the user didn't specify a transport, then we look for matches against _all_ of our available transports, starting with fabric and then going to Ethernet, taking the first one that matches.

3. if we can't find any match, then we error out

	modified:   ../orte/mca/rml/ofi/rml_ofi.h
	modified:   ../orte/mca/rml/ofi/rml_ofi_component.c
	modified:   ../orte/mca/rml/ofi/rml_ofi_send.c

send_msg() -> Fixed case when the local provider chosen at time of opening conduit
is not present in peer (destination) node
	modified:   ../orte/mca/rml/ofi/rml_ofi.h
	modified:   ../orte/mca/rml/ofi/rml_ofi_send.c

Signed-off-by: Anandhi Jayakumar <anandhi.s.jayakumar@intel.com>
2017-07-05 15:40:14 -07:00
Ralph Castain
2753f53e6d Detect that we have a mix of BE/LE in the system, provide a warning that OMPI doesn't currently support this environment, and error out
Fixes #2817

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-07-03 15:47:05 -07:00
Artem Polyakov
374c824a5c orte/iof: Generalize the fix related to always-ready fds
Reference: https://bugzilla.kernel.org/show_bug.cgi?id=15272.
Work with both stdin/stdout fds that are known to be always
ready using libevent timers.
Such fds can not be effectively used with non-blocking I/O
functions like epoll, poll, select:
- for poll/select the event will be triggered immediately;
- for epoll `epoll_ctl` will reject an attempt to add this
fd to the working set.

Reference: http://www.wangafu.net/~nickm/libevent-book/Ref4_event.html
Libevent suggests to use timers over event_active for the
reasons provided by the link above.

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-07-01 02:24:14 +07:00
Artem Polyakov
d9ad918a14 orte/iof: Address the case when output is a regular file
Regular files are always write-ready, so non-blocking I/O does not
give any benefits for them.
More than that - if libevent is using "epoll" to track fd events,
epoll_ctl will refuse attempt to add an fd pointing to a regular
file descriptor with EPERM.
This fix checks the object referenced by fd and avoids event_add
using event_active instead.

In the original configuration that uncovered this issue "epoll"
was used in libevent, it was triggering the following warning
message:
"[warn] Epoll ADD(1) on fd 0 failed.  Old events were 0; read
change was 1 (add); write change was 0 (none): Operation not
permitted"
And the side effect was accumulation of all output in mpirun
memory and actually writing it only at mpirun exit.

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-07-01 02:24:14 +07:00
Ralph Castain
7cbea77238 Merge pull request #3778 from rhc54/topic/warn
Attempt to detect when we are direct-launched without the necessary P…
2017-06-29 16:53:12 -07:00
Ralph Castain
85f8eb4c6b Stop all progress threads prior to releasing the peer objects to avoid a race condition whereby a lost connection could be reported after a peer object was freed and before the threads were stopped.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-29 15:48:18 -07:00
Ralph Castain
bd4a6fee22 Attempt to detect when we are direct-launched without the necessary PMI support, and thus are incorrectly identified as being "singleton". Advise the user on the required PMI(x) support and error out.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-29 15:26:53 -07:00
Ralph Castain
9178219e6b Deregister event handlers only on final call to finalize. Ensure we pass PMIx mca params
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-28 15:00:43 -07:00
Ralph Castain
c6c0258cd8 Need to signal -pgrp to get to all members of a process group.
Thanks to Ted Sussman for the report and patience in tracking it down

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-27 12:10:34 -07:00
Ralph Castain
8a4565874e Enable ORTE to continue running when a node fails - user takes responsibility for zombies. Minor cleanup to orte-clean
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-27 09:05:26 -07:00
Ralph Castain
6e2778ad3b Silence coverity warnings, correctly transfer the endpoint blob bytes
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-26 08:32:06 -07:00
Ralph Castain
9dad3f7cbf Add the modex code to combine all info from local providers into a single modex send, and then retrieve them on recv
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-25 07:24:29 -07:00
Ralph Castain
f4411c4393 Enable use of OFI fabrics for launch and other collective operations. Update the PMIx repo to the latest master to get the required support for the server to "push" modex info, and to retrieve all its own "modex" values for sending back to mpirun. Have mpirun cache them in its local modex hash as OFI goes point-to-point direct and doesn't route - so the remote daemons don't need a copy of this connection info.
Remove the opal_ignore from the RML/OFI component, but disable that component unless the user specifically requests it via the "rml_ofi_desired=1" MCA param. This will let us test compile in various environments without interfering with operations while we continue to debug

Fix an error when computing the number of infos during server init

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-23 19:57:21 -07:00
Ralph Castain
168e50bc13 Also need to avoid calling destruct on the opal_process_info struct after finalize
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-23 07:49:14 -07:00
Ralph Castain
3af9344764 Remove stale field
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-23 06:22:31 -07:00
Ralph Castain
38636f4f0a Ensure we properly cleanup on termination, including when terminating due to ctrl-c
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-21 06:33:37 -07:00
Ralph Castain
2aa286c9d0 Update orte-clean so it cleans legacy session directories as well as pmix artifacts
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-20 17:46:39 -07:00
Ralph Castain
501ba8faad Merge pull request #3704 from rhc54/topic/signal
Control distribution of signals to children vs grandchildren
2017-06-20 11:11:43 -07:00
Ralph Castain
952726c121 Update to latest PMIx master - equivalent to 2.0rc2. Update the thread support in the opal/pmix framework to protect the framework-level structures.
This now passes the loop test, and so we believe it resolves the random hangs in finalize.

Changes in PMIx master that are included here:

* Fixed a bug in the PMIx_Get logic
* Fixed self-notification procedure
* Made pmix_output functions thread safe
* Fixed a number of thread safety issues
* Updated configury to use 'uname -n' when hostname is unavailable

Work on cleaning up the event handler thread safety problem
Rarely used functions, but protect them anyway
Fix the last part of the intercomm problem
Ensure we don't cover any PMIx calls with the framework-level lock.
Protect against NULL argv comm_spawn

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-20 09:02:15 -07:00
Ralph Castain
206aec6083 By default, apply signals to all direct children _and_ any children they might have spawned (so long as they remain in the same process group). Provide an MCA param (odls_base_signal_direct_children_only) to indicate that the signal is to go _only_ to our direct children, and not be delivered to any children spawned by those procs.
Refs https://www.mail-archive.com/users@lists.open-mpi.org/msg31221.html

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-15 12:26:11 -07:00
Ralph Castain
8f09929469 Fix rank-file mapper launch by correctly setting up the remote map from the provided data
Put a simple protection for the case where procs fail while we are trying to deregister handlers

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-15 08:33:29 -07:00
Ralph Castain
8afa1433b8 Only set the "bound" flag if we wre actually bound
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-14 13:22:01 -07:00
Gilles Gouaillardet
72c7329462 configury: use 'uname -n' when 'hostname' is not available
the 'hostname' command might not be available on some platforms
such as Fedora Core 26, so mimick config/libtool.m4 and fallback
to 'uname -n' if needed

Refs. #3680

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-06-12 15:04:32 +09:00
Ralph Castain
1f0f03b45b Print a better error message when srun isn't found in the path. Ensure we don't segfault if -host specifies a node not included in the allocation
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-09 07:46:47 -07:00
Ralph Castain
00ba6a1be6 Protect against NULL topology
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-08 20:56:44 -07:00
Ralph Castain
7b39f19f60 Fix the backend mapper algorithm for comm_spawn. The front and back ends need to get the nodes into the job map in the same order so that the ranking algorithms will reach the same results
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-08 08:00:52 -07:00
Ralph Castain
81ab79f311 Ensure the orted doesn't go into an infinite loop during force-terminate
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-07 21:44:49 -07:00
Ralph Castain
7002535059 Merge pull request #3671 from rhc54/topic/ofi
We cannot use OFI to determine when daemons can finalize as we don't …
2017-06-07 15:08:56 -07:00
George Bosilca
484004b03d
simple_spawn should be independent of ORTE. 2017-06-07 17:51:46 -04:00
Ralph Castain
919d7fcf49 We cannot use OFI to determine when daemons can finalize as we don't see the "sockets" go away. So always use the OOB for the mgmt conduit - this provides the necessary termination signal AND ensures that IOF and other mgmt messages go solely across TCP.
Cleanup the way we look for matching OFI addresses by using the opal_net_samenetwork helper function. This now works for multi-network environments, but only using the socket provider

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-07 13:51:30 -07:00
Ralph Castain
bd1793ad17 Get the pmix/ext2x component to work. Fix a minor problem in the libevent external component.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-06 20:06:28 -07:00
Ralph Castain
93cf3c7203 Update OPAL and ORTE for thread safety
(I swear, if I look this over one more time, I'll puke)

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-06 12:30:57 -07:00
Ralph Castain
a28eaf914a Silence warnings when terminating
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-05 13:53:07 -07:00
Ralph Castain
8f526968c2 Do not hang if we cannot relay messages. Eliminate extra error log message
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-05 06:35:19 -07:00
Ralph Castain
51b4078b70 Merge pull request #3648 from rhc54/topic/ofi
Clean up the conduit open code so we return detectable errors when co…
2017-06-02 18:08:55 -07:00
Ralph Castain
e884cbf5f5 Even though the ofi component doesn't do any routing itself, the rest of the code base (e.g., grpcomm) needs to know what routing module this component is using. So set it to the "direct" module, and don't allow ofi to be used if that module isn't available.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-02 15:47:25 -07:00
Ralph Castain
ba9a6078c2 Add ability to select transport, and only compare the first one in the conduit list for a match. This lets you select which conduit to use for OFI - if you set "-mca rml_ofi_transports ethernet" you'll pickup the mgmt conduit. If you set "-mca rml_ofi_transports fabric", you'll get the coll conduit
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-02 14:31:23 -07:00
Jeff Squyres
af9565ec25 ess: add missing <signal.h> header
Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2017-06-02 14:11:40 -07:00
Ralph Castain
066d5eedce Shift the signal forwarding code to ess/base so it can be available to more than just the hnp component. Extend the slurm component to use it so that any signals given directly to the daemons by their slurmstepd get forwarded to their local clients
Check for NULL

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-02 10:59:14 -07:00
Ralph Castain
6b3bbd30c5 Clean up the conduit open code so we return detectable errors when conduit not opened.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-02 10:40:51 -07:00
Ralph Castain
2ab4f93f6a Instead of "forced_terminate" just quietly causing the daemon to disappear, let's at least attempt to let the user know where the problem occurred.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-06-02 08:28:16 -07:00
anandhi
6ddb487744 Cleaned up the send_msg(), moved checking for send to self into the send_nb()
and send_buffer_nb()
	modified:   orte/mca/rml/ofi/rml_ofi_send.c

Signed-off-by: Anandhi Jayakumar <anandhi.s.jayakumar@intel.com>
2017-06-01 17:50:54 -07:00
Ralph Castain
9d6b929894 Fix uninitialized variable. Set exit codes for failed launch so we get pretty error messages
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-31 07:38:37 -07:00
Ralph Castain
26e7515a5e Don't sweat the "sync" settings on file descriptors as those flags aren't apparently fully portable
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-30 20:37:26 -07:00
Ralph Castain
5d990b557c Reorg ordering so that bare executable names also are found
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-30 15:58:55 -07:00
Ralph Castain
321abfc8c6 Fix cwd and preload-binary options
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-30 14:07:22 -07:00
Ralph Castain
ad108ba44d Fix the DVM
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-30 11:42:42 -07:00
Ralph Castain
9a8811a246 Ensure that data from a job that was stored in ompi-server is purged once that job completes. Cleanup a few typos. Silence a Coverity warning
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-30 09:43:01 -07:00
Ralph Castain
e8759ca66b Add minor test to ORTE test suite
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-29 15:43:52 -07:00
Ralph Castain
f3ab326b4a Add some debug code for detecting leaking file descriptors. At the end of each job (and if MCA param is set), have each daemon compute the number of open fds and their characteristics and print a summary
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-29 11:25:20 -07:00
Ralph Castain
87201a80ff Silence coverity warnings
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-27 11:45:53 -07:00
Ralph Castain
9f60cd0fe7 Update the connect/accept support so we check to see if we have the proper infrastructure and RTE support, including whether we have ompi-server available if the connect/accept spans multiple applications. Print pretty help messages in all cases where we do not have support
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-27 10:47:08 -07:00
Ralph Castain
8c2a06477c Fix ompi-server operations
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-26 08:57:55 -07:00
Ralph Castain
657e701c65 Add debug verbosity to the orte data server and pmix pub/lookup functions
Start updating the various mappers to the new procedure. Remove the stale lama component as it is now very out-of-date. Bring round_robin and PPR online, and modify the mindist component (but cannot test/debug it).

Remove unneeded test

Fix memory corruption by re-initializing variable to NULL in loop

Resolve the race condition identified by @ggouaillardet by resetting the
mapped flag within the same event where it was set. There is no need to
retain the flag beyond that point as it isn't used again.

Add a new job attribute ORTE_JOB_FULLY_DESCRIBED to indicate that all the job information (including locations and binding) is included in the launch message. Thus, the backend daemons do not need to do any map computation for the job. Use this for the seq, rankfile, and mindist mappers until someone decides to update them.

Note that this will maintain functionality, but means that users of those three mappers will see large launch messages and less performant scaling than those using the other mappers.

Have the mindist module add procs to the job's proc array as it is a fully described module

Protect the hnp-not-in-allocation case

Per path suggested by Gilles - protect the HNP node when it gets added in the absence of any other allocation or hostfile

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-25 18:41:27 -07:00
Gilles Gouaillardet
22ab73cb1a Merge pull request #3471 from ggouaillardet/topic/execve_cmd
odls: fix handling of the orte fork agent
2017-05-15 15:07:39 +09:00
Ralph Castain
b527c40dae Remove debug
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-12 12:41:36 -07:00
Ralph Castain
23af6c9d02 Merge pull request #3519 from rhc54/topic/nolocal
Fix --nolocal
2017-05-12 09:57:52 -07:00
Ralph Castain
45bbd598c1 Fix --nolocal
Fix the --nolocal option by ensuring we always check/remove the HNP from the list of available nodes if the flag is set
Ensure that the HNP node is included as available when nothing else is given

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-12 09:03:26 -07:00
Ralph Castain
29e083bffd Fix total_slots_allocated computation
On unmanaged allocations, we need to update the total_slots_allocated once the daemons have been launched and "discovered" their topology

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-12 08:21:52 -07:00
Ralph Castain
9164afbb08 When a daemon force-terminates, we don't get the show_help message it was trying to send because the message is at a lower priority than the termination event. Resolve this by putting the oob in its own progress thread. Also, use only that one thread by default - if someone needs more progress threads in the OOB, they can use the MCA param to get them.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-11 06:52:55 -07:00
Ralph Castain
f47124e4d3 Finally fix the problem - the key was knowing there were more than 2 topologies involved, and that the HNP is not allocated. Give up on being cute and just search the darned list of topologies - there won't be that many, and if there are (so the scan takes awhile), then too bad.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-10 16:44:19 -07:00
Ralph Castain
55f4b825af Add verbose output to nidmap code for debugging as this is a new, and sometimes fragile, feature
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-10 12:40:02 -07:00
Ralph Castain
911961ee21 Sigh - remove debug
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-10 11:26:42 -07:00
Ralph Castain
2d93d15aa7 Merge pull request #3502 from rhc54/topic/cisco
Fix nidmap computation to deal with hetero nodes
2017-05-10 11:21:12 -07:00
Ralph Castain
50646b07ce Update the RML OFI by copying the updated files from @anandhis branch
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-10 09:17:06 -07:00
Ralph Castain
442e307a6e Fix the nidmap computation to deal with hetero nodes
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-10 08:43:28 -07:00
Ralph Castain
0afcb1a448 Update to support server self-notifications
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-08 10:04:50 -07:00
Ralph Castain
ef0e0171c9 Implement the changes required to support cross-library coordination. Update PMIx to support intra-process notifications and ensure that we always notify ourselves for events. Add a new ompi/interlib directory where cross-lib coordination code can go, and put the code to declare ourselves there (called from ompi_mpi_init.c).
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-08 10:04:50 -07:00
Ralph Castain
42d31454a5 Merge pull request #3469 from rhc54/topic/nidmap
Do not pass topologies during tree spawn of daemons as there is no wa…
2017-05-08 06:22:50 -07:00
Gilles Gouaillardet
e101f2b3f9 orte/util: fix vpids parsing in orte_util_nidmap_parse()
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-05-08 16:46:13 +09:00
Gilles Gouaillardet
16fc0996e6 odls: fix handling of the orte fork agent
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-05-08 16:07:13 +09:00
Ralph Castain
180809f2ef Do not pass topologies during tree spawn of daemons as there is no way the HNP can know the backend topologies at that point. Any needed topologies will be sent along with the launch_apps command
Do not pass param file MCA params if the user has requested that no param files be read - required when trying to avoid launch time penalties from large numbers of processes reading default param files. The daemon picks them up and passes them along anyway, so it isn't clear what value we gain from having them all read the defaults

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-07 21:14:43 -07:00
Ralph Castain
a143800bce Enable full operations under SLURM on Cray systems by co-locating a daemon with mpirun when mpirun is executing on a compute node in that environment. This allows local application procs to inherit their security credential from the daemon as it will have been launched via SLURM
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-06 19:08:50 -07:00
Ralph Castain
3a434d75d6 By default, use the system default snd/recv buffer sizes
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-05-05 09:58:05 -07:00
Gilles Gouaillardet
57b4144e57 orte: use compression for ORTE_DAEMON_REPORT_TOPOLOGY_CMD answer
Refs open-mpi/ompi#3414

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-04-27 17:21:59 +09:00
Gilles Gouaillardet
49cd40b2df compress the topology sent by the first orted
Refs open-mpi/ompi#3414

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-04-27 16:20:11 +09:00
Gilles Gouaillardet
c38ef3d46f oob/tcp: fix short writev handling in send_msg()
Fixes open-mpi/ompi#3414

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-04-27 10:24:38 +09:00
Howard Pritchard
462342d148 Merge pull request #3311 from hppritcha/topic/libfabric_moves_to_ofi
common/libfabric: move libfabric to ofi
2017-04-21 07:50:38 -06:00
Howard Pritchard
841192645b common/libfabric: move libfabric to ofi
This PR renames the common library for OFI libfabric from
libfabric to ofi.  There are a number of reasons this
is good to do:

1) its shorter and replaces 9 characters with three for
   function names for what may eventually be a fairly extensive interface
2) OFI is the term used for MTL and RML components that use
   the OFI libfabric interface
3) A planned OSC component will also use the OFI term.
4) Other HPC libraries that can use OFI libfabric tend to use
   the term "ofi" internally and also in their configure options
   relevant to OFI libfabric (i.e. MPICH/CH4, Intel MPI, Sandia SHMEM)

There seem to be comments in places in the Open MPI source
code that indicate that this common library will be going away.
Far from it as we will want to be able to share things like
AV objects between OMPI and possibly OSHMEM components that
use the OFI libfabric interface.

This PR also adds a synonym to the --with-libfabric(-libdir)
configury options: --with-ofi and with-ofi-libdir.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2017-04-20 13:07:16 -06:00
Nathaniel Graham
34b4aeb17f Merge pull request #3339 from nrgraham23/mpirun_help_improvements
Additional mpirun --help changes
2017-04-19 14:05:07 -06:00
Nathaniel Graham
01312b2f90 Additional mpirun --help changes
This commit recategorizes several mpirun arguments,
and moves the information for mpirun --help arguments
to the bottom of the general help message.  I also
added the OPAL_CMD_LINE_OTYPE field to two commands
that were missed initially because they were not
in the same area as the others.

Signed-off-by: Nathaniel Graham <ngraham@lanl.gov>
2017-04-19 11:43:45 -06:00
Howard Pritchard
3918b7a796 Merge pull request #3213 from hppritcha/topic/remove_loadleveer
orte/ras: remove loadleveler support
2017-04-18 09:18:54 -06:00
Ralph Castain
bb1aaa3286 Use the node index to compare to daemon vpid when identifying procs to bind
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-14 02:37:25 -07:00
Ralph Castain
67156556ce On behalf of Josh, ensure we flag that the child is no longer alive since we are killing it with SIGKILL
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-13 21:07:26 -07:00
Ralph Castain
fbf714d326 Merge pull request #3331 from artpol84/orte_cleanup/master
orte/pmix: Do not set orted exit status to one from proc abort
2017-04-13 15:14:14 -07:00
Ralph Castain
1585854335 Minor coverity cleanups
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-12 19:31:35 -07:00
Ralph Castain
0500cc1c66 Update the debugger launch code to reflect the new backend mapping method.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-12 13:31:18 -07:00
Artem Polyakov
4af7a0827f orte/pmix: Do not set orted exit status to one from proc abort
The fact that application proc called Abort (read failed) doesn't
mean that ORTE subsystem has failed - vice versa it does it's work
to gracefuly exit the whole application.

orted exiting with non-zero status creates a problem for at least
plm/slurm environments where orteds are launched via `srun` with
"--kill-on-bad-exit" flag. If one of orteds has exited with non-
zero status slurm will immediately kill all other orteds. As the
result we see a lot of leftover in the `/tmp` directory.

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-04-13 01:37:36 +07:00
Ralph Castain
539f71d0cc Merge pull request #3310 from marksantcroos/fix/alps_wdir
Bring ALPS ODLS up to par regarding wdir.
2017-04-11 17:30:04 -07:00
Mark Santcroos
27fa8aabd6 Hardcode basename to "orted" for error reporting.
Signed-off-by: Mark Santcroos <mark.santcroos@rutgers.edu>
2017-04-11 18:59:23 -04:00
Mark Santcroos
af3a6e1a29 Verify that the chdir(2) succeeds.
Signed-off-by: Mark Santcroos <mark.santcroos@rutgers.edu>
2017-04-12 00:37:37 +02:00
Ralph Castain
97e38e6d84 Move a free to a little later in case the verbose output needs it
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-11 11:21:12 -07:00
Ralph Castain
bb81f3b5db Always setup the attach fifo, even when we initially launch under a debugger so that the user can detach and reattach later
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-11 08:24:03 -07:00
Mark Santcroos
36ac54b5d8 Bring ALPS ODLS up to par regarding wdir.
Signed-off-by: Mark Santcroos <mark.santcroos@rutgers.edu>
2017-04-10 08:15:07 -04:00
Ralph Castain
95ae0d1df3 Cleanup timing macros for portability across compilers. Rename the --enable-timing configure option to be --enable-pmix-timing so it doesn't pickup external timing requests. Remove a stale function reference in PMIx so it can compile with timing enabled.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-10 12:56:38 +06:00
Artem Polyakov
45898a9c65 opal/timing: add the draft of env-based timings
This commit adds new timing feature that uses environment variables to
expose timing information. This allows easy access to this data (if
timing is enabled) from any other part of the application for the subsequent
postprocessing.
In particular this will be integrated with OMPI-level timing framework that
whill use MPI_Reduce functionality to provide more compact and easy-to use
information.

This commit also adds the example of usage of this framework by annotating
rte_init function. The result is not used anywhere for now. It will be
postprocessed in subsequent commits.

NOTE: that functionality is currently disabled untill it will be verified at runtime

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-04-07 21:16:22 +06:00
Artem Polyakov
88ed79ea25 opal/timing: remove old framework
Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-04-07 21:16:22 +06:00
Artem Polyakov
482d7c9322 opal/timing: remove RML timings
Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-04-07 21:16:21 +06:00
Artem Polyakov
79100de014 opal/timing: Remove oob tracing
Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-04-07 21:16:21 +06:00
Ralph Castain
b526bca56c Fix a potential segfault by avoiding NULL topologies prior to launching the VM.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-06 20:51:19 -07:00
Ralph Castain
b33b4607df Correctly identify the source of the event when notifying of abnormal termination by a process
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-06 20:50:38 -07:00
Ralph Castain
a29ca2bb0d Enable slurm operations on Cray with constraints
Cleanup some errors in the nidmap code that caused us to send unnecessary topologies

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-06 08:58:06 -07:00
Ralph Castain
db8943cedd Provide further (hopefully) helpful messages about the hotel size
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-05 04:27:32 -07:00
Ralph Castain
b7e9711f45 Resolve the direct modex race condition. The request hotel was running out of rooms, thereby returning an error upon checkin - and we had missed error_logging a couple of those places. Hence no error message and things just hung.
Output a (hopefully) helpful message when we timeout an operation

Thanks to Nathan for tracking it down.

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-04 21:32:44 -07:00
Ralph Castain
9a69b20d09 Merge pull request #3282 from rhc54/topic/direct
Set the PARENT vpid for direct routed module
2017-04-04 20:55:12 -07:00
Ralph Castain
40ca43e157 Set the PARENT vpid for direct routed module
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-04 19:03:28 -07:00
Ralph Castain
734b90aa6b Adjust the timeout for direct modex requests to reflect the size of the job. It can take several seconds to start all the procs, and we don't want to timeout due to differences in start times of the various procs
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-04 18:20:51 -07:00
Ralph Castain
9cb18b8348 Merge pull request #3280 from rhc54/topic/dvm
Fix the DVM by ensuring that all nodes, even those that didn't partic…
2017-04-04 18:15:33 -07:00
Ralph Castain
74863a0ea4 Fix the DVM by ensuring that all nodes, even those that didn't participate (i.e., didn't have any local children) in a job, clean up all resources associated with that job upon its completion. With the advent of backend distributed mapping, nodes that weren't part of the job would still allocate resources on other nodes - and then start from that point when mapping the next job. This change ensures that all daemons start from the same point each time.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-04 17:31:38 -07:00
Nathaniel Graham
7063f3021f Merge pull request #3231 from nrgraham23/revamp_mpirun_help
mpirun --help output revamp
2017-04-04 12:32:20 -06:00
Nathaniel Graham
19e5d15491 mpirun --help output revamp
This commit modifies the output from the mpirun --help
command.  The options have been split into groups, to
make the output smaller and more readable.  The groups
are: general, debug, output, input, mapping, ranking,
binding, devel, compatibility, launch, dvm, and
unsupported. There is also a special "full" command
that can be used to get the old behaviour of printing
out all of the options.  Unsupported options may only
be seen with this full output.

This commit also adds a special case for the help
argument.  It makes it possible for the user to
enter 0 or 1 arguments instead of having to always
enter an argument.  This defaults to printing out
the "general" help options so the user can then
see what help arguments there are.

Signed-off-by: Nathaniel Graham <ngraham@lanl.gov>
2017-04-04 10:59:32 -06:00
Ralph Castain
393c4536eb Remove stale code line
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-04 08:13:15 -07:00
Ralph Castain
92c996487c Update how we pass the node regex so we pass _all_ nodes, even those without daemons. This allows the backend daemons to form a complete picture of the allocation. Include info on which nodes have daemons on them, and populate that info on the backend as well.
Set the daemons' state to "running" and mark them as "alive" by default when constructing the nidmap

Get the DVM running again

Fix direct modex by eliminating race condition caused by releasing data while sending it

Up the size limit before compressing

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-04-03 19:25:15 -07:00
Ralph Castain
d782542c5c Merge pull request #3241 from rhc54/topic/cov
Silence coverity dead-code warning
2017-03-27 08:33:33 -07:00
Jeff Squyres
a333cf691a orte: minor tweaks to run-as-root message
Two updates:

1. Remove the "run as root" error message from orterun.c, because that
   functionality is now in orted_submit.c (although it is still
   required in orte-dvm.c -- so sync the message in orted_submit.c and
   orte-dvm.c to be identical).
2. Slightly tweak the text of the "run as root" error message to
   explicitly state that we (strongly) suggest running as a non-root
   user (and add a little whitespace).

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2017-03-27 04:50:21 -07:00
Ralph Castain
583dbe954c Silence coverity dead-code warning
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-26 20:36:43 -07:00
Ralph Castain
ecc8000136 Silence a flood of warnings when compiling with gcc on Cray
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-24 13:37:11 -06:00
Ralph Castain
35f817911e Fix coverity issues
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-24 08:09:46 -07:00
Ralph Castain
ea84a53faa Merge pull request #3218 from rhc54/topic/pmix2
Update to include the PMIx 2.0 APIs for monitoring and job control.
2017-03-21 20:11:10 -07:00
Ralph Castain
d645557fa0 Update to include the PMIx 2.0 APIs for monitoring and job control. Include required integration, but leave the monitors off for now. Move the sensor framework out of ORTE as it is being absorbed into PMIx
Fix typo and silence warnings

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-21 17:47:08 -07:00
Ralph Castain
10d401b6ec Merge pull request #3217 from rhc54/topic/wdirs
Resolve a race condition for setting our working directory when fork/exec'ing application procs.
2017-03-21 17:39:54 -07:00
Ralph Castain
74fd2c30af Cleanup alps odls module
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-21 17:41:11 -06:00
Ralph Castain
f8e1e3bed3 Ensure we properly exit with error if we cannot map the job
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-21 15:15:32 -07:00
Ralph Castain
75684dc260 Resolve a race condition for setting our working directory when fork/exec'ing application procs. We have to ensure we do it after the fork occurs since we want to use multiple threads in the odls. Otherwise, the different threads are bouncing the entire process around.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-21 13:54:03 -07:00
Howard Pritchard
9350aa5d71 orte/ras: remove loadleveler support
Remove loadleveler as it is obsolescent and is no longer supported.

Fixes #3167

We'll wait for final check of whether or not loadleveler even
compiles/functions before merging this.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2017-03-21 10:32:28 -06:00
Ralph Castain
dc85e7fde7 Provide a little more help on the error messages when an executable isn't found so we have some better idea where we were looking for it. Don't double-report such errors. Ensure the ORTE_ERROR_NAME doesn't get a NULL back for the string name of an error code as that might cause some systems to segfault
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-17 09:54:37 -07:00
Howard Pritchard
1709febdea Merge pull request #3166 from hppritcha/topic/swat_state_orted_comp_warning
ORTED: swat another compiler warning
2017-03-15 08:40:59 -06:00
Ralph Castain
96d7d10c1d Merge pull request #3170 from rhc54/topic/reg
Ensure the backend daemons know if we are in a managed allocation and if the HNP was included in the allocation
2017-03-14 12:48:09 -07:00
Ralph Castain
61a71e25ef Ensure the backend daemons know if we are in a managed allocation and if
the HNP was included in the allocation

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-14 10:06:43 -07:00
Howard Pritchard
5daaf7f3fd ORTED: swat another compiler warning
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2017-03-14 08:41:51 -06:00
Ralph Castain
52c9e631de Silence Coverity warnings
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-14 07:30:42 -07:00
Ralph Castain
b1a01d77ae Update the TM module to support regex passing
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-13 21:50:40 -07:00
Ralph Castain
bb574a41df Update launchers to get correct regex
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-13 11:21:44 -07:00
Ralph Castain
105fb152e1 Silence Coverity warnings
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-13 08:38:51 -07:00
Ralph Castain
b9f5cab710 Add a minor debug statement
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-12 18:15:44 -07:00
Gilles Gouaillardet
23d44a5284 sensor/base: initialize orte_sensor_base global variable
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-03-13 09:39:43 +09:00
Ralph Castain
6d6bc9bd07 Update alps module to new APIs
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-12 09:43:07 -07:00
Ralph Castain
70591bf4dc Enable parallel fork/exec of local procs by providing the option of multiple odls progress threads
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-11 20:48:04 -08:00
Ralph Castain
ab50665222 Restore sensor framework
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-11 17:46:32 -08:00
Ralph Castain
c6bc3ccb76 Sync to latest PMIx master and PMIx reference server
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-11 12:50:38 -08:00
Howard Pritchard
f8183f71f7 rmaps/base: swat compiler warning
gcc was complaining about variables possibly used uninitialized

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2017-03-09 14:30:06 -06:00
Ralph Castain
48fc339718 Create an alternative mapping method that pushes responsibility
onto the backend daemons. By default, let mpirun only pack the app_context
info and send that to the backend daemons where the mapping will
be done. This significantly reduces the computational time on mpirun as it isn't
running up/down the topology tree computing thousands of binding
locations, and it reduces the launch message to a very small number of
bytes.

When running -novm, fall back to the old way of doing things
where mpirun computes the entire map and binding, and then sends
the full info to the backend daemon.

Add a new cmd line option/mca param --fwd-mpirun-port that allows
mpirun to dynamically select a port, but then passes that back to
all the other daemons so they will use that port as a static port
for their own wireup. In this mode, we no longer "phone home" directly
to mpirun, but instead use the static port to wireup at daemon
start. We then use the routing tree to rollup the initial
launch report, and limit the number of open sockets on mpirun's node.

Update ras simulator to track the new nidmap code

Cleanup some bugs in the nidmap regex code, and enhance the error message for not enough slots to include the host on which the problem is found.

Update gadget platform file

Initialize the range count when starting a new range

Fix the no-np case in managed allocation

Ensure DVM node usage gets cleaned up after each job

Update scaling.pl script to use --fwd-mpirun-port. Pre-connect the daemon to its parent during launch while we are otherwise waiting for the daemon's children to send their "phone home" rollup messages

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-07 20:43:12 -08:00
Ralph Castain
83199979ba Remove the stale opal/sec framework
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-02 15:41:56 -08:00
Ralph Castain
c757c3d260 Fix double-free in rml/ofi shutdown
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-03-01 11:53:46 -08:00
Jeff Squyres
fec519a793 hwloc: rename opal/mca/hwloc/hwloc.h -> hwloc-internal.h
Per a prior commit, the presence of "hwloc.h" can cause ambiguity when
using --with-hwloc=external (i.e., whether to include
opal/mca/hwloc/hwloc.h or whether to include the system-installed
hwloc.h).

This commit:

1. Renames opal/mca/hwloc/hwloc.h to hwloc-internal.h.
2. Adds opal/mca/hwloc/autogen.options to tell autogen.pl to expect to
   find hwloc-internal.h (instead of hwloc.h) in opal/mca/hwloc.
3. s@opal/mca/hwloc/hwloc.h@opal/mca/hwloc/hwloc-internal.h@g in the
   rest of the code base.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2017-02-28 07:48:42 -08:00
Thomas Naughton
74f8c2ae30 orte-clean: fix bad username/uid usage, add orte-dvm
This fixes a mismatch between PS listing that returned
USERNAME but code was pruning based on UID.

This changes the OPAL_PS_FLAVOR_CHECK format to return
'uid' instead of 'user'.  (Note: Avoiding call to
getlogin_r() but assuming UID is uniform on system,
same assumption exists for session dir anyway.)

Note, still maintains behavior from man page for root
running orte-clean on node (kills all orteds).

Adds 'orte-dvm' to list of procnames that will be checked/killed.

Signed-off-by: Thomas Naughton <naughtont@ornl.gov>
2017-02-28 08:00:06 -05:00
Ralph Castain
f054261590 Merge pull request #3027 from naughtont3/tjn-envvar-dvmuri
dvm: Add envvar 'ORTE_HNP_DVM_URI' to schizo:ompi
2017-02-27 06:56:44 -08:00
Ralph Castain
efc3a98ea6 Merge pull request #3031 from rhc54/topic/ofi
Add CPPFLAGS to build of rml/ofi component.
2017-02-25 11:23:03 -08:00
Ralph Castain
9f8f7f3189 Add CPPFLAGS to build of rml/ofi component.
Fix finalize to ensure we only destruct the msg queue list once.
Update platform file

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-25 09:17:41 -08:00
Thomas Naughton
006be92df5 dvm: Add envvar 'ORTE_HNP_DVM_URI' to schizo:ompi
Add ability to pass DVM URI purely via environment
to simplify invocation from command-line (e.g., start dvm,
export URI, mpirun w/o needing to add `--hnp` arg).
If user passes both envvar *and* cmdline, the cmdline wins.

Signed-off-by: Thomas Naughton <naughtont@ornl.gov>
2017-02-24 16:55:32 -05:00
Thomas Naughton
beb5b250bf orte dvm: debug fix for DVM early quit
Ensure that job errors do not cause the DVM to fail unless the failed job is the DVM itself.

Refs #2987, with improvements from Ralph

Signed-off-by: Thomas Naughton <naughtont@ornl.gov>
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-23 10:17:53 -05:00
Ralph Castain
22c88f5ab5 Fix launch_id matching of -hosts
Need to check the entire value instead of just the last N digits. Otherwise, "-host 15" will match nid0015, nid0115, and any other launch id ending in 15

It appears strtol can return either a NULL or a zero-length string, so check for both cases

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-20 07:03:53 -08:00
Ralph Castain
af7e2cc33b Merge pull request #3004 from jjhursey/topic/oob-tcp-timeout
oob/tcp: Adjust TCP keepalive default values
2017-02-19 14:28:01 -08:00
Ralph Castain
bf0f274f06 Allow -host to look for the number of a host when running in a managed environment that supports launch id's. For example, this will allow someone who has been allocated a node of "nid0015" to refer to it with "-host 15".
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-17 18:35:54 -08:00
Ralph Castain
95bfc7b7c6 Merge pull request #2991 from jjhursey/fix/ibm/errmgr-help-msg
orte/errmgr: Improve help message on connection lost
2017-02-17 11:34:18 -08:00
Nathaniel Graham
91810173b3 Merge pull request #2993 from nrgraham23/man_page_update
Update the mpirun man page
2017-02-17 11:49:17 -07:00
Joshua Hursey
df0f8e95cd oob/tcp: Adjust TCP keepalive default values
Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2017-02-17 11:02:25 -06:00
Howard Pritchard
b272f87926 Merge pull request #2968 from hjelmn/pmix_cray
pmix/cray: performance improvements and cleanup
2017-02-16 11:41:59 -07:00
Ralph Castain
0ae873de5c Fix a bug where we failed to compute #procs for nperXXX directives, thus resulting in an incorrect default binding
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-15 16:32:24 -08:00
Nathaniel Graham
f9c05bdb03 Update the mpirun man page
This update should fix the mpirun man page so all
mpirun command line options are included, and
mpirun commands that have been removed are no
longer in the man page.  I also fixed some of
the file formatting, and bolding of command
parameters.

Signed-off-by: Nathaniel Graham <ngraham@lanl.gov>
2017-02-15 17:24:28 -07:00
Ralph Castain
223495325d Fix binding policy bug and support pe=1 modifier
Allow someone to specify the "pe=N" modifier to a mapping policy when N=1. This equates to just "bind-to core", but helps people who use a script to set the PE policy. Fix a bug where setting the binding policy left a lingering "if-supported" flag that shouldn't be there.

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-15 14:55:17 -08:00
Joshua Hursey
c452f68495 orte/errmgr: Improve help message on connection lost
Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2017-02-15 16:36:00 -05:00
Ralph Castain
68b53e2179 Fix comm_spawn by registering nspace info only when needed - either when we have local procs, or when job-level info is required by connecting jobs
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-14 19:47:56 -08:00
Ralph Castain
060cc09474 Revert "orte: Fix MPI_Spawn"
This reverts commit 9f7e2098ac.
2017-02-14 13:32:28 -08:00
Josh Hursey
a17b547430 Merge pull request #2957 from jjhursey/topic/ibm/rsh-sigint-fix
plm/rsh: Fix signal handling for rsh launcher
2017-02-14 15:29:00 -06:00
Nathan Hjelm
1df6bdd30e schizo/alps: set orte_bound_at_launch when launched with aprun
Set the orte_bound_at_launch MCA variable. This resolves a launch
performance bug when using aprun to launch Open MPI processes. If
this variable is not set it can take minutes longer to launch with
high ppn.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-02-14 11:13:48 -07:00
Joshua Hursey
843fcca03c plm/rsh: Fix signal handling for rsh launcher
* Similar to the other launchers (i.e., slurm, alps) we need to put the
   children in a separate process group to prevent SIGINT (from a CTRL-C)
   from being delivered to the whole process group and prematurely
   killing the rsh/ssh connections to the remote daemons.

Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2017-02-14 08:54:17 -06:00
Ralph Castain
dee2d8646d Fix plm/rsh runtime check
Fix the check for rsh/ssh so we allow the check for SGE and LoadLeveler to occur if user doesn't specify their own launch agent. Fix a Coverity warning

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-02-13 16:54:03 -08:00
Artem Polyakov
4018409b8c Merge pull request #2925 from artpol84/spawn/master
orte: Fix MPI_Spawn
2017-02-07 11:50:27 -08:00
Nathan Hjelm
2c1980ae39 Merge pull request #2923 from hjelmn/oob_fix
oob/tcp: cleanup peers before event bases
2017-02-06 09:34:10 -07:00
Nathan Hjelm
3c18f2f1d9 Merge pull request #2924 from hjelmn/ras_slurm
ras/slurm: fix compile error due to missing header
2017-02-06 09:33:58 -07:00
Gilles Gouaillardet
d4d4cab5bf orte/util: fix OPAL_HAVE_ZLIB usage
use #if instead of #ifdef

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-02-05 16:24:10 +01:00
Artem Polyakov
9f7e2098ac orte: Fix MPI_Spawn
Register namespace even if there is no node-local processes that
belongs to it. We need this for the MPI_Spawn case.

Addressing https://github.com/open-mpi/ompi/issues/2920.
Was introduced in be3ef77739.

Signed-off-by: Artem Polyakov <artpol84@gmail.com>
2017-02-04 12:07:00 +07:00