TaskTracer: Difference between revisions
Jump to navigation
Jump to search
| Line 8: | Line 8: | ||
== How to use Task Tracer == | == 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 == | == How to read the profile using Isis == | ||
Revision as of 05:58, 8 April 2014
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.