components/sync can be responsible for allocating several MiBs in Chrome's browser process, but since there is no MemoryDumpProvider for sync, its memory usage can be used only using heap profiler.
We need to implement MemoryDumpProvider for sync to make it visible in telemetry / slow reports / etc.
Here are example usage of various sync components as captured by native heap profiler on my private Chrome profile:
3.4 KiB components/web_cache/browser
22.3 KiB components/sync/engine_impl
2,954.0 KiB components/sync/driver/glue
436.5 KiB components/sync/driver
1.5 KiB components/sync/core_impl
1.1 KiB components/sync/core
3.7 KiB components/sync/base
Top functions:
215.6 KiB browser_sync::FaviconCache::MergeDataAndStartSyncing()
2,825.2 KiB syncer::syncable::Directory::OpenImpl()
Trace file: https://drive.google.com/file/d/0B_Hmi138MnbJc2ZWUXBlMlo3Rlk/view?usp=sharing
components/sync can be responsible for allocating several MiBs in Chrome's browser process, but since there is no MemoryDumpProvider for sync, its memory usage contribution can be seen only in heap profiler.
We need to implement MemoryDumpProvider for sync to make it visible in telemetry / slow reports / etc.
Here are example usage of various sync components as captured by native heap profiler on my private Chrome profile:
3.4 KiB components/web_cache/browser
22.3 KiB components/sync/engine_impl
2,954.0 KiB components/sync/driver/glue
436.5 KiB components/sync/driver
1.5 KiB components/sync/core_impl
1.1 KiB components/sync/core
3.7 KiB components/sync/base
Top functions:
215.6 KiB browser_sync::FaviconCache::MergeDataAndStartSyncing()
2,825.2 KiB syncer::syncable::Directory::OpenImpl()
Trace file: https://drive.google.com/file/d/0B_Hmi138MnbJc2ZWUXBlMlo3Rlk/view?usp=sharing
Comment 1 by dskiba@chromium.org
, Sep 21 2016