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

82 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
f96fa5ee2a Fixes trac:3146: fix faulty configure tests (that were introduced with the
new Fortran revamp a few months ago) that failed when you compiled
with "ifort -i8".

The secret: "test $foo -eq 0" fails when $foo is sufficiently large.
So instead, use "test "$foo" = "0"".  expr does work with large
integers, though, so one "test -lt" was replaced with expr.

This commit was SVN r26715.

The following Trac tickets were found above:
  Ticket 3146 --> https://svn.open-mpi.org/trac/ompi/ticket/3146
2012-07-02 20:33:11 +00:00
Pavel Shamis
f7664b3814 1. Adding 2 new components:
ofacm - generic connection manager for IB interconnects.
ofautils - IB common utilities and compatibility code

2. Updating OpenIB configure code

- ORNL & Mellanox Teams 

This commit was SVN r26707.
2012-07-02 15:20:12 +00:00
Josh Hursey
28681deffa Backout the ORCA commit. :(
There is a linking issue on Mac OSX that needs to be addressed before this is able to come back into the trunk.

This commit was SVN r26676.
2012-06-27 01:28:28 +00:00
Josh Hursey
542330e3a7 Commit of ORCA: Open MPI Runtime Collaborative Abstraction
This is a runtime interposition project that sits between the OMPI and ORTE layers in Open MPI.

The project is described on the wiki:
  https://svn.open-mpi.org/trac/ompi/wiki/Runtime_Interposition

And on this email thread:
  http://www.open-mpi.org/community/lists/devel/2012/06/11109.php

This commit was SVN r26670.
2012-06-26 21:42:16 +00:00
Edgar Gabriel
6a2dd16ee3 cleaning up the usage of CFLAGS vs. CPPFLAGS. Thanks Jeff for helping with
that!

This commit was SVN r26655.
2012-06-25 20:32:58 +00:00
Edgar Gabriel
7a374c828a leave the wrapper flags as they are, not required to compile the components or
later for an application afterwards. Fixes the configure problem that we faced
on some lustre file systems. 

This commit was SVN r26653.
2012-06-25 20:01:06 +00:00
Jeff Squyres
148ae6d6e3 This commit unifies the configury of some verbs-lovin' components.
* Add new configure command line options and deprecate some old ones:
   * --with-verbs replaces --with-openib
   * --with-verbs-libdir replaces --with-openib-libdir
 * If you specify --with-openib[-libdir] without
   --with-verbs[-libdir], you'll get a "these options have been
   deprecated!" warning, but then they'll act just like
   --with-verbs[--libdir]. 

  '''Sidenote:''' Note that we are not renaming any components at this
  time, nor are we renaming the top-level OMPI_CHECK_OPENIB m4 macro
  (which is pretty strongly tied to the openib BTL and is bastaridzed
  by the ofud BTL).  Note that there will likely be more changes in
  this area coming soon (next week?) when some long-standing changes
  move to the SVN trunk: some openib BTL infrastructure will move to
  ompi/mca/common, and its configury gets split up / refactored.

We extend our philosophy of other --with-<foo> configure options of
--with-verbs to ''all'' verbs-lovin components:

 * If you specify --with-verbs, then all verbs-lovin' components must
   configure successfully (or abort).  This currently means: OOB ud,
   BTL ofud, BTL openib.
 * If you specify --with-verbs=DIR, then all verbs-lovin' component
   must configure successfully (or abort), and will use DIR to find
   verbs headers and libraries.
 * If you specify --without-verbs, then all verbs-lovin' components
   will be ignored.

This commit also fixes a problem where the --with-openib=DIR form
would not use DIR for ''all'' verbs-lovin' components (I think only
BTL openib and BTL ofud used that DIR).  Now all of them do, as does
hwloc (because hwloc has some !OpenFabrics helper functions that
require ibv types from verbs.h).

There's a little new m4 infrastructure worth mentioning:

 * If you create a new verbs-lovin' component (i.e., a component that
   need verbs), your configure.m4 should
   AC_REQUIRE([OPAL_CHECK_VERBS_DIR]). 
 * You can then use three global shell variables: $opal_want_verbs,
   $opal_verbs_dir, $opal_verbs_libdir, which will be set as follows:
   * opal_want_verbs will be "yes" and opal_verbs_dir and
     opal_verbs_libdir will both be set to directory values, '''OR'''
   * opal_want_verbs will be "no" and opal_verbs_dir and
     opal_verbs_libdir will both be set empty

This commit was SVN r26640.
2012-06-22 19:53:56 +00:00
Terry Dontje
0343dfee77 Add library check for libosmcomp when openib dynamic SL is enabled.
This commit was SVN r26619.
2012-06-19 17:45:56 +00:00
Eugene Loh
e91d3a6f13 Fix test that checked whether C data type matched Fortran REAL*16.
The test was comparing 1.1L to Fortran's 1.1, which was sometimes
a single-precision/truncated value, even if stored in a REAL*16 word.

This commit was SVN r26543.
2012-06-01 23:33:00 +00:00
Ralph Castain
31beff6362 Oops - if we don't want the Java bindings, then we really shouldn't be building them :-/
Also ensure we don't try to build them if no Java support was found, and error out if the user requests the bindings and we didn't find Java support.

Add a configure flag to skip the Java tests and just force-set the Java support to "disabled"

This commit was SVN r26484.
2012-05-23 19:51:27 +00:00
Ralph Castain
fd796cce0a Add an allocator tool for finding HDFS file locations and obtaining allocations for those nodes (supports both Hadoop 1 and 2). Split the Java support into two parts: detection of Java support and request for Java bindings.
This commit was SVN r26414.
2012-05-09 01:13:49 +00:00
Jeff Squyres
3928a1ea42 Add missing AC_MSG_CHECKING (i.e., we were seeing a result message
without a corresponding "checking" message)

This commit was SVN r26408.
2012-05-08 17:20:09 +00:00
Jeff Squyres
245812c34b * s/f77/fortran/gi in a lot of places
* Remove unused #defines in mpi.h.in
 * Add OMPI_PARAM_CHECK in mpi.h.in (so that we can check for it in tests)
 * Clean up some comments in mpif-common.h

This commit was SVN r26347.
2012-04-27 01:09:37 +00:00
Jeff Squyres
57f01592f0 It is not a configure error if the Fortran compiler does not support
optional arguments; it just means that we won't build the mpi_f08 bindings.

This commit was SVN r26312.
2012-04-23 19:18:43 +00:00
Jeff Squyres
f9c685bd5e Fix some fortran flags variable names, and fortran configury C test
problems (i.e., don't return a value from a void() function!).  Thanks
to Eugene for identifying these issues.  Hopefully this will fix up
the problems Oracle is having with compiling the new Fortran stuff.

This commit was SVN r26310.
2012-04-23 15:28:26 +00:00
Jeff Squyres
a0c3e38ded Ensure to compile the test as a Fortran program. Thanks to Eugene for
pointing out the issue.

This commit was SVN r26309.
2012-04-21 12:05:35 +00:00
Nathan Hjelm
c9bf271b36 ugni: check for GNI_GetJobResInfo
This commit was SVN r26304.
2012-04-19 21:51:31 +00:00
Jeff Squyres
ecd7108324 Fix problem of conflicting configure variables.
This commit was SVN r26302.
2012-04-19 13:20:08 +00:00
Jeff Squyres
5e0a154fa3 Fixes for old compilers:
* If the Fortran compiler doesn't support ISO_C_BINDINGS, fall back
   to an older (less precise) test for KIND values
 * If we're building the mpi module, don't assume that we're also
   building mpi_f08 module (i.e., don't add -lmpi_usempif08 to mpifort
   unless we're actually building the mpi_f08 module)

This commit was SVN r26294.
2012-04-19 00:47:54 +00:00
Ralph Castain
8e28f12d62 Fix the ancient-compiler problem
This commit was SVN r26291.
2012-04-18 20:34:45 +00:00
Jeff Squyres
b9640a582a Fix the case where there is no Fortran compiler found. Possibly fix
the case where we have a really ancient Fortran compiler that does not
support ISO_C_BINDING, but need to test to be sure that the new
configury works.

This commit was SVN r26290.
2012-04-18 19:29:07 +00:00
Jeff Squyres
253444c6d0 == Highlights ==
1. New mpifort wrapper compiler: you can utilize mpif.h, use mpi, and use mpi_f08 through this one wrapper compiler
 1. mpif77 and mpif90 still exist, but are sym links to mpifort and may be removed in a future release
 1. The mpi module has been re-implemented and is significantly "mo' bettah"
 1. The mpi_f08 module offers many, many improvements over mpif.h and the mpi module

This stuff is coming from a VERY long-lived mercurial branch (3 years!); it'll almost certainly take a few SVN commits and a bunch of testing before I get it correctly committed to the SVN trunk.

== More details ==

Craig Rasmussen and I have been working with the MPI-3 Fortran WG and Fortran J3 committees for a long, long time to make a prototype MPI-3 Fortran bindings implementation.  We think we're at a stable enough state to bring this stuff back to the trunk, with the goal of including it in OMPI v1.7.  

Special thanks go out to everyone who has been incredibly patient and helpful to us in this journey:

 * Rolf Rabenseifner/HLRS (mastermind/genius behind the entire MPI-3 Fortran effort)
 * The Fortran J3 committee
 * Tobias Burnus/gfortran
 * Tony !Goetz/Absoft
 * Terry !Donte/Oracle
 * ...and probably others whom I'm forgetting :-(

There's still opportunities for optimization in the mpi_f08 implementation, but by and large, it is as far along as it can be until Fortran compilers start implementing the new F08 dimension(..) syntax.

Note that gfortran is currently unsupported for the mpi_f08 module and the new mpi module.  gfortran users will a) fall back to the same mpi module implementation that is in OMPI v1.5.x, and b) not get the new mpi_f08 module.  The gfortran maintainers are actively working hard to add the necessary features to support both the new mpi_f08 module and the new mpi module implementations.  This will take some time.

As mentioned above, ompi/mpi/f77 and ompi/mpi/f90 no longer exist.  All the fortran bindings implementations have been collated under ompi/mpi/fortran; each implementation has its own subdirectory:

{{{
ompi/mpi/fortran/
  base/               - glue code
  mpif-h/             - what used to be ompi/mpi/f77
  use-mpi-tkr/        - what used to be ompi/mpi/f90
  use-mpi-ignore-tkr/ - new mpi module implementation
  use-mpi-f08/        - new mpi_f08 module implementation
}}}

There's also a prototype 6-function-MPI implementation under use-mpi-f08-desc that emulates the new F08 dimension(..) syntax that isn't fully available in Fortran compilers yet.  We did that to prove it to ourselves that it could be done once the compilers fully support it.  This directory/implementation will likely eventually replace the use-mpi-f08 version.

Other things that were done:

 * ompi_info grew a few new output fields to describe what level of Fortran support is included
 * Existing Fortran examples in examples/ were renamed; new mpi_f08 examples were added
 * The old Fortran MPI libraries were renamed:
   * libmpi_f77 -> libmpi_mpifh
   * libmpi_f90 -> libmpi_usempi
 * The configury for Fortran was consolidated and significantly slimmed down.  Note that the F77 env variable is now IGNORED for configure; you should only use FC. Example:
{{{
shell$ ./configure CC=icc CXX=icpc FC=ifort ...
}}}

All of this work was done in a Mercurial branch off the SVN trunk, and hosted at Bitbucket.  This branch has got to be one of OMPI's longest-running branches.  Its first commit was Tue Apr 07 23:01:46 2009 -0400 -- it's over 3 years old!  :-)  We think we've pulled in all relevant changes from the OMPI trunk (e.g., Fortran implementations of the new MPI-3 MPROBE stuff for mpif.h, use mpi, and use mpi_f08, and the recent Fujitsu Fortran patches).

I anticipate some instability when we bring this stuff into the trunk, simply because it touches a LOT of code in the MPI layer in the OMPI code base.  We'll try our best to make it as pain-free as possible, but please bear with us when it is committed.

This commit was SVN r26283.
2012-04-18 15:57:29 +00:00
Terry Dontje
9831d2bf3f change sparc platforms to default OMPI_OPENIB_PAD_HDR to 1
This commit was SVN r26209.
2012-04-03 11:02:34 +00:00
Jeff Squyres
ee4ef7b503 Fix default Java build on Linux; make sure the Solaris hard-coded path doesn't interfere
This commit was SVN r26182.
2012-03-22 23:01:23 +00:00
Jeff Squyres
91f5707a9e Update the help message for --enable-mpi-interface-warning
This commit was SVN r26181.
2012-03-22 22:59:59 +00:00
Terry Dontje
a0e41ca685 Add support for building JAVA API on Solaris.
This commit was SVN r26130.
2012-03-13 09:34:02 +00:00
Edgar Gabriel
025c14a19a fix to the lustre configure logic.
This commit was SVN r26057.
2012-02-27 14:37:26 +00:00
Jeff Squyres
11b50156c3 Remove extraneous spaces from the ugni help output.
This commit was SVN r26047.
2012-02-24 13:54:19 +00:00
Ralph Castain
9fccc86f6c Only emit the java bindings warning if we actually are building them
This commit was SVN r26004.
2012-02-22 21:56:47 +00:00
Ralph Castain
47c64ec837 Roll in Java bindings per telecon discussion. Man pages still under revision
This commit was SVN r25973.
2012-02-20 22:12:43 +00:00
Jeff Squyres
a8f409caf9 Enable MPI deprecated API function warnings by default
This commit was SVN r25969.
2012-02-20 20:30:43 +00:00
Nathan Hjelm
e03d23d96e Intial support for Cray's uGNI interface (XE-6/XK-6)
This commit was SVN r25608.
2011-12-09 21:24:07 +00:00
Jeff Squyres
d71492108c (this is what r25545 should have been)
Per http://www.open-mpi.org/community/lists/users/2011/11/17862.php,
to make MPI_IN_PLACE (and other sentinel Fortran constants) work on OS
X, we need to use the following compiler (linker) flag:

    -Wl,-commons,use_dylibs 

So if we're compiling on OS X, test to see if that flag works with the
compiler. If so, add it to the wrapper FFLAGS and FCFLAGS (note that
per a future update, we'll only have one Fortran compiler anyway).

Fixes trac:1982. 

This commit was SVN r25547.

The following SVN revision numbers were found above:
  r25545 --> open-mpi/ompi@7f9ae11faf

The following Trac tickets were found above:
  Ticket 1982 --> https://svn.open-mpi.org/trac/ompi/ticket/1982
2011-11-29 23:28:38 +00:00
Jeff Squyres
6fbbfd0f7a Gah! r25545 acidentally included ''waaaay'' more stuff than it was
supposed to.  I.e., half-baked/not complete stuff.

This commit backs out all of r25545.  Sorry folks!

This commit was SVN r25546.

The following SVN revision numbers were found above:
  r25545 --> open-mpi/ompi@7f9ae11faf
2011-11-29 23:24:52 +00:00
Jeff Squyres
7f9ae11faf Per http://www.open-mpi.org/community/lists/users/2011/11/17862.php,
to make MPI_IN_PLACE (and other sentinel Fortran constants) work on OS
X, we need to use the following compiler (linker) flag:

    -Wl,-commons,use_dylibs 

So if we're compiling on OS X, test to see if that flag works with the
compiler.  If so, add it to the wrapper FFLAGS and FCFLAGS (note that
per a future update, we'll only have one Fortran compiler anyway).

Fixes trac:1982.  

This commit was SVN r25545.

The following Trac tickets were found above:
  Ticket 1982 --> https://svn.open-mpi.org/trac/ompi/ticket/1982
2011-11-29 23:05:54 +00:00
Samuel Gutierrez
ae66347c7a added GNI configure script.
This commit was SVN r25370.
2011-10-25 22:15:16 +00:00
Yevgeny Kliteynik
a503bd53b7 Fixing the librdmacm dependency for build process
If a user specifically asks for rdmacm support in configure script and
librdmacm (usual and devel) libraries are not found, configure script
would abort.

If a user didn't specify anything, and rdmacm libraries are not found,
configure script will continue after issuing warning message:
"Please install librdmacm and librdmacm-devel or disable rdmacm support"

-- YK

This commit was SVN r25253.
2011-10-11 09:10:06 +00:00
Rainer Keller
61ffabed44 - Fix typo in _OMPI_CXX_CHECK_BUILTIN_BACKEND:
frontend checks have_cxx-variant, yet the backend (if run)
   defined have_-variant; therefore these were never set.

This commit was SVN r25233.
2011-10-05 08:21:59 +00:00
Nathan Hjelm
98b56108c4 add unconnect datagram connection manager (udcm)
This commit was SVN r25160.
2011-09-19 21:24:58 +00:00
Nathan Hjelm
3048ce043d permanently disable ibcm
This commit was SVN r25137.
2011-09-13 15:10:51 +00:00
Edgar Gabriel
4bc2e9b023 fix a typo and add an actual pvfs function in the configure link-test.
This commit was SVN r25120.
2011-09-07 15:46:41 +00:00
Edgar Gabriel
196c3819e2 - revamp the configure logic to detect pvfs2 and lustre
- slight change in the selection logic of the fs module, which makes
   the ompio independent of the file system type (otherwise ompio 
   would also have required a configure script).

This commit was SVN r25118.
2011-09-07 10:39:47 +00:00
George Bosilca
9d79ad9b41 Check if the Fortran type REAL*16 is equivalent with the
GNU __float128.

This commit was SVN r25083.
2011-08-25 21:56:44 +00:00
Edgar Gabriel
52063267df commit of the OMPIO modules and frameworks.
This commit was SVN r25079.
2011-08-25 20:08:17 +00:00
Mike Dubman
aefffa073d initial implementation of MXM MTL layer
This commit was SVN r24946.
2011-07-26 04:36:21 +00:00
Yevgeny Kliteynik
78ea8bcea2 Always defining OMPI_ENABLE_DYNAMIC_SL, not only when the feature enabled.
Also, refactoring some code - make all the checks only when relevant.

This commit was SVN r24900.
2011-07-13 23:19:58 +00:00
Yevgeny Kliteynik
3e43b21d41 As suggested by Jeff, checking if dynamic SL support
was explicitly requested. If it was, but opensm-devel
package is not found, warn and abort.
Otherwise, doing the best effort: if opensm-devel found,
enable dynamic SL. If it's not found, disable dynamic
SL and build OMPI w/o it.

This commit was SVN r24852.
2011-07-03 14:02:50 +00:00
Yevgeny Kliteynik
a09245e6c8 Changed default behavior when opensm-devel pachege not found - warn, not exit
This commit was SVN r24836.
2011-06-29 14:52:11 +00:00
Yevgeny Kliteynik
b05211148d Supporting dynamic SL (#2674)
- Added enable/disable configuration parameter for dynamic SL
 - All the dynamic SL code is conditionalized
 - Removed libibmad dependency
 - Using only one include - ib_types.h (part of opensm-devel package)
 - Removed all the macro and data types definitions, using the
   existing definitions from ib_types.h instead
 - general cleaning here and there

The async mode is not implemented yet - stay tuned...

This commit was SVN r24830.
2011-06-28 14:28:29 +00:00
Ralph Castain
d34bab541d Remove the ompi-profiler tool and its attendant ompi-probe program. Also remove the grpcomm basic component since its only function was to support profiled clusters, which nobody was doing. :-(
This commit was SVN r24704.
2011-05-17 03:30:25 +00:00