the Chromium logo

The Chromium Projects

Wednesday, February 18, 2015

Attendees: benjhayden, cbiesinger, dsinclair, eae, jchaffraix, nduca, szager, skobes, slightlyoff, hartmanng

Status updates:

Performance Tracking (benjhayden)

more graphs and information to the profiling doc.

Scrolling (skobes) []

win_blink flakiness (dsinclair)

Rename Rendering -> Layout [] (dsinclair)

rietveld does not like. Uploading for reviews cases the upload command

to crash.

List markers (dsinclair)

Measure API (jchaffraix)


execution context might be needed. Runs js in snadbox since we cannot

modify the DOM. Would not have even read-only access to the DOM.

Needs to be able to access render tree in a safe way.

not workers. jchaffraix and slightlyoff to talk offline.

Line Boxes (hartmanng, szager) []

high profile regressions.

Flexbox (cbiesinger) []


Text (kojii, eae)

removed, 1 moved to less frequent path. (kojii)

test. (kojii)

characteristics varies by scripts and values of properties. I'll look

into CJK vertical flow first. (kojii)

render crash (due to an ASSERT). Required a Harfbuzz change and roll.

(eae, behdad)

Line layout (szager)

caused by imprecision in LayoutUnit to floating point conversions.

Writing a test for this was tricky as layout tests run without

subpixel text on most platforms. (szager)

Going over the list of OKRs and discussing each one:

[ Have telemetry benchmark suite running key_silk_cases monitoring layout times with less than 1% variation between runs. ]

[ Add 3 real-world pages with lots of layout to key_silk_cases. At least two of which are mobile oriented. ]

<benjhayden> A couple of cases with large variance, most have low variance.

<benjhayden> Layout measurement should fix this in most cases. Some tests have a bi-modal behavior, triggering an extra layout in some cases.

<nduca> We want a link on the layout team site to a set of graphs by the end of the quarter.

<eae> So we're looking pretty good, do we think we can get there by the end of the quarter?

<benjhayden> Yes.

* on track *

[ Speed up some key_silk_cases tests. ]

<eae> We've made a number of small improvements to complex text performance and have ongoing work that should result in a 10% improvement.

<eae> Any other ongoing performance work?

* at risk *

[ Create a Measure API prototype and write-up of lessons learned. ]

<jchaffraix> On second or third prototype, have a better understanding since the Sydney convergence.

<jchaffraix> Github repo with prototype, working on write-up.

* on track *

[ Support natural layout animations (subpixel layout during animation) ]

<eae> No real progress, have rough proof of concept prototype but nothing concrete.

<eae> Might miss.

<nduca> Should be explicit if it wasn't a priority and what we did instead.

* at risk *

[ Finish root layer scrolling. ]

<skobes> Making progress, fixing issues as discovered.

<skobes> Handful of hard problems, some risk of slipping into Q2.

* on track *

[ Move line layout to LayoutUnit. ]

<hartmanng> Distracted by P1 bugs, have made some progress.

<hartmanng> Complications with full-page zoom implementation.

<hartmanng> Should be possible if we get time to work on it.

<szager> Agreed.

* on track *

[ Triage all clusterfuzz asserts and fix 50% of them. [cbiesinger]

<cbiesinger> Starting to realize that 50% might have been a bit optimistic. Not all are reproducible.

<cbiesinger> Without minimized test cases it is really hard, given up on a subset of them (without test cases).

<eae> What would a realistic goal be for Q1?

<cbiesinger> Triaging all reproducible ones and fixing the ones with minimal test cases would be feasible.

* at risk *

[ Have bugs automatically filed for new clusterfuzz asserts. ]

<cbiesinger> Need to work with someone on the clusterfuzz team, should be easy.

* on-track *

[ Render tree modifications during layout. ]

<dsinclair> first-letter is stabilized, list-marker is a lot closer.

<dsinclair> One tricky outstanding issue regarding descendants (list-marker).

<jchaffraix> Full screen is a road block. Re-attach destroys renderer, restarts plugins. Currently we do no reattach. We need to add a hoisting mechanist to make it work. Prototype patch among those lines but it does break plugins. Needs more work and is complicated.

<jchaffraix> Have not had time to dig into it, need to fix path.

<dsinclair> single-item-menu won't be done this quarter.

<dsinclair> On track according to plan, decent amount of risk.

* on track *

High level discussion:

<dsinclair> Renaming rendering to layout has been sucking up a lot of time for everyone.

<eae> As has dealing with regressions and blocking bugs.

<nduca> Are we spending more or less time on work not captured in the OKRs than expected?

<eae> Was expecting about a 50%/50% split between OKR work and high-priority bug fixes. So for this quarter we've spent a bit more time on bugs/regressions than expected.

<nduca> For Q2 OKRs should capture that work.