Hi Stephane,

the examples in the example subdir alls say:
Your kernel does not have performance monitoring support!
Those in the 'old_interface_ia64_examples' run.


Regards, Michael


Stephane Eranian schrieb:
Michael,

I think it would be helpful if you could run the example in
libpfm, such as self, notify_self or task_smpl. If those works
then the problem definitvely is with pfmon.

Thanks.

On Thu, Apr 19, 2007 at 08:17:55AM +0200, Michael Kluge wrote:
Hi Stephane,

one more experiment: In december I build PAPI 3.2.1 on the system. By
building a pfmon using shared libs and running with the libpfm from
PAPI, it seems to work. This PAPI has been build with libpfm 3.2.


Regards, Michael

Michael Kluge wrote:
Hi Stephane,

I was a little bit crude to the soucre code. I truncated
smpl_mod/dear_itanium.c and smpl_mod/dear_itanium.c and removed the
functions call in smpl_mod/dear_hist_ia64_....c. Now it compiles with
the libpfm but still gives the same error.

Michael

Michael Kluge wrote:
Hi Stephane,

I observed one strange thing. I can build libpfm to support Montecito
only and not generic IA64 and Itanium I&II. But I can not do this with
pfmon. I can change config.mk accordingly but linking fails with
unresolved symbols:

gcc -o pfmon pfmon.o pfmon_smpl.o pfmon_util.o pfmon_system.o
pfmon_task.o pfmon_symbols.o pfmon_results.o pfmon_hash.o
pfmon_smpl_dfl.o pfmon_os.o pfmon_util_ia64.o pfmon_montecito.o -O2 -g
-Wall -Werror -D_REENTRANT -I/usr/local/include -DCONFIG_PFMON_IA64
-DPFMON_DEBUG -DDATADIR=\"/usr/local/share/pfmon\" -I.
-I/usr/include/libelf -DCONFIG_PFMON_DEMANGLE -D_GNU_SOURCE
-DCONFIG_PFMON_IA64 -DPFMON_DEBUG -g -DCONFIG_PFMON_MONTECITO -static
smpl_mod/libsmplfmt.a  -L/usr/local/lib -lpfm  -L/usr/lib -liberty
-lpthread -lelf -lm -lrt -ldl
smpl_mod/libsmplfmt.a(dear_itanium.o): In function `dear_ita_info':
/root/pfmon/pfmon/smpl_mod/dear_itanium.c:32: undefined reference to
`pfm_ita_is_dear'
/root/pfmon/pfmon/smpl_mod/dear_itanium.c:33: undefined reference to
`pfm_ita_is_dear_tlb'
smpl_mod/libsmplfmt.a(dear_itanium2.o): In function `dear_ita2_info':
/root/pfmon/pfmon/smpl_mod/dear_itanium2.c:34: undefined reference to
`pfm_ita2_is_dear'
/root/pfmon/pfmon/smpl_mod/dear_itanium2.c:35: undefined reference to
`pfm_ita2_is_dear_alat'
/root/pfmon/pfmon/smpl_mod/dear_itanium2.c:35: undefined reference to
`pfm_ita2_is_dear_tlb'

Would it be possible to get rid of this stuff and create a version of
pfmon that is only aware of Montecito?


Regards, Michael


Michael Kluge wrote:
Hi Stephane,

/usr/bin/pfmon is a link to /usr/local/bin/pfmon. profile.pl is using an
absoulte path to pfmon, so I had to set up this link.


Regards, Michael

Stephane Eranian wrote:
Michael,

On Tue, Apr 17, 2007 at 09:37:46AM +0200, Michael Kluge wrote:
mars:~ # /usr/bin/pfmon ...... sequential
cannot write PMCs: Invalid argument
session interrupted by user
mars:~ # ldd /usr/bin/pfmon
        linux-gate.so.1 =>  (0xa000000000000000)
        libpfm.so.3 => /usr/local/lib/libpfm.so.3 (0x2000000000068000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x20000000000d0000)
        libelf.so.0 => /usr/lib/libelf.so.0 (0x2000000000108000)
        libm.so.6.1 => /lib/libm.so.6.1 (0x2000000000148000)
        librt.so.1 => /lib/librt.so.1 (0x2000000000218000)
        libdl.so.2 => /lib/libdl.so.2 (0x2000000000238000)
        libc.so.6.1 => /lib/libc.so.6.1 (0x2000000000250000)
        /lib/ld-linux-ia64.so.2 (0x2000000000000000)
mars:~ # ls -la /usr/local/lib/libpfm.so.3
lrwxrwxrwx 1 root root 15 Apr 16 19:55 /usr/local/lib/libpfm.so.3 -> libpfm.so.3.2.0
mars:~ # ls -la /usr/local/lib/libpfm.so.3.2.0
-rwxr-xr-x 1 root root 535372 Apr 16 19:55 /usr/local/lib/libpfm.so.3.2.0

pfm_write_pmcs.2924: CPU0 [8430] pmc0 is unimplemented or no-access pmc_type=41
sys_perfmonctl.4938: CPU0 [8430] context unlocked
sys_perfmonctl.4939: CPU0 [8430] spinlock_irq_restore ctx e000801aeec28000 by 
[8430]
sys_perfmonctl.4951: CPU0 [8430] cmd=pfm_write_pmcs ret=-22
Pfmon is trying to write pmc0 which is not accessible on Montecito.
I have seen this before and it was du to some mismatch between pfmon and libpfm.

If you did make and make install in libpfm without changing the config.mk, then 
you
get libpfm.so in /usr/local/lib.

Similarly, if you typed make and make install with pfmon, you have it in 
/usr/local/bin.
Yet it seems for your output above that you find it in /usr/bin. Are you using 
the right
pfmon? Simply try running pfmon from  the directory you compiled it in.

--
-Stephane


--
____________________________________________
Michael Kluge, M.Sc.

Technische Universität Dresden
Center for Information Services and
High Performance Computing (ZIH)
D-01062 Dresden
Germany

Contact:
Willersbau, Room HRSK 151
Phone:  (+49) 351 463-32424
Fax:    (+49) 351 463-37773
e-mail: [EMAIL PROTECTED]
WWW:    http://www.tu-dresden.de/zih


--
____________________________________________
Michael Kluge, M.Sc.

Technische Universität Dresden
Center for Information Services and
High Performance Computing (ZIH)
D-01062 Dresden
Germany

Contact:
Room : HRSK 151
Phone:  (+49) 351 463 32424
Fax  :  (+49) 351 463 37773
email: [EMAIL PROTECTED]



_______________________________________________
perfmon mailing list
[email protected]
http://www.hpl.hp.com/hosted/linux/mail-archives/perfmon/

Reply via email to