[Darshan-users] darshan-2.2.6 incorrectly detects weak symbols
Myriam Botalla
myriam.botalla at bull.net
Tue May 7 07:26:39 CDT 2013
Hi Kevin
Yes I had it!
The MPI symbols get different types in the executable and that is why checking the temporary binary could be the issue.
Here is the output:
With Intel MPI
$ ldd IOR
linux-vdso.so.1 => (0x00007fff49dff000)
libdl.so.2 => /lib64/libdl.so.2 (0x000000381a000000)
libm.so.6 => /lib64/libm.so.6 (0x000000381b000000)
libmpi.so.4 => /opt/intel/impi/4.1.0.024/intel64/lib/libmpi.so.4 (0x00007f4c86af8000)
libmpigf.so.4 => /opt/intel/impi/4.1.0.024/intel64/lib/libmpigf.so.4 (0x00007f4c868c8000)
librt.so.1 => /lib64/librt.so.1 (0x000000381b800000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x000000381a800000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003820400000)
libc.so.6 => /lib64/libc.so.6 (0x000000381a400000)
/lib64/ld-linux-x86-64.so.2 (0x0000003819c00000)
$ nm IOR|grep -i "mpi_init"
U MPI_Init
$
With Open MPI
$ ldd IOR
linux-vdso.so.1 => (0x00007fff6b558000)
libm.so.6 => /lib64/libm.so.6 (0x000000381b000000)
libmpi.so.1 => /opt/mpi/bullxmpi/1.2.5.1/lib/libmpi.so.1 (0x00007ff47e698000)
libdl.so.2 => /lib64/libdl.so.2 (0x000000381a000000)
libnuma.so.1 => /usr/lib64/libnuma.so.1 (0x000000381b400000)
librt.so.1 => /lib64/librt.so.1 (0x000000381b800000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x0000003cb8800000)
libutil.so.1 => /lib64/libutil.so.1 (0x0000003cb9000000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003820400000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x000000381a800000)
libc.so.6 => /lib64/libc.so.6 (0x000000381a400000)
/lib64/ld-linux-x86-64.so.2 (0x0000003819c00000)
$ nm IOR|grep -i "mpi_init"
U MPI_Init
$
Thanks
Myriam.
________________________________________
From: Kevin Harms [harms at alcf.anl.gov]
Sent: Monday, May 06, 2013 5:26 PM
To: Myriam Botalla
Cc: darshan-users at lists.mcs.anl.gov
Subject: Re: [Darshan-users] darshan-2.2.6 incorrectly detects weak symbols
Myriam,
can you link an executable and then give the output of:
nm <exe> | grep -i mpi_init
thanks,
kevin
On May 6, 2013, at 8:12 AM, Myriam Botalla <myriam.botalla at bull.net> wrote:
> Hi Phil,
> I've just upgraded to darshan-2.2.6 and got a serious limitation to instrumentation.
> Whether it is Intel MPI or OpenMPI I could not generate any darshan logs.
> It appears the fix added to check for fake MPI skips over instrumentation on our clusters.
>
> Actually both MPI implementations use the weak symbols:
>
> $ nm /opt/intel/impi/4.1.0.024/intel64/lib/libmpi.so.4|grep -i MPI_Init
> 0000000000602a74 B I_MPI_Initialized
> 0000000000068900 T I_MPI_init_dat_regestry_info
> 00000000001e6300 T MPID_nem_impi_init_shm_configuration
> 00000000001a87a0 W MPI_Init
> 00000000001b39d0 W MPI_Init_thread
> 00000000001a89f0 W MPI_Initialized
> 00000000001a87a0 T PMPI_Init
> 00000000001b39d0 T PMPI_Init_thread
> 00000000001a89f0 T PMPI_Initialized
> $
> $ nm /opt/mpi/bullxmpi/1.2.4.1/lib/libmpi.so|grep -i MPI_Init
> 000000000007b2d0 W MPI_Init
> 000000000007b4a0 W MPI_Init_thread
> 000000000007b6b0 W MPI_Initialized
> 000000000007b2d0 T PMPI_Init
> 000000000007b4a0 T PMPI_Init_thread
> 000000000007b6b0 T PMPI_Initialized
> 0000000000066ab0 T ompi_init_preconnect_mpi
> 0000000000064980 T ompi_mpi_init
> 0000000000397358 B ompi_mpi_init_started
> 0000000000397359 B ompi_mpi_initialized
> $
>
> Now the test for weak symbols is applied to the temporary binary. Is that the issue?
> Thanks,
> Myriam.
>
> _______________________________________________
> Darshan-users mailing list
> Darshan-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/darshan-users
More information about the Darshan-users
mailing list