tree: e9c52f5f45977e7ce1db3269266ada630d572f86 [path history] [tgz]
  1. achievements.md
  2. android_dev_tips.md
  3. bad_jokes.md
  4. debugging_memory_issues.md
  5. DIR_METADATA
  6. filing_memory_bugs.md
  7. investigating_heap_dump_example.md
  8. key_concepts.md
  9. objectives.md
  10. README.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