CPU使用率を分析する
Perfを使用すると、Linuxデスクトップと組み込みデバイス上のアプリケーションのCPUとメモリの使用状況を分析できます。Performance AnalyzerはLinuxカーネルにバンドルされているPerfツールを使って、アプリケーションのコールチェーンの定期的なスナップショットを取り、タイムラインビューやフレームグラフとして可視化します。
通常、パフォーマンス・アナライザーは、プロファイル化されたバイナリのデバッグ・シンボルを必要とする。プロファイルビルドでは、個別のデバッグシンボルを持つ最適化されたバイナリが生成されるため、それらをプロファイリングに使用する。
データの収集
以下の方法でPerformance Analyzerを起動し、データを収集します:
- Analyze >Performance Analyzer にアクセスして、現在のアプリケーションをプロファイリングします。
- Performance Analyzer からアプリケーションを起動するには、
(Start) を選択します。
注: データ収集が自動的に開始されない場合は、
(Collect profile data) を選択します。
アプリケーションの解析を開始すると、アプリケーションが起動し、Performance Analyzerが直ちにデータ収集を開始します。これは、Recorded の実行時間によって示されます。ただし、データは Perf ツールおよびQt Creator にバンドルされている追加のヘルパー・プログラムを通過し、その場でバッファリングと処理が行われるため、データが生成されてから数秒後にQt Creator に到着することがあります。Processing delay は、遅延の概算を示しています。
(Stop collecting profile data) を選択するか、アプリケーションを閉じるまで、データは収集されます。
アプリケーション起動時のデータ収集の自動開始をオフにするには、Stop collecting profile data を選択します。プロファイルデータは引き続き生成されますが、Qt Creator はボタンを再度選択するまで破棄されます。
デバイスのメモリ使用量をプロファイルする
ターゲット・デバイスのメモリ使用量をプロファイルするためのトレース・ポイントを作成する:
- Analyze >Performance Analyzer Options >Create Memory Trace Points にアクセスします。
- Performance Analyzer ツールバーで
を選択します。
Create Memory Trace Points ダイアログで、実行するスクリプトを変更します。

root権限でスクリプトを実行する必要がある場合は、Elevate privileges using で使用する権限を選択します。
スクリプトを実行するには、OK を選択します。
トレース ポイントにイベントを追加するには、イベント タイプの選択を参照して ください。
メモリトレースを記録して、タイムラインのサンプル行に使用量グラフを表示し、フ レームグラフにメモリ割り当て、ピーク、および解放を表示します。
qmake プロジェクトに個別のデバッグ情報を生成する
リリース用にコンパイルされたアプリケーションにもデバッグシンボルを生成するビルド 設定を手動で設定するには、qmake プロジェクトのビルド設定を編集します:
- Projects >Build Settings に移動します。
- Separate debug info で、Enable を選択します。
- Yes を選択してプロジェクトを再コンパイルします。
How To: Analyze、Analyzer、Performance Analyzer、Analyzing Codeも参照してください 。
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.