Page MenuHomeSolus

Enable cross-lang PGO
ClosedPublic

Authored by joebonrichie on Wed, Mar 18, 6:18 PM.

Details

Summary

Now that firefox has added StyleBench to their PGO training automation it makes sense to enable cross-lang PGO so that both rust code and cpp code can get profiled. Firefox's CSS engine Stylo is written in rust and StyleBench is written to benchmark CSS performance.

Unfortunately their build system doesn't support cross-lang PGO as part of the MOZ_PGO automated build flag and interally they have switched to using taskcluster to run the steps separately so there's a good chance MOZ_PGO will stop working at some point. Therefore do the PGO steps manually.

The stylebench score increases from 92.1 to 101 with cross-lang PGO and WebRender enabled.

Signed-off-by: Joey Riches <josephriches@gmail.com>

Test Plan

Use firefox as normal

Diff Detail

Repository
R755 firefox
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

joebonrichie created this revision.Wed, Mar 18, 6:18 PM
joebonrichie requested review of this revision.Wed, Mar 18, 6:18 PM

Mostly putting this on arc first instead of just pushing so I can some comments to cleanup the manual PGO steps. Use of sed and echo is a bit quick and dirty.

JoshStrobl accepted this revision.Thu, Mar 19, 3:34 PM
JoshStrobl added a subscriber: JoshStrobl.

Seems saneish.

This revision is now accepted and ready to land.Thu, Mar 19, 3:34 PM
This revision was automatically updated to reflect the committed changes.