diff options
| author | Mark Salyzyn <salyzyn@google.com> | 2016-11-04 20:57:16 +0000 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2016-11-04 20:57:16 +0000 |
| commit | 49893142ec398de00e9c8ad90ed199d8bfeb19e5 (patch) | |
| tree | 7932cb0cb59b77193688bffc27e32beccc993378 /logd | |
| parent | 1970d994b679f5dbfa5bbfdaba2317266b50dd79 (diff) | |
| parent | b0672290e320113f4b6d8fc6bb2d1e0afe493c5c (diff) | |
| download | system_core-49893142ec398de00e9c8ad90ed199d8bfeb19e5.tar.gz system_core-49893142ec398de00e9c8ad90ed199d8bfeb19e5.tar.bz2 system_core-49893142ec398de00e9c8ad90ed199d8bfeb19e5.zip | |
logd: report last prune memory overhead
am: b0672290e3
Change-Id: I4b060ad4427e24170cc7a3aeae7aa9f6643ba8d6
Diffstat (limited to 'logd')
| -rw-r--r-- | logd/LogStatistics.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/logd/LogStatistics.h b/logd/LogStatistics.h index 69fe91502..1f598af8a 100644 --- a/logd/LogStatistics.h +++ b/logd/LogStatistics.h @@ -59,10 +59,12 @@ class LogHashtable { public: + size_t size() const { return map.size(); } + // Estimate unordered_map memory usage. size_t sizeOf() const { return sizeof(*this) + - (map.size() * (sizeof(TEntry) + unordered_map_per_entry_overhead)) + + (size() * (sizeof(TEntry) + unordered_map_per_entry_overhead)) + (bucket_size() * sizeof(size_t) + unordered_map_bucket_overhead); } @@ -497,7 +499,9 @@ class LogStatistics { size_t sizeOf() const { size_t size = sizeof(*this) + pidTable.sizeOf() + tidTable.sizeOf() + - tagTable.sizeOf() + securityTagTable.sizeOf(); + tagTable.sizeOf() + securityTagTable.sizeOf() + + (pidTable.size() * sizeof(pidTable_t::iterator)) + + (tagTable.size() * sizeof(tagTable_t::iterator)); for(auto it : pidTable) { const char* name = it.second.getName(); if (name) size += strlen(name) + 1; @@ -508,7 +512,9 @@ class LogStatistics { } log_id_for_each(id) { size += uidTable[id].sizeOf(); + size += uidTable[id].size() * sizeof(uidTable_t::iterator); size += pidSystemTable[id].sizeOf(); + size += pidSystemTable[id].size() * sizeof(pidSystemTable_t::iterator); } return size; } |
