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

6809 Коммитов

Автор SHA1 Сообщение Дата
Rolf vandeVaart
fa5d20a5ec Add optimization that can be used when CUDA 6.0 comes out. Use new pointer attribute.
This commit was SVN r29514.
2013-10-24 21:17:58 +00:00
Rolf vandeVaart
628a109a74 Make casting very clear.
This commit was SVN r29511.
2013-10-24 14:40:01 +00:00
Rolf vandeVaart
5687e4387d Fix compiler warning.
This commit was SVN r29510.
2013-10-24 13:11:12 +00:00
Nathan Hjelm
26f3a029d3 Fix scif configury.
cmr=v1.7.4:ticket=3862

This commit was SVN r29493.

The following Trac tickets were found above:
  Ticket 3862 --> https://svn.open-mpi.org/trac/ompi/ticket/3862
2013-10-23 17:04:20 +00:00
Nathan Hjelm
6186b5ed9d Remove extra file that made its way into r29490.
cmr=v1.7.4:ticket=3862

This commit was SVN r29491.

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

The following Trac tickets were found above:
  Ticket 3862 --> https://svn.open-mpi.org/trac/ompi/ticket/3862
2013-10-23 16:17:51 +00:00
Nathan Hjelm
cde3b05ed3 Add support for the Intel scif interface.
Depends on #3847.

cmr=v1.7.4:reviewer=rhc

This commit was SVN r29490.
2013-10-23 15:59:14 +00:00
Dave Goodell
e9dbb66e58 mpool/rdma: fix memory leak at module finalize
Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

This commit was SVN r29487.
2013-10-23 15:51:55 +00:00
Dave Goodell
647e5a6fd2 rcache/vma: fix module finalization memory leaks
Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

This commit was SVN r29486.
2013-10-23 15:51:44 +00:00
Dave Goodell
d969cfa513 usnic: correctly clean up verbs resources
Due to deallocation ordering (and an entirely missed deallocation), we
were leaking modest amounts of memory inside libusnic_verbs.

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

This commit was SVN r29485.
2013-10-23 15:51:33 +00:00
Dave Goodell
a6ed232a10 usnic: fix several memory leaks
- some free lists simply were not being OBJ_DESTRUCTed, so they never
  freed their internal memory

- channel->recv_segs.ctx was being assigned in a way that got clobbered
  by ompi_free_list_init_new, so the cleanup code that relied on it
  being set never ran

- numerous other ".ctx" assignments were similarly ineffectual and were
  not being consumed, so I deleted them

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

This commit was SVN r29484.
2013-10-23 15:51:22 +00:00
Dave Goodell
c9b2343982 usnic: add ompi_btl_usnic_component_debug helper
This new routine can be called in exceptional situations, either
conditionally in BTL code or from a debugger, to help with debugging in
cases where MSGDEBUG1/2 or stats logging are impractical but more detail
is needed.

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

This commit was SVN r29483.
2013-10-23 15:51:11 +00:00
Dave Goodell
d0b7d125b2 usnic: refactor usnic_stats_callback
Pull the bulk of the functionality out into a new routine,
ompi_btl_usnic_print_stats, which can be used in other debugging
contexts.  This also lets us eliminate the module->final_stats state
tracking.

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

This commit was SVN r29482.
2013-10-23 15:50:57 +00:00
Nathan Hjelm
d34a4300b8 Fix various bugs in mca_base_pvar.
Fixes:

 - Segmentation fault when using watermark variables.

 - Segmentation fault when using a handle bound to a no longer valid
   performance variable.

 - Incorrect return codes from MPI_T_pvar_* functions.

cmr=v1.7.4:reviewer=jsquyres

This commit was SVN r29481.
2013-10-23 15:47:15 +00:00
Jeff Squyres
0fb8edd720 Trivial comment change
This commit was SVN r29480.
2013-10-23 10:15:18 +00:00
Mike Dubman
d6ead2a3a5 Add support for routable ROCE where different subnet_id is a valid to proceed with MPI routing.
(can happen in the same LAN)
developed by vasily, reviewed by miked
cmr=v1.7.4:reviewer=ompi-gk1.7

This commit was SVN r29479.
2013-10-23 06:08:54 +00:00
Ralph Castain
16b1ad052f Silence compiler warning
This commit was SVN r29478.
2013-10-23 04:13:51 +00:00
Nathan Hjelm
5bf6555604 Fix locality when in the case where the OMPI_RTE_HOST_ID is not found.
cmr=v1.7.4:ticket=3847

This commit was SVN r29475.

The following Trac tickets were found above:
  Ticket 3847 --> https://svn.open-mpi.org/trac/ompi/ticket/3847
2013-10-22 19:07:03 +00:00
Rolf vandeVaart
3c916d55c9 Fix two issues pointed out in review of ticket #3870.
This commit was SVN r29473.
2013-10-22 17:28:12 +00:00
Mike Dubman
d27cffedb9 expand tabs to 4 spaces
cd ompi/mca/coll/fca
for i in *.[ch]; do expand -t 4 $i > koko && mv koko $i; done
Refs: #3799

This commit was SVN r29472.
2013-10-22 17:05:55 +00:00
Jeff Squyres
6714890244 paffinity.h is gone and won't be coming back.
This commit was SVN r29467.
2013-10-22 15:59:00 +00:00
Nathan Hjelm
7bee047e5d Fix rentry check in communicator request progress.
cmr=v1.7.4:ticket=3796

This commit was SVN r29465.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-22 15:33:39 +00:00
Nathan Hjelm
280a89448f Make btl/vader valgrind safe.
cmr=v1.7.4:reviewer=samuel

This commit was SVN r29464.
2013-10-22 15:33:32 +00:00
Jeff Squyres
506d0e96f4 Fix the IN_PLACE detection for Fortran SCATTER and SCATTERV.
Thanks to Charles Gerlach for identifying the issue.

Oddly, this issue exists in trunk and v1.7, but ''not'' in the v1.6
tree (!).

cmr=v1.7.4:reviewer=hjelmn

This commit was SVN r29463.
2013-10-22 14:55:17 +00:00
Jeff Squyres
09fae6e62b Prefix DSO filenames with "lib" so that Automake doesn't complain.
Follow the convention established by the ompi/mca/common/sm tree and
prefix both the "install" and "no install" versions of the build with
"lib" so that Automake doesn't complain.  Differentiate the two by
adding a "_noinst" suffix to the "no install" version.

This commit was SVN r29462.
2013-10-22 13:16:33 +00:00
Matthias Jurenz
582d5337ce Changes to VT's configure:
- removed potential double-'/' in CUPTIDIR which makes trouble with rpmbuild's debugedit program (fixes trac:3854)

This commit was SVN r29461.

The following Trac tickets were found above:
  Ticket 3854 --> https://svn.open-mpi.org/trac/ompi/ticket/3854
2013-10-22 09:02:11 +00:00
Rolf vandeVaart
0cd1e8dfd9 Add runtime support to turn off CUDA IPC support.
This commit was SVN r29444.
2013-10-16 16:48:18 +00:00
Rolf vandeVaart
9f83405c78 Fix one more corner case initialization issue.
This commit was SVN r29443.
2013-10-16 16:39:19 +00:00
Ralph Castain
bd0b13221b Cleanup ompi_info change to silence compiler warning
This commit was SVN r29436.
2013-10-14 16:57:50 +00:00
Ralph Castain
24c811805f ****************************************************************
This change contains a non-mandatory modification
       of the MPI-RTE interface. Anyone wishing to support
       coprocessors such as the Xeon Phi may wish to add
       the required definition and underlying support
****************************************************************

Add locality support for coprocessors such as the Intel Xeon Phi.

Detecting that we are on a coprocessor inside of a host node isn't straightforward. There are no good "hooks" provided for programmatically detecting that "we are on a coprocessor running its own OS", and the ORTE daemon just thinks it is on another node. However, in order to properly use the Phi's public interface for MPI transport, it is necessary that the daemon detect that it is colocated with procs on the host.

So we have to split the locality to separately record "on the same host" vs "on the same board". We already have the board-level locality flag, but not quite enough flexibility to handle this use-case. Thus, do the following:

1. add OPAL_PROC_ON_HOST flag to indicate we share a host, but not necessarily the same board

2. modify OPAL_PROC_ON_NODE to indicate we share both a host AND the same board. Note that we have to modify the OPAL_PROC_ON_LOCAL_NODE macro to explicitly check both conditions

3. add support in opal/mca/hwloc/base/hwloc_base_util.c for the host to check for coprocessors, and for daemons to check to see if they are on a coprocessor. The former is done via hwloc, but support for the latter is not yet provided by hwloc. So the code for detecting we are on a coprocessor currently is Xeon Phi specific - hopefully, we will find more generic methods in the future.

4. modify the orted and the hnp startup so they check for coprocessors and to see if they are on a coprocessor, and have the orteds pass that info back in their callback message. Automatically detect that coprocessors have been found and identify which coprocessors are on which hosts. Note that this algo isn't scalable at the moment - this will hopefully be improved over time.

5. modify the ompi proc locality detection function to look for coprocessor host info IF the OMPI_RTE_HOST_ID database key has been defined. RTE's that choose not to provide this support do not have to do anything - the associated code will simply be ignored.

6. include some cleanup of the hwloc open/close code so it conforms to how we did things in other frameworks (e.g., having a single "frame" file instead of open/close). Also, fix the locality flags - e.g., being on the same node means you must also be on the same cluster/cu, so ensure those flags are also set.

cmr:v1.7.4:reviewer=hjelmn

This commit was SVN r29435.
2013-10-14 16:52:58 +00:00
Mike Dubman
2141e9e6b4 tools: Add oshmem_info utility
Reworked ompi_info tool to be close with orte_info implementation.
ompi_info_register_types(), ompi_info_close_components() and
ompi_info_show_ompi_version() are moved to runtime/ompi_info_support.c.

Added runtime/oshmem_info_support layer that exports following api to be
used into oshmem_info tool as
oshmem_info_register_types()
oshmem_info_register_framework_params()
oshmem_info_close_components()
oshmem_info_show_oshmem_version()
These functions call ompi_info_support related interfaces as long as
Oshmem supports Open MPI/SHMEM combination.

Now orte_info/ompi_info/oshmem_info have identical implementation approach.

Possible improvement:
OSHMEM processing of --config option is the same as OMPI`s (code is duplicated).
Probably list of info_support interfaces can be extended by xxx_info_do_config().
developed by Igor, reviewed by miked

This commit was SVN r29429.
2013-10-12 19:03:32 +00:00
Mike Dubman
5a7dff2d15 fix icc warning
fixed by Dinar, reviewed by miked
cmr=v1.7.4:reviewer=ompi-gk1.7

This commit was SVN r29428.
2013-10-12 18:04:28 +00:00
Jeff Squyres
eabbcd1157 Fix a pair of minor errors in the affinity MPI extension.
* Use the right length for memset/strncpy
* Return the set return value (vs. unconditionally returning
  OMPI_SUCCESS)

cmr=v1.7.4:reviewer=dgoodell:subject=Fix a pair of minor errors in the affinity MPI extension

This commit was SVN r29427.
2013-10-11 21:17:38 +00:00
Jeff Squyres
b5e2ae86ad Remove all of our "to-do" items from the README.txt.
This commit was SVN r29424.
2013-10-11 16:43:56 +00:00
Rolf vandeVaart
fbf143f3b4 Move another function that was missed in r29347.
This commit was SVN r29422.

The following SVN revision numbers were found above:
  r29347 --> open-mpi/ompi@ce61985503
2013-10-10 14:48:56 +00:00
Jeff Squyres
d9be19f011 Added shared library versions to those who were missing it.
The following common shared libraries did not have versioning:

 * ompi/common/ofacm
 * ompi/common/verbs
 * ompi/common/ugni

Additionally, we still had shared library versions in VERSION for the
following libraries, which no longer exist:

 * ompi/common/portals
 * opal/common/hwloc

This commit was SVN r29421.
2013-10-10 13:25:57 +00:00
Nathan Hjelm
e11233cb65 Remove unnecessary member from the comm idup context.
Refs trac:3796

This commit was SVN r29419.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-09 22:00:17 +00:00
Jeff Squyres
2d7d7ab731 Absoft caught that bind(c) functions can't have OPTIONAL dummy arguments.
Also, removed an MPI_Aint snuck through (which is a C type, not a Fortran
type).  Oddly, the Intel compiler complained about neither of these
issues.  :-\

This commit was SVN r29411.
2013-10-09 14:29:34 +00:00
Ralph Castain
9902748108 ***** THIS INCLUDES A SMALL CHANGE IN THE MPI-RTE INTERFACE *****
Fix two problems that surfaced when using direct launch under SLURM:

1. locally store our own data because some BTLs want to retrieve 
   it during add_procs rather than use what they have internally

2. cleanup MPI_Abort so it correctly passes the error status all
   the way down to the actual exit. When someone implemented the
   "abort_peers" API, they left out the error status. So we lost
   it at that point and *always* exited with a status of 1. This 
   forces a change to the API to include the status.

cmr:v1.7.3:reviewer=jsquyres:subject=Fix MPI_Abort and modex_recv for direct launch

This commit was SVN r29405.
2013-10-08 18:37:59 +00:00
Jeff Squyres
0d093176e1 Add missing .so version numbers for libmpi_usempif08.so.
cmr=v1.7.3:reviewer=rhc:subject=Add missing libmpi_usempif08 shared lib

This commit was SVN r29401.
2013-10-08 16:20:12 +00:00
Jeff Squyres
66dadbe1e7 Per RFC, remove the udapl BTL.
This commit was SVN r29400.
2013-10-08 15:18:59 +00:00
Jeff Squyres
a3606c4029 Add weak symbol #defines.
Fixes compile errors if you compile --without-weak-symbols.

This commit was SVN r29396.
2013-10-08 14:54:40 +00:00
Jeff Squyres
ad4abdbf53 Avoid using /* in the comment (which starts a C comment)
Since this header is included in .F90 files (which are preprocessed,
vs. .f90 files, which are *not* preprocessed), we don't want to
accidentally start C-style comments, which are recognized by some
Fortran compiler preprocessors (e.g., Absoft).

This commit was SVN r29394.
2013-10-08 14:22:55 +00:00
Jeff Squyres
ceecc04bfe Some Fortran compilers warn about ! comments after #endif.
So just move the comment to the prior line, and it's all good.  This
is obviosuly not *necessary*, but it helps cut down on warning noise.

This commit was SVN r29393.
2013-10-08 13:47:44 +00:00
Jeff Squyres
9f9fb5ce38 Add weak symbols for the MPI-3.1 MPI_Alloc_mem_cptr fortran subroutine.
This subroutine was added in an errata to MPI-3.0; here's the MPI
Forum ticket about it:
    
    https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/390

This commit was SVN r29385.
2013-10-04 22:43:40 +00:00
Jeff Squyres
c08f97b030 Fix problems with calling back-end BIND(C) ompi_*_f() functions.
BIND(C) doesn't let us have LOGICAL parameters, so we have to be
creative in how we invoke back-end ompi_*_f() C functions.
Additionally, the mpi_f08 type for MPI_Status presented some
difficulties, too.
    
See the large comment in
ompi/mpi/fortran/use-mpi-f08/mpi-f-interfaces-bind.h that explains
this in much more detail.

This commit was SVN r29384.
2013-10-04 22:43:07 +00:00
Jeff Squyres
f23d3bca64 Remove BIND(C) from all mpi_f08 interfaces.
This commit was SVN r29383.
2013-10-04 22:41:59 +00:00
Jeff Squyres
e81e3ccee0 Add missing implementation of MPI_FREE_MEM in the TKR mpi module.
This commit was SVN r29382.
2013-10-04 22:38:57 +00:00
Jeff Squyres
886e2cbf0f Remove and eliminate this extra redundant phrase.
This commit was SVN r29381.
2013-10-04 22:12:04 +00:00
Jeff Squyres
4899c531d3 Add PMPI versions for all ignore-TKR Fortran mpi module interfaces.
This commit was SVN r29380.
2013-10-04 21:58:56 +00:00
Rolf vandeVaart
3bd02fbaf5 Add one more verbose debug output that prints when we are out of memory.
This commit was SVN r29378.
2013-10-04 18:56:06 +00:00
Nathan Hjelm
b025babfec Correctly set the state for communicator requests. Refs trac:3796
This commit was SVN r29377.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-04 17:34:54 +00:00
Nathan Hjelm
ba4b0f9235 Remove meaningless checks. Refs trac:3828
This commit was SVN r29375.

The following Trac tickets were found above:
  Ticket 3828 --> https://svn.open-mpi.org/trac/ompi/ticket/3828
2013-10-04 17:24:59 +00:00
Nathan Hjelm
70878764d7 Silence compiler warnings on 32-bit platforms. Refs trac:3828
This commit was SVN r29374.

The following Trac tickets were found above:
  Ticket 3828 --> https://svn.open-mpi.org/trac/ompi/ticket/3828
2013-10-04 15:53:14 +00:00
Jeff Squyres
be191619a9 Remove erroneous use of "MPI_Aint".
There is no "MPI_Aint" in the Fortran interface.  Surprisingly, the
Intel compiler didn't choke on this, but the Absoft compiler did.

This commit was SVN r29371.
2013-10-04 15:27:29 +00:00
Rolf vandeVaart
66725f6973 Enable some CUDA-aware support on tcp btl. Only when configured in.
This commit was SVN r29364.
2013-10-04 12:50:16 +00:00
Ralph Castain
f4f2287958 Singletons currently start out by spawning an HNP - this is required solely in the cases where the singleton subsequently calls MPI_Comm_spawn or publishes port info without support from an external orte-server. In all other cases, the HNP is of no value and can actually be a detriment by creating additional overhead on the node. This is particularly concerning for async operations where processes may begin as singletons and then dynamically wireup to perform pt2pt communications.
So we now allow singletons to start on their own, only spawning an HNP when initiating an operation that actually requires it.

cmr:v1.7.4:reviewer=jsquyres

This commit was SVN r29354.
2013-10-04 02:58:26 +00:00
Rolf vandeVaart
4dd1c86b36 Add a few support functions for future features.
This commit was SVN r29353.
2013-10-03 21:06:17 +00:00
Ralph Castain
61c4baefe0 Silence compiler warning
Refs trac:3796

This commit was SVN r29352.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-03 19:50:10 +00:00
Rolf vandeVaart
ce61985503 Move registration function inside initial initialization function.
This commit was SVN r29347.
2013-10-03 14:14:42 +00:00
Nathan Hjelm
6232ef3bfb At coll_select time we can not check whether the communicator has a
virtual topology. Remove code checking for a virtual topology until
this flag is set before coll_select.

This commit was SVN r29344.
2013-10-03 03:37:46 +00:00
Nathan Hjelm
539fab1600 Fix typo in communicator destruction
This commit was SVN r29343.
2013-10-03 01:46:36 +00:00
Nathan Hjelm
c17b21b11d Due to MPI_Comm_idup we can no longer use the communicator's CID as
the fortran handle. Use a seperate opal_pointer_array to keep track of
the fortran handles of communicators.

This commit also fixes a bug in ompi_comm_idup where the newcomm was not
set until after the operation completed.

cmr=v1.7.4:reviewer=jsquyres:ticket=trac:3796

This commit was SVN r29342.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-03 01:11:28 +00:00
Jeff Squyres
dc9bb26902 Fix one more typo in Fortran interfaces.
Refs trac:3796

This commit was SVN r29339.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-02 18:53:19 +00:00
Nathan Hjelm
b3240df1b1 Merge in Jeff's fortran fixes for new communicator duplicator functions
This commit was SVN r29338.
2013-10-02 18:42:04 +00:00
Ralph Castain
01bd434fa6 Add missing include
Refs trac:3800

This commit was SVN r29337.

The following Trac tickets were found above:
  Ticket 3800 --> https://svn.open-mpi.org/trac/ompi/ticket/3800
2013-10-02 17:51:24 +00:00
Nathan Hjelm
9235b290d5 Update man pages for MPI-3 and add some missing man pages for MPI-2.x
functions.

cmr=v1.7.4

This commit was SVN r29336.
2013-10-02 14:27:47 +00:00
Nathan Hjelm
63084b1003 Add fortran bindings for MPI-3 communicator creation functions.
Thanks to Jeff for finding and fixing compilation issues with
the new fortran bindings.

cmr=v1.7.4:reviewer=jsquyres:ticket=trac:3796

This commit was SVN r29335.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-02 14:26:58 +00:00
Nathan Hjelm
195c892a9d Add support for MPI_Comm_dup_with_info, MPI_Comm_create_group, and
MPI_Comm_idup.

As part of this work I implemented a basic request scheduler in
ompi/comm/comm_request.c. This scheduler might be useful for more
than just communicator requests and could be moved to ompi/request
if there is a demand. Otherwise I will leave it where it is.

Added a non-blocking version of ompi_comm_set to support ompi_comm_idup.
The call makes a recursive call to comm_dup and a non-blocking version
was needed. To simplify the code the blocking version calls the nonblocking
version and waits on the resulting request if one exists.

cmr=v1.7.4:reviewer=jsquyres:ticket=trac:3796

This commit was SVN r29334.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-02 14:26:40 +00:00
Nathan Hjelm
7bedf62dd8 Add basic algorithms for the remaining non-blocking collectives.
The algorithms are intended for MPI-3.0 compliance and are not
optimized. We should aim to add better algorithms in the future through
cheetah.

MPI_Iallreduce and MPI_Igatherv on intercommunicators are required for
MPI_Comm_idup support.

cmr=v1.7.4:reviewer=brbarret:ticket=trac:2715

This commit was SVN r29333.

The following Trac tickets were found above:
  Ticket 2715 --> https://svn.open-mpi.org/trac/ompi/ticket/2715
2013-10-02 14:26:23 +00:00
Mike Dubman
19748e6957 fix race condition which can happen on finalize
1. Change in rte api implementation: now comm_world used to do p2p. 
This allows to not worry about other comms being destroyed.

2. added a notification mechanism with a help of which runtime can say libhcoll that RTE api can not be used any longer. 
pass a pointer to a flag, and its size to libhcoll.
The flag changes when the RTE is no longer available. 
Currently this flag is just ompi_mpi_finalized global bool value.

cmr=v1.7.3:reviewer=jladd

This commit was SVN r29331.
2013-10-02 13:38:47 +00:00
Ralph Castain
5bd0b42356 Store the proc's locality on the ompi_proc_t
Refs trac:3766

This commit was SVN r29325.

The following Trac tickets were found above:
  Ticket 3766 --> https://svn.open-mpi.org/trac/ompi/ticket/3766
2013-10-02 01:36:52 +00:00
Jeff Squyres
00bbab4dae Remove commented-out code for deprecated functions that were not added to MPI-3.
This commit was SVN r29320.
2013-10-01 21:20:45 +00:00
Nathan Hjelm
4f12406436 Don't check for neighborhood collective routines on non-virtual topology communicators
This commit was SVN r29319.
2013-10-01 19:59:18 +00:00
Matthias Jurenz
0a841eb762 revised r29314
- adapted Open MPI version check (the "const" stuff will come with version 1.7.4, not from 1.9.0)
	- removed the const keyword from the deprecated functions MPI_Type_hindexed and MPI_Type_struct
	  TODO: Since MPICH v3.x adds the const keyword to that functions we need a configure test to figure out whether adding const is required. (only relevant for the stand-alone version of VampirTrace)

This commit was SVN r29317.

The following SVN revision numbers were found above:
  r29314 --> open-mpi/ompi@29b22f350e
2013-10-01 14:24:50 +00:00
Matthias Jurenz
29b22f350e revised r29280
This commit was SVN r29314.

The following SVN revision numbers were found above:
  r29280 --> open-mpi/ompi@5c41bdc746
2013-10-01 12:43:15 +00:00
George Bosilca
d0ad20aacb Don't use ORTE specifics in the OMPI layer. Instead use the RTE equivalents.
Patch submitted by Geoffroy Vallee.

This commit was SVN r29303.
2013-09-30 23:31:04 +00:00
Jeff Squyres
d04ea88d87 Missed updating the profiling versions of the neighbor collectives in r29299.
Refs trac:3802.

This commit was SVN r29302.

The following SVN revision numbers were found above:
  r29299 --> open-mpi/ompi@66eb7ff610

The following Trac tickets were found above:
  Ticket 3802 --> https://svn.open-mpi.org/trac/ompi/ticket/3802
2013-09-30 19:45:09 +00:00
Jeff Squyres
4af194ca32 Missed updating the profiling versions of [I]Alltoallw in r29298.
Refs trac:3814.

This commit was SVN r29301.

The following SVN revision numbers were found above:
  r29298 --> open-mpi/ompi@0acebc0a1f

The following Trac tickets were found above:
  Ticket 3814 --> https://svn.open-mpi.org/trac/ompi/ticket/3814
2013-09-30 19:44:24 +00:00
Jeff Squyres
66eb7ff610 Fix the !MPI_[I]Neighbor_* mpi_f08 interfaces.
Use the same trick for send/recvtypes as we did in r29298 for
![I]Alltoallw.  Also, add all prototypes for all the back-end
ompi_neighbor_*_f functions.

Refs trac:3802

This commit was SVN r29299.

The following SVN revision numbers were found above:
  r29298 --> open-mpi/ompi@0acebc0a1f

The following Trac tickets were found above:
  Ticket 3802 --> https://svn.open-mpi.org/trac/ompi/ticket/3802
2013-09-30 17:54:12 +00:00
Jeff Squyres
0acebc0a1f Make the Alltoall/Ialltoallw F08 interfaces a little less sucky.
Use proper array types for the sendtypes and recevtypes params in the
definition of these subroutines (since they're prototyped to be array
parameters in the module).  See the comment in the code for a more
complete explanation.

Note that after talking to Craig Rasumussen, he says that this is
fairly common practice in the Fortran community (i.e., pass a scalar
that is part of an array to effectively pass an offset into that
array, since Fortran passes by reference).  So this might be a hack,
but it's a commonly-accepted hack.

Reviewed by Craig Rasmussen.

cmr=v1.7.3:subject=Fix [I]Alltoallw mpi_f08 wrapper functions

This commit was SVN r29298.
2013-09-30 17:50:43 +00:00
Jeff Squyres
b84863be20 Add missing MPI_Dist_graph interfaces to the ignore-TKR Fortran mpi module bindings.
This commit was SVN r29295.
2013-09-30 16:09:10 +00:00
Nathan Hjelm
f3d18028e5 Fix typo in uGNI prepare source that could cause incorrect results with
non-contiguous datatypes.

cmr=v1.7.3

This commit was SVN r29294.
2013-09-30 16:00:58 +00:00
Mike Dubman
9bf7578ff2 fix memory corruption
cmr:v1.7.3:reviewer=ompi-rm1.7

This commit was SVN r29293.
2013-09-30 06:18:12 +00:00
Jeff Squyres
0939788fd4 README.txt was removed, so remove it from EXTRA_DIST.
This commit was SVN r29292.
2013-09-29 21:52:52 +00:00
Oscar Vega-Gisbert
2f81173acf Update Javadoc of MPIException.
This commit was SVN r29291.
2013-09-29 10:57:14 +00:00
Oscar Vega-Gisbert
b97951ab3b Allow NULL buffers to send/recv 0 items as control messages.
This commit was SVN r29290.
2013-09-29 10:36:09 +00:00
Jose Roman
f656c9859c Improved README.JAVA; remove README file in java directory
This commit was SVN r29289.
2013-09-29 10:22:38 +00:00
George Bosilca
90c42bf762 Rearrange the #include to minimize clutter.
This commit was SVN r29286.
2013-09-28 17:15:33 +00:00
Jeff Squyres
4313bbbe20 Fix type in weak symbol declarations for the new _x functions.
This commit was SVN r29284.
2013-09-28 12:31:56 +00:00
Jeff Squyres
c0232e031c Add some missing declarations to allow the new Fortran neighbor
collective interfaces to compile.

This commit was SVN r29283.
2013-09-28 12:14:25 +00:00
Jeff Squyres
76450fe629 Add "jdoc" target to make javadocs
This commit was SVN r29282.
2013-09-28 12:11:22 +00:00
Jeff Squyres
5c41bdc746 Temporary VT fix:
* Always enable "const" in the wrapper functions, even though Open MPI
  doesn't advertise itself as MPI-3.0 yet
* Remove CONST from MPI_Type_hindexed, MPI_Type_struct (because
  they're deprecated functions, and never had const added to them)

This commit was SVN r29280.
2013-09-28 10:28:53 +00:00
Jeff Squyres
114022146a Add a missing "const" to MPI_Unpack (addendum to r29266).
Refs trac:3785.

This commit was SVN r29278.

The following SVN revision numbers were found above:
  r29266 --> open-mpi/ompi@0b8fc13299

The following Trac tickets were found above:
  Ticket 3785 --> https://svn.open-mpi.org/trac/ompi/ticket/3785
2013-09-27 12:48:28 +00:00
George Bosilca
f60365a91e Allow the trunk to cimpile after r29265. The addition of the neighborhood
collective to the mca_coll_base_comm_coll_t structure increased the size
of the ompi_communicator_t over the limit of the predefined padding
(PREDEFINED_COMMUNICATOR_PAD).

This fix is a temporary fix to allow the trunk to compile. Unfortuantely
it breaks the compatibility with all other versions of Open MPI. Please
read the comment in this header file for a more complete explanation.

This commit was SVN r29277.

The following SVN revision numbers were found above:
  r29265 --> open-mpi/ompi@c5596548b2
2013-09-27 07:25:26 +00:00
Ralph Castain
d565a76814 Do some cleanup of the way we handle modex data. Identify data that needs to be shared with peers in my job vs data that needs to be shared with non-peers - no point in sharing extra data. When we share data with some process(es) from another job, we cannot know in advance what info they have or lack, so we have to share everything just in case. This limits the optimization we can do for things like comm_spawn.
Create a new required key in the OMPI layer for retrieving a "node id" from the database. ALL RTE'S MUST DEFINE THIS KEY. This allows us to compute locality in the MPI layer, which is necessary when we do things like intercomm_create.

cmr:v1.7.4:reviewer=rhc:subject=Cleanup handling of modex data

This commit was SVN r29274.
2013-09-27 00:37:49 +00:00
Ralph Castain
bc92c260ca Add missing library dependency
cmr:v1.7.3:reviewer=jsquyres

This commit was SVN r29273.
2013-09-27 00:08:43 +00:00
Jeff Squyres
c065839d1f Make the Java wrapper compiler behave like the other wrapper compilers
(specifically, with regards to the --showme flag and return code).

This commit was SVN r29270.
2013-09-26 22:48:51 +00:00
Dave Goodell
2c7975eb86 common_verbs: fix bad opal_output args
Spotted by Reese Faucette <rfaucett@cisco.com>.

cmr=v1.7.3

This commit was SVN r29267.
2013-09-26 21:59:00 +00:00
Nathan Hjelm
0b8fc13299 MPI-3.0: update C bindings with const and consistent use of [] for
arrays.

The MPI 3.0 standard added const to all in buffers in the C bindings. This
commit adds the const keyword and in most cases casts const away. We will
eventually should go through and update the various interfaces (coll, pml,
io, etc) to take the const keyword. The group, comm, win, and datatype
interfaces have been updated with const.

cmr=v1.7.4:ticket=trac:3785:reviewer=jsquyres

This commit was SVN r29266.

The following Trac tickets were found above:
  Ticket 3785 --> https://svn.open-mpi.org/trac/ompi/ticket/3785
2013-09-26 21:56:20 +00:00
Nathan Hjelm
c5596548b2 MPI-3: Add support for neighborhood collectives
Blocking versions are simple linear algorithms implemented in coll/basic. Non-
blocking versions are from libnbc 1.1.1. All algorithms have been tested with
simple test cases.

cmr=v1.7.4:reviewer=jsquyres

This commit was SVN r29265.
2013-09-26 21:55:08 +00:00
Dave Goodell
a42fa78da7 usnic: SEGV in OSU benchmarks
Prevent frag from being freed out from under us in the case
the PML callback routine calls usnic_free().  We accomplish this
by delaying decrement of sf_bytes_to_ack until after the callback is
performed, since sf_bytes_to_ack == 0 is condition of freeing the frag.

Fixes Cisco bug CSCuj45094.

Authored-by: Reese Faucette <rfaucett@cisco.com>

cmr=v1.7.3

This commit was SVN r29264.
2013-09-26 21:48:04 +00:00
Jeff Squyres
e4e3e411fc Next generation of MPI Java bindings.
Includes all MPI functions supported by Open MPI, including MPI-3
functions (as of about 2 weeks ago).  Many changes compared to the
prior generation of Java bindings; not much is left from the prior
generation, actually.  The changes include (but are not limited to):

 * Add support for more than just a subset of MPI-1 functions
 * Use typical Java case for symbol names
 * Support Java Direct buffers (giving darn-near "native C"
   performance)
 * Support "type struct" better than the prior generation
 * Make more of an effort for the Java bindings to be a thin layer
   over the back-end C bindings
 * ...and more

A proper README with more information about what is supported, how to
use these bindings, etc. will be committed shortly.

This commit was SVN r29263.
2013-09-26 21:44:39 +00:00
Jeff Squyres
6c53711ac8 Provide Java MPI_Op callbacks via an intercept routine (just like how
we do MPI::Op C++ callbacks).

This commit was SVN r29262.
2013-09-26 21:36:44 +00:00
Mike Dubman
7c6ff00da5 Add caching of FCA communicators
developed by Dinar, reviewed by miked/yossi.
cmr:v1.7.3:reviewer=jsquyres:subject=add caching of FCA communicators.

This commit was SVN r29256.
2013-09-26 17:48:07 +00:00
Rolf vandeVaart
d67e3077f5 Add a check for the CUDA 6.0 version of the cuda.h header file.
This commit was SVN r29250.
2013-09-26 12:46:06 +00:00
Ralph Castain
dee8336f68 Do not use modex recv to fetch the locality as this will automatically force retrieval of hostnames, which we are trying to avoid. Instead, use the database API to fetch that info.
cmr:v1.7.3:reviewer=hjelmn

This commit was SVN r29248.
2013-09-25 21:36:25 +00:00
Joshua Ladd
d1af0e2041 Removing a silly check in the critical path
This commit was SVN r29247.
2013-09-25 21:34:57 +00:00
Joshua Ladd
82e092db1b Adding interface changes in hcoll component to support non-blocking collectives in libhcoll. This was added by Elena Elkina and reviewed by Josh Ladd.
cmr:v1.7.3:reviewer=jladd:subject=Add support for non-blocking collectives in hcoll

This commit was SVN r29244.
2013-09-25 16:14:59 +00:00
Ralph Castain
9aeba777fa Ensure we don't enter into an infinite loop looking for the PML modex key if it isn't present. The PMI implementation will load ALL modex keys when the first key is queried, so the hash db component can safely return "not found" if a subsequent key isn't present. The PML modex_recv needs to assume everything is okay if the modex recv fails to return a value.
cmr:v1.7.3:reviewer=jladd:subject=Prevent infinite loop when PML modex not found

This commit was SVN r29243.
2013-09-25 16:04:00 +00:00
Rolf vandeVaart
667c66941b Remove redundant (and possibly erroneous) alignment code in rcache. It is already handled by users of the rcache.
This was per RFC http://www.open-mpi.org/community/lists/devel/2013/09/12927.php and discussed in developers meeting.

This commit was SVN r29233.
2013-09-24 17:23:50 +00:00
Rolf vandeVaart
3b5e0736a3 Adjust verbosity levels upward.
This commit was SVN r29232.
2013-09-24 14:35:48 +00:00
Ralph Castain
34fbec1f49 Sadly, the connection priorities being defined at time of variable instantiation were being overridden just before registering the param. Thus, changes people made to the relative priority of the cpc methods were being lost. Fix it be removing the duplicate initializiation, letting the value defined at instantiation be the one actually used.
cmr:v1.7.4:reviewer=hjelmn

This commit was SVN r29212.
2013-09-19 19:45:00 +00:00
Rolf vandeVaart
804545278f Per discussion on devel list, delete unused registration cache.
http://www.open-mpi.org/community/lists/devel/2013/08/12803.php

This component was .ompi_ignored on December 17, 2006 by gleb.  Now, it is time for it go....

This commit was SVN r29209.
2013-09-18 21:22:34 +00:00
Rolf vandeVaart
c9a33fad83 Fix some tabs. Add optional messsage to dump. Some minor format change to dump function.
This commit was SVN r29208.
2013-09-18 21:08:15 +00:00
George Bosilca
85db48df0e Identification, tab vs. space.
This commit was SVN r29206.
2013-09-18 16:45:00 +00:00
Ralph Castain
f051500166 Sadly, there is no RTE-agnostic way to prune the modex entries, so we must send them all.
Refs trac:3766

This commit was SVN r29204.

The following Trac tickets were found above:
  Ticket 3766 --> https://svn.open-mpi.org/trac/ompi/ticket/3766
2013-09-18 14:09:23 +00:00
Mike Dubman
2a5c342587 Modifications that are necessary in order to meet latest libhcoll API.
cmr:v1.7.3:reviewer=jladd

This commit was SVN r29202.
2013-09-18 12:22:02 +00:00
Ralph Castain
865a7028f8 Per patch from George, with a few minor cleanups. Correctly address the complete exchange of required wireup information in Intercomm_create so all procs in the resulting communicator know how to talk to each other.
Refs trac:29166

This commit was SVN r29200.

The following Trac tickets were found above:
  Ticket 29166 --> https://svn.open-mpi.org/trac/ompi/ticket/29166
2013-09-18 02:01:30 +00:00
Ralph Castain
99611ac1d2 Revert r29166 in favor of a better solution from George
This commit was SVN r29199.

The following SVN revision numbers were found above:
  r29166 --> open-mpi/ompi@497c7e6abb
2013-09-18 01:41:26 +00:00
George Bosilca
55273f1c98 Cleanup spaces, nothing else.
This commit was SVN r29197.
2013-09-18 00:07:58 +00:00
George Bosilca
7b319a101d Fix the case where we build without Fortran support.
This commit was SVN r29194.
2013-09-17 20:45:46 +00:00
Nathan Hjelm
7929fb9dea Cleanup complex datatypes and update datatypes and operator code to use C99.
This commit changes the underlying opal complex datatypes to match the
C99 types: float _Complex, double _Complex, and long double _Complex. The
fortran and C++ types now are aliases to these basic types instead of
structure types. The operators in ompi/mca/op/base now work on only the
C99 types and the fortran types use these operators if the fortran type
matches a C complex type (this should almost always be the case.)

C99 is not is use in both the datatype and operator code and should make
the code both cleaner and much less fragile.

This commit was SVN r29193.
2013-09-17 17:49:42 +00:00
Rolf vandeVaart
440632b57f Add a function that will dump out the contents of the memory registration cache.
Useful for debugging any rcache issues.

This commit was SVN r29189.
2013-09-17 15:40:32 +00:00
Jeff Squyres
74d1278f48 btl_usnic_util.c:ompi_btl_usnic_util_abort() also passes in the strerror().
This commit was SVN r29188.
2013-09-17 12:35:51 +00:00
George Bosilca
5f686a90d0 Fix several issues regarding MPI_IN_PLACE and different flavors
of MPI_Alltoall.
 - add support for MPI_IN_PLACE in the self collective component.
 - fix the extent usage in the tuned collective component.
 - correctly use the peer counts instead of local - add support for MPI_IN_PLACE in the self collective component.
 - fix the extent usage in the tuned collective component.
 - correctly use the peer counts instead of local.
Thanks to Fujitsu for the patch.

This commit was SVN r29187.
2013-09-17 11:35:18 +00:00
Reese Faucette
8f235e6977 usnic: wrong SG entry used to compute length for small put()s
This commit was SVN r29186.
2013-09-17 08:18:02 +00:00
Reese Faucette
651d61f1a3 Clean up debugging logging a bit.
MSGDEBUG2 now means "print a one-liner for all PML calls into BTL, and
also when BTL calls PML with a recv completion (not send completions)"
MSGDEBUG1 means print more internal gory detail
MSGDEBUG is gone, replaced by MSGDEBUG1

In the process also found that PUT_DEST style fragments could
potentially be leaked in usnic_free() since send_fragment tests were
being applied to see if it was eligible to be freed.

This commit was SVN r29185.
2013-09-17 07:29:40 +00:00
Reese Faucette
f35d9b50e3 Cisco CSCuj22803: fixes for Bsend
changes required to support MPI_Bsend().  Introduces concept of
attaching a buffer to a large segment that the PML can scribble into and
we will send from.  The reason we don't use a pinned buffer and send
directly from that is that usnic_verbs does not (yes) support num_sge>1
for regular sends.  This means the data gets copied twice, but that is
unavoidable.

changed the logic in handle_large_send to be more sensible

Incorporated David's review comments

This commit was SVN r29184.
2013-09-17 07:27:39 +00:00
Reese Faucette
25b5c84d0f Cisco CSCuj13135: Data corruption in MPI_Bsend_ator_c
Do not assume that the "size" passed to alloc_send() will be the same as
the size of the message the resulting fragment will hold when
usnic_send() is called.  This means usnic_send()/usnic_put() can never
trust any pre-computed size values, and are only allowed to look at the
lengths and pointers of the elements in the desc SG list.

This commit was SVN r29183.
2013-09-17 07:25:05 +00:00
Reese Faucette
b9103c0f66 Cisco CSCuj12524: c_put_big segfault
- usnic_free() cannot free the fragment until ACK is received

This commit was SVN r29182.
2013-09-17 07:23:15 +00:00
Reese Faucette
89b5f0899b Cisco CSCuj12520: various problems running c_fence_put_1
- tag needs to be sent in *our* header, not the PML header
- usnic_alloc() should return smaller value if too much data requested
- be careful about callbacks vs removing items from lists
  (we need to remove from outr lists *before* the callback)
- improve send callback handling
- add some more MSGDEBUG2 logging and cleanup

This commit was SVN r29181.
2013-09-17 07:20:44 +00:00
Mike Dubman
432c10750a enable mxm2 from np>0
reviewed by yossi
cmr:v1.7.3:reviewer=jsquyres

This commit was SVN r29178.
2013-09-16 12:36:28 +00:00
Mike Dubman
44bfa95553 enable mxm2 by default on np>=0
reviewed by yossi
cmr:v1.7.3:reviewer=jsquyres

This commit was SVN r29177.
2013-09-16 12:32:29 +00:00
Ralph Castain
52caa75552 Gar - forgot to commit a few more cleanups
Refs trac:3696

This commit was SVN r29168.

The following Trac tickets were found above:
  Ticket 3696 --> https://svn.open-mpi.org/trac/ompi/ticket/3696
2013-09-15 15:32:01 +00:00
Ralph Castain
b64c8dafd8 Cleanup some errors in pubsub - must set the active flag before posting the recv in case the message has already arrived
Refs trac:3696

This commit was SVN r29167.

The following Trac tickets were found above:
  Ticket 3696 --> https://svn.open-mpi.org/trac/ompi/ticket/3696
2013-09-15 15:26:32 +00:00
Ralph Castain
497c7e6abb Fixes trac:2904
The intercomm "merge" function can create a linkage between procs that was not reflected anywhere in a modex, and so at least some of the procs in the resulting communicator don't know how to talk to some of the new communicator's peers.

For example, consider the case where:

1. parent job A comm_spawns a process (job B) - these processes exchange modex and can communicate

2. parent job A now comm_spawns another process (job C) - again, these can communicate, but the proc in C knows nothing of B

3. do an intercomm merge across the communicators created by the two comm_spawns. This puts B and C into the same communicator, but they know nothing about how to talk to each other as they were not involved in any exchange of contact info. Hence, collectives on that communicator now fail. 

This fix adds an API to the ompi/dpm framework that (a) exchanges the modex info across the procs in the merge to ensure all procs know how to communicate, and (b) calls add_procs to give the btl's a chance to select transports to any new procs.

cmr:v1.7.3:reviewer=jsquyres

This commit was SVN r29166.

The following Trac tickets were found above:
  Ticket 2904 --> https://svn.open-mpi.org/trac/ompi/ticket/2904
2013-09-15 15:00:40 +00:00
Rolf vandeVaart
096b8c022e Also add flag to debug output.
This commit was SVN r29163.
2013-09-13 19:47:05 +00:00
Rolf vandeVaart
c15b2a26b8 Fix some formatting. Move some CUDA-aware mca parameter initialization earlier.
This commit was SVN r29162.
2013-09-13 17:43:41 +00:00
Rolf vandeVaart
d247c26b84 In the case that HAVE_IBV_FORK_INIT is not defined, we will need this variable so we can give the user an error if they ask for it. Also fixes compile error when HAVE_IBV_FORK_INIT is not defined.
This commit was SVN r29160.
2013-09-13 14:38:49 +00:00
Rolf vandeVaart
ba9ec1b8bc For debug builds, add the ability to view memory registrations and deregistrations in the openib BTL.
This commit was SVN r29159.
2013-09-13 14:28:26 +00:00
Joshua Ladd
b3f88c4a1d Per the RFC schedule, this commit adds Mellanox OpenSHMEM to the trunk. It does not yet run on OSX or with CM PML for an MTL other than MXM. Mellanox is aware of these issues and is in the process of resolving them. This should be added to \ncmr=v1.7.4:subject=Move OSHMEM to 1.7.4:reviewer=rhc
This commit was SVN r29153.
2013-09-10 15:34:09 +00:00
Jeff Squyres
c9f05a2664 Delineate OMPI_FREE_LIST_*_MT separately.
The FREE_LIST_*_MT stuff was introduced on the SVN trunk in r28722
(2013-07-04), but so far, has not been merged into the v1.7 branch yet
(2013-09-06).  So put it in its own #ifdef, rather than defining it
based on OMPI_MAJOR_VERSION/OMPI_MINOR_VERSION.

This commit was SVN r29148.

The following SVN revision numbers were found above:
  r28722 --> open-mpi/ompi@c9e5ab9ed1
2013-09-06 19:22:56 +00:00
Jeff Squyres
e02cc0a7ec No need for this header file.
This commit was SVN r29147.
2013-09-06 19:22:28 +00:00
Jeff Squyres
c53b0890cf Ensure that btl_usnic_compat.h is in the tarball.
This commit was SVN r29140.
2013-09-06 15:53:56 +00:00
Dave Goodell
75fa28c303 usnic: v1.6<->trunk unification, trunk side
The Cisco-maintained v1.6 port of the usnic BTL has diverged from the
upstream trunk and v1.7 branches.  This commit adjusts the trunk to more
closely match the v1.6 branch to simplify future merging and
cherry-picking.

The usnic MCA parameters also need work on this side.

Should be included in usnic v1.7.3 roll-up CMR (refs trac:3760)

This commit was SVN r29138.

The following Trac tickets were found above:
  Ticket 3760 --> https://svn.open-mpi.org/trac/ompi/ticket/3760
2013-09-06 03:21:34 +00:00
Dave Goodell
a669bd01e6 usnic: revamp convertor handling.
The fix for the HPL SEGV was incorrect because it assumed the
prepare_src() routine was always allowed to return "bytes processed"
less than the requested "bytes to send".  It turns out this is only true
if the convertor is what limits the size, we are not allowed to limit
the data sent for our own reasons, else we break login in the upper
layers.

This means we need to learn the number of bytes out of the size
requested the convertor will give us, no matter how big the size is.
Unfortunately, this is a destructive test, and (currently) the only way to
learn that number is to actually have the convertor copy the data out into
buffers.

This change implements this, copying the entire data out into a chain of
send segments which are attached to the large send fragment.  Now we can
always return the proper size value to the PML.

Fixes Cisco bug CSCuj08024

Authored-by: Reese Faucette <rfaucett@cisco.com>

Should be included in usnic v1.7.3 roll-up CMR (refs trac:3760)

This commit was SVN r29137.

The following Trac tickets were found above:
  Ticket 3760 --> https://svn.open-mpi.org/trac/ompi/ticket/3760
2013-09-06 03:21:21 +00:00
Dave Goodell
0ef8336502 new bookkeeping code should return value indicating whether packet is good or not.
Authored-by: Reese Faucette <rfaucett@cisco.com>

Should be included in usnic v1.7.3 roll-up CMR (refs trac:3760)

This commit was SVN r29136.

The following Trac tickets were found above:
  Ticket 3760 --> https://svn.open-mpi.org/trac/ompi/ticket/3760
2013-09-06 03:19:32 +00:00
Dave Goodell
122890c2fd usnic: "bookeeping" --> "bookkeeping"
Should be included in usnic v1.7.3 roll-up CMR (refs trac:3760)

This commit was SVN r29135.

The following Trac tickets were found above:
  Ticket 3760 --> https://svn.open-mpi.org/trac/ompi/ticket/3760
2013-09-06 03:19:20 +00:00
Dave Goodell
0df6ed4acc usnic: squash warnings from perf improvements
Should be included in usnic v1.7.3 roll-up CMR (refs trac:3760)

This commit was SVN r29134.

The following Trac tickets were found above:
  Ticket 3760 --> https://svn.open-mpi.org/trac/ompi/ticket/3760
2013-09-06 03:19:08 +00:00
Dave Goodell
6dc54d372d usnic: Basket of performance changes including:
- round segment buffer allocation to cache-line
    - split some routines into an inline fast section and a called
      slower section
    - introduce receive fastpath in component_progress that:
        o returns immediately if there is a packet available on priority
          queue and fastpath is enabled
        o disables fastpath for 1 time after use to provide fairness to
          other processing
        o defers receive buffer posting
        o defers bookeeping for receive until next call
          to usnic_component_progress

Authored-by: Reese Faucette <rfaucett@cisco.com>

Should be included in usnic v1.7.3 roll-up CMR (refs trac:3760)

This commit was SVN r29133.

The following Trac tickets were found above:
  Ticket 3760 --> https://svn.open-mpi.org/trac/ompi/ticket/3760
2013-09-06 03:18:57 +00:00