1
1
openmpi/ompi/mca
Dave Goodell 82db913490 usnic: fix module_recv_buffers perf regression
Cisco v1.6 git commit 913ec6c and upstream trunk r29593 (segfault fix)
introduced a performance regression by inadvertently disabling the
`module_recv_buffers` functionality.  With those changes in place, the
`btl_usnic_recv.c` logic would end up mallocing a buffer that should
have otherwise come from a `module_recv_buffers` pool.  It also resulted
in a small, bounded memory leak (128 buffers at each power-of-two size
interval).

The new version just places the buffer after the free list item with a
flexible array member.  I bumped the pool to allocate all 128 elements
up front because the deferred allocation was modestly impacting IMB
Sendrecv performance at a few sizes.

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

This commit was SVN r29631.

The following SVN revision numbers were found above:
  r29593 --> open-mpi/ompi@1ed9b8ff43
2013-11-07 01:27:31 +00:00
..
allocator rename ompi_free_list operations to _mt, as per discussions at last face to face meeting 2013-07-08 22:07:52 +00:00
bcol coll/ml: update the coll_ml_enable_fragmentation variable to support the 2013-08-27 16:36:54 +00:00
bml Remove the proc_pml and proc_bml fields from ompi_proc_t and replace with a 2013-08-30 16:54:55 +00:00
btl usnic: fix module_recv_buffers perf regression 2013-11-07 01:27:31 +00:00
coll Minor indent cleanup in init_query() 2013-11-06 15:21:09 +00:00
common Fix one more space for consistent defines. 2013-11-05 15:31:49 +00:00
crcp As per the RFC, bring in the ORTE async progress code and the rewrite of OOB: 2013-08-22 16:37:40 +00:00
dpm 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. 2013-10-04 02:58:26 +00:00
fbtl Adding typecasting with intptr_t to remove warnings. 2013-04-03 17:07:43 +00:00
fcoll update the _component.c files in ompio to use the explicit assignment of the 2013-07-22 21:11:05 +00:00
fs update the _component.c files in ompio to use the explicit assignment of the 2013-07-22 21:11:05 +00:00
io Need not do aggregator selection for one process case 2013-11-06 21:05:26 +00:00
mpool Revert r29594. That was just plain wrong. Sorry about workday configure change. 2013-11-05 14:45:56 +00:00
mtl enable mxm2 from np>0 2013-09-16 12:36:28 +00:00
op Fix the case where we build without Fortran support. 2013-09-17 20:45:46 +00:00
osc Remove the proc_pml and proc_bml fields from ompi_proc_t and replace with a 2013-08-30 16:54:55 +00:00
pml Revert r29594. That was just plain wrong. Sorry about workday configure change. 2013-11-05 14:45:56 +00:00
pubsub Add missing library dependency 2013-09-27 00:08:43 +00:00
rcache Make casting very clear. 2013-10-24 14:40:01 +00:00
rte **************************************************************** 2013-10-14 16:52:58 +00:00
sbgp Remove the proc_pml and proc_bml fields from ompi_proc_t and replace with a 2013-08-30 16:54:55 +00:00
sharedfp add unignore for me. 2013-08-06 20:47:08 +00:00
topo Avoid segfault due to uninitialized variable 2013-08-16 21:10:38 +00:00
vprotocol As per the RFC, bring in the ORTE async progress code and the rewrite of OOB: 2013-08-22 16:37:40 +00:00