tags:

views:

487

answers:

3

Hi Friends, I want to profile my code on arm 9, Is there any profiler which can give me function call timings and total cycles taken by each function? I would prefer any free profiler. I loved to work with kcachegrind in linux.

Thanks, Sunny.

+1  A: 

gprof would be the obvious choice if you are using gcc and I suppose valgrind should work too. Caveat: I am not familiar with kcachegrind

I see now that kcachegrind IS using valgrind framework, so I would imagine you would be able to run it from your development machine..

Sint
gprof on arm gives me number of calls but it does not gives me time function took in total. On computer it gives me time. Can u tell me what could be the problem.
Sunny
What I read from wikipedia about kCacheGrind is that it supports only x86, and x86-64.
Sunny
The projects I work on, first run on i386, where I do the profiling, then port down to ARM. Is this an option?
Sint
Obviously, such profiling is not going to highlight ARM specific problems.
Sint
I am also doing the same thing, Can u solve my Gprof timing problem? Do u get timing for ur program in gprof?
Sunny
A: 

If you've got some way to interrupt the code, this is free and surprisingly effective.

Mike Dunlavey
+1  A: 

I don't know any free ARM profilers.

You can try ARM RVDS 4.0 Pro. It has a good profiler. And you can use emulator instead of real hardware with it. It simplifies some things, but you'll not receive information about cache-misses/memory-latency, and results may differ from tests on real hardware.

The price of RVDS is high enough. You can try trial for 30 or 45 days, maybe this will be enough to profile all you want.

zxcat