I am trying to fix a performance issue bug on one of the core apps, and I would like to know if there is any benchmarking or monitoring tool that I can use to compare my different branches use of CPU.
Thanks.
Since you talked about "core apps", I suppose you are referring to Ubuntu Touch Core Apps project.
In that case (Ubuntu SDK/QML development) there are two tools that you could find useful for your purpose:
PerformanceOverlay
from Ubuntu.PerformanceMetrics
module.
According to documentation:
PerformanceOverlay
Overlay displaying performance related metrics (rendering time, CPU usage, etc.)
PerformanceOverlay displays various performance related indicators to help developers detect issues in their application.
Simply use top
or htop
from terminal, to spot CPU usage for each thread used by your QML application.
The tools I listed above are especially good to check out issue related to QML Animation usage.
If you need to track the time required by a JS/QML function to be run, you can use Console.time()
and Console.timeEnd()
method.
See http://qt-project.org/doc/qt-5/qtquick-debugging.html for further information on Console.time()
.
sudo intel_upload_blit_large
can be used for microbenchmark of Intel GPU performancesysbench
- A modular, cross-platform and multi-threaded benchmark tool.