はじめに

<< 目次を表示 >>

ページ位置:  プログラムの動作解析 > プロファイラ >

はじめに

Enterprise Architectのプロファイル機能は、プロファイラサブウィンドウからほぼすべての操作・設定が実行できます。例えば、プロファイルのセッションを開始したり、既存のプロセスにアタッチしたり、プロファイル動作を一時停止あるいは終了させたり、プロファイルした結果をレポートを表示したりできます。また、プロファイラの動作についてのオプションを変更できます。

 

プロファイラを利用することで、パフォーマンスに関する問題を調査し、その結果を以下の3つの機能を利用し効率的に確認できます。これらの3つの機能はプロファイラのツールバーから呼び出せます。

 

 

ツール

コールグラフ

プログラムの処理の内容を随時追跡し、パフォーマンスを解析します。データの取得(サンプリング)はスタック単位で行います。取得間隔はツールバーから設定を変更できます。多くの処理時間をかけている処理を発見できます。コールグラフとして結果を可視化できます。

メモリプロファイル

解析対象のプログラムのメモリの割り当てをフックしパフォーマンスを解析します。多くのメモリを要求する処理がパフォーマンスに影響を与えている可能性が考えられます。生成したコールグラフの重み付けに利用します。

スタックプロファイル

スタックプロファイラを使用すると、ソースコードにマーカーを設定して、実行がそのマーカーに到達したときにスタックトレースを完全にキャプチャできます。アプリケーションが実行を続け、実行中の実行ファイル内の様々な場所からマークされた位置にアクセスすると、コード内の特定のポイントの利用状況や使用シナリオを示す非常に詳細で有用な情報を取得できます。

 

スタックプロファイルレポートは、メモリプロファイルレポートと同様に「逆スタック」順に表示されます。つまり、レポートのルートは常に単一のノード(この場合はマーカー)であり、マークされた位置がアクセスされた様々な場所を表示するためにツリーが展開されます。

メモリリーク検知

解析対象のプログラムのメモリに関する操作をフックし、メモリリークを検知します。メモリの解放処理が検知できなかった、割り当て済みのメモリの情報をコールグラフに表示します。

 

 

利用手順:

リボン

  • コード > ソースコード > 動作解析の設定 > プロファイラ
  • 動作解析 > ツール > プロファイラ > サブウィンドウの表示

その他

動作解析サブウィンドウのツールバーのボタン | プロファイラ

 

プロファイラサブウィンドウを表示させるには、「動作解析」リボン内の「ツール」パネルにある プロファイラボタンを押すことでも呼び出せます。

 

プロファイラは250ミリ秒までの間の指定した間隔で、プロセスの動作を記録します。指定した時間が経過するごとに、すべての動作しているスレッドのスタックの情報を取得します。この情報はEnterprise Architectに送信され、保存されます。

 

プロファイルの実行中はいつでも動作を中断・再開できます。また、取得データを削除してデータの収集をやり直すこともできます。

プロファイラを停止させた場合でも、すぐに再開できます。

 

アイコン

説明

プロファイルのオプションを設定します。設定可能な項目は次の通りです。

  • 実行中のプロセスにアタッチ - 既に実行されているアプリケーションにアタッチし、プロファイル情報を取得します。
  • レポートの読み込み - 以前取得したレポートファイルを開き、内容を表示します。
  • 動作解析の設定 (Shift+F12) - 動作解析の設定ダイアログを表示させます。
  • プロファイル情報の即時取得 - プロセスを開始したり、アタッチした瞬間からプロファイル情報を取得します。
  • デバッグ出力を表示 - デバッグ出力の内容をシステム出力サブウィンドウに表示します。
  • 終了時にプロセスを停止 - プロファイラを停止した際に、対象のプロセスも停止させます。

アプリケーションの動作解析の設定が完了している場合に、アプリケーションを実行しプロファイル情報を取得します。

サンプリング状態を表示します。緑色ならば実行中で、赤色ならば無効になっています。

プロファイラの動作を停止させます。情報が収集できている場合には、レポートボタンが押せるようになります。

レポートを表示します。

利用しているツールを表示します。変更すると、プロファイラのウィンドウに表示される情報が変わります。必要に応じてドロップダウンリストから希望する項目を選択してください。

収集した情報を消去します。削除前に確認メッセージが表示されます。

ヘルプを表示します。

 

 

参照: