Problem installing papi

Open discussion of PAPI.

Problem installing papi

Postby sfin » Fri Nov 27, 2009 11:59 am

Hi,

i am trying to install papi 3.7.1 on ubuntu 9.10 but after the configuration stage when i try to install it by typing make i got the following errors:

In file included from pcl.h:42,
from papi_internal.h:177,
from x86_cache_info.c:15:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from x86_cache_info.c:15:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_pfm_events.c:18:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_pfm_events.c:18:
pcl.h:60: error: array type has incomplete element type
sys_perf_counter_open.c:22: warning: ‘struct perf_counter_attr’ declared inside parameter list
sys_perf_counter_open.c:22: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from pcl.h:42,
from papi_internal.h:177,
from papi.c:23:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi.c:23:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_internal.c:27:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_internal.c:27:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_hl.c:22:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_hl.c:22:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from extras.c:27:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from extras.c:27:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from multiplex.c:103:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from multiplex.c:103:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_data.c:27:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_data.c:27:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from threads.c:17:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from threads.c:17:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from perfmon-memory.c:2:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from perfmon-memory.c:2:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from pcl.c:13:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from pcl.c:13:
pcl.h:60: error: array type has incomplete element type
pcl.c: In function ‘close_pcl_evts’:
pcl.c:1968: error: ‘PERF_COUNTER_IOC_DISABLE’ undeclared (first use in this function)
pcl.c:1968: error: (Each undeclared identifier is reported only once
pcl.c:1968: error: for each function it appears in.)
pcl.c: In function ‘pcl_enable_counters’:
pcl.c:2386: error: ‘PERF_COUNTER_IOC_ENABLE’ undeclared (first use in this function)
pcl.c: In function ‘_papi_hwd_reset’:
pcl.c:2423: error: ‘PERF_COUNTER_IOC_RESET’ undeclared (first use in this function)
pcl.c: In function ‘_papi_hwd_read’:
pcl.c:2480: error: ‘PERF_COUNTER_IOC_DISABLE’ undeclared (first use in this function)
pcl.c:2521: error: ‘__u64’ undeclared (first use in this function)
pcl.c:2545: error: ‘PERF_COUNTER_IOC_ENABLE’ undeclared (first use in this function)
pcl.c: In function ‘_papi_hwd_stop’:
pcl.c:2584: error: ‘PERF_COUNTER_IOC_DISABLE’ undeclared (first use in this function)
pcl.c: In function ‘mmap_read_head’:
pcl.c:2766: error: dereferencing pointer to incomplete type
pcl.c: In function ‘mmap_write_tail’:
pcl.c:2780: error: dereferencing pointer to incomplete type
pcl.c: In function ‘mmap_read’:
pcl.c:2804: error: field ‘header’ has incomplete type
pcl.c:2808: error: field ‘header’ has incomplete type
pcl.c:2813: error: field ‘header’ has incomplete type
pcl.c:2854: error: ‘PERF_EVENT_SAMPLE’ undeclared (first use in this function)
pcl.c:2857: error: ‘PERF_EVENT_LOST’ undeclared (first use in this function)
pcl.c: In function ‘_papi_hwd_dispatch_timer’:
pcl.c:2953: error: ‘__u64’ undeclared (first use in this function)
pcl.c:2953: error: expected ‘;’ before ‘ip’
pcl.c:2971: error: ‘ip’ undeclared (first use in this function)
pcl.c:2971: error: expected expression before ‘)’ token
pcl.c: In function ‘_papi_hwd_set_profile’:
pcl.c:3065: error: ‘PERF_SAMPLE_IP’ undeclared (first use in this function)
pcl.c: In function ‘_papi_hwd_set_overflow’:
pcl.c:3140: error: ‘PERF_SAMPLE_IP’ undeclared (first use in this function)
pcl.c: In function ‘_papi_hwd_update_control_state’:
pcl.c:3210: error: ‘__u64’ undeclared (first use in this function)
pcl.c:3210: error: expected ‘;’ before ‘pe_event’
pcl.c:3214: error: invalid application of ‘sizeof’ to incomplete type ‘struct perf_counter_attr’
pcl.c:3262: error: ‘pe_event’ undeclared (first use in this function)
pcl.c:3266: error: ‘PERF_TYPE_RAW’ undeclared (first use in this function)
pcl.c:3341: error: ‘PERF_FORMAT_TOTAL_TIME_ENABLED’ undeclared (first use in this function)
pcl.c:3341: error: ‘PERF_FORMAT_TOTAL_TIME_RUNNING’ undeclared (first use in this function)
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_preset.c:11:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_preset.c:11:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_vector.c:13:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_vector.c:13:
pcl.h:60: error: array type has incomplete element type
In file included from pcl.h:42,
from papi_internal.h:177,
from papi_memory.c:27:
syscalls.h:9: warning: ‘struct perf_counter_attr’ declared inside parameter list
syscalls.h:9: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from papi_internal.h:177,
from papi_memory.c:27:
pcl.h:60: error: array type has incomplete element type
make[1]: *** [libpapi.so] Error 1
make[1]: Leaving directory `/home/kasapis/Desktop/papi-3.7.1/src'
make: *** [/home/kasapis/Desktop/papi-3.7.1/src/libpfm-3.y/lib/libpfm.a] Error 2


Any help would be great!

Thanks in advance
sfin
 
Posts: 1
Joined: Fri Nov 27, 2009 11:50 am

Re: Problem installing papi

Postby Dan Terpstra » Tue Jan 05, 2010 11:32 am

Sorry for taking so long to reply to this. The problem is that the perf_counters.h file is not being found in your build.
Try the PAPI 3.7.2 release, which has more robust testing in configure to locate the proper header.
Or you can specify the location of the header from the configure command line.
See >configure --help for details.
Dan Terpstra
 
Posts: 57
Joined: Mon Aug 24, 2009 5:42 pm

Re: Problem installing papi

Postby dimalit » Fri Jan 22, 2010 2:44 pm

Sorry for using this thread, but my problem is strongly correlated with the topic starter's one!

I have Ubuntu 9.10 kernel 2.6.31.17 on AMD Athlon (Barton) 2500+ CPU.
I have SUCCESSFULLY installed PAPI 3.7.2 with "./configure --with-pcl --with-pcl-incdir=/usr/src/linux-headers-2.6.31-17/include/linux"
(as described here:http://spiral.cs.drexel.edu/wiki/Papi370Ubuntu910)

When I run "make test" it is PASSED. Then I run "make fulltest" and get a lot of messages like this:
PAPI Error: pfm_find_full_event(L2_CACHE_MISS:ALL,0xbfc730a8): event not found.
PAPI Error: pfm_find_full_event(DECODER_EMPTY,0xbfc730a8): event not found.
.......
PAPI Error: pfm_find_full_event(DISPATCHED_FPU:OPS_MULTIPLY:OPS_ADD,0xbfc730a8): event not found.
PAPI Error: 18 of 36 events in perfmon_events.csv were not valid.

(but most of the tests report "PASSED").

When I then run some program that uses PAPI I have the same output (error...event not found) and the program reports error:
"ERROR : PAPI library PAPI_query_event failed for PAPI_FP_OPS"

It seems to me that PAPI doesn't support my processor. Does it?

Thank you for answer!
dimalit
 
Posts: 2
Joined: Fri Jan 22, 2010 1:48 pm

Re: Problem installing papi

Postby Dan Terpstra » Fri Jan 22, 2010 7:48 pm

You are using a very new kernel on a very old processor.The problem you're seeing is really unrelated to the one that started this thread, but that's ok :) It looks like PAPI is supporting your processor, but not very well. The undefined events mean that the high level PAPI PRESET events defined in perfmon_events.csv are not mapping to the same events defined for the hardware. Try running utils/papi_native_avail to see what events are reported there. You can edit the csv file to remove or redefine the offending events. Caveat Emptor.
Dan Terpstra
 
Posts: 57
Joined: Mon Aug 24, 2009 5:42 pm

Re: Problem installing papi

Postby dimalit » Sat Jan 23, 2010 9:45 am

Thanks, Dan. Editing of permon_events.csv helped to remove error reports about unknown events.

BUT I still have 2 errors in programs that use papi:

1. "!!!!!!!! ERROR : PAPI library PAPI_query_event failed for PAPI_FP_OPS"
2. "PAPI_flips failed with return value = -7" (output from example program from http://spiral.cs.drexel.edu/wiki/Papi370Ubuntu910)

Lack of hardware support?

P.S. Note that PAPI does'n complain "PAPI_FP_OPS not found". It seems to be found but this doesn't help... :(
dimalit
 
Posts: 2
Joined: Fri Jan 22, 2010 1:48 pm

Re: Problem installing papi

Postby Dan Terpstra » Sun Jan 24, 2010 4:07 pm

If you run utils/papi_avail, does it say that PAPI_FP_OPS is supported? If not, this is the reason for the errors. As I recall, AMD processors prior to Opteron did not support counting floating point events.
Dan Terpstra
 
Posts: 57
Joined: Mon Aug 24, 2009 5:42 pm


Return to General discussion

Who is online

Users browsing this forum: No registered users and 2 guests

cron