diff options
| author | John Reck <jreck@google.com> | 2019-10-09 13:41:18 -0700 |
|---|---|---|
| committer | John Reck <jreck@google.com> | 2019-10-09 13:42:43 -0700 |
| commit | 183e1380cef0f63610497abed01e16036a2ea2d4 (patch) | |
| tree | 6be42299bdadf7fae5aaf58f787070123c6371aa /core/java/android/view/WindowManagerGlobal.java | |
| parent | 3441faa0453907f8713ebccfa33049c2e99e4fe6 (diff) | |
Improve dumping of display list memory usage
The first step of improving is measuring. So measure better.
Bug: 138856108
Test: dump
Change-Id: I076b904a1f0dfb209622c76bcb8778a10cd2b7db
Diffstat (limited to 'core/java/android/view/WindowManagerGlobal.java')
| -rw-r--r-- | core/java/android/view/WindowManagerGlobal.java | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/core/java/android/view/WindowManagerGlobal.java b/core/java/android/view/WindowManagerGlobal.java index 379acbecb613..55b2a2a4033a 100644 --- a/core/java/android/view/WindowManagerGlobal.java +++ b/core/java/android/view/WindowManagerGlobal.java @@ -604,26 +604,24 @@ public final class WindowManagerGlobal { pw.println("\nView hierarchy:\n"); - int viewsCount = 0; - int displayListsSize = 0; - int[] info = new int[2]; + ViewRootImpl.GfxInfo totals = new ViewRootImpl.GfxInfo(); for (int i = 0; i < count; i++) { ViewRootImpl root = mRoots.get(i); - root.dumpGfxInfo(info); + ViewRootImpl.GfxInfo info = root.getGfxInfo(); + totals.add(info); String name = getWindowName(root); - pw.printf(" %s\n %d views, %.2f kB of display lists", - name, info[0], info[1] / 1024.0f); + pw.printf(" %s\n %d views, %.2f kB of render nodes", + name, info.viewCount, info.renderNodeMemoryUsage / 1024.f); pw.printf("\n\n"); - - viewsCount += info[0]; - displayListsSize += info[1]; } - pw.printf("\nTotal ViewRootImpl: %d\n", count); - pw.printf("Total Views: %d\n", viewsCount); - pw.printf("Total DisplayList: %.2f kB\n\n", displayListsSize / 1024.0f); + pw.printf("\nTotal %-15s: %d\n", "ViewRootImpl", count); + pw.printf("Total %-15s: %d\n", "attached Views", totals.viewCount); + pw.printf("Total %-15s: %.2f kB (used) / %.2f kB (capacity)\n\n", "RenderNode", + totals.renderNodeMemoryUsage / 1024.0f, + totals.renderNodeMemoryAllocated / 1024.0f); } } finally { pw.flush(); |
