Skip to content

Viewing TCmalloc memory allocations #60

Description

Related to Chromium's TCmalloc, but maybe somebody here can help.

Modified Chromium TTMalloc allocator to expose pagemap_ like below:

third_party/tcmalloc/chromium/src/page_heap.h

class PERFTOOLS_DLL_DECL PageHeap {
 public:
  PageHeap();
  typedef MapSelector<kAddressBits>::Type PageMap;
  PageMap pagemap_;

third_party/tcmalloc/chromium/src/static_vars.cc

PageHeap Static::pageheap2_;

third_party/tcmalloc/chromium/src/static_vars.h

static PageHeap pageheap2_;


Exposed PageHeap via pageheap2_, but somehow 3 radix tree does not contain data/pointers? Only "0"

My script (https://github.com/marcinguy/tcmalloc-inspector) shows the same:

USED:
BLOCK SUMMARY
0 blocks, 0 total size
size frequencies:
FREE:
BLOCK SUMMARY
0 blocks, 0 total size
size frequencies:
LOST:
BLOCK SUMMARY
0 blocks, 0 total size
size frequencies:

More GDB output here: https://github.com/marcinguy/tcmalloc-chromium

Any idea why?

Did I modify the TCMalloc wrongly?

With Google's Tcmalloc in another sample program ia works correctly.

https://github.com/marcinguy/tcmalloc-inspector

Thanks,

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions