Why Chrome Uses So Much Memory

Why Chrome Uses So Much Memory
An empty Google Chrome window used 575 MB on my Mac, in twelve separate processes. I measured where that goes (physical footprint, not the misleading numbers) and read the Chromium source that makes the decisions: one process per site since Spectre, a spare renderer kept warm, caches whose budgets grow with your RAM and your screen, and memory that is only handed back when the system asks. Then I tried to get a browser under 100 MB: curl, a stripped Chromium in one process (25 MB), WebKit (51 MB), and the full Chrome app, which never went below about 280 MB.
Chapters
0:00 An empty Chrome: 575 MB
0:35 Which number is memory
1:27 The bill for nothing
2:33 One tab, one process
3:37 Separate rooms, on purpose
4:30 Site isolation and Spectre
5:33 Trying to cut the processes
6:06 Caches sized to the machine
7:12 Waiting to be asked
8:02 Low-end device mode
8:48 Heavier pages
10:03 Getting under 100 MB
11:18 What it cost to get there
12:02 The answer
How it was measured: 16 GB RAM Mac. Google Chrome 156 (fresh throwaway profile, headful and --headless=new), chrome-headless-shell 149 (Chrome for Testing), system WebKit through a 19 KB WKWebView app, and curl. Pages served from this Mac (no ads, no trackers). Physical footprint from /usr/bin/footprint over every process, shared regions counted once; 9-12 s settle; medians of two runs. The Mac was shared with other work, so treat small gaps as noise.
