views:

92

answers:

1

After a while I figured out I could bind Shark to the process of my executable in the simulator. Not on the device though. Well, anyways, here is something that makes absolutely zero sense, but looks bad:

42.2%   42.2% QuartzCore sw_scanline(int, int, int, ogl_poly_vert*, ogl_poly_vert*, ogl_poly_vert*, ogl_poly_vert*, unsigned int, void*)

That was the topmost entry in the List of Evil. What does Shark try to say here? And how can I fix a performance problem now, with this information? Any idea what that means? Or is there a hidden feature that will give me more useful data?

+1  A: 

More likely than not, that is an implementation detail of the Simulator. Probably the bit that does whatever is necessary to make the UIKit drawing show up in a window.

Use the Sampler Instrument against your application running on the device. If that particular function is consuming as much CPU on the device, Instruments will show it.

There is only so much low level optimization you can do in the simulator; anything architecture specific or device specific can't be done, for example. This may be an environment specific difference and, thus, not something to worry about.

bbum