TaskTracer
Jump to navigation
Jump to search
Introduction
TaskTracer aims at the correlation between Tasks and Runnables, across threads and processes.
By looking at a task, TaskTracer tells you:
- The “source events” of this task.
- IO events: touch events, key events, wifi daemon signal
- Where it is dispatched from.
How to use Task Tracer
1. Get the source code of Task Tracer.
git clone https://github.com/shellylin/gecko-dev/tree/tt-v4
2. Build and flash to a real device.
cd B2G ./build.sh gecko ./flash.sh gecko
3. Get the source code of data retriever and data converter.
git clone https://github.com/ginayeh/task-tracer-converter
4. Start profiling.
./tasktracer.sh start
5. Stop profiling.
./tasktracer.sh stop
6. Get memory maps from the real device.
mkdir mmaps ./tasktracer.sh get_mmaps
7. Prepare data for extracting class/task name.
./prepare-data.sh mmaps $objdir
How to read the profile using Isis
Reference links
- bug 908995 - [B2G] Task tracer
- bug 916409 - Data retriever for task tracer
- bug 956620 - [B2G] Task tracer converter
- Isis
TODO
- Integrate with built-in profiler.