robot-ya-builder 96458ea3c7 External build system generator release 65 11 months ago
..
default bf0f13dd39 add ymake export to ydb 1 year ago
dynamic bf0f13dd39 add ymake export to ydb 1 year ago
malloc_extension 96458ea3c7 External build system generator release 65 11 months ago
no_percpu_cache bf0f13dd39 add ymake export to ydb 1 year ago
numa_256k bf0f13dd39 add ymake export to ydb 1 year ago
numa_large_pages bf0f13dd39 add ymake export to ydb 1 year ago
small_but_slow bf0f13dd39 add ymake export to ydb 1 year ago
tcmalloc 34a4f487c8 Update contrib/restricted/abseil-cpp to 20220623.0 2 years ago
CMakeLists.darwin-arm64.txt ffff7a34e4 add darwin-arm64 CMakeLists 1 year ago
CMakeLists.darwin-x86_64.txt 33ed6077e6 Intermediate changes 1 year ago
CMakeLists.linux-aarch64.txt a9e5890a07 NO_COMPILER_WARNINGS in cmake msvc builds 1 year ago
CMakeLists.linux-x86_64.txt 33ed6077e6 Intermediate changes 1 year ago
CMakeLists.txt 96458ea3c7 External build system generator release 65 11 months ago
CMakeLists.windows-x86_64.txt 6324d075a5 Intermediate changes 1 year ago
CONTRIBUTING.md 480eebba21 Restoring authorship annotation for <ayles@yandex-team.ru>. Commit 2 of 2. 2 years ago
LICENSE 480eebba21 Restoring authorship annotation for <ayles@yandex-team.ru>. Commit 2 of 2. 2 years ago
README.md 480eebba21 Restoring authorship annotation for <ayles@yandex-team.ru>. Commit 2 of 2. 2 years ago
common.inc bf0f13dd39 add ymake export to ydb 1 year ago
ya.make bf0f13dd39 add ymake export to ydb 1 year ago

README.md

TCMalloc

This repository contains the TCMalloc C++ code.

TCMalloc is Google's customized implementation of C's malloc() and C++'s operator new used for memory allocation within our C and C++ code. TCMalloc is a fast, multi-threaded malloc implementation.

Building TCMalloc

Bazel is the official build system for TCMalloc.

The TCMalloc Platforms Guide contains information on platform support for TCMalloc.

Documentation

All users of TCMalloc should consult the following documentation resources:

  • The TCMalloc Quickstart covers downloading, installing, building, and testing TCMalloc, including incorporating within your codebase.
  • The TCMalloc Overview covers the basic architecture of TCMalloc, and how that may affect configuration choices.
  • The TCMalloc Reference covers the C and C++ TCMalloc API endpoints.

More advanced usages of TCMalloc may find the following documentation useful:

  • The TCMalloc Tuning Guide covers the configuration choices in more depth, and also illustrates other ways to customize TCMalloc. This also covers important operating system-level properties for improving TCMalloc performance.
  • The TCMalloc Design Doc covers how TCMalloc works underneath the hood, and why certain design choices were made. Most developers will not need this level of implementation detail.
  • The TCMalloc Compatibility Guide which documents our expectations for how our APIs are used.

License

The TCMalloc library is licensed under the terms of the Apache license. See LICENSE for more information.

Disclaimer: This is not an officially supported Google product.