このページでは

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 プロジェクトのビルド設定を編集します:

  1. Projects >Build Settings に移動します。
  2. Separate debug info で、Enable を選択します。
  3. Yes を選択してプロジェクトを再コンパイルします。

How To: AnalyzeAnalyzerPerformance AnalyzerAnalyzing 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.