1

I want to profiling an android app. I follow the instructions on Android's website here: http://developer.android.com/guide/developing/tools/traceview.html

The website told me to use Debug.startMethodTracing() and Debug.stopMethodTracing() Then finally I generate a trace file for my app and successfully view that file using traceview.

At the end of that web page it says there is a tool call dmtracedump can generate function call relation graph. I follow the instructions and also install Graphviz before using it.

But no matter how I try to use dmtracedump, the tool just stuck and nothing comes out. I used commond like

dmtracedump test1.trace

dmtracedump -g test1.png test1.trace

Is there anything I got worng when using this tool? Can any one show me how to generate a graph from dmtracedump?

Thanks a lot !

henry74918
  • 274
  • 1
  • 2
  • 14

1 Answers1

2

dmtracedump is fairly broken at this point. Only the "-o" option is guaranteed to work.

fadden
  • 51,356
  • 5
  • 116
  • 166
  • Thanks for the reply! Have dmtracedump ever work fine? Or is there any other tools that can generate Call graph on Android? – henry74918 Dec 07 '10 at 11:23
  • It does if you go back far enough (looks like the bad changes went in about a year ago). – fadden Dec 07 '10 at 19:22
  • Yes, I've download cupcake(android 1.5) and compile on my own. In this version, dmtracedump works just fine. But however, the output graph of dmtracedump seems only one thread Call relation graph. And I can't find any option to select which thread I want. This tool is less power than traceview – henry74918 Dec 10 '10 at 13:21
  • 1
    dmtracedump began life with only the "-o" flag, as a way to debug the method profiling code in the VM. Some enterprising individuals added extra features that they wanted. After traceview was written, dmtracedump was largely ignored. – fadden Dec 14 '10 at 19:30