tree: 4597bd17219071718c62e3d2f2111056fc82654b [path history] [tgz]
  1. OWNERS
  2. README.md
  3. achievements.md
  4. android_dev_tips.md
  5. bad_jokes.md
  6. debugging_memory_issues.md
  7. filing_memory_bugs.md
  8. investigating_heap_dump_example.md
  9. key_concepts.md
  10. objectives.md
  11. tools.md
docs/memory/README.md

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
memory-dev@chromium.orgDiscussion group for all things memory related. Post docs, discuss bugs, etc., here.
chrome-memory@google.comGoogle 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 like v8
    • allocator improvements: tcmalloc for linux + cros, PartitionAlloc for blink, etc.
    • 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