Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(33)

Issue 549313006: [Android] memory_inspector: move to libheap_profiler. (Closed)

Created:
6 years, 3 months ago by Primiano Tucci (use gerrit)
Modified:
6 years, 3 months ago
Reviewers:
bccheng, hajimehoshi
CC:
chromium-reviews, darin-cc_chromium.org, jam, Dai Mikurube (NOT FULLTIME), paulwhitton
Base URL:
https://chromium.googlesource.com/chromium/src.git@mi3_prebuilts
Project:
chromium
Visibility:
Public.

Description

[Android] memory_inspector: move to libheap_profiler. This change moves towards the new libheap_profiler + heap_dump for profiling native allocations, instead of lib.debug.malloc. It introduces the code to install the library in the system (wrapping the Android zygote) and the parsers. Compared to the lib.debug.malloc, libheap_profiler is much much faster (less overhead) and able to hook also mmaps. Its output is very detailed and allows to get stack traces for each VM region. This will make it possible to intersect, in the near future, mmaps and native stack traces. This change also introduces the support to multiple ABIs to support both arm and arm64. BUG=340294 NOTRY=true Committed: https://crrev.com/c8cd4b801e8c511456ad813b80930fc46279d034 Cr-Commit-Position: refs/heads/master@{#295031}

Patch Set 1 : #

Total comments: 2

Patch Set 2 : heap_dump_parser -> native_heap_dump_parser #

Total comments: 2

Patch Set 3 : Use list comprehension #

Patch Set 4 : Add prebuilts #

Unified diffs Side-by-side diffs Delta from patch set Stats (+359 lines, -233 lines) Patch
M tools/memory_inspector/PRESUBMIT.py View 1 2 3 2 chunks +40 lines, -3 lines 0 comments Download
M tools/memory_inspector/memory_inspector/backends/android/android_backend.py View 1 2 5 chunks +111 lines, -27 lines 0 comments Download
M tools/memory_inspector/memory_inspector/backends/android/android_backend_unittest.py View 3 chunks +31 lines, -45 lines 0 comments Download
D tools/memory_inspector/memory_inspector/backends/android/dumpheap_native_parser.py View 1 chunk +0 lines, -116 lines 0 comments Download
A tools/memory_inspector/memory_inspector/backends/android/native_heap_dump_parser.py View 1 1 chunk +56 lines, -0 lines 0 comments Download
M tools/memory_inspector/memory_inspector/classification/native_heap_classifier.py View 2 chunks +3 lines, -3 lines 0 comments Download
M tools/memory_inspector/memory_inspector/classification/native_heap_classifier_unittest.py View 2 chunks +4 lines, -4 lines 0 comments Download
M tools/memory_inspector/memory_inspector/core/backends.py View 1 chunk +8 lines, -0 lines 0 comments Download
M tools/memory_inspector/memory_inspector/core/native_heap.py View 1 chunk +14 lines, -8 lines 0 comments Download
M tools/memory_inspector/memory_inspector/data/file_storage_unittest.py View 1 chunk +4 lines, -1 line 0 comments Download
M tools/memory_inspector/memory_inspector/data/serialization.py View 1 chunk +4 lines, -4 lines 0 comments Download
M tools/memory_inspector/memory_inspector/frontends/background_tasks.py View 1 chunk +19 lines, -8 lines 0 comments Download
M tools/memory_inspector/memory_inspector/frontends/www_content/css/processes.css View 1 chunk +9 lines, -0 lines 0 comments Download
M tools/memory_inspector/memory_inspector/frontends/www_content/index.html View 1 chunk +21 lines, -0 lines 0 comments Download
M tools/memory_inspector/memory_inspector/frontends/www_content/js/processes.js View 2 chunks +21 lines, -6 lines 0 comments Download
M tools/memory_inspector/memory_inspector/frontends/www_server.py View 2 chunks +6 lines, -6 lines 0 comments Download
A tools/memory_inspector/prebuilts/heap_dump-android-arm.sha1 View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
A tools/memory_inspector/prebuilts/heap_dump-android-arm64.sha1 View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
A tools/memory_inspector/prebuilts/libheap_profiler-android-arm.sha1 View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
A tools/memory_inspector/prebuilts/libheap_profiler-android-arm64.sha1 View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M tools/memory_inspector/prebuilts/memdump-android-arm.sha1 View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
A tools/memory_inspector/prebuilts/memdump-android-arm64.sha1 View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M tools/memory_inspector/prebuilts/ps_ext-android-arm.sha1 View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
A tools/memory_inspector/prebuilts/ps_ext-android-arm64.sha1 View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 15 (5 generated)
Primiano Tucci (use gerrit)
6 years, 3 months ago (2014-09-11 07:58:50 UTC) #3
Primiano Tucci (use gerrit)
(Note to self: update prebuilts before landing)
6 years, 3 months ago (2014-09-11 08:25:48 UTC) #4
bccheng
lgtm Rubber stamp LGTM with a minor comment. Will play with the tool on CrOS ...
6 years, 3 months ago (2014-09-11 13:57:42 UTC) #6
Primiano Tucci (use gerrit)
https://codereview.chromium.org/549313006/diff/20001/tools/memory_inspector/memory_inspector/backends/android/android_backend.py File tools/memory_inspector/memory_inspector/backends/android/android_backend.py (right): https://codereview.chromium.org/549313006/diff/20001/tools/memory_inspector/memory_inspector/backends/android/android_backend.py#newcode19 tools/memory_inspector/memory_inspector/backends/android/android_backend.py:19: from memory_inspector.backends.android import heap_dump_parser On 2014/09/11 13:57:42, bccheng wrote: ...
6 years, 3 months ago (2014-09-11 15:35:19 UTC) #7
Primiano Tucci (use gerrit)
+hajimehoshi: he did some work on memory in Blink land and a second pair of ...
6 years, 3 months ago (2014-09-12 07:57:11 UTC) #9
hajimehoshi
lgtm https://codereview.chromium.org/549313006/diff/40001/tools/memory_inspector/memory_inspector/backends/android/android_backend.py File tools/memory_inspector/memory_inspector/backends/android/android_backend.py (right): https://codereview.chromium.org/549313006/diff/40001/tools/memory_inspector/memory_inspector/backends/android/android_backend.py#newcode229 tools/memory_inspector/memory_inspector/backends/android/android_backend.py:229: self.ListProcesses()) `filter` is deprecated. Let's use list comprehensions. ...
6 years, 3 months ago (2014-09-12 08:17:08 UTC) #10
Primiano Tucci (use gerrit)
https://codereview.chromium.org/549313006/diff/40001/tools/memory_inspector/memory_inspector/backends/android/android_backend.py File tools/memory_inspector/memory_inspector/backends/android/android_backend.py (right): https://codereview.chromium.org/549313006/diff/40001/tools/memory_inspector/memory_inspector/backends/android/android_backend.py#newcode229 tools/memory_inspector/memory_inspector/backends/android/android_backend.py:229: self.ListProcesses()) On 2014/09/12 08:17:08, hajimehoshi wrote: > `filter` is ...
6 years, 3 months ago (2014-09-12 09:07:47 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patchset/549313006/80001
6 years, 3 months ago (2014-09-16 08:43:19 UTC) #13
commit-bot: I haz the power
Committed patchset #4 (id:80001) as b3b254bb7c7c2f259aff085dc08e3255687474f8
6 years, 3 months ago (2014-09-16 08:44:34 UTC) #14
commit-bot: I haz the power
6 years, 3 months ago (2014-09-16 08:45:56 UTC) #15
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/c8cd4b801e8c511456ad813b80930fc46279d034
Cr-Commit-Position: refs/heads/master@{#295031}

Powered by Google App Engine
This is Rietveld 408576698