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

152 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
38440369a7 Add note about Absoft compiler and the mpi_f08 module.
This commit was SVN r27243.
2012-09-05 18:45:38 +00:00
Manjunath Gorentla Venkata
f21a5dcc91 Updating README with ML collectives information
This commit was SVN r27101.
2012-08-21 21:09:36 +00:00
Jeff Squyres
8e2efb4084 Fix wierdness in copyright notice.
This commit was SVN r27088.
2012-08-17 11:25:30 +00:00
Jeff Squyres
1955d62cdc Clarify some points about ABI and Fortran in the README.
This commit was SVN r26969.
2012-08-08 14:02:30 +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
Jeff Squyres
a6d5654623 Update README and NEWS to reflect that carto, maffinity, and paffinity
are gone.

This commit was SVN r26392.
2012-05-07 14:58:59 +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
Jeff Squyres
3bf038bb1c Per RFC from long ago:
http://www.open-mpi.org/community/lists/devel/2011/10/9784.php

Bring support for a DMTCP CRS module into the trunk.  See
http://dmtcp.sourceforge.net/ for a description of DMTCP.  Thanks to
the contribution from Alex Brick at Northeastern University, and all
the others up there who helped shepherd this into being ready to
submit.

This commit was SVN r26176.
2012-03-22 12:01:46 +00:00
Jeff Squyres
d30bbc2ef9 Fix an old issue: enable hwloc PCI detection except on SuSE 10 64 bit.
Worked with Oracle to verify that hwloc PCI detection is correctly
disabled on the Suse 10/64 bit platform and is enabled by default on
all other platforms.  The --[en|dis]able-hwloc-pci switch is also
available for manual override of the configure decision about hwloc
PCI support.

This commit was SVN r26175.
2012-03-22 11:30:57 +00:00
Jeff Squyres
193712b98d Sync README with README from v1.5
This commit was SVN r26045.
2012-02-24 11:03:40 +00:00
Jeff Squyres
398c7201f1 Sync the README against the v1.5 README
This commit was SVN r26034.
2012-02-23 20:39:10 +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
Jeff Squyres
107574d1ee Make the $MAKE env variable be precious in configure, per
recomendation from Paul Hargrove, and add a blurb about it in README
to explain why that's important.

This commit was SVN r25925.
2012-02-14 19:34:04 +00:00
Jeff Squyres
76d6bfe76a Remove incorrect bullet about ROMIO/OpenBSD
This commit was SVN r25917.
2012-02-14 11:37:03 +00:00
Jeff Squyres
9b6486f1ab Per discussion during the release process of OMPI v1.4.5
(http://www.open-mpi.org/community/lists/devel/2012/01/10300.php),
state that we do not support ROMIO on BSD platforms.

This commit was SVN r25912.
2012-02-13 22:33:13 +00:00
Terry Dontje
e61a407860 Added notes about Solaris Studio and Ubuntu. Also added check for gccfss being the compiler and abort configure if it is.
This commit was SVN r25903.
2012-02-10 19:25:23 +00:00
Jeff Squyres
0f0b3bd00f Add note about the Intel 12.1 compilers.
This commit was SVN r25854.
2012-02-01 19:32:19 +00:00
Jeff Squyres
10748c3b7f Update OS X list
This commit was SVN r25825.
2012-01-30 21:35:43 +00:00
Terry Dontje
55561d9810 Add Solaris Studio Compiler notes about using CC instead of sunCC
This commit was SVN r25783.
2012-01-26 11:28:42 +00:00
Terry Dontje
7ea64bcc2e Modify Solaris Studio Complier notes about using xarch
This commit was SVN r25770.
2012-01-24 15:50:45 +00:00
Edgar Gabriel
bd65bafc4b next try in committing the README file, hopefully without deleting half of it
this time.

This commit was SVN r25690.
2012-01-03 17:58:25 +00:00
Jeff Squyres
7cb96d9acb Restore munged README.
This commit was SVN r25689.
2012-01-03 17:25:37 +00:00
Edgar Gabriel
e0139a2d7e provide descriptions about the functionality of these frameworks.
This commit was SVN r25682.
2011-12-22 19:42:00 +00:00
Jeff Squyres
b79575dae7 Add descriptions of sstore and sensor
This commit was SVN r25644.
2011-12-14 18:26:24 +00:00
Jeff Squyres
9e5799437c Update list of frameworks
This commit was SVN r25642.
2011-12-14 15:44:32 +00:00
Mike Dubman
9928c33edd better description of MXM MTL
This commit was SVN r24986.
2011-08-04 07:57:46 +00:00
Jeff Squyres
ecc7937584 Format the README a bit and shape up some of the text about MXM.
Still need a bit more, though.

This commit was SVN r24982.
2011-08-03 13:22:56 +00:00
Mike Dubman
45ea375531 code and readme updates, some refactoring
This commit was SVN r24977.
2011-08-02 14:30:11 +00:00
Mike Dubman
aefffa073d initial implementation of MXM MTL layer
This commit was SVN r24946.
2011-07-26 04:36:21 +00:00
Mike Dubman
36db9c6233 * updated copyrights
* added support for non-contig data layout in FCA

This commit was SVN r24702.
2011-05-16 14:43:11 +00:00
Eugene Loh
2770a12beb Continue clean up of thread options started in r22841, 22842, and 22849.
No need for any CMRs to 1.5... that was already done in CMR 2728.

This commit was SVN r24545.

The following SVN revision numbers were found above:
  r22841 --> open-mpi/ompi@b400b84162
2011-03-18 21:36:35 +00:00
Jeff Squyres
e388450e98 Add 1.5.2 items.
This commit was SVN r24343.
2011-02-02 15:17:30 +00:00
Terry Dontje
80c1e9acac added the format parameter to OMPI_Affinity_str call in README
This commit was SVN r24184.
2010-12-16 19:22:59 +00:00
Terry Dontje
6da16ab0d7 add format parameter and layout format to OMPI_Affinity_str
This commit was SVN r24182.
2010-12-16 15:11:17 +00:00
Josh Hursey
00cf339820 Fix typo in README.
Thanks to Paul Hargrove for pointing this out.

Refs trac:2549, #2548

This commit was SVN r23673.

The following Trac tickets were found above:
  Ticket 2549 --> https://svn.open-mpi.org/trac/ompi/ticket/2549
2010-08-26 14:40:35 +00:00
Rolf vandeVaart
8862179380 Fix instructions for gcc,sparc,32-bit.
This fixes trac:2551.

This commit was SVN r23672.

The following Trac tickets were found above:
  Ticket 2551 --> https://svn.open-mpi.org/trac/ompi/ticket/2551
2010-08-26 14:18:14 +00:00
Samuel Gutierrez
3b162593e6 New POSIX shared memory component and other common sm enhancements.
NOTE: mmap is still the default.

Some highlights:
o Silent component failover.
o The sysv component will only be queried for selection if it is placed before
  the mmap component (for example, -mca mpi_common_sm sysv,posix,mmap).  In the
  default case, sysv will never be queried/selected.
o Per some on-list discussion, now unlinking mmaped file in both mmap and posix
  components (see: "System V Shared Memory for Open MPI: Request for Community
  Input and Testing" thread).
o  Assuming local process homogeneity with respect to all utilized shared
   memory facilities. That is, if one local process deems a particular shared
   memory facility acceptable, then ALL local processes should be able to
   utilize that facility. As it stands, this is an important point because one
   process dictates to all other local processes which common sm component will
   be selected based on its own, local run-time test.
o Addressed some of George's code reuse concerns.

This commit was SVN r23633.
2010-08-23 16:04:13 +00:00
Mike Dubman
59be1b1c15 updated with fca component info
This commit was SVN r23541.
2010-08-02 12:21:29 +00:00
Jeff Squyres
088887d850 Some updates:
* Add notes about libompitrace.
 * Add some more notes about --disable switches.
 * Remove some notes that are no longer necessary. 

This commit was SVN r23427.
2010-07-16 13:20:11 +00:00
Jeff Squyres
af33e5cd1a Fix typo.
This commit was SVN r23340.
2010-07-02 12:37:48 +00:00
Samuel Gutierrez
2fb7c344fc Added a new System V (sysv) shared memory component for Open MPI.
Configure Option:
--enable-sysv

MCA Parameter:
mpi_common_sm

mpi_common_sm accepts a comma delimited list of: [sysv],mmap (order
dependent).  The first component that is successfully selected is used. For
example, -mca mpi_common_sm sysv,mmap will first try sysv. If sysv is not
successfully selected, then mmap will be used.  mmap will be used if 
mpi_common_sm is not provided.

Notes:
Please make certain that your system's shmmax limit, or equivalent, is larger
than mpool_sm_min_size.  Otherwise, shmget may fail.

This commit was SVN r23260.
2010-06-09 16:58:52 +00:00
Jeff Squyres
e597c4f9cd Add --with-libltdl option to allow building Open MPI with an external installation of libltdl. Fixes trac:2407
This commit was SVN r23189.

The following Trac tickets were found above:
  Ticket 2407 --> https://svn.open-mpi.org/trac/ompi/ticket/2407
2010-05-20 22:42:02 +00:00
Jeff Squyres
3129ccd9ec Make the hwloc paffinity component available for everyone. hwloc
supports a wide variety of operating systems and platforms; see the
opal/mca/paffinity/hwloc/hwloc/README file for details.

This component includes an embedded copy of hwloc, currently based on
hwloc-1.0rc6.  But note that hwloc is properly SVN imported into the
/vendor branch, so it will be easy to update when 1.0 GA is released.
Note that the hwloc tree embedded in opal/mca/paffinity/hwloc/hwloc is
identical to a hwloc distribution tarball, except that much of the
documentation was rm -rf'ed (because we don't need it for the embedded
case).

Since the paffinity framework currently does not understand hardware
threads, the hwloc component compensates for this by identifying cores
by the "first" hardware thread on that core.  Hopefully we'll update
paffinity someday to understand hardware threads.  :-)

configure grew a --with-hwloc option, analogous to what we do for many
other external libraries that OMPI supports.  However, there's a new
feature: due to the request of several distros, OMPI can be configured
to build with its internal copy of hwloc or with an external copy of
hwloc (e.g., a system-installed hwloc).

 1. If --with-hwloc is not specified, Open MPI will try to use its
    internal copy (but silently fail/ignore hwloc if that fails).
 1. If --with-hwloc=<dir> is supplied, Open MPI looks for hwloc
    support in <dir> (and --with-hwloc-libdir=<dir>, if specified).
 1. If --with-hwloc=external is supplied, Open MPI will look for hwloc
    in a compiler/linker default external location.
 1. If --with-hwloc=internal is supplied, Open MPI will use its
    internal copy of hwloc.

Some of OMPI's main configury had to be slightly re-arranged in the
bootstrapping phase to accomodate hwloc's configry needs.

This commit was SVN r23125.
2010-05-13 23:56:05 +00:00
Jeff Squyres
1667121bc4 Add more text about shared library versioning
This commit was SVN r23061.
2010-04-28 13:08:04 +00:00
Jeff Squyres
f0d1fdf3b1 Add note about xgrid support being broken.
This commit was SVN r23060.
2010-04-28 12:48:20 +00:00
Jeff Squyres
bc0987e5bd Fix more typos.
This commit was SVN r23021.
2010-04-22 16:39:40 +00:00
Jeff Squyres
668c1c7f17 Fix two mistakes in the README. Thanks to 3rd party reviewers!
This commit was SVN r23019.
2010-04-22 15:35:00 +00:00
Jeff Squyres
359464a144 Add an "affinity" Open MPI extension (also describe the
--enable-mpi-ext configure switch in the top-level README file).

See Josh's excellent wiki page about OMPI extensions:

    https://svn.open-mpi.org/trac/ompi/wiki/MPIExtensions

This extension exposes a new API to MPI applications: 

{{{
int OMPI_Affinity_str(char ompi_bound[OMPI_AFFINITY_STRING_MAX],
                      char current_binding[OMPI_AFFINITY_STRING_MAX],
                      char exists[OMPI_AFFINITY_STRING_MAX]);
}}}

It returns 3 things.  Each are a prettyprint string describing sets of
processors in terms of sockets and cores:

 1. What Open MPI bound this process to.  If Open MPI didn't bind this
    process, the prettyprint string says so.
 1. What this process is currently bound to.  If the process is
    unbound, the prettyprint string says so.  This string is a
    separate OUT parameter to detect the case where some other entity
    bound the process (potentially after Open MPI bound it).
 1. What processors are availabile in the system, mainly for reference.

This commit was SVN r23018.
2010-04-21 17:28:08 +00:00
Ralph Castain
bdfdfe754b Update the README file to reflect the new thread configure options
This commit was SVN r22842.
2010-03-17 00:29:38 +00:00
Jeff Squyres
af6f1f4b00 Add pkg-config(1) config files to Open MPI. Additionally, fix a minor
bug: libmpi_f90 had libmpi.la in its LIBADD instead of libmpi_f77.la.

Fixes trac:2244.

This commit was SVN r22704.

The following Trac tickets were found above:
  Ticket 2244 --> https://svn.open-mpi.org/trac/ompi/ticket/2244
2010-02-24 18:46:06 +00:00