Closed igrigorik closed 9 years ago
Can Main become UI or Renderer? That's what it's called on other platforms, i.e. RendererFrame
For the composite timing name issue, how about following the model from the Navigation Timing API and having distinct events:
performance.frame.rendererStart
performance.frame.rendererEnd
performance.frame.compositeStart
performance.frame.compositeEnd
Might be bonkers.
Wait, that would need to be an array....
performance.frames[0].rendererStart
etc.
@paullewis my understanding is that we can have multiple composite events associated with a single main frame event. As a result, we need to separate them out and use frameNumber for tracking the relationships.
That aside... I like RendererFrame
, except do we need Frame
part at all? What if it was simplified it to PerformanceRendererTiming
, PerformanceCompositeTiming
?
/cc @mpb @natduca
@paullewis You can definitely have multiple composite events associated with a single main frame event and that is the reason why we need the sourceFrameNumber attribute (Issue #7 included a discussion about the topic.)
I personally don't really have any strong preference with having Frame
in the name. My only two thoughts were;
Frame
could be confusion between <iframes>
and animation frames but that doesn't seem to have happened with requestAnimationFrame so it probably a non-issue.Do we have any alternative ideas for CompositeTiming
?
UITiming, CompositeTiming and DrawTiming are the three I can think of. They all have issues though. Composite sounds like the front runner.
On Nov 10, 2014, at 9:14 PM, Ilya Grigorik notifications@github.com wrote:
Do we have any alternative ideas for CompositeTiming?
— Reply to this email directly or view it on GitHub.
I came up with the following ideas; AsynchronousFrameTiming
, OffThreadFrameTiming
, ExternalFrameTiming
but don't really like any of them.
PerformanceSynchronousRenderingFrameTiming
and PerformanceAsynchronousRenderingFrameTiming
is a pretty huge mouthful.
I think we should roll with PerformanceRendererTiming
and PerformanceCompositeTiming
. A bit of a dumb question: would you get a hold of them like this?
var rendererEvents = window.performance.getEntriesByType("renderer");
var compositeThreadEvents = window.performance.getEntriesByType("composite");
If so, rad. If not, how?
SGTM. Yes, that's how you get access to them!
Sent from my iPhone
On Nov 11, 2014, at 7:21 AM, Paul Lewis notifications@github.com wrote:
I think we should roll with PerformanceRendererTiming and PerformanceCompositeTiming. A bit of a dumb question: would you get a hold of them like this?
var rendererEvents = window.performance.getEntriesByType("renderer"); var compositeThreadEvents = window.performance.getEntriesByType("composite"); If so, rad. If not, how?
— Reply to this email directly or view it on GitHub.
+1 to RenderTiming
and CompositeTiming
.. if someone comes up with a better name for the latter, we can revisit later.
So removing the Performance
bit from the front? I'm cool with that.
Doh, sorry.. No, I was lazy and didn't type it out. Performance bit should be there:
PerformanceRenderTiming
PerformanceCompositeTiming
@paullewis @mpb take a look at: https://github.com/w3c/frame-timing/commit/562c53001fa74e54e9a830091ac25fd554adca2c
Note that it's currently PerformanceRenderTiming
not PerformanceRendererTiming
... The former is shorter and consistent with PerformanceCompositeTiming
. That said, if we want Renderer
, then we should probably also update Composite
to Compositor
to be consistent.
WDYT? Personally, I'm good with Render
and Composite
.
I'm fine with Render and Composite personally.
SGTM
At TPAC, Simon (Apple) mentioned that...
That said, we didn't come up with any better names at TPAC either. Thoughts, suggestions?