Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Allen Barnett (allen_at_[hidden])
Date: 2007-08-16 09:31:26

I was running my OpenMPI 1.2.3 application under Valgrind and I observed
this error message:

==14322== Source and destination overlap in memcpy(0x41F5BD0, 0x41F5BD8,
==14322== at 0x49070AD: memcpy (mc_replace_strmem.c:116)
==14322== by 0x4A45CF4: ompi_ddt_copy_content_same_ddt
(in /home/scratch/DMP/RHEL4-GCC4/lib/
==14322== by 0x7A6C386: ompi_coll_tuned_allgather_intra_bruck
(in /home/scratch/DMP/RHEL4-GCC4/lib/openmpi/
==14322== by 0x4A29FFE: ompi_comm_split
(in /home/scratch/DMP/RHEL4-GCC4/lib/
==14322== by 0x4A4E322: MPI_Comm_split
(in /home/scratch/DMP/RHEL4-GCC4/lib/
==14322== by 0x400A26: main
(in /home/scratch/DMP/severian_tests/ompi/a.out)

Attached is a reduced code example. I run it like:

mpirun -np 3 valgrind ./a.out

I only see this error if there are an odd number of processes! I don't
know if this is really a problem or not, though. My OMPI application
seems to work OK. However, the linux man page for memcpy says
overlapping range copying is undefined.

Other details: x86_64 (one box, two dual-core opterons), RHEL 4.5,
OpenMPI-1.2.3 compiled with the RHEL-supplied GCC 4 (gcc4 (GCC) 4.1.1
20070105 (Red Hat 4.1.1-53)), valgrind 3.2.3.


Allen Barnett
Transpire, Inc.
e-mail: allen_at_[hidden]
Ph: 518-887-2930

  • application/x-bzip attachment: info.bz2