Hi Vladimir:
I used libunwind for sampling. The APIs I used are same of perf. I think these 
APIs is an inefficient way. They must access the target program's binary file. 
Although I used DSO cache like perf.
If there a more efficient way, maybe I can modify perf use my spare time.


Regards
Chenggang
3x







At 2014-11-24 15:23:17, "Vladimir Nikulichev" <[email protected]> wrote:
>Hi Chenggang,
>
>Do you use libunwind for either sampling or one-shot stack tracing?
>For sampling Perf Events interface can be helpful for you.
>
>For one shot have a look at this tool: https://github.com/tbricks/tbstack
>Some numbers on Xeon(R) CPU E5-2690 0 @ 2.90GHz, for one thread: 
>http://lists.nongnu.org/archive/html/libunwind-devel/2014-10/msg00008.html
>Note that I measured time to freeze process and collect data, unwinding is 
>completed afterwards.
>
>—
>Vladimir
>
>> On 22 Nov 2014, at 12:05, Chenggang <[email protected]> wrote:
>> 
>> Hi:
>>      I am a user of libunwind. I am developing a profiling system, "Bianque".
>>      I use libunwind to unwind the stack on the target machine. But the time 
>> cost is too expensive.
>>      While the layers of call chain is 130 and the stack size is 1MB, we 
>> need 3.8 milliseconds to unwind it.
>>      My CPU is Xeon(R) CPU E5-2430 0 @ 2.20GHz.
>>      Is this cost normal?
>> 
>> Regards
>> Chenggang
>>      
>> 
>> 
>> _______________________________________________
>> Libunwind-devel mailing list
>> [email protected]
>> https://lists.nongnu.org/mailman/listinfo/libunwind-devel
>
_______________________________________________
Libunwind-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to