pcp
[Top] [All Lists]

Pointing pcp to alternative location for papi

To: pcp developers <pcp@xxxxxxxxxxx>
Subject: Pointing pcp to alternative location for papi
From: William Cohen <wcohen@xxxxxxxxxx>
Date: Thu, 19 Feb 2015 22:12:11 -0500
Delivered-to: pcp@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0
Hi All,

On RHEL-6.5 there is are two version of papi available: papi-4.1.3 for 
compatibility and papi-5.1.1 for newer features.  For compatibility reasons the 
papi-4.1.3 is the one generally visible to configures by default.  The problem 
is that the pcp configuration find the older 4.1.3 version rather than the 
shiny new papi-5.1.1.  I have been hacking away on on the pcp configuration to 
allow specifying an alternative directory for papi.  There are certainly things 
wrong with the patch (like it doesn't verify that includes and libraries are 
really in that directory), but it does allow selection of the papi-5.1.1 
directory.  Suggestions on how to better handle this would be appreciated.  
Maybe have separate options to specify include and lib diretories.  Note that a 
similar patch might be desired for the perfevent pmda because there is a newer 
version of libpfm associated with papi-5.1.1 on rhel6.

Default build shows libpapi-4.1.3 being used:

$  ./configure --with-papi
$ make
$ ldd  src/pmdas/papi/pmda_papi.so
        linux-vdso.so.1 =>  (0x00007fffed675000)
        libpapi.so => /usr/lib64/papi-4.1.3/libpapi.so (0x00007f5c0b630000)
        libpcp_pmda.so.3 => not found
        libpcp.so.3 => not found
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f5c0b42b000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f5c0b097000)
        libpfm.so.3 => /usr/lib64/libpfm.so.3 (0x00007f5c0adb8000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003143400000)

Configure and build specifying the papi-5.1.1 shows papi-5.1. being linked in:

$ make clean
$ ./configure --with-papi=/usr/lib64/papi-5.1.1/usr
$ make
$ ldd  src/pmdas/papi/pmda_papi.so
        linux-vdso.so.1 =>  (0x00007fff3ecf2000)
        libpapi.so.5 => /usr/lib64/papi-5.1.1/usr/lib/libpapi.so.5 
(0x00007ffe44d92000)
        libpcp_pmda.so.3 => not found
        libpcp.so.3 => not found
        libdl.so.2 => /lib64/libdl.so.2 (0x00007ffe44b8d000)
        libc.so.6 => /lib64/libc.so.6 (0x00007ffe447f9000)
        libpfm.so.4 => /usr/lib64/papi-5.1.1/usr/lib/libpfm.so.4 
(0x00007ffe444b1000)
        libsensors.so.4 => /usr/lib64/libsensors.so.4 (0x00007ffe442a1000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003143400000)
        libm.so.6 => /lib64/libm.so.6 (0x00007ffe4401d000)


-Will

Attachment: papi_alt_config2.patch
Description: Text Data

<Prev in Thread] Current Thread [Next in Thread>