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

Issue 2794073002: De-duplicate ranges information in persistent memory. (Closed)

Created:
3 years, 8 months ago by bcwhite
Modified:
3 years, 8 months ago
CC:
chromium-reviews, asvitkine+watch_chromium.org, vmpstr+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

De-duplicate ranges information in persistent memory. By having BucketRanges keep a reference to where the data can be found in persistent memory, the existing de-dup of the BucketRanges object also serves to avoid duplicating the data in persistent memory. Simple testing shows allocated persistent histogram memory in the browser is reduced by about 22%. This should be similar in all processes though somewhat less as the number of histograms held goes down. BUG=705342 Review-Url: https://codereview.chromium.org/2794073002 Cr-Commit-Position: refs/heads/master@{#462897} Committed: https://chromium.googlesource.com/chromium/src/+/af1913582fdf411b2f7edc84189c78b1fb402a37

Patch Set 1 #

Patch Set 2 : restored missing erase in ForgetHistogramForTesting #

Patch Set 3 : comment improvements #

Total comments: 7

Patch Set 4 : addressed review comments by asvitkine #

Total comments: 2

Patch Set 5 : addressed final review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+109 lines, -13 lines) Patch
M base/metrics/bucket_ranges.h View 1 2 3 chunks +18 lines, -0 lines 0 comments Download
M base/metrics/persistent_histogram_allocator.cc View 1 2 3 4 1 chunk +36 lines, -11 lines 0 comments Download
M base/metrics/persistent_histogram_allocator_unittest.cc View 1 2 1 chunk +37 lines, -0 lines 0 comments Download
M base/metrics/statistics_recorder.cc View 1 2 3 1 chunk +18 lines, -2 lines 0 comments Download

Messages

Total messages: 38 (27 generated)
bcwhite
3 years, 8 months ago (2017-04-04 12:54:06 UTC) #12
Alexei Svitkine (slow)
Sweet! Will review in a bit. Do you have any data about how much memory ...
3 years, 8 months ago (2017-04-04 15:35:08 UTC) #15
bcwhite
On 2017/04/04 15:35:08, Alexei Svitkine (slow) wrote: > Sweet! Will review in a bit. > ...
3 years, 8 months ago (2017-04-04 16:37:42 UTC) #17
Alexei Svitkine (slow)
How much is that in KB? On Tue, Apr 4, 2017 at 12:37 PM, <bcwhite@chromium.org> ...
3 years, 8 months ago (2017-04-04 16:42:35 UTC) #18
bcwhite
> How much is that in KB? About 261 KiB out of 1138 KiB used ...
3 years, 8 months ago (2017-04-04 16:49:29 UTC) #19
Alexei Svitkine (slow)
https://codereview.chromium.org/2794073002/diff/40001/base/metrics/bucket_ranges.h File base/metrics/bucket_ranges.h (right): https://codereview.chromium.org/2794073002/diff/40001/base/metrics/bucket_ranges.h#newcode90 base/metrics/bucket_ranges.h:90: mutable subtle::Atomic32 persistent_reference_ = 0; I don't think this ...
3 years, 8 months ago (2017-04-04 17:45:09 UTC) #21
bcwhite
https://codereview.chromium.org/2794073002/diff/40001/base/metrics/bucket_ranges.h File base/metrics/bucket_ranges.h (right): https://codereview.chromium.org/2794073002/diff/40001/base/metrics/bucket_ranges.h#newcode90 base/metrics/bucket_ranges.h:90: mutable subtle::Atomic32 persistent_reference_ = 0; On 2017/04/04 17:45:09, Alexei ...
3 years, 8 months ago (2017-04-05 13:41:30 UTC) #24
Alexei Svitkine (slow)
LGTM It occurred to me, however, that we're still duplicating the ranges data - as ...
3 years, 8 months ago (2017-04-05 20:57:52 UTC) #27
bcwhite
Good idea merging the in-ram and persistent bucket info. I'll do that in a follow-up ...
3 years, 8 months ago (2017-04-06 16:15:34 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2794073002/80001
3 years, 8 months ago (2017-04-07 15:52:21 UTC) #35
commit-bot: I haz the power
3 years, 8 months ago (2017-04-07 17:04:12 UTC) #38
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://chromium.googlesource.com/chromium/src/+/af1913582fdf411b2f7edc84189c...

Powered by Google App Engine
This is Rietveld 408576698