开发者

Difference between CoreAnimation and OpenGL ES Driver Instrument - iPhone

开发者 https://www.devze.com 2023-02-24 07:11 出处:网络
I am trying to run some performance test over my new app with CoreAnimation and OpenGL ES Driver Instrument. Both tools give me the same information. So, I get confused about the purpose of each tool.

I am trying to run some performance test over my new app with CoreAnimation and OpenGL ES Driver Instrument. Both tools give me the same information. So, I get confused about the purpose of each tool. My app is just a normal app, it is not a game, and I do not use any openGL code. Does it make sense to run OpenGL ES Driver Instrument on my app?

I read from the Apple page about OpenGL ES Driver: The OpenGL ES Driver instrument queries the GPU driver on an iOS device to sample OpenGL statistics for a single process. The instrument helps you determine how efficiently you’re using OpenGL and the GPU on the device.

The Apple page also states that OpenGL ES Driver will give me lots of information but I cannot see any of them: Context Count, Command Buffer Allocated By开发者_StackOverflow社区tes, Command Buffer Submitted Bytes, Command Buffer Submit Count, Command Buffer Render Count


To answer your second question, you can enable the tracking of additional statistics in the OpenGL ES Driver instrument by clicking on the little i button on the right side of the instrument, then choosing the Configure button in that popup. You will be presented with a list of statistics that you can enable tracking for.

Once you have chosen the items to monitor, click Done and you will be back at the original popup. Within there, enable the exact statistics that you'd like to see displayed in the chart and table by clicking in the appropriate checkboxes.

On the next logging pass, these additional items will be monitored. This can help you debug OpenGL performance issues, like being fill rate or geometry limited, but I've not used this for profiling Core Animation yet. The neat tools you can enable in the Core Animation instrument (Color Blended Layers, Color Misaligned Images, etc.) tend to be better for this.


Core Animation is a higher level framework that uses OpenGL ES on the iPhone. So an app that uses Core Animation indirectly uses OpenGL ES. The OpenGL ES Driver instrument may tell you some interesting information about how Core Animation utilizes the GPU on the iPhone. Yet that information is not likely to be actionable. Optimizing the OpenGL code directly would require altering Apple's code.

So to directly answer your question: No, it does not make any sense to run the OpenGL ES Driver Instrument on an app that doesn't include your own OpenGL code.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号