README.md
1 <!-- Copyright 2017 The Chromium Authors. All rights reserved.
2 Use of this source code is governed by a BSD-style license that can be
3 found in the LICENSE file.
4 -->
5 atrace_helper is an optional binary which can be pushed onto the device running
6 systrace in order to enrich the traces with further details (memory, I/O, etc).
7
8 Which problem is it solving?
9 ---------------------------
10 Some nice-to-have details are not present in the systrace, specifically:
11 - Memory snapshots of running processes (PSS/RSS).
12 - Periodic snapshotting of processes and thread names.
13 - File paths for filesystem events (today they report only inode numbers).
14
15 How is it solving it?
16 ---------------------
17 atrace_helper is a small userspace binary which is meant to be pushed on the
18 device and run together with atrace by a dedicated tracing agent. When stopped,
19 the helper produces a JSON file which contains all the relevant details
20 (see --help). The JSON file is consumed by the TraceViewer importers and the
21 extra details are merged into the final model.
22
23 Build instructions
24 ------------------
25 Building the binary requires the Android NDK to be installed. See
26 [Android NDK page](https://developer.android.com/ndk).
27 Once installed the binary can be just built as follows:
28 `$(NDK_HOME)/ndk-build`
29 The binary will be built in `libs/armeabi-v7a/`
30