blob: c848b4838d3fd96276ae4db1115a72d1707cbf0b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
# 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](https://bazel.build) is the official build system for TCMalloc.
The [TCMalloc Platforms Guide](docs/platforms.md) contains information on
platform support for TCMalloc.
## Documentation
All users of TCMalloc should consult the following documentation resources:
* The [TCMalloc Quickstart](docs/quickstart.md) covers downloading, installing,
building, and testing TCMalloc, including incorporating within your codebase.
* The [TCMalloc Overview](docs/overview.md) covers the basic architecture of
TCMalloc, and how that may affect configuration choices.
* The [TCMalloc Reference](docs/reference.md) covers the C and C++ TCMalloc API
endpoints.
More advanced usages of TCMalloc may find the following documentation useful:
* The [TCMalloc Tuning Guide](docs/tuning.md) 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](docs/design.md) 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](docs/compatibility.md) 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.
|