commit | 4dec7e4be7cd60095129ccc0fc9667112817d604 | [log] [tgz] |
---|---|---|
author | Xi Cheng <chengx@chromium.org> | Fri Aug 10 16:54:11 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Aug 10 16:54:11 2018 |
tree | f38220a645d401b380ebfd24807aeeb6699b52ed | |
parent | ce3a5818fbbe129065a679bd5e779b890b58c77e [diff] |
Directly write SampledProfile protocol buffer message and send over mojo This change removes the current execution profile _mojo_ representation in favor of directly writing the data in the protocol buffer format used for UMA upload. The reasons for using this format are: 1. it's the format that we ultimately need the data in; 2. it's the most memory-efficient representation available to us, because of the protocol buffer varint encoding; 3. the serialized protocol buffers are trivially compressible. We generate execution profiles in non-browser processes, so this means writing the protocol buffer representation in those processes and sending over mojo to the browser process, where the UMA upload takes place. We're making this change as part of a refactoring to expand the profiling scenarios supported by the UMA Sampling Profiler. A key aspect of this refactoring is reducing memory consumption of the execution profile representation. See http://crbug.com/850148 for examples of memory usage problems with this representation. Bug: 851163, 804942 Change-Id: Ied88d6fd932587707c1f5a4c79acd77d5911f6ee Reviewed-on: https://chromium-review.googlesource.com/1157547 Commit-Queue: Mike Wittman <wittman@chromium.org> Reviewed-by: Steven Holte <holte@chromium.org> Reviewed-by: Mike Wittman <wittman@chromium.org> Reviewed-by: François Doray <fdoray@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Cr-Commit-Position: refs/heads/master@{#582209}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .