commit | a0ad8c1b5e9030077e4c4eef98a5019aa9d9e324 | [log] [tgz] |
---|---|---|
author | Primiano Tucci <primiano@google.com> | Wed Feb 21 14:56:16 2018 +0000 |
committer | Primiano Tucci <primiano@google.com> | Wed Feb 21 14:56:16 2018 +0000 |
tree | fdd2953aee31879e2473b7989331835383025f7d | |
parent | 21bf7f81449d776d9fc8d9339cb6396147c9df9f [diff] |
SharedMemoryABI: Make ChunkID a uint32_t In a recent offline discussion we realized that 16 bit is too short for a ChunkID and could cause ambiguities in the (upcoming) buffer management logic. This CL bumps it to 32-bit and adjusts the shmem ABI, without changing the total size of the page and chunk headers. 32 bits should cover all our realistic needs. It's unrealistic that a probobuf message will be >> 4 GB. The size-fields we reserve for nested messages a 4 byte varint (which gives 7 bits * 4 = 28 bits). Even the official protobuf library itself uses "int" for representing the size of messages. Furthermore the official protobuf implementation caps a message size to 64 MB (see [1]) [1] https://groups.google.com/forum/#!topic/protobuf/7idXKu-dpwo Test: perfetto_unittests Bug: 73612642 Change-Id: Ia09d3e05064c38b0fb1c3431c9bbcfc415618d09
This project is meant to be built both as part of the Android tree and from a standalone checkout
For internal docs see this page
Android is the platform targeted in the first milestones. Right now Linux desktop and OSX are maintained best-effort.
This project uses Android AOSP Gerrit for code reviews and uses the Google C++ style. Currently targets -std=c++11
.
You can use both git cl upload
from Chromium depot tools or Android repo to upload patches.
git cl
is quite convenient as it supports code auto-formatting via git cl format
.
See https://source.android.com/source/contributing for more details about external contributions and CLA signing.
See docs/build_instructions.md
Continuous build and test coverage is available at perfetto-ci.appspot.com. Trybots: CLs uploaded to gerrit are automatically submitted to TravisCI within one minute and made available on the CI page above. The relevant code lives in the infra/ directory.
$ tools/ninja -C out/default (tracing_unittests | tracing_benchmarks) $ out/default/tracing_unittests --gtest_help
Either connect a device in ADB mode or use the bundled emulator.
To start the emulator:$ tools/run_android_emulator (arm | arm64) &
To run the tests (either on the emulator or physical device):$ tools/run_android_test out/default tracing_unittests