Page 1 of 1

PAPI Error: vperfctr_open() returned NULL

PostPosted: Thu Nov 12, 2009 10:42 am
by yazdan
Hello,
I am a new user of papi. When I run "make test" in src directory or run any example of papi, this error is reported:

PAPI Error: vperfctr_open() returned NULL, please run perfex -i to verify your perfctr installation.

Please guide me how I can get rid of that?

I installed perfctr and when I run prefex -i, this error is reported: perfex: open perfctrs: Invalid argument.

Thanks in advance,
Fahimeh

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Thu Nov 12, 2009 2:54 pm
by Dan Terpstra
It looks like the permissions are set wrong on your perfctr driver. Make sure dev/perfctr is set to world readable. You can also check the INSTALL file in the perfctr directory for instructions on setting permissions.

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Mon Apr 22, 2013 3:53 pm
by Newport_j
I am also having this same problem. I installed papi_3.6.1 on my Xeon based 64 bit Centos version 6.3.

When I tried to check it with papi_avail or papi_native-avail (both in the /home/james/Desktop/papi-3.6.1/src/util directory)

i got the follwing error:

Code: Select all
[james@james utils]$ ./papi_avail
PAPI Error: vperfctr_open() returned NULL, please run perfex -i to verify your perfctr installation.
avail.c                                  FAILED
Line # 106
System error in PAPI_library_init: No such file or directory

[james@james utils]$ ./papi_native_avail
PAPI Error: vperfctr_open() returned NULL, please run perfex -i to verify your perfctr installation.
native_avail.c                           FAILED
Line # 167
System error in PAPI_library_init: No such file or directory


I am using an earlier version of papi because I wanted to use tau-2.18 with papi and papi-5.1.0 is too new for tau 2.18 or so it said during
the make install step. So I am going back to papi-3.6.1, which I believe will work with tau-2.18.

Also, it put the compiled binaries in the 3.6.1/src/utils directory. There is nothing wrong with that except,
I thought they should go in the bin directory, but the 3.61 install does not create a binary directory.

So how do I get this error out (in the first codebox) when I type papi_avail and put the bin directory in as I think it should hold all the binaries.

Also when I ran perfex -i I got the follwing:

Code: Select all
./perfex -i
perfex: open perfctrs: No such file or directory


Any help appreciated. Thanks in advance.

Newport_j

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Mon Apr 22, 2013 9:15 pm
by danterpstra
Have you patched your kernel with perfctr?

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Tue Apr 23, 2013 9:13 am
by Newport_j
No I have not. Where is the patch, what is its name (besides patch) and what kernel version should I use in the patch?

Any help appreciated. Thanks in advance.

Newport_j

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Tue Apr 23, 2013 10:07 am
by Newport_j
james@james perfctr-2.6.x]$ uname -r
2.6.32-358.2.1.el6.x86_64

This is my kernel so do I have to patch it with perfctr?

Newport_j

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Tue Apr 23, 2013 10:47 am
by danterpstra
You don't have to patch it with perfctr, because 2.6.32 supports (barely) perf_event for counter access.
However, PAPI 3.6 does not support perf_event.
So if you insist on using PAPI 3.6, you must patch your kernel with perfctr, found in papi/src/perfctr-2.6.x.
Be advised that this is deprecated software, and you can't expect much support for it.
You'd be better off in the long run using current versions of TAU and PAPI.

Re: PAPI Error: vperfctr_open() returned NULL

PostPosted: Wed Jul 03, 2013 8:55 am
by tecnicosPT
Hi,

I have a similar problem:

My system runs Scientific Linux 6.4 x86_64 with kernel 2.6.32-358.2.1 and I have compiled PAPI-5.1.0 with only "prefix" option. I DON'T patch the kernel because I think 2.6.32 not need patching.
With this configuration, not exist /dev/perfctr device, so I can create with "mknod c 10 182 ; chmod 644 /dev/perfctr".

However, "perfex -i" returns "perfex: open perfctrs: No such device" or "perfex: open perfctrs: No such file or directory" (if I remove /dev/perfctr).

Also, if I run "papi_event_chooser NATIVE PAPI_LD_INS PAPI_SR_INS PAPI_L1_DCM", system returns "Event PAPI_L1_DCM can't be counted with others -15".

What can I do with these errors?

Thanks.