Hi Stephane,

It worked!! The problem was that I'd built my kernel with  
perfmon_intel_nhm as a MODULE (M option and not * in the kernel config  
file), that was causing this error. I did not find pmu_desc directory  
on my system and realized that my kernel config options might be  
causing the problem. I had the impression that pfmon can load the  
module depending on what PMU it detects.

Thanks for your help and this wonderful tool. :-)

Vishal

On Nov 30, 2010, at 04:58, stephane eranian wrote:

> Hi,
>
> I suspect the problem is that the kernel does not recognize
> the model number for NHM-EX. I am sure it is not in my
> latest 2.6.29 patch. But if you use the GIT tree, model 46
> is there so it should recognize it.
>
> What's in /sys/kernel/perfmon/pmu_desc/model?
> Did you compile perfmon_intel_arch or perfmon_intel_nhm?
>
> Looking at the code in perfmon_intel_arch, I found some missing
> Nehalem model numbers. But that shouldn't have caused the
> problem.
>
>
> On Tue, Nov 30, 2010 at 7:05 AM, Vishal Gupta <vis...@cc.gatech.edu>  
> wrote:
>> Hi,
>>
>> Thanks for pointing me to that post. So I downloaded the latest  
>> libpfm
>> and pfmon versions from CVS, but I still get the same error with  
>> them.
>> pfmon is detecting Nehalem PMU on my machine...below is the output
>> with -I option. I'm also pasting the output with debug and verbose
>> options enabled if that can help in figuring out the issue. Thanks  
>> for
>> your help.
>>
>> r...@host pfmon # pfmon -I
>> detected host CPUs:  64-way 1064MHz/24.0MB -- Intel(R) Xeon(R) CPU
>> X7560 @ 2.27GHz (stepping 6)
>> detected pfmon  PMU model: Intel Nehalem
>> detected libpfm PMU model: Intel Nehalem
>> max counters/set: 7
>> supported pfmon PMU models: [AMD64] [Pentium 4] [Intel Core] [Intel
>> Atom] [Intel Nehalem] [Intel architectural PMU]
>> supported sampling modules: [inst-hist] [detailed] [compact] [raw]
>> pfmlib version: 3.10
>> kernel perfmon version: 2.9
>> kernel clock resolution: 1ns (1000000000Hz)
>> host kernel architecture: x86_64
>>
>>
>> r...@host pfmon # ./pfmon --debug --verbose ls
>> pfmlib_intel_nhm.c (pfm_nhm_get_num_event_masks.1493): event
>> UNHALTED_CORE_CYCLES numasks=0
>> measuring at user privilege level ONLY
>> pfmlib_intel_nhm.c (pfm_nhm_get_num_event_masks.1493): event
>> OFFCORE_RESPONSE_0 numasks=17
>> pfmlib_intel_nhm.c (pfm_nhm_get_num_event_masks.1493): event
>> OFFCORE_RESPONSE_0 numasks=17
>> pfmlib_intel_nhm.c (pfm_nhm_get_num_event_masks.1493): event
>> OFFCORE_RESPONSE_0 numasks=17
>> 1 event set(s) defined
>> long  sampling periods(val/mask/seed): 0/0x0/0
>> short sampling periods(val/mask/seed): 0/0x0/0
>> unable to detect unavailable pmcs
>> detection of unavailable registers failed, leave it to the kernel to
>> decide
>> run_measurements.480: [5296] library dispatch for set0
>> pfmlib_intel_nhm.c (pfm_nhm_get_num_event_masks.1493): event
>> UNHALTED_CORE_CYCLES numasks=0
>> [FIXED_CTRL(pmc16)=0xa0 pmi0=1 en0=0x0 any0=0 pmi1=1 en1=0x2 any1=0
>> pmi2=1 en2=0x0 any2=0] UNHALTED_CORE_CYCLES
>> [FIXED_CTR1(pmd17)]
>> pmd setup for event set0:
>> [pmd17 set=0 ival=0x0 long_rate=0x0 short_rate=0x0 mask=0x0 seed=0
>> randomize=n]
>> exec-pattern=*
>> [5299] started task: ls
>> pfmon_sdesc_new.883: [5296] [5299] SDESC_NEW /bin/ls parent=4273792
>> pid=5296 tid=5299 flags=0x7fff000014b3
>> follow_exec=n follow_vfork=n follow_fork=n follow_pthread=n
>> [5299] 64-bit binary
>> task_pfm_init.1281: [5296]  in: [5299] ctxid=-1 monitoring=0
>> refcnt=1: /bin/ls
>> [5299] monitoring /bin/ls...
>> task_pfm_init.1393: [5296] setup perfmon ctx for [5299] monitoring=1
>> refcnt=1: /bin/ls
>> can't create perfmon context: Function not implemented
>>
>> Vishal
>>
>> On Nov 29, 2010, at 19:57, Corey Ashford wrote:
>>
>>> On 11/29/2010 01:25 PM, Vishal Gupta wrote:
>>>> I digged into it a little bit more. The machine I'm using is a
>>>> quad-socket machine with four Intel X7560 processors. X7560 is a
>>>> Nehalem-EX processor. As pfmon runs fine on another Nehalem machine
>>>> I've
>>>> tested, does that mean that pfmon is broken for Nehalem-EX
>>>> processors?
>>>> Any clues on how to go about fixing this?
>>>>
>>>> Error message:
>>>>
>>>> r...@host linux-2.6 # pfmon ls
>>>> detection of unavailable registers failed, leave it to the kernel
>>>> to decide
>>>> can't create perfmon context: Function not implemented
>>>>
>>>
>>> I see a posting from Vince Weaver back in June that says for  
>>> Nehalem-
>>> EX you need to check out the latest libpfm3 from CVS and build that,
>>> rather than using the released version.
>>>
>>> I'm not certain of that, though, because I thought there had been a
>>> final release of libpfm3 since then.
>>>
>>> In any case, it wouldn't hurt to give that a shot.
>>>
>>> - Corey
>>
>>
>> ------------------------------------------------------------------------------
>> Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
>> Tap into the largest installed PC base & get more eyes on your game  
>> by
>> optimizing for Intel(R) Graphics Technology. Get started today with  
>> the
>> Intel(R) Software Partner Program. Five $500 cash prizes are up for  
>> grabs.
>> http://p.sf.net/sfu/intelisp-dev2dev
>> _______________________________________________
>> perfmon2-devel mailing list
>> perfmon2-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/perfmon2-devel
>>


------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to