Page 1 of 1

PAPI 4.2.1 Release Available

PostPosted: Tue Feb 14, 2012 2:23 pm
by danterpstra
The PAPI 4.2.1 release is now available for download at http://icl.cs.utk.edu/projects/papi/downloads/papi-4.2.1.tar.gz

This is a minor release of PAPI-C. It does not break binary or semantic compatibility with previous versions.

We have reviewed and updated all doxygen generated man pages for documentation, and reworked the output from papi_native_avail and papi_xml_event_info.
We have also added support for AMD Family 11 and 12 processors, and redefined the PAPI_FP_OPS event for Intel SandyBridge so that it only requires 4 counters and can run properly with hyperthreading enabled.
A host of bug fixes and code clean-ups have also been implemented, including significant rewrites of several components for clarity and functionality.

For a summary of changes, read the PAPI 4.2.1 Release Notes at http://icl.cs.utk.edu/viewcvs/viewcvs.cgi/PAPI/papi/RELEASENOTES.txt?revision=1.34

And for installation instructions read the Installation Notes at http://icl.cs.utk.edu/viewcvs/viewcvs.cgi/PAPI/papi/INSTALL.txt?revision=1.55

Re: PAPI 4.2.1 Release Available

PostPosted: Wed Mar 21, 2012 10:48 am
by dougcapeci
Hello,

Interested in using PAPI to due some low-level performance measurements of my linux apps. Just downloaded and successfully built latest PAPI release 4.2.1 using GNU gcc. However, I am finding that the default 'make test' target does not work out of the box after my successful build. Below, is the error message I see:

mblade1:82% make test
cd testlib; make CC="/tools/linux64/gcc-4.4.3/bin/gcc" CC_R="/tools/linux64/gcc-4.4.3/bin/gcc -pthread" CFLAGS="-I.. -g -DSTATIC_PAPI_EVENTS_TABLE -D_REENTRANT -D_GNU_SOURCE -DUSE_COMPILER_TLS -DNO_CPU_COUNTERS " OPTFLAGS="-O2 -DPAPI_NO_MEMORY_MANAGEMENT" SMPCFLGS="" OMPCFLGS="-fopenmp" NOOPT="" LDFLAGS=" " LIBRARY="../libpapi.a"
make[1]: Entering directory `/maw/y1/dcapeci/tools/papi/papi-4.2.1/src/testlib'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/maw/y1/dcapeci/tools/papi/papi-4.2.1/src/testlib'
cd ctests; make CC="/tools/linux64/gcc-4.4.3/bin/gcc" CC_R="/tools/linux64/gcc-4.4.3/bin/gcc -pthread" CFLAGS="-I.. -g -DSTATIC_PAPI_EVENTS_TABLE -D_REENTRANT -D_GNU_SOURCE -DUSE_COMPILER_TLS -DNO_CPU_COUNTERS -DPAPI_NO_MEMORY_MANAGEMENT" TOPTFLAGS="-O0" SMPCFLGS="" OMPCFLGS="-fopenmp" NOOPT="" LDFLAGS=" " LDL="-ldl" LIBRARY="../libpapi.a"
make[1]: Entering directory `/maw/y1/dcapeci/tools/papi/papi-4.2.1/src/ctests'
make[1]: Nothing to be done for `default'.
make[1]: Leaving directory `/maw/y1/dcapeci/tools/papi/papi-4.2.1/src/ctests'
ctests/zero
make: ctests/zero: Command not found
make: *** [test] Error 127

I have also manually built the test ctest/api.c, but when running it, it fails with the following error message as well:

mblade1:84% ./dougc.test
Testing PAPI_num_components... 1
Testing PAPI_num_counters... 0
Testing PAPI_start_counters... ./ctests/api.c FAILED
Line # 61
Error in PAPI_start_counters: PAPI_ESBSTR

I am running GNU Linux 2.6.9...
Linux mblade1 2.6.9-89.ELsmp #1 SMP Mon Apr 20 10:33:05 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

and my cpuinfo is as follows:

mblade1:31% ls /proc/cpu*
/proc/cpuinfo
mblade1:32% cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6321.79
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 1
siblings : 4
core id : 4
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.59
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 0
siblings : 4
core id : 2
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.60
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 1
siblings : 4
core id : 6
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.64
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 4
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.53
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 5
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 1
siblings : 4
core id : 5
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.57
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 6
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 0
siblings : 4
core id : 3
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.57
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

processor : 7
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X5460 @ 3.16GHz
stepping : 6
cpu MHz : 2000.000
cache size : 6144 KB
physical id : 1
siblings : 4
core id : 7
cpu cores : 4
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips : 6317.51
clflush size : 64
cache_alignment : 64
address sizes : 38 bits physical, 48 bits virtual
power management:

Can someone help me get started quickly? All I want to due initially is count cpu cycles.

Thanks, Regards,

DougC

Re: PAPI 4.2.1 Release Available

PostPosted: Wed Mar 21, 2012 11:55 am
by danterpstra
Doug -
Your kernel is ancient.
PAPI won't run here unless you patch the kernel with perfctr or perfmon first.
A better solution would be to install a modern kernel, preferably > 2.6.35.
Good luck!

Re: PAPI 4.2.1 Release Available

PostPosted: Wed Mar 21, 2012 12:35 pm
by dougcapeci
Thanks Dan,

It seems that I am in short-term trouble. Can you suggest any short-term performance counting mechanism that will enable me to accurately count CPU cycles without having to patch the Linux kernel. I am working on a corporate network and don't have the required sysadmin privileges to patch a kernel.

Best Regards,

DougC

Re: PAPI 4.2.1 Release Available

PostPosted: Wed Mar 21, 2012 2:45 pm
by danterpstra
What about RDTSC? It's a little tricky to access, but measures cycles.
Have you tried VTune?

Re: PAPI 4.2.1 Release Available

PostPosted: Tue Mar 27, 2012 12:39 pm
by dougcapeci
Hello Guys,

We have a bunch of Red Hat 4 machines in-house that have an old linux kernel (i.e. 2.6.9). Does anyone know what version of Red Hat runs a linux kernel that is supported by PAPI? Also interested in what version of SUSE is required as well.

Thanks, Regards,

Doug Capeci

Re: PAPI 4.2.1 Release Available

PostPosted: Wed Mar 28, 2012 11:32 am
by danterpstra
The word from RedHat is that you want RHEL 6 or newer. That's got PAPI support built-in.