W3C

- DRAFT -

WebPerf Group Call

14 Jun 2017

Agenda

See also: IRC log

Attendees

Present
igrigorik, shubhie, Nic, Yoav, Nathan, xiaoqian, Charles
Regrets
Chair
igrigorik
Scribe
igrigorik

Contents


f2f agenda: https://docs.google.com/document/d/1fcWpKZhJdrmBlpYUB2wIx42svo9zqojoJMZg8aY7E7Y/edit#

some suggestions for topics at the bottom of the doc

<yoav> I'll try to rejoin

HR-Time: prompt to unload test

xiaoqian: the test seems to work in FF, but does not yet work in Chrome
... need to try in Edge and Safari

<xiaoqian> https://www.w3.org/2017/04/webperf-test/unload_manual.html

re, worker reference: we'll use whatwg

Next up, feedback on PerformanceObserver + Timeline

https://github.com/w3c/hr-time/issues/32

https://github.com/w3c/hr-time/issues/46

NicJ: are perf observer and timeline buffers different?
... not clear on relationship between, say, RT buffer and performance timeline buffer?
... how does it compare to ServerTiming entries

we have some undefined behaviors: we defined new buffering in "global performance timeline", but haven't defined how the global buffer interacts with RT buffer, etc.

NicJ: scripts like boomerang are not guaranteed to load before end of onload
... we can use method queue as a workaround

second issue: dealing with parent iframe is easy, dealing with children (same-origin) iframes is harder

scribe: the challenge is you have to register the perf observer before onload of the iframe
... there are race conditions that are hard to deal with
... LongTasks has an interesting model where it bubbles up all child-iframe events as well
... one idea is to enable perf observer to do the same?
... we'd like to use PerfObserver more, but the iframes make it a challenge

yoav: having consistent buffering behavior is good for developers

AI's to followup on:

- define global perf timeline buffer: how does it interact?

- iframes are tricky with PerfObserver, can we do something here?

- debugging: bad thing happened, how can we support this case?

AI: nick to split last question into separate discussion

Server Timing: https://github.com/w3c/server-timing/issues/14

scribe: it's hard to line up RT and ST entries?

shubhie: it's not a unique problem.. e.g. inflight requests, slow frames and long tasks
... perhaps there is some generic solutions?

yoav: for dependencies, the idea I explored is a unique ID for each entry, so you can create relationships between entries
... similarly, one could use that to link other types
... we could have a generic mechanism?

Nathan: we have a problem where we can't match Fetch requests with resource timing

what's the argument for having RT and Server Timing separate?

Charles: perhaps in the future if you have a lot of different extensions.. it paves the way for separate APIs that are stitchable

Shubhie: we'll need this mechanism anyway

Charles: one worry with pointer idea is that these might not exist yet..

AI: discuss next week at F2F

NicJ: PerfObserver + async callback
... you pass in buffered: true, there is no signal that the are no entries
... https://github.com/w3c/performance-timeline/issues/74

^ would address the case

Preload

https://github.com/w3c/preload/issues/99

yoav: fastly presented their h2 push at HTTP workshop in London.. rel=preload came up
... feedback on no-push was not very positive
... h2o implemented opposite signal 'h2-push-only'
... we opened an issue to explore if explicit push signal would be better
... not clear on use cases for the opposite signal, asked for more details on the bug
... let's wait for the use case
... re, f2f agenda..
... Wenbo (Google) asked about compression API. Many Google properties interested in compressing upstream data.
... in theory, not hard to implement for gzip / brotli?

Nathan: we're interested in this as well, e.g. for perf logging -- we implement our own hacky compression
... lots of use cases for it
... for FB including gzip library is too much

let's discuss at F2F

NicJ: will try to get numbers for implications of size of library, transferred bytes

Yoav: SpeedCurve is hosting an event the day of f2f
... please RSVP

Summary of Action Items

Summary of Resolutions

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.152 (CVS log)
$Date: 2017/06/14 18:29:55 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
This is scribe.perl Revision: 1.152  of Date: 2017/02/06 11:04:15  
Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/

Guessing input format: Irssi_ISO8601_Log_Text_Format (score 1.00)


WARNING: No "Present: ... " found!
You can indicate people for the Present list like this:
        <dbooth> Present: dbooth jonathan mary
        <dbooth> Present+ amy
        <amy> Present+

No ScribeNick specified.  Guessing ScribeNick: igrigorik
Inferring Scribes: igrigorik

WARNING: No "Topic:" lines found.


WARNING: No meeting title found!
You should specify the meeting title like this:
<dbooth> Meeting: Weekly Baking Club Meeting

Agenda: https://docs.google.com/document/d/10dz_7QM5XCNsGeI63R864lF9gFqlqQD37B4q8Q46LMM/edit#

WARNING: No meeting chair found!
You should specify the meeting chair like this:
<dbooth> Chair: dbooth

Got date from IRC log name: 14 Jun 2017
Guessing minutes URL: http://www.w3.org/2017/06/14-webperf-minutes.html
People with action items: 

WARNING: No "Topic: ..." lines found!  
Resulting HTML may have an empty (invalid) <ol>...</ol>.

Explanation: "Topic: ..." lines are used to indicate the start of 
new discussion topics or agenda items, such as:
<dbooth> Topic: Review of Amy's report


[End of scribe.perl diagnostic output]