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

Issue 251065: Tracks the amount of committed vs uncommitted memory in tcmalloc's page heap's freelists (Closed)

Created:
11 years, 2 months ago by jamesr
Modified:
9 years, 6 months ago
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

Tracks the amount of committed vs uncommitted memory in tcmalloc's page heap's freelists Keeps track of the number of reserved but not committed pages in the freelist and uses that to calculate a waste metric, which is the ratio of committed pages vs pages used by the application. This is exposed in the GetStats() call (which is used for about:tcmalloc) and through GetNumericalProperty() in MallocExtension. BUG=none TEST=open about:tcmalloc and monitor 'WASTE' columns while using the browser Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=28133

Patch Set 1 #

Patch Set 2 : Fixes line length and cleans up formatting a bit #

Total comments: 6

Patch Set 3 : Tracks committed bytes instead of committed-and-free bytes #

Total comments: 1

Patch Set 4 : Refactors ReleaseFreeList() as suggested #

Patch Set 5 : Rebase on top of jar@'s simplification patch #

Patch Set 6 : Fixes math #

Patch Set 7 : Reduces delta in ReleaseFreeList() #

Patch Set 8 : whitespace #

Unified diffs Side-by-side diffs Delta from patch set Stats (+53 lines, -11 lines) Patch
M third_party/tcmalloc/page_heap.h View 1 2 3 4 5 6 3 chunks +9 lines, -0 lines 0 comments Download
M third_party/tcmalloc/page_heap.cc View 1 2 3 4 5 6 7 8 chunks +19 lines, -5 lines 0 comments Download
M third_party/tcmalloc/tcmalloc.cc View 1 2 6 chunks +25 lines, -6 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
jamesr
In order to properly evaluate different memory allocation algorithms we have to be able to ...
11 years, 2 months ago (2009-10-02 00:59:47 UTC) #1
antonm
lgtm, but minor comments http://codereview.chromium.org/251065/diff/5001/2002 File third_party/tcmalloc/page_heap.cc (right): http://codereview.chromium.org/251065/diff/5001/2002#newcode241 Line 241: freelist_returned_bytes_ -= (len << ...
11 years, 2 months ago (2009-10-02 12:29:42 UTC) #2
jar (doing other things)
http://codereview.chromium.org/251065/diff/5001/2002 File third_party/tcmalloc/page_heap.cc (right): http://codereview.chromium.org/251065/diff/5001/2002#newcode241 Line 241: freelist_returned_bytes_ -= (len << kPageShift); +1 It would ...
11 years, 2 months ago (2009-10-02 16:01:12 UTC) #3
Mike Belshe
lgtm http://codereview.chromium.org/251065/diff/5001/2004 File third_party/tcmalloc/tcmalloc.cc (right): http://codereview.chromium.org/251065/diff/5001/2004#newcode370 Line 370: uint64_t freelist_returned_bytes; // Bytes on freelist that ...
11 years, 2 months ago (2009-10-02 17:02:01 UTC) #4
jamesr
This patch tracks commits directly rather than freelist entries, it should be a lot simpler.
11 years, 2 months ago (2009-10-02 19:04:56 UTC) #5
jar (doing other things)
I agree, this simplified things. It LGTM, but see nit/suggestion below. http://codereview.chromium.org/251065/diff/6004/6005 File third_party/tcmalloc/page_heap.cc (right): ...
11 years, 2 months ago (2009-10-02 19:25:38 UTC) #6
jamesr
On 2009/10/02 19:25:38, jar wrote: > I agree, this simplified things. > > It LGTM, ...
11 years, 2 months ago (2009-10-02 19:57:02 UTC) #7
jamesr
Merged up past Jim's recent patch.
11 years, 2 months ago (2009-10-06 00:28:35 UTC) #8
jamesr
I've reduced the delta in PageHeap::ReleaseFreeList() so it should be easier to check for correctness.
11 years, 2 months ago (2009-10-06 02:09:29 UTC) #9
jar (doing other things)
11 years, 2 months ago (2009-10-06 04:14:02 UTC) #10
LGTM.

Thanks!

Powered by Google App Engine
This is Rietveld 408576698