[go: nahoru, domu]

[Reland #1] Switch task manager to use the memory_instrumentation interface.

The original CL caused a renderer hang for a macOS ASAN browser test. For an
in-depth investigation, see
https://bugs.chromium.org/p/chromium/issues/detail?id=771805. The root cause was two fold:
  * A logic error in the original CL incorrectly caused memory details to be
  refreshed when only the memory footprint needed to be refreshed. Fixed in this
  reland.
  * A logic error in the cocoa TaskManager caused memory details to always be
  refreshed. Fixed in
  https://chromium-review.googlesource.com/c/chromium/src/+/706197.

This CL also contains a minor optimization - the task manager will only ever
queue a single memory dump at a time.

> The memory_instrumentation interface on the content_browser service exposes
> cross-platform, consistent memory metrics that should also be used by the task
> manager.
>
> This CL adds a new column to the task manager: Memory Footprint. See
> https://docs.google.com/document/d/1PZyRzChnvkUNUB85Op46aqkFXuAGUJi751DJuB6O40g/edit#
> for more details.
>
> Bug: 756276
> Reviewed-on: https://chromium-review.googlesource.com/646047
> Reviewed-by: Nick Carter <nick@chromium.org>
> Reviewed-by: Primiano Tucci <primiano@chromium.org>
> Commit-Queue: Erik Chen <erikchen@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#506220}

Change-Id: I6fc43d064206bc614c52f84515f73dd98832f122
Bug: 
Reviewed-on: https://chromium-review.googlesource.com/706336
Reviewed-by: Nick Carter <nick@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#507483}
17 files changed