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

24638 Коммитов

Автор SHA1 Сообщение Дата
Ralph Castain
f7257a8310 Modify singularity support per patch from Greg Kurtzer 2016-03-09 07:52:11 -08:00
rhc54
007ca2ae08 Merge pull request #1442 from rhc54/topic/cleanup
Cleanup a debug statement. Plug a memory leak
2016-03-08 20:42:39 -08:00
Ralph Castain
af1444b6e1 Cleanup a debug statement. Plug a memory leak 2016-03-08 18:27:55 -08:00
Jeff Squyres
584b80147d usnic: set MCA_BTL_FLAGS_SINGLE_ADD_PROCS
The btl_recv.h:lookup_sender() function uses the hashed ORTE proc name
to determine the sender of the packet.  With add_procs_cutoff>0, the
usnic BTL may not have knowledge of all the senders.

Until the usNIC BTL can be adjusted to do something like the
openib/ugni BTLs (i.e., use opal_proc_for_name() to lookup unknown
sender proc names), set MCA_BTL_FLAGS_SINGLE_ADD_PROCS, which means
that ob1 will only all add_procs() once -- with all the procs in it.

Also in this commit, adapt the connectivity checker to not rely on
knowing all the senders (which is a bit easier than adapting the main
BTL send path): the receiving connectivity agent will simply echo back
the same PING message (which contains the sender's IP address+UDP
port) back to the sender without checking that it knows who the sender
is.  If the sender receives the echoed PING back on the expexted
interface, it will find a match in the pending pings list.  If the
sender receives the echoed PING back an unexpected interface, a match
will not be found, and the incoming PING message will be dropped.

Fixes open-mpi/ompi#1440
2016-03-08 17:41:42 -08:00
Jeff Squyres
4975fdcd5c usnic: allow connect(2) to fail temporarily
When connecting the connectivity checker client to its agent fails
with ECONNREFUSED, just delay a little and try again a few more times.
2016-03-08 15:35:34 -08:00
Nathan Hjelm
2ef2763f72 btl/openib: fix inconsistency in the default settings
This commit fixes an inconsistency between btl_openib_receive_queues,
btl_openib_max_send_size and btl_openib_eager_limit. Before this
commit if the ini file specified a set of default receive queues that
happen to not contain one large enough for the default max_send_size
of eager_limit users would see an error like:

   WARNING: The largest queue pair buffer size specified in the
   btl_openib_receive_queues MCA parameter is smaller than the maximum
   send size (i.e., the btl_openib_max_send_size MCA parameter), meaning
   that no queue is large enough to receive the largest possible incoming
   message fragment.  The OpenFabrics (openib) BTL will therefore be
   deactivated for this run.

     Local host: somehost
     Largest buffer size: 65536
     Maximum send fragment size: 131072

This commit adds code that detects the source of the max_send_size and
eager_limit values and sets either or both of them to the size
supported by the largest queue pair if both 1) the value is larger
than the largest queue pair size, and 2) the value was not set by the
user or a MCA configuration file.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2016-03-08 16:17:33 -07:00
Nathan Hjelm
85674b9dfc Merge pull request #1437 from hjelmn/mca_var_file_fix
opal/keval_parse: fix conditional ordering
2016-03-08 15:35:57 -07:00
Ralph Castain
f3ae30ff39 Fix singletons yet again... 2016-03-08 10:33:35 -08:00
rhc54
7b84207465 Merge pull request #1436 from rhc54/topic/names
Ensure the process name is positive when using direct launch
2016-03-08 10:21:46 -08:00
Nathan Hjelm
607be72de9 opal/keval_parse: fix conditional ordering
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2016-03-08 10:06:14 -07:00
Nathan Hjelm
d2f5fca82a configure: add a summary section at the end of configure output
This commit adds two m4 macros: OPAL_SUMMARY_ADD, OPAL_SUMMARY_PRINT.
OPAL_SUMMARY_ADD adds an item to a section in the summary. For example
OPAL_SUMMARY_ADD([[Transports]],[[Foo]],...,[yes]) will add the
following to the summary:

Transports
-----------------------
Foo: yes

With this commit two sections are added: Transports, Resource Managers.

The OPAL_SUMMARY_PRINT macro is called after AC_OUTPUT and prints out
some information about the build (version, projects, etc) and then
the summarys sections. It will additionally print a warning if
internal debugging is enabled.

Example output:

Open MPI configuration:
-----------------------
Version: 3.0.0 a1
Build Open Platform Abstration project: yes
Build Open Runtime project: yes
Build Open MPI project: yes
Build Open SHMEM project: no
MPI C++ bindings (deprecated): no
MPI Fortran bindings: mpif.h, use mpi, use mpi_f08
Debug build: yes

Transports
-----------------------
Cray uGNI (Gemini/Aries): no
Intel Omnipath (PSM2): no
KNEM Shared Memory: no
Linux CMA IPC: no
Mellanox MXM: no
Open UCX: no
OpenFabrics libfabric: no
OpenFabrics Verbs: no
portals4: no
QLogic Infinipath (PSM): no
tcp: yes
XPMEM Shared Memory: no

Resource Managers
-----------------------
Cray Alps: no
Grid Engine: no
LSF: no
Slurm: yes
Torque: yes

INTERNAL DEBUGGING IS ENABLED. DO NOT USE THIS BUILD FOR PERFORMANCE MEASUREMENTS!

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
2016-03-08 10:04:15 -07:00
Jeff Squyres
0c4b5f1ea9 Merge pull request #1426 from jsquyres/pr/fix-unescaped-braces-in-autogen
autogen: fix deprecated construct
2016-03-08 11:53:29 -05:00
Ralph Castain
bac6290b22 Ensure the process name is positive when using direct launch
Fixes #1425
2016-03-08 08:31:05 -08:00
Nathan Hjelm
f89cc3c2f1 Merge pull request #1433 from hjelmn/keyval_parse_fix
opal/util: fix bug in key value parser
2016-03-08 09:12:56 -07:00
Joshua Ladd
fc5a201030 Merge pull request #1434 from jladd-mlnx/topic/mxm_add_procs_fix
Fixing MXM Yalla and MTL add procs behavior. MXM cannot support dynam…
2016-03-07 21:32:19 -05:00
Joshua Ladd
4dffae2f88 Fixing MXM Yalla and MTL add procs behavior. MXM cannot support dynamic add procs, so propaget this info to the MTL and PML layers. 2016-03-08 01:46:24 +02:00
Nathan Hjelm
63bac9a4e0 opal/util: fix bug in key value parser
This commit fixes a bug in the opal key value parser that might cause
the filename parser to go past the beginning of the string.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2016-03-07 14:51:29 -07:00
rhc54
8ffde8d020 Merge pull request #1431 from rhc54/topic/orted
Do not push child processes into separate process groups so that any …
2016-03-06 20:08:17 -08:00
Ralph Castain
d72c1c72ff Do not push child processes into separate process groups so that any host RM can still "see" them, and ensure that any signal sent to the orted's themselves will be provided to all child processes. Forward all signals from mpirun to the child processes, removing the old MCA parameter required to turn that behavior "on". 2016-03-06 17:55:09 -08:00
rhc54
36a6a3b691 Merge pull request #1430 from rhc54/topic/sing
Update singularity support
2016-03-06 07:35:17 -08:00
Ralph Castain
4d0cc27eb7 Update the singularity support to match that of the latest singularity master. Remove the restriction on shared memory components by instructing singularity to not isolate the PID space. Add a new schizo API to allow setting up the original app_context. Ensure the container is installed prior to execution. 2016-03-05 21:47:42 -08:00
Aurelien Bouteiller
f55a06da00 Merge pull request #1416 from abouteiller/bugfix/recvcancelwiththreads
Fix a potential race condition in recv cancel
2016-03-05 02:14:32 -05:00
Ralph Castain
ce0a05d7d1 Minor cleanup - Singularity now has an internal check for installed, so we no longer need to do so. 2016-03-04 19:07:53 -08:00
Jeff Squyres
9c9bad3db5 autogen: fix deprecated construct
Newer versions of Perl warn that unescaped left braces in regexps are
deprecated.
2016-03-04 08:42:45 -05:00
Ralph Castain
b57a191ccc Update the external client to the new PMIx init/finalize signatures 2016-03-03 20:50:20 -08:00
igor-ivanov
5e9fdabdbb Merge pull request #1420 from ggouaillardet/topic/memory_linux_memalign_enum
memory/linux: make memory_linux_memalign an enum
2016-03-03 21:21:55 +04:00
Gilles Gouaillardet
80bdbfd9e7 add missing include file 2016-03-03 13:46:28 +09:00
rhc54
d38e2e6655 Merge pull request #1423 from rhc54/topic/suicide
Fix registration of error handlers thru the pmix120 component.
2016-03-02 17:43:06 -08:00
Gilles Gouaillardet
5c685e2332 memory/linux: make memory_linux_memalign an enum
Thanks Igor Ivanov for the review.
2016-03-03 08:38:46 +09:00
Ralph Castain
4a55fba414 Fix registration of error handlers thru the pmix120 component. A thread-shift operation was hanging on the sync_event_base, which made it dependent on someone calling opal_progress. Unfortunately, a process in "sleep" or spinning outside the MPI library won't do that, and so we never complete errhandler registration. 2016-03-02 15:01:01 -08:00
Nathan Hjelm
5a85a039fa Merge pull request #1421 from hjelmn/btl_vader_threads
btl/vader: various threading fixes
2016-03-02 16:53:57 -06:00
Nathan Hjelm
2a0b3a5700 btl/vader: various threading fixes
This commit fixes several threading bugs:

 - Add an additional lock to the btl_base_endpoint_t structure to lock
   the list of pending frags. This allows the progress function to
   attempt to send pending frags without needing to drop/reaquire the
   lock. This should provide a small improvement in performance and
   fixes a potential race between adding an removing items from the
   pending list.

 - Ensure fast boxes are only set up once by updating the send count
   using atomics when needed and do not set the fast box buffer
   pointer until the fast box is set up.

Closes open-mpi/ompi#1408

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2016-03-02 10:50:59 -07:00
Ralph Castain
f0680008d1 Add test file for singularity 2016-03-02 05:40:41 -08:00
Ralph Castain
06e811c5a6 Properly use the OPAL_MCA_PREFIX in orte_submit 2016-03-01 18:16:40 -08:00
Ralph Castain
1b81d90eaa Minor cleanups required for orte-dvm operation 2016-03-01 18:12:53 -08:00
Aurélien Bouteiller
892e1ed57e Fix a potential race condition in which a progress matching thread could match a request while we are cancelling it. 2016-03-01 16:43:45 -05:00
Ralph Castain
c9f7bb6751 Add the include file to all the schizo components 2016-03-01 13:18:23 -08:00
Ralph Castain
625083fe18 Add include file 2016-03-01 13:04:20 -08:00
rhc54
9df73568f4 Merge pull request #1411 from rhc54/topic/pmixdefault
Fix a number of issues, some of which have lingered for a long time
2016-03-01 11:08:28 -08:00
Ralph Castain
011403c04a Fix a number of issues, some of which have lingered for a long time:
* provide a more reliable way of determining that a process is a singleton by leveraging the schizo framework. Add new components for slurm, alps, and orte to detect when we are in a managed environment, and if we have been launched by mpirun or a native launcher. Set the correct envars to control ess and pmix selection in each case.

* change the relative priority of the pmix120 and pmix112 components to make pmix120 the default

* fix singleton comm-spawn by correctly setting the num_apps field of the orte_job_t created by the daemon - this fixes a segfault in register_nspace on newly created daemons

* ensure orterun doesn't propagate any ess or pmix directives in its environment

* Cleanup a few valgrind issues and memory leaks

* Fix a race condition that prevented the client from completing notification registrations (missing thread shift)

* Ensure the shizo/alps component detects launch by mpirun
2016-03-01 06:53:00 -08:00
Gilles Gouaillardet
67e45028df Merge pull request #1414 from jsquyres/pr/egrep-for-examples-makefile
examples: update ompi_info bindings checks
2016-03-01 11:55:49 +09:00
Gilles Gouaillardet
8aff67c399 topo/base: correctly support MPI_UNWEIGHTED in mca_topo_base_dist_graph_neighbors()
Thanks Jun Kudo for the bug report.
2016-03-01 10:28:28 +09:00
Gilles Gouaillardet
e5d6b97db4 opal: fix pragma for GCC 6 and later
GCC 6 and later should ignore -Wpedantic instead of -pedantic
2016-02-29 13:56:22 +09:00
Jeff Squyres
677a31bc9f examples: update ompi_info bindings checks
Use "-q" option to grep/egrep to suppress output (we only need the
exit status).  Also, use egrep for the "use mpi" check, because some
versions of ompi_info say 'bindings:use_mpi:yes' and others say
'bindings:use_mpi:"yes' (i.e., with the double quote).  This regexp
will work with both versions.
2016-02-28 17:19:54 -08:00
Jeff Squyres
20fade1345 examples: fix check for Fortran "use mpi" bindings
The output from "ompi_info --parsable" for the Fortran "use mpi"
bindings apparently has changed over time.  It is now:

   "yes (full: ignore TKR)"
or "yes (limited: overloading)"

(including the quotes)

So update the test in examples/Makefile to also look for the quote.
2016-02-28 16:30:09 -08:00
rhc54
78a1fd5d54 Merge pull request #1413 from rhc54/topic/iof
Fix a segfault that can occur when very short-lived, non-ORTE procs are run
2016-02-28 13:55:15 -08:00
Ralph Castain
263b0c95a8 Fix a segfault that can occur when very short-lived, non-ORTE procs are run 2016-02-28 12:30:20 -08:00
Jeff Squyres
89f225ea7f Merge pull request #1410 from jsquyres/pr/cxx11-has-jumped-the-shark
cxx: "rank" is now a function in C++11
2016-02-27 09:37:13 -05:00
Jeff Squyres
89d0a033b7 cxx: "rank" is now a function in C++11
Use "myrank" instead (I tried using ::rank, but had varied
success... so I just renamed the variable).
2016-02-25 15:56:08 -06:00
rhc54
6ae75f007a Merge pull request #1409 from rhc54/topic/singleton
Provide an option to allow isolated singletons
2016-02-25 15:36:43 -06:00