Use the servo
command:
servo$ servo --profiler-trace-path=trace.html --print-pwm <url>
analyse$ RUST_LOG=analyse=info cargo run -r servo <trace.html> [trace.html ...]
--print-pwm
tells you in the terminal running Servo when you’ve waited long enough for the Time To Interactive metric to appear in your trace.
Use the chromium
command, where <url>
is the same URL as the page you loaded:
analyse$ google-chrome-stable --trace-startup --trace-startup-file=chrome.pftrace <url>
analyse$ python traceconv json chrome.pftrace chrome.json
analyse$ RUST_LOG=analyse=info cargo run -r chromium <url> <chrome.json> [chrome.json ...]
How to generate a combined Chrome JSON trace
Use the combined
command, where each <command>
is a servo
or chromium
command from above:
analyse$ RUST_LOG=analyse=info cargo run -r combined <command> [[-- <command>] ...]
These traces can be opened in the Perfetto UI.