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

1073 Коммитов

Автор SHA1 Сообщение Дата
Gilles Gouaillardet
d440ee80a4 oshmem configury: fix a test
Fix a test in r32590

Refs trac:4868

This commit was SVN r32594.

The following SVN revision numbers were found above:
  r32590 --> open-mpi/ompi@36b315db2d

The following Trac tickets were found above:
  Ticket 4868 --> https://svn.open-mpi.org/trac/ompi/ticket/4868
2014-08-25 06:57:30 +00:00
Gilles Gouaillardet
df8baf685f oshmem configury: fix a typo
Fix a typo in r32590

Refs trac:4868

This commit was SVN r32593.

The following SVN revision numbers were found above:
  r32590 --> open-mpi/ompi@36b315db2d

The following Trac tickets were found above:
  Ticket 4868 --> https://svn.open-mpi.org/trac/ompi/ticket/4868
2014-08-25 04:41:56 +00:00
Jeff Squyres
36b315db2d oshmem configury: tighten up the pshmem checks
Make the checks for macro weak symbols be equivalent to the checks for
weak symbols.

Also fix up several OSHMEM configure checks:

* fix an errant AC_MSG_REQUEST
* don't check for profiling ability during configure options checks.
  Instead, defer it to later, when we have weak symbol check results.
* don't directly call _FOO macros from the top level
* make setting up OSHMEM profiling similar to MPI profiling: create
  OSHMEM_SETUP_PROFILING macro
* cache the results of checking for macro weak symbols (for parity
  with the weak symbol check -- although we should really
  revisit/audit the whole cache-checking scheme throughout all m4
  code; it may well be inconsistently used)
* add some more [] m4 quoting, even in the original C weak symbols test
* style: fix some whitespace errors

Refs trac:4868

This commit was SVN r32590.

The following Trac tickets were found above:
  Ticket 4868 --> https://svn.open-mpi.org/trac/ompi/ticket/4868
2014-08-23 10:50:14 +00:00
Ralph Castain
aec5cd08bd Per the PMIx RFC:
WHAT:    Merge the PMIx branch into the devel repo, creating a new
               OPAL “lmix” framework to abstract PMI support for all RTEs.
               Replace the ORTE daemon-level collectives with a new PMIx
               server and update the ORTE grpcomm framework to support
               server-to-server collectives

WHY:      We’ve had problems dealing with variations in PMI implementations,
               and need to extend the existing PMI definitions to meet exascale
               requirements.

WHEN:   Mon, Aug 25

WHERE:  https://github.com/rhc54/ompi-svn-mirror.git

Several community members have been working on a refactoring of the current PMI support within OMPI. Although the APIs are common, Slurm and Cray implement a different range of capabilities, and package them differently. For example, Cray provides an integrated PMI-1/2 library, while Slurm separates the two and requires the user to specify the one to be used at runtime. In addition, several bugs in the Slurm implementations have caused problems requiring extra coding.

All this has led to a slew of #if’s in the PMI code and bugs when the corner-case logic for one implementation accidentally traps the other. Extending this support to other implementations would have increased this complexity to an unacceptable level.

Accordingly, we have:

* created a new OPAL “pmix” framework to abstract the PMI support, with separate components for Cray, Slurm PMI-1, and Slurm PMI-2 implementations.

* Replaced the current ORTE grpcomm daemon-based collective operation with an integrated PMIx server, and updated the grpcomm APIs to provide more flexible, multi-algorithm support for collective operations. At this time, only the xcast and allgather operations are supported.

* Replaced the current global collective id with a signature based on the names of the participating procs. The allows an unlimited number of collectives to be executed by any group of processes, subject to the requirement that only one collective can be active at a time for a unique combination of procs. Note that a proc can be involved in any number of simultaneous collectives - it is the specific combination of procs that is subject to the constraint

* removed the prior OMPI/OPAL modex code

* added new macros for executing modex send/recv to simplify use of the new APIs. The send macros allow the caller to specify whether or not the BTL supports async modex operations - if so, then the non-blocking “fence” operation is used, if the active PMIx component supports it. Otherwise, the default is a full blocking modex exchange as we currently perform.

* retained the current flag that directs us to use a blocking fence operation, but only to retrieve data upon demand

This commit was SVN r32570.
2014-08-21 18:56:47 +00:00
Gilles Gouaillardet
2df0ede613 configury: disable pshmem if buggy compiler is detected
PGI compilers older that 2013 have a buggy preprocessor
that does not support pragma defined in a macro called
itself called from an other macro

cmr=v1.8.2:reviewer=jsquyres

This commit was SVN r32551.
2014-08-19 05:52:34 +00:00
Jeff Squyres
7a8c3ed0d1 opal_config_asm.m4: fix typo in output message
Thanks to Paul Hargrove for spotting the typo.

cmr=v1.8.3:reviewer=rhc

This commit was SVN r32505.
2014-08-11 13:28:17 +00:00
Gilles Gouaillardet
0afed999cd silence warnings
on solaris 10 with gcc 3.4.3, no link flags is required
to use pthreads. First try to link without any flags.

This commit was SVN r32501.
2014-08-11 07:41:54 +00:00
Jeff Squyres
a741406ad6 opal_search_libs.m4: improvements from Dave Goodell's review
Unfortunately, I didn't see Dave's review until CMR #4841 went in.
Oops.

This commit is a handful of minor m4 improvements to that original
r32447 commit.  It can go to v1.8.3, just to minimize drift between
trunk and v1.8.

Reviewed by Dave Goodell.

cmr=v1.8.3:reviewer=ompi-rm1.8

This commit was SVN r32477.

The following SVN revision numbers were found above:
  r32447 --> open-mpi/ompi@c6d9bf906e
2014-08-08 22:22:03 +00:00
Jeff Squyres
c6d9bf906e configury: ensure wrapper static LIBS is filled properly
In core library portions of the configury (e.g., top-level
configure.ac itself), we were calling AC_CHECK_LIB and
OPAL_CHECK_FUNC_LIB to check for various libraries.

'''SIDENOTE:''' It turns out that modern Autoconf has AC_SEARCH_LIBS,
which does just about exactly what OPAL_CHECK_FUNC_LIB does.  So this
commit effectively replaces OPAL_CHECK_FUNC_LIB with AC_SEARCH_LIBS.

However, we never bothered to add these found libraries to the wrapper
compiler list of libraries used for static linking (doh!).  We've been
getting lucky for quite a while that components were adding the same
libraries to their wrapper compiler LIBS list.  

This is problematic, however, if we don't build some of these
components.  For example, Paul Hargrove noticed that if he configured
with --disable-shared --enable-static --disable-io-romio, ROMIO was no
longer adding some libraries to the wrapper LIBS list -- libraries
that just happened to also be needed by core OPAL/ORTE/OMPI layers.

The solution is not to use AC_CHECK_LIB or OPAL_CHECK_FUNC_LIB, but
use a pair of new macros:

 * OPAL_SEARCH_LIBS_CORE: a wrapper around AC_SEARCH_LIBS.  If we add
   something to $LIBS, then also add it to the wrapper list of static
   libraries.  This is the main piece of functionality that was
   wrong/missing.
 * OPAL_SEARCH_LIBS_COMPONENT: similar to OPAL_SEARCH_LIBS_CORE, but
   instead of directly adding it to the wrapper list of static
   libaries, add it to <framework>_<component>_LIBS (which eventually
   gets slurped up into the wrapper list of static libraries.  See the
   lengthy comment in config/opal_setup_wrappers.m4 near the beginning
   of OPAL_SETUP_WRAPPER_INIT() for a more detailed explanation).
   Most components did this correctly already, but one or two weren't
   right, so I implemented this second macro quite similar to the
   first and put it everywhere we already used AC_SEARCH_LIBS or
   OPAL_CHECK_FUNC_LIB.

This needs to soak for a day or two on the trunk before moving to the
v1.8 branch.

Refs trac:4834

cmr=v1.8.2:reviewer=ggouaillardet

This commit was SVN r32447.

The following Trac tickets were found above:
  Ticket 4834 --> https://svn.open-mpi.org/trac/ompi/ticket/4834
2014-08-07 23:54:45 +00:00
Howard Pritchard
52362876b6 add pkg.m4 for PKG_CHK_MODULES, etc. macro
This commit was SVN r32435.
2014-08-05 21:43:58 +00:00
Ralph Castain
adeecad274 Clarify when oshmem is enabled/disabled. Thanks to Paul Hargrove for the language
cmr=v1.8.3:reviewer=jsquyres

This commit was SVN r32431.
2014-08-05 14:52:18 +00:00
Ralph Castain
1e93e85403 Cleanup some autoconf messages - thanks to Paul Hargrove for noting them
cmr=v1.8.3:reviewer=jsquyres

This commit was SVN r32429.
2014-08-05 14:48:42 +00:00
Ralph Castain
747c585c39 Move the OPAL_ENABLE_PROGRESS_THREADS definition to opal_configure_options.m4
This commit was SVN r32405.
2014-08-01 18:11:36 +00:00
Ralph Castain
4ba599a3ad And one more...
This commit was SVN r32404.
2014-08-01 17:12:35 +00:00
Ralph Castain
9633c917a4 Rename the .m4 files to reflect the move to opal so non-MPI projects properly see them
This commit was SVN r32403.
2014-08-01 17:03:34 +00:00
Jeff Squyres
295016c869 fortran: Revert r32354
r32354 breaks gfortran if you --enable-mpi-fortran, because it assumes
the value "all", when then errors out of configure because gfortran
can't currently build the mpi_f08 bindings.

Need to think about what the Right solution is here...

This commit was SVN r32369.

The following SVN revision numbers were found above:
  r32354 --> open-mpi/ompi@6a44eb6c82
2014-07-30 22:48:49 +00:00
Gilles Gouaillardet
6a44eb6c82 Fortran: abort configure is requested binding cannot be built
as pointed by Paul Hargrove, abort configure is the fortran
bindings explicitly requested with --enable-mpi-fortran=...
cannot be built

cmr=v1.8.2:reviewer=jsquyres

This commit was SVN r32354.
2014-07-30 07:14:56 +00:00
Ralph Castain
552c9ca5a0 George did the work and deserves all the credit for it. Ralph did the merge, and deserves whatever blame results from errors in it :-)
WHAT:    Open our low-level communication infrastructure by moving all necessary components (btl/rcache/allocator/mpool) down in OPAL

All the components required for inter-process communications are currently deeply integrated in the OMPI layer. Several groups/institutions have express interest in having a more generic communication infrastructure, without all the OMPI layer dependencies.  This communication layer should be made available at a different software level, available to all layers in the Open MPI software stack. As an example, our ORTE layer could replace the current OOB and instead use the BTL directly, gaining access to more reactive network interfaces than TCP.  Similarly, external software libraries could take advantage of our highly optimized AM (active message) communication layer for their own purpose.  UTK with support from Sandia, developped a version of Open MPI where the entire communication infrastucture has been moved down to OPAL (btl/rcache/allocator/mpool). Most of the moved components have been updated to match the new schema, with few exceptions (mainly BTLs where I have no way of compiling/testing them). Thus, the completion of this RFC is tied to being able to completing this move for all BTLs. For this we need help from the rest of the Open MPI community, especially those supporting some of the BTLs.  A non-exhaustive list of BTLs that qualify here is: mx, portals4, scif, udapl, ugni, usnic.

This commit was SVN r32317.
2014-07-26 00:47:28 +00:00
Jeff Squyres
4da3c85b54 fortran: revert Absoft-based fixes
Rever r32246, r32254, and 32255 -- they were fixing side-effects of
the real bug.  Real fix coming after this one.

This commit was SVN r32286.

The following SVN revision numbers were found above:
  r32246 --> open-mpi/ompi@08d2a1a48d
  r32254 --> open-mpi/ompi@232d4dbb7b
2014-07-22 21:49:22 +00:00
Gilles Gouaillardet
08d2a1a48d fortran: fix compile issue with ABSoft compilers
ABSoft compilers cannot compile a fortran subroutine
with the BIND(C, NAME="name") modifier *and* argument(s)
with the OPTIONAL modifier

This patch detects this unsupported feature and use
adhoc wrappers if it is missing

cmr=v1.8.2:reviewer=jsquyres

This commit was SVN r32246.
2014-07-15 10:41:11 +00:00
Ralph Castain
2cea8a279a Remove stale orcm reference
This commit was SVN r32221.
2014-07-11 19:00:28 +00:00
Jeff Squyres
0089ac20af Fortran: put type(c_ptr) interfaces in a separate file in the TKR mpi module
Older gfortran compilers (e.g., the gfortran that ships in RHEL5) do
not support ISO_C_BINDING, and therefore do not support the
TYPE(C_PTR) type.  As such, they cannot support the overloaded
interfaces for MPI_WIN_ALLOCATE_SHARED and MPI_SHARED_QUERY that are
mandated in MPI-3.

So we separate those interfaces out into a separate .F90 file that is
#include'd in the tkr mpi.F90 file.  In this separate .F90 file, we
use an #if to determine whether the compiler supports ISO_C_BINDING or
not.

Also re-jiggered the order of testing in ompi_setup_mpi_fortran.m4: we
now need to test whether the compiler supports ISO_C_BINDING even when
we're only building the mpi module (not strictly when we're building
the mpi_f08 module).

Finally, tweaked the use-mpi-tkr/Makefile.am to:

* Add some proper dependencies for mpi.F90
* Allow the general AM compilation to be used instead of supplying a
  specific rule for compiling mpi.F90

cmr=v1.8.2:ticket=trac:4736

This commit was SVN r32204.

The following Trac tickets were found above:
  Ticket 4736 --> https://svn.open-mpi.org/trac/ompi/ticket/4736
2014-07-10 19:10:03 +00:00
Mike Dubman
1b51e472ac MXM: update min required version for mxm as 2.1+
This commit was SVN r32193.
2014-07-10 13:16:57 +00:00
Ralph Castain
f3cb124e50 Revert r32082 and r32070 - the developer's conference has decided to go a different direction on the threaded progress effort. This will involve some degree of prototyping to understand the tradeoffs prior to making a final design decision, and so we'll hold off on the final change until that is completed.
This commit was SVN r32089.

The following SVN revision numbers were found above:
  r32070 --> open-mpi/ompi@12d92d0c22
  r32082 --> open-mpi/ompi@aa6438ef7a
2014-06-25 20:43:28 +00:00
Ralph Castain
12d92d0c22 Per the OMPI developer conference, remove the last vestiges of OMPI_USE_PROGRESS_THREADS
This commit was SVN r32070.
2014-06-24 17:05:11 +00:00
Jeff Squyres
f33cc84ac6 Fortran: disable the descriptor-based mpi_f08 prototype
It will come back someday.

cmr=v1.8.2:ticket=trac:4736

This commit was SVN r32044.

The following Trac tickets were found above:
  Ticket 4736 --> https://svn.open-mpi.org/trac/ompi/ticket/4736
2014-06-19 13:39:56 +00:00
Jeff Squyres
9ae8b44a44 ompi_fortran_check_bind_c.m4: Fix comment in existing .m4 file
cmr=v1.8.2:ticket=trac:4736

This commit was SVN r32043.

The following Trac tickets were found above:
  Ticket 4736 --> https://svn.open-mpi.org/trac/ompi/ticket/4736
2014-06-19 13:39:11 +00:00
Jeff Squyres
555073630e Fortran: remove the scripts from the use-mpi-tkr implementation
This is part one of several Fortran improvements and fixes.  This
first part removes the now-defunct scripts that are used to generate
the .f90 files in the use-mpi-tkr implementation, and just commits the
output from those scripts.  This makes long-term maintenance of the
use-mpi-tkr implementation simpler.

cmr=v1.8.2:reviewer=jsquyres:subject=Various Fortran fixes/improvements

This commit was SVN r32040.
2014-06-19 13:35:30 +00:00
Oscar Vega-Gisbert
cdf0bcc6d1 Java - define macro OSHMEM_SETUP_JAVA_BINDINGS
This commit was SVN r31983.
2014-06-11 21:49:31 +00:00
Ralph Castain
6f1320d5cd Cleanup the mess from r31810 - no way that could compile or avoid breaking the trunk. The Makefile's had to be added to oshmem_config_files.m4, and the Makefile.am's had not been updated to the new srcdir/builddir conventions. Also add svn:ignores
This commit was SVN r31811.

The following SVN revision numbers were found above:
  r31810 --> open-mpi/ompi@83bdebbf81
2014-05-19 04:14:54 +00:00
Ralph Castain
11faab1091 The final step of the RFC: convert the <foo>libdir and friends to fit their respective code areas, and equate them all at the top. Note that we can't entirely separate things as the opal_install_dirs framework can't handle separated locations for the various trees.
This commit was SVN r31679.
2014-05-08 02:01:35 +00:00
Ralph Castain
a8e2d6c3a6 The bulk of the remaining renaming changes, in one final glorious "blob". Thanks to Jeff for some help chasing down a few spots. Per chat with Jeff, we decided to cleanup a few things that were historical in nature:
top_ompi_srcdir  ->  OMPI_TOP_SRCDIR
top_ompi_builddir -> OMPI_TOP_BUILDDIR

We also split the srcdir/builddir flags according to their local tree (e.g., OPAL_TOP_SRCDIR), and tied them all together in configure.ac. Renamed ompi_ignore and ompi_unignore to be opal_<foo> as these are agnostic markers.

Only thing left is ompilibdir being treated similar to what we dif for srcdir/builddir. Coming soon.

This commit was SVN r31678.
2014-05-07 21:48:53 +00:00
Ralph Castain
2dbeb671d0 Fix typo impacting assembly support that came in during renaming
This commit was SVN r31676.
2014-05-07 16:22:11 +00:00
Ralph Castain
70ebf2efea One more level of subsubsubsubsubtitle...
This commit was SVN r31675.
2014-05-07 15:51:20 +00:00
Ralph Castain
74983c9002 Continue the renaming, fix ompi_show_subsubtitle
This commit was SVN r31674.
2014-05-07 15:45:47 +00:00
Ralph Castain
c6d2ff368d Per RFC, continue with renaming
This commit was SVN r31671.
2014-05-07 04:51:45 +00:00
Ralph Castain
a2bf976029 Per RFC, another round of changes
This commit was SVN r31669.
2014-05-07 03:16:59 +00:00
Ralph Castain
f4c31cae9b Per RFC, another round in the renaming game - nearly complete
This commit was SVN r31668.
2014-05-07 03:01:47 +00:00
Ralph Castain
a54dbb17d2 Per RFC, continue renaming project
This commit was SVN r31667.
2014-05-07 01:00:06 +00:00
Ralph Castain
4501285c26 Per RFC, continue the naming conversion
This commit was SVN r31665.
2014-05-06 23:34:33 +00:00
Ralph Castain
839c0eb55c Per RFC, continue the renaming effort
This commit was SVN r31664.
2014-05-06 21:16:29 +00:00
Ralph Castain
fdfb331e13 Per RFC, continue the renaming process
This commit was SVN r31663.
2014-05-06 20:53:55 +00:00
Ralph Castain
883fce4cba Per RFC, continue the build system renaming
This commit was SVN r31662.
2014-05-06 20:30:37 +00:00
Ralph Castain
8a0d6b4aa6 Per RFC, continue the joyous fun of the renaming exercise
This commit was SVN r31661.
2014-05-06 20:13:37 +00:00
Ralph Castain
bdf9aace69 Per RFC, continue with build system renaming
This commit was SVN r31658.
2014-05-06 19:37:10 +00:00
Ralph Castain
4f4d9dcd28 Per RFC, continue with build system renaming
This commit was SVN r31657.
2014-05-06 19:22:27 +00:00
Ralph Castain
deb0c6bb9a Per RFC, continue cleanup with minor changes to one file
This commit was SVN r31656.
2014-05-06 18:37:52 +00:00
Ralph Castain
3fd7cee70c Per RFC, continue cleanup with minor change to one file
This commit was SVN r31655.
2014-05-06 18:30:55 +00:00
Ralph Castain
9b88ec7cde Per RFC, continue cleaning up the build system
OMPI_C_WEAK_SYMBOLS  ->  OPAL_C_WEAK_SYMBOLS
  ompi_cv_c_weak_symbols  ->  opal_cv_c_weak_symbols

This commit was SVN r31654.
2014-05-06 18:03:08 +00:00
Jeff Squyres
9d19dec80a [ompi|opal]_setup_cxx.m4: ensure to use the C++ compiler (!)
We didn't AC_LANG_PUSH(C++) before checking to see if the compiler
supports -finline-functions, meaning that configure used the C
compiler for these checkes, not the C++ compiler.

Due to #2999, we have to fix both opal_setup_cxx.m4 and
ompi_setup_cxx.m4.

cmr=v1.8.2:reviewer=rolfv

This commit was SVN r31651.
2014-05-06 17:42:51 +00:00
Ralph Castain
ab83b9425a Complete the cleanup of this file
This commit was SVN r31650.
2014-05-06 16:57:34 +00:00
Ralph Castain
aaf2969e9b Fix comment and add copyright
This commit was SVN r31649.
2014-05-06 16:51:30 +00:00
Ralph Castain
002cd34013 Per RFC, continue the build system renaming
OMPI_C_GET_ALIGNMENT  -> OPAL_C_GET_ALIGNMENT
   ompi_cv_c_align_  ->  opal_cv_c_align_

This commit was SVN r31648.
2014-05-06 16:50:27 +00:00
Ralph Castain
2b7a3ae601 Per RFC, continue pecking away at the build system renaming
OMPI_CONFIG_SUBDIR  -> OPAL_CONFIG_SUBDIR
   OMPI_CONFIG_SUBDIR_ARGS  ->  OPAL_CONFIG_SUBDIR_ARGS

This commit was SVN r31647.
2014-05-06 16:27:38 +00:00
Ralph Castain
390d29733f Per RFC, continue renaming of build tools:
ompi_c_vendor  ->  opal_c_vendor
ompi_cv_c_compiler_vendor  ->  opal_cv_c_compiler_vendor

This commit was SVN r31646.
2014-05-06 15:01:34 +00:00
Ralph Castain
f60aadd989 Sigh - forgot to change name in Makefile.am
This commit was SVN r31645.
2014-05-06 14:35:14 +00:00
Ralph Castain
9d320c55dd Missed one file to be renamed
This commit was SVN r31642.
2014-05-06 03:47:18 +00:00
Ralph Castain
fdd35f301a Per RFC, next major step in cleaning up the build system naming patterns: rename files containing things used by the OPAL layer to be opal_foo.m4 instead of ompi_foo.m4. The ALPS plm is currently checking UGNI, so shift the check_ugni.m4 to orte for now.
This commit was SVN r31641.
2014-05-06 03:20:16 +00:00
Ralph Castain
29609577d5 Per RFC:
ompi_show_title  -> opal_show_title
    ompi_show_subtitle -> opal_show_subtitle

This commit was SVN r31638.
2014-05-05 22:35:23 +00:00
Ralph Castain
a1ae20fddb Per RFC: OMPI_CFLAGS_BEFORE_PICKY -> OPAL_CFLAGS_BEFORE_PICKY
- This line, and those below, will be ignored--

M    opal/mca/event/libevent2021/configure.m4
M    opal/mca/hwloc/hwloc172/configure.m4
M    configure.ac
M    config/opal_setup_libltdl.m4
M    config/opal_check_visibility.m4
M    config/opal_setup_cc.m4

This commit was SVN r31637.
2014-05-05 22:22:33 +00:00
Ralph Castain
425d4b9e81 Per RFC: OMPI_ENSURE_CONTAINS_OPTFLAGS -> OPAL_ENSURE_CONTAINS_OPTFLAGS
This commit was SVN r31636.
2014-05-05 22:02:39 +00:00
Ralph Castain
4def94900a Per RFC: OMPI_INSTALL_BINARIES -> OPAL_INSTALL_BINARIES
This commit was SVN r31634.
2014-05-05 21:43:05 +00:00
Jeff Squyres
08cf16e14f ompi_setup_mpi_fortran.m4: disable mpi_f08 if PROCEDURE isn't supported
Per https://svn.open-mpi.org/trac/ompi/ticket/4590, if the Fortran
compiler doesn't support PROCEDURE in the way we want/need, disable
the mpi_f08 module.

Refs trac:4590

This commit was SVN r31587.

The following Trac tickets were found above:
  Ticket 4590 --> https://svn.open-mpi.org/trac/ompi/ticket/4590
2014-05-01 18:17:52 +00:00
Ralph Castain
e20dae536c Last step under current RFC: OMPI_CHECK_WITHDIR -> OPAL_CHECK_WITHDIR
This commit was SVN r31585.
2014-05-01 15:38:07 +00:00
Ralph Castain
2749231eb5 Next step in RFC: OMPI_CHECK_COMPILER_WORKS -> OPAL_CHECK_COMPILER_WORKS
This commit was SVN r31584.
2014-05-01 15:25:47 +00:00
Ralph Castain
e11eb15518 Next step of RFC: OMPI_CHECK_FUNC_LIB -> OPAL_CHECK_FUNC_LIB
This commit was SVN r31583.
2014-05-01 14:57:43 +00:00
Ralph Castain
3b64c603b4 First stage of RFC to rename OMPI_foo build system support: change OMPI_CHECK_PACKAGE -> OPAL_CHECK_PACKAGE
This commit was SVN r31582.
2014-05-01 14:24:56 +00:00
Mike Dubman
0cba0b95b8 OSHMEM: fortran profiling API added
for spec compliance 

fixed by Roman, reviewed by Igor/Miked

cmr=v1.8.2:reviewer=ompi-rm1.8

This commit was SVN r31510.
2014-04-23 18:56:37 +00:00
Jeff Squyres
69bb758bca ompi_config_pthreads.m4: fix to compile with Clang 3.4
Clang 3.4 static analysis is now smart enough that it refuses to
compile our POSIX threading tests because we simply passed 0 for
several arguments (the test is checking for the linker presence of
symbols, so the NULL arguments didn't matter).  Specifically, Clang's
anti-NULL compile-time checks now refuse to compile this bogus code.
Hence, these 2 configure test codes now have real variables and
pointers so that clang will compile it properly.

Without this fix, configure determines that there is no POSIX
threading support, and the osc/sm component fails to compile (which is
a different defect I'll be filing shortly).  As such, we need this fix
in 1.8.1.

Also, change from the deprecated AC_TRY_LINK to AC_LINK_IFELSE.

cmr=v1.8.1:reviewer=dgoodell

This commit was SVN r31458.
2014-04-19 13:13:06 +00:00
Nathan Hjelm
99812c8c07 Improve support for Cray's CLE 5
cmr=v1.8.1

This commit was SVN r31426.
2014-04-18 17:49:16 +00:00
Ralph Castain
0f02ba21df Remove --enable-sensors configuration option
This commit was SVN r31404.
2014-04-15 21:58:29 +00:00
Ryan Grant
6d577a2663 Update to atomics selection, fix octal issue and rename defines
This commit was SVN r31396.
2014-04-15 15:40:30 +00:00
Ryan Grant
e67ca81dca Fixing atomics selection issue, to be CMR'd after it passes the nightly tests
This commit was SVN r31393.
2014-04-15 13:17:04 +00:00
Jeff Squyres
d2d28710ba fortran: Remove the gfortran-4.9-disabling configry
The bug in #4157 has now been fixed, so remove the configure test that
disabled mpi_f08 functionality for gfortran 4.9.

Fixes trac:4157

cmr=v1.8.1:ticket=trac:4512

This commit was SVN r31373.

The following Trac tickets were found above:
  Ticket 4157 --> https://svn.open-mpi.org/trac/ompi/ticket/4157
  Ticket 4512 --> https://svn.open-mpi.org/trac/ompi/ticket/4512
2014-04-11 21:04:04 +00:00
Mike Dubman
b20de8ae34 OSHMEM: add support for profiling API
use weak symbols, based on http://www.open-mpi.org/community/lists/devel/2014/03/14429.php
fixed by Roman, reviewed by Igor/Miked

cmr=v1.8.1:reviewer=ompi-rm1.8

This commit was SVN r31330.
2014-04-07 22:55:21 +00:00
Jeff Squyres
50a705f247 Fix #4465: spall Quadrics correctly.
Many thanks to Jeff Hammond for noticing.

cmr=v1.8:reviewer=ompi-rm1.8

This commit was SVN r31256.
2014-03-27 17:52:43 +00:00
Ralph Castain
08fd24f452 Ensure we properly check for sockaddr_in before checking for tcp
This commit was SVN r31166.
2014-03-20 00:17:29 +00:00
Jeff Squyres
412364d66e Change "test ==" to "test =" to be more portable.
This commit was SVN r31159.
2014-03-19 21:38:01 +00:00
Ralph Castain
17d618abd2 As per the thread on ticket #4399, OSHMEM does not support non-Linux platforms. So provide a check for Linux and error out if --enable-oshmem is given on a non-supported platform. If no OSHMEM option is given (enable or disable), then don't attempt to build OSHMEM unless we are on a Linux platform. Default to building if we are on Linux for now, pending the outcome of the Debian situation.
cmr=v1.7.5:reviewer=jsquyres:subject=disable OSHMEM on non-Linux platforms

This commit was SVN r31155.
2014-03-19 20:32:15 +00:00
Ralph Castain
f259d50ed7 Fully fix the PMI2 warning - turned out to be larger than originally thought due to the way the function was being handled across multiple files. Properly resolve the problem by not compiling the file if PMI2 is not desired, and then appropriately setting the visibility of the function within the module
Refs trac:4400

This commit was SVN r31084.

The following Trac tickets were found above:
  Ticket 4400 --> https://svn.open-mpi.org/trac/ompi/ticket/4400
2014-03-17 17:36:37 +00:00
Jeff Squyres
616e62bb9e Fix --enable|disable-oshmem configure switch
* Fixed the AC_ARG_ENABLE for the oshmem option.
* Fixed the AM_CONDITIONALs values for the projects.
* Re-added (and slightly simplified) the use of PROJECT_OSHMEM in
  various Makefile.am's to disable building OSHMEM stuff

Submitted by Jeff, reviewed and approved by Ralph.

cmr=v1.7.5:reviewer=ompi-gk1.7

This commit was SVN r31062.
2014-03-13 21:23:04 +00:00
Ralph Castain
9c66c4f439 Correctly implement --disable-oshmem and --without-orte so we don't build the disabled section of code. Fix a bunch of code rot in the PMI rte component, and add several missing headers when building --without-orte.
NOTE: I transferred the oshmem-disabled-by-default from the 1.7 branch to the trunk to minimize future disruption if/when we change that option.

cmr=v1.8:reviewer=jsquyres

This commit was SVN r31006.
2014-03-11 22:02:40 +00:00
Mike Dubman
a14dda491e OSHMEM: various fixes
- -check-shmem-params is OFF by default. It checks OSHMEM API params and will abort on bad input
- hcoll do not save fallback coll pointers for unsupported collectives.

fixed by Val, Roman, reviewed by Miked/Igor

cmr=v1.7.5:reviewer=ompi-rm1.7

This commit was SVN r30995.
2014-03-11 17:27:33 +00:00
Ralph Castain
96f67507a5 Improve/expand the database configure logic for future use
This commit was SVN r30984.
2014-03-11 03:01:15 +00:00
Mike Dubman
a1044dd517 OSHMEM: fix fortran selection logic
based on offline discussion and agreement with Jeff

fixed by Roman, reviewed by Igor/Mike
cmr=v1.7.5:reviewer=ompi-rm1.7

This commit was SVN r30952.
2014-03-06 11:22:30 +00:00
Nathan Hjelm
9e92c5be53 osc/sm: check for pthread_condattr_setpshared and pthread_mutexattr_setpshared. fall
back on barrier if either function doesn't exist.

cmr=v1.7.5:reviewer=jsquyres

This commit was SVN r30911.
2014-03-03 17:09:09 +00:00
Mike Dubman
33d363e65d OSHMEM: fix fortran binding
based on true story: http://www.open-mpi.org/community/lists/devel/2014/03/14262.php

fixed by Roman, reviewed by Igor/Mike

cmr=v1.7.5:reviewer=ompi-rm1.7

This commit was SVN r30906.
2014-03-03 09:58:11 +00:00
Vasily Filipov
f2014b96e7 OPENIB BTL/CONNECT: Add support for AF_IB addressing in rdmacm.
This commit was SVN r30875.
2014-02-27 11:29:47 +00:00
Dave Goodell
4875f48eaa usnic: enable UDP support
This commit decouples OMPI deployment from the version(s) of the lower
layers of the stack by probing for UDP support.

Verbs applications assume a 40-byte header (there is no current
mechanism for querying payload offset).  So to support a 42-byte UDP
header without causing existing applications like ibv_ud_pingpong or
older versions of OMPI to crash, we must inform libusnic_verbs that we
are aware of the nonstandard payload offset.  We do this by overriding
the `transport_type` field of the device to be 42 before calling
`ibv_open_device`.  If the library resets it to something else, then we
know the lower layers are UDP capable.  Otherwise we use the older
custom-L2 format.

This necessitated some minor ugliness in common_verbs, but it's as tidy
as Jeff and I know how to make it right now.

This commit only adds support for UDP headers and connectivity over the
same L2 network, it does not touch routing or interface pairing.

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

cmr=v1.7.5:ticket=trac:4253

This commit was SVN r30838.

The following Trac tickets were found above:
  Ticket 4253 --> https://svn.open-mpi.org/trac/ompi/ticket/4253
2014-02-26 07:44:35 +00:00
Jeff Squyres
d07d1864ae Revert r30804.
We're going to be bringing a bunch of usnic code to the SVN trunk
soon, and I basically brought this commit over out of order.  So I'm
reverting it for now; the same functionality will come back shortly.

This commit was SVN r30805.

The following SVN revision numbers were found above:
  r30804 --> open-mpi/ompi@5bedcc15bf
2014-02-24 19:12:49 +00:00
Jeff Squyres
5bedcc15bf Support the IBV_*_USNIC_* verbs constants.
These constants are now upstream (see
https://git.kernel.org/cgit/libs/infiniband/libibverbs.git/commit/?id=f57a9c67eabb9e7f19c624ac3c8c27b7be55796c),
so let's support them properly in Open MPI.

Added bonus: consolidating these checks up in
ompi_check_openfabrics.m4 allowed removing some custom checks and
AC_DEFINE's from the usnic configure.m4 script.

Also change the usnic/configure.m4 check for IBV_EVENT_GID_CHANGE to
use AC_CHECK_DECLS (vs. AC_CHECK_DECL).

cmr=v1.7.5:reviewer=dgoodell

This commit was SVN r30804.
2014-02-24 18:57:04 +00:00
Jeff Squyres
d35019ba19 Add file that was forgotten in r30776. Refs trac:4205.
This commit was SVN r30780.

The following SVN revision numbers were found above:
  r30776 --> open-mpi/ompi@bda840df49

The following Trac tickets were found above:
  Ticket 4205 --> https://svn.open-mpi.org/trac/ompi/ticket/4205
2014-02-20 11:32:57 +00:00
Jeff Squyres
bda840df49 Fixes trac:4205: ensure sizeof(MPI_Count) <= sizeof(size_t)
- Move the ptrdiff_t tests up higher in configure.ac to be with the
  rest of the type tests.
- Create new OMPI_FIND_MPI_AINT_COUNT_OFFSET for finding the
  corresponding types of MPI_Aint, MPI_Count, and MPI_Offset.
  Consolidate all the old C and Fortran tests into this new macro (and
  .m4 file).
- Fix Fortran MPI_*_KIND tests that incorrectly keyed off assumed
  types (e.g., int64_t) rather than whatever the corresponding C
  MPI_Aint, MPI_Count, MPI_Offset types turned out to be.
- Add new logic to ensure that sizeof(MPI_Count) <= sizeof(size_t),
  because our entire PML, BTL, and convertor infrastructure requires
  this.  As a side effect, just like MPI_Offset the same type of
  MPI_Count (because MPI_Count has to be able to hold an MPI_Offset,
  so we can't let MPI_Offset be larger than a MPI_Count).

This commit was SVN r30776.

The following Trac tickets were found above:
  Ticket 4205 --> https://svn.open-mpi.org/trac/ompi/ticket/4205
2014-02-19 23:04:34 +00:00
Ralph Castain
7576d5964a Remove c++ cruft from configure
Refs trac:4247

This commit was SVN r30655.

The following Trac tickets were found above:
  Ticket 4247 --> https://svn.open-mpi.org/trac/ompi/ticket/4247
2014-02-10 19:23:39 +00:00
Ralph Castain
8d04d7408e Sigh - remove the c++ cruft from here too
Refs trac:4247

This commit was SVN r30654.

The following Trac tickets were found above:
  Ticket 4247 --> https://svn.open-mpi.org/trac/ompi/ticket/4247
2014-02-10 17:32:02 +00:00
George Bosilca
32a494e73b When CXX support is disabled don't check if coverage is supported. The
problem is that ompi_cxx_vendor is only defined when MPI CXX support
is enabled.

This commit was SVN r30599.
2014-02-06 21:40:26 +00:00
Nathan Hjelm
4248cb1d9c Fix typo and portability issue in r30555
cmr=v1.7.4:ticket=trac:4223

This commit was SVN r30559.

The following SVN revision numbers were found above:
  r30555 --> open-mpi/ompi@5c35b5ba19

The following Trac tickets were found above:
  Ticket 4223 --> https://svn.open-mpi.org/trac/ompi/ticket/4223
2014-02-04 20:15:32 +00:00
Nathan Hjelm
5c35b5ba19 Fix wrapper ldflags.
cmr=v1.7.4:reviewer=jsquyres

This commit was SVN r30555.
2014-02-04 19:44:08 +00:00
Mike Dubman
3d8c06d1b4 fix min.supported version for mxm check
reviewed by Alex
cmr=v1.7.5:reviewer=ompi-rm1.7

This commit was SVN r30553.
2014-02-04 14:45:47 +00:00
Ralph Castain
fab35dbffa Silence some Solaris warnings reported by Paul Hargrove
cmr=v1.7.4:reviewer=jsquyres:subject=Silence some Solaris warnings

This commit was SVN r30542.
2014-02-03 19:46:08 +00:00