[Darshan-users] compiling statically with intel toolchain

Salmon, Rene salmr0 at bp.com
Wed May 18 10:25:45 CDT 2016


Hi Kevin,

Thanks for the reply. We use Intel MPI and Intel ifort to compile our codes.  I tried generating the compiler wrapper and using it to compile but that does not seem to work form me. 
When I use the wrapper it bypasses darshan because of this:

    if [ -e $binfile ];                                                                                      
    then                                                                                                                                                    
        nm $binfile | grep -i "mpi_init" | grep -i "w" >& /dev/null                                          
        rc_weak=$?                                                    

If I look at the binary generated I see this.

nm $binfile | grep -i "mpi_init" 
                 U MPI_Init
                 U MPI_Initialized




Maybe this is known problem.  I seemed to have missed this section of the documentation 

http://www.mcs.anl.gov/research/projects/darshan/docs/darshan-runtime.html#_linux_clusters_using_intel_mpi

Caveat
Darshan is only known to work with C and C++ executables generated by the Intel MPI suite. Darshan will not produce instrumentation for Fortran executables. For more details please check this Intel forum discussion:


Unfortunately a very big chunk of our codes are in fortran and we use intel MPI and ifort for that.  It looks like I may be out of luck on this? 


Thanks
Rene






On 5/17/16, 6:40 PM, "Harms, Kevin" <harms at alcf.anl.gov> wrote:

>Rene,
>
>  are you using either the darshan generated compiler wrappers or trying to use the MPICH profiling hooks?
> 
>  Can you add the '-show' option to you link command. Instead of linking it will display the full link command that the wrapper is executing.
>
>kevin
>
>
>
>
>>Hi,
>> 
>>I am trying to compile darshan statically into my application using Intel’s fortran compiler and MPI library.  When I do so I get this error message:   
>>
>> 
>>-L/tstapps/asi/src/dds/lib/Linux/3.0/x86_64/Intel-16.0.1.150MPI5.1.2MKL11.3.1 -L/hpc/tstapps/SLES/3.0/x86_64/darshan/3.0.0/lib  -ldds_r3 -lgio -lfhost -Wl,-Bstatic -ldarshan -ldarshan-stubs -lz -Wl,-Bdynamic       
>>
>> 
>>/hpc/tstapps/SLES/3.0/x86_64/darshan/3.0.0/lib/libdarshan.a(darshan-posix.o): In function `__wrap_open':                                                                                                                          
>>/hpc/tstapps/src/darshan/darshan-3.0.0/darshan-runtime/lib/darshan-posix.c:378: undefined reference to `__real_open'                                                                                                              
>>/hpc/tstapps/src/darshan/darshan-3.0.0/darshan-runtime/lib/darshan-posix.c:384: undefined reference to `__real_open'                                                                                                             
>>
>>/hpc/tstapps/SLES/3.0/x86_64/darshan/3.0.0/lib/libdarshan.a(darshan-posix.o): In function `__wrap_open64':                                                                                                                       
>>
>>/hpc/tstapps/src/darshan/darshan-3.0.0/darshan-runtime/lib/darshan-posix.c:412: undefined reference to `__real_open64'                                                                                                           
>>
>>/hpc/tstapps/src/darshan/darshan-3.0.0/darshan-runtime/lib/darshan-posix.c:418: undefined reference to `__real_open64'                                                                                                           
>>
>>/hpc/tstapps/SLES/3.0/x86_64/darshan/3.0.0/lib/libdarshan.a(darshan-posix.o): In function `__wrap_creat':  
>>
>>>> 
>> 
>>the real_open routines seem to be in the libdarshan library:
>> 
>>nm /hpc/tstapps/SLES/3.0/x86_64/darshan/3.0.0/lib/libdarshan.a |grep real_open                                                                                                             
>>
>>                 U __real_open                                                                                                                                                                                                    
>>                 U __real_open64       
>>
>> 
>> 
>>Any ideas?
>> 
>>Thanks
>>Rene
>> 



More information about the Darshan-users mailing list