Chrome Dev Tools: Timeline - White Bars

纵饮孤独 提交于 2019-12-10 15:18:00

问题


I'm trying to understand a few things about the timeline in the Chrome Dev Tools. From the documentation, I gather that the grey and clear bars are "Activity that was not instrumented by DevTools" and "Idle time between display refresh cycles", respectively.

I have an app that renders updates each frame (requestAnimationFrame()) and has a typical timeline profile pictured below:

Unfortunately, to me the documentation does not make it clear how to evaluate the grey and white space in my application. My questions are:

Will the "idle" clear bars always fill the time between renders?

In other words, is the profile I'm seeing expected, in regard to the white bars? I'm tempted to assume so, but the example screenshot in the documentation looks like:

There are clearly frames where the white space does not fill the space between renders.

Is there a rough relationship between the timeline profile and cpu utilization on the machine the profile is collected on?

In the profile below, about 40% of the time is idle, so could I expect that to correspond to using ~60% of a core for the operations represented in the profile?

Is there any way to characterize the "Uninstrumented" grey bars?

Or are there typical things which this could be (Garbage Collection, etc...)?

Hopefully that is not too much for one question. Thanks in advance


回答1:


Will the "idle" clear bars always fill the time between renders?

No. This idle time is essentially GPU bound. It is where the browser is waiting on the GPU to do its thing and return. It is perfectly fine to have fluctuation here, so long as you're hitting roughly 60FPS, it's all good.

Is there a rough relationship between the timeline profile and cpu utilization on the machine the profile is collected on?

Not really as far as I am aware. Idle here is time where the browser is waiting for some other part of the system (CPU or GPU primarily) to do its job. It isn't related to how many resources it is using.

Is there any way to characterize the "Uninstrumented" grey bars?

Absolutely not, this is why it is called "Uninstrumented". It means the DevTools has no idea what is going on. Things like Garbage Collection do get marked on the timeline, since it knows what that task is. The team is working on narrowing down this type of material. It is a slow process to track it all down and figure out how to surface it to DevTools, so we will have uninstrumented time for quite a while.



来源:https://stackoverflow.com/questions/33769070/chrome-dev-tools-timeline-white-bars

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!