aboutsummaryrefslogtreecommitdiffhomepage
path: root/benchmarks
diff options
context:
space:
mode:
authorGravatar Yilun Chong <yilunchong@google.com>2018-03-22 17:08:06 -0700
committerGravatar Yilun Chong <yilunchong@google.com>2018-03-22 17:08:06 -0700
commit745ef89ebf9408afc229ab6b6c28a16ef8268a8f (patch)
tree87366ab4e517b0234a838070c603f3bdb337419d /benchmarks
parent9dc0a4d5cf181845c4c8ca6c482ec38cc1835bbc (diff)
Add performance.md and add instruction for linking tcmalloc
Diffstat (limited to 'benchmarks')
-rw-r--r--benchmarks/README.md15
1 files changed, 14 insertions, 1 deletions
diff --git a/benchmarks/README.md b/benchmarks/README.md
index 459c7b9d..8fbc6e18 100644
--- a/benchmarks/README.md
+++ b/benchmarks/README.md
@@ -3,7 +3,9 @@
This directory contains benchmarking schemas and data sets that you
can use to test a variety of performance scenarios against your
-protobuf language runtime.
+protobuf language runtime. If you are looking for performance
+numbers of officially support languages, see [here](
+https://github.com/google/protobuf/blob/master/docs/Performance.md)
## Prerequisite
@@ -17,6 +19,11 @@ We are using [google/benchmark](https://github.com/google/benchmark) as the
benchmark tool for testing cpp. This will be automaticly made during build the
cpp benchmark.
+The cpp protobuf performance can be improved by linking with [tcmalloc library](
+https://gperftools.github.io/gperftools/tcmalloc.html). For using tcmalloc, you
+need to build [gpertools](https://github.com/gperftools/gperftools) to generate
+libtcmallc.so library.
+
### Java
We're using maven to build the java benchmarks, which is the same as to build
the Java protobuf. There're no other tools need to install. We're using
@@ -64,6 +71,12 @@ $ make java
$ make cpp
```
+For linking with tcmalloc:
+
+```
+$ env LD_PRELOAD={directory to libtcmalloc.so} make cpp
+```
+
### Python:
We have three versions of python protobuf implementation: pure python, cpp