Memory

Landing page for all things memory-related in Chromium.

How is chrome's memory usage doing in the world?

Look at the UMAs Memory.{Total,Renderer,Browser,Gpu,Extension}.PrivateMemoryFootprint.

How do developers communicate?

Note, these channels are for developer coordination and NOT user support. If you are a Chromium user experiencing a memory related problem, file a bug instead.

namedescription
[email protected]Discussion group for all things memory related. Post docs, discuss bugs, etc., here.
[email protected]Google internal version of the above. Use sparingly.
https://chromium.slack.com/messages/memory/Slack channel for real-time discussion with memory devs. Lots of C++ sadness too.
crbug Performance=Memory labelBucket with auto-filed and user-filed bugs.
crbug Stability=Memory labelTracks mostly OOM crashes.

I have memory problem, what do I do?

Follow these instructions to file a high quality bug.

I'm a developer trying to investigate a memory issues, what do I do?

See this page for further instructions.

I'm a developer looking for more information. How do I get started?

Great! First, sign up for the mailing lists above and check out the slack channel.

Second, familiarize yourself with the following:

TopicDescription
Key Concepts in Chrome MemoryPrimer for memory terminology in Chrome.
memory-infraThe primary tool used for inspecting allocations.

What are people actively working on?

There are roughly three types of memory work within Chrome:

  • Team based, targeted improvements. Examples include:
    • memory reductions for specific components [e.g. for v8]
    • allocator improvements [e.g. PartitionAlloc]
    • memory purging at appropriate times [e.g. on tab background]
    • better memory pressure signals
  • Memlog: Heap profiling in the wild for regression detection + root cause analysis.
  • Lab tests: Perf waterfall for micro-regressions, ASAN/MSAN/LSAN, blink leak detector.

Key knowledge areas and contacts

Knowledge AreaContact points
Chrome on Androidlizeb, pasko, ssid
Browser Processssid, erikchen, etienneb
GPU/ccericrk
Memory metricsssid, erikchen, primano, ajwong, wez
Heap Profilingalph, erikchen, ssid, etienneb
Net Stackmmenke, rsleevi, xunjieli
Renderer Processharaken, tasak, hajimehoshi, keishi, hiroshige
V8hpayer, ulan, verwaest, mlippautz

Other docs