Re: [PATCH] arm64: add OProfile support

From: Ding Tianhong
Date: Mon May 05 2014 - 04:06:27 EST


On 2014/4/29 4:39, William Cohen wrote:
> On 04/27/2014 10:32 PM, Ding Tianhong wrote:
>> On 2014/4/26 18:22, Ding Tianhong wrote:
>>> On 2014/4/26 17:23, Catalin Marinas wrote:
>>>> On 26 Apr 2014, at 09:38, Ding Tianhong <dingtianhong@xxxxxxxxxx> wrote:
>>>>> Add OProfile support for arm64, using the perf backend, and failing back
>>>>> to generic timer based sampling if PMU interrupt is not supported.
>>>>>
>>>>> I have test this patch on Cortex-A53 and Cortex-A57 motherboard, the OProfile
>>>>> could work well by PMU irq or arch timer irq.
>>>>
>>>> This came up before a few times and we also had an implementation but
>>>> decided not to merge it. We should rather get the user space oprofile to
>>>> use the perf kernel API.
>>>>
>>>> Thatâs an old thread, it may have even made it into mainline oprofile
>>>> but I havenât followed the development:
>>>>
>>>> http://marc.info/?l=oprofile-list&m=133002515616302&w=2
>>>>
>>>> Catalin
>>>>
>>
>> Hi Cadtalin:
>>
>> Sorry I could not find the implementation that not to merge the orpfile support for aarch64 till now, and
>> I still have questions that the existing code only support oprofile by arch timer event, but not
>> PMU event, this patch only add HW PMU support for oprofile, it is more accurate and stable, can you
>> give me more advise and appreciate for your help.
>>
>> Regards
>> Ding
>
> Hi Ding,
>
> There is some basic support for arm64 in oprofile using the kernel's perf infrastructure for the Applied Micro X-Gene processor checked into the upstream oprofile git repository:
>
> http://sourceforge.net/p/oprofile/oprofile/ci/34d0065a1a790fc2be05a5ef1d8b0bbf28b814fe/
>
> It should be straight forward to adapt and extend this to work for A53 and A57 processors in libop/op_cpu_type.c. At the time I didn't have access to the cortex a57/a53 documentation so this was implemented for the the base ARMv8 PMUv3 events. The processor identification for Cortex a53 and a57 will also need to be added. to /libop/op_cpu_type.c. I don't currently have access to cortex a53 or a57 processors, so I don't know what the magic vendorid and cpuid values are. What is the output of "cat /proc/cpuinfo" for each of the aarch64 processors you are running oprofile on?
>
> -Will
>

Hi Will:

Sorry for feedback so late, too busy these days. :)

Thanks for your message, you can add the the A53 and A57 to support arm-v8 for oprofile.

A53 A57
Vendid 0x41 0x41
cpuid 0xD03 0xD07

-Ding

>>
>>> Ok, I will check it and then decide the next step, thanks for your feedback.
>>>
>>> Regards
>>> Ding
>>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
>> Instantly run your Selenium tests across 300+ browser/OS combos. Get
>> unparalleled scalability from the best Selenium testing platform available.
>> Simple to use. Nothing to install. Get started now for free."
>> http://p.sf.net/sfu/SauceLabs
>> _______________________________________________
>> oprofile-list mailing list
>> oprofile-list@xxxxxxxxxxxxxxxxxxxxx
>> https://lists.sourceforge.net/lists/listinfo/oprofile-list
>>
>
>
> .
>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/