Memcheck: a memory error detector
A known source of potential false errors are the
PMPI_Reduce
family of functions, when using a custom (user-
defined) reduction function. In a reduction operation, each node notionally sends data to a "central point" which uses
the specified reduction function to merge the data items into a single item. Hence, in general, data is passed between
nodes and fed to the reduction function, but the wrapper library cannot mark the transferred data as initialised before
it is handed to the reduction function, because all that happens "inside" the
PMPI_Reduce
call. As a result you may
see false positives reported in your reduction function.
76