views:

190

answers:

1

The docs say:

Important: Shark cannot capture symbol information on the iPhone itself, so “raw” sessions recorded from an iPhone will appear in Shark labeled only based on sample address ranges. This can make it very difficult to understand the results that Shark returns. Instead, you must tell Shark to recover symbol information afterwards from a copy of your iPhone OS application which is stored locally on your Macintosh. As a result, anybody profiling an iPhone will definitely want to check out “Manual Session Symbolication” for more information about how to tell Shark where your application’s symbols are located.

And:

The most common way to “symbolicate” or add symbols (along with other debugging information) to your session is to simply use the File→Symbolicate... command. With this command, you can quickly choose a symbol-rich application binary to attach to your Shark session, even if the original measurement was taken using a symbol-free binary.

Let's try to get that right:

1) Launch app on the device (via xcode)

2) Launch shark, bound to that app on the device

3) take samples

4) in shark, go to File > Symbolicate, and select something. The question is: Select what? The doc lacks of examples all over the place, but maybe someone was able to figure that out. I don't know which file may have symbols for shark. Any idea?

+1  A: 

"from a copy of your iPhone OS application which is stored locally on your Macintosh." to me means select the build target output. In other words, your compiled app binary.

slf