WebContent memory benchmark

Adds same-origin about:blank iframes in batches until the browser's web content process is killed, then records how many frames it reached. Browsers that inject scripts into every frame pay that cost per iframe, so comparing a browser with a plain web view on the same device shows how much memory the injected scripts take. The count is saved before each batch, so it survives the kill and the page picks up where it left off after the tab reloads.

How to run
  1. Write down the device model and OS version. Don't rely on the user agent: recent iOS versions report a frozen OS version.
  2. Restart the device and close other apps.
  3. Open this page with ?label=<browser>&autostart=1 and keep the tab in the foreground with the screen on. If the browser doesn't reload the tab after a kill, reload it yourself.
  4. Wait for Done, then copy the summary. Each kill is followed by a 65 s cooldown, so 5 runs take about 6–8 minutes.
  5. Repeat in the baseline browser (a plain web view without injected scripts) on the same device.

URL parameters (defaults in brackets): label, autostart=1, runs [5], batch frames per step [10], interval ms between steps [200], max frames before a run counts as survived [2000], paragraphs per frame [0], mode=blank|write [blank; write fills each frame with document.write], cooldown seconds after a kill [65].

Idle