JP4832125B2 - 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体 - Google Patents

性能解析装置、性能解析方法、性能解析プログラム、および記録媒体 Download PDF

Info

Publication number
JP4832125B2
JP4832125B2 JP2006071335A JP2006071335A JP4832125B2 JP 4832125 B2 JP4832125 B2 JP 4832125B2 JP 2006071335 A JP2006071335 A JP 2006071335A JP 2006071335 A JP2006071335 A JP 2006071335A JP 4832125 B2 JP4832125 B2 JP 4832125B2
Authority
JP
Japan
Prior art keywords
instruction address
change
total amount
performance analysis
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006071335A
Other languages
English (en)
Other versions
JP2007249534A (ja
Inventor
茂 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2006071335A priority Critical patent/JP4832125B2/ja
Priority to US11/524,398 priority patent/US7660974B2/en
Publication of JP2007249534A publication Critical patent/JP2007249534A/ja
Application granted granted Critical
Publication of JP4832125B2 publication Critical patent/JP4832125B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3471Address tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/885Monitoring specific for caches

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

この発明は、プロセッサに実行させる解析対象プログラムの性能を解析する性能解析装置、性能解析方法、性能解析プログラム、および記録媒体に関する。
現在のプロセッサの多くは、プロセッサ内部のイベントおよび外部とのやり取りのイベントをカウントすることにより性能をモニタリングするハードウェアカウンタを有している。
たとえば、インテル社のペンティアム(登録商標)プロセッサでは複数のカウンタを持ち、クロック数、実行命令数、あるいはキャッシュミス数など多数のイベントの中から選択してカウントできるように構成されている。インターナショナル・ビジネス・マシン社のパワーPCプロセッサでも、同様に構成されており、多数のカウンタの中から選択してイベントをカウントすることができる。
そのためプログラムでの実行サイクル数などのプログラム走行情報や、キャッシュミスサイクル数などのボトルネック情報を知ることができる。このように、ソフトウェアプログラムの改善や性能向上のための情報を提供する仕組みがハードウェアとしてプロセッサに組み込まれている。
たとえば、プロセッサ内部のハードウェアカウンタを利用した技術が開示されている(たとえば、下記特許文献1を参照。)。また、ソフトウェアやシステムのボトルネックを検出するため、ソフトウェアのイベントを発生させ、トレースして表示する技術も開示されている(たとえば、下記特許文献2〜4を参照。)。なお、特許文献2〜4では、ハードウェアイベントではなく、ソフトウェアのイベント(タスク名、関数名など)を扱っている。
特開2004−318538号公報 特開平9−34850号公報 特開平6−83608号公報 特開平5−35549号公報
一般に、ハードウェアカウンタは、プロセッサに専用回路として組み込まれており、専用回路はプロセッサ面積節約のためハードウェアイベント信号を累積的にカウントするだけの簡単なつくりとなっている。そのため、ハードウェアカウンタから取得された情報(パイプラインストール、メモリトラフィック、バス負荷情報などのアーキテクチア情報)は特定区間の累積情報として出力されている。したがって、特定区間全体の情報は取得できるが微小間隔での情報は取得することができないという問題があった。
この取得された情報は、取得情報は“点”として絞ることができず、“面”としての区間情報となる。したがって、ハードウェアカウンタから取得された情報をもとにしたチューニングやシステム設計へのフィードバックは具体性に欠け、曖昧かつ抽象的になりがちであり、チューニングポイントの探索が困難であるという問題があった。
この発明は、上述した従来技術による問題点を解消するため、解析対象プログラムのチューニングポイントをプロセッサの既存のハードウェア構成を用いるだけで簡単かつわかりやすく提示することができる性能解析装置、性能解析方法、性能解析プログラム、および記録媒体を提供することを目的とする。
上述した課題を解決し、目的を達成するため、この発明にかかる性能解析装置、性能解析方法、性能解析プログラム、および記録媒体は、解析対象プログラムを実行させるプロセッサ内のハードウェアカウンタにより発生回数が計数されるイベントを設定し、前記解析対象プログラムの実行中において、前記プロセッサから所定時間間隔で発生する割り込み信号の発生時における命令アドレスを検出し、イベントの発生回数を示す前記ハードウェアカウンタの計数値の変化量の総計を命令アドレスごとに算出し、表示画面を制御して、算出された前記命令アドレスごとの変化量の総計を表示することを特徴とする。
この発明によれば、命令アドレスごとのイベント発生頻度を視認することができる。
また、上記発明において、前記変化量の総計が算出された命令アドレスの中から、前記イベントに対応する命令アドレスを特定し、特定された命令アドレスを、当該命令アドレスの前記変化量の総計に関連付けて表示することとしてもよい。
この発明によれば、命令アドレスの中からイベントが発生した命令アドレスを視認することができ、チューニングポイントとして特定することができる。
また、上記発明において、前記命令アドレスごとの変化量の総計を、前記命令アドレスの命令を含む実行単位に基づいて表示することとしてもよい。
この発明によれば、イベントが発生した実行単位を視認することができ、チューニングポイントとして特定することができる。
本発明にかかる性能解析装置、性能解析方法、性能解析プログラム、および記録媒体によれば、解析対象プログラムのチューニングポイントをプロセッサの既存のハードウェア構成を用いるだけで簡単かつわかりやすく提示することができるという効果を奏する。
以下に添付図面を参照して、この発明にかかる性能解析装置、性能解析方法、性能解析プログラム、および記録媒体の好適な実施の形態を詳細に説明する。
(性能解析装置のハードウェア構成)
まず、この発明の実施の形態にかかる性能解析装置のハードウェア構成について説明する。図1は、この発明の実施の形態にかかる性能解析装置のハードウェア構成を示すブロック図である。
図1において、性能解析装置は、CPU101と、ROM102と、RAM103と、HDD(ハードディスクドライブ)104と、HD(ハードディスク)105と、FDD(フレキシブルディスクドライブ)106と、着脱可能な記録媒体の一例としてのFD(フレキシブルディスク)107と、ディスプレイ108と、I/F(インターフェース)109と、キーボード110と、マウス111と、スキャナ112と、プリンタ113と、を備えている。また、各構成部はバス100によってそれぞれ接続されている。
ここで、CPU101は、性能解析装置の全体の制御を司る。ROM102は、ブートプログラムなどのプログラムを記憶している。RAM103は、CPU101のワークエリアとして使用される。HDD104は、CPU101の制御にしたがってHD105に対するデータのリード/ライトを制御する。HD105は、HDD104の制御で書き込まれたデータを記憶する。
FDD106は、CPU101の制御にしたがってFD107に対するデータのリード/ライトを制御する。FD107は、FDD106の制御で書き込まれたデータを記憶したり、FD107に記憶されたデータを性能解析装置に読み取らせたりする。
また、着脱可能な記録媒体として、FD107のほか、CD−ROM(CD−R、CD−RW)、MO、DVD(Digital Versatile Disk)、メモリーカードなどであってもよい。ディスプレイ108は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ108は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F109は、通信回線を通じてインターネットなどのネットワーク114に接続され、このネットワーク114を介して他の装置に接続される。そして、I/F109は、ネットワーク114と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F109には、たとえばモデムやLANアダプタなどを採用することができる。
キーボード110は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス111は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ112は、画像を光学的に読み取り、性能解析装置内に画像データを取り込む。なお、スキャナ112は、OCR機能を持たせてもよい。また、プリンタ113は、画像データや文書データを印刷する。プリンタ113には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
また、図2は、図1に示したハードウェア構成を部分的に拡大したブロック図である。図2において、符号201は測定用プロセッサであり、符号202はメモリであり、符号203は性能解析用プロセッサである。測定用プロセッサ201、メモリ202、および解析用プロセッサ203は、バス100に接続されている。測定用プロセッサ201および解析用プロセッサ203は、図1に示したCPU101に相当する。また、メモリ202は、図1に示したROM102、RAM103、HD105などの記録媒体に相当する。
測定用プロセッサ201は、各種命令を処理するプロセッサコア211、データを保持するキャッシュ212、プロセッサ内部のイベントおよび外部とのやり取りのイベントをカウントすることにより性能をモニタリングするハードウェアカウンタ213、一定間隔で割り込み信号を出力するタイマ214と、を有する。
ハードウェアカウンタ213は、解析対象プログラム221の実行が開始されると同時に計数を開始する。タイマ214も同様、解析対象プログラム221の実行が開始されてから、所定時間間隔で割り込み信号を出力する。割り込み信号の所定時間間隔は、性能解析プログラム222で設定可能である。
また、メモリ202は、解析対象プログラム221、性能解析プログラム222、および検出命令アドレス/変化量総計対応テーブル223を保持する。解析対象プログラム221は、性能をモニタリングされるソフトウェアである。性能解析プログラム222は、解析対象プログラム221の性能を解析するソフトウェアである。
検出命令アドレス/変化量総計対応テーブル223は、解析対象プログラム221の性能解析中に作成されるテーブル223である。また、性能解析用プロセッサ203は、性能解析プログラム222を実行するプロセッサである。なお、性能解析用プロセッサ203は、測定用プロセッサ201と兼用することとしてもよい。
(性能解析装置の機能的構成)
つぎに、この発明の実施の形態にかかる性能解析装置の機能的構成について説明する。図3は、この発明の実施の形態にかかる性能解析装置の機能的構成を示すブロック図である。図3において、性能解析装置300は、設定部301と、検出部302と、算出部303と、特定部304と、表示部305と、表示制御部306と、から構成されている。
設定部301は、解析対象プログラム221を実行させる測定用プロセッサ201内のハードウェアカウンタ213により発生回数が計数されるイベントを設定する。ここで、イベントとは、解析対象プログラム221を実行させた場合に測定用プロセッサ201が実行する命令、キャッシュミス、TLBミス、実行命令並列度、分岐命令、レジスタ干渉サイクル数、パイプラインストール、メモリトラフィック、バス負荷情報など、測定用プロセッサ201により発生するイベントである。
この設定部301によりイベントが設定されると、ハードウェアカウンタ213は、当該イベントの発生回数を計数する。たとえば、キャッシュミスをイベントとして設定すると、ハードウェアカウンタ213はキャッシュミスの発生回数を計数し、キャッシュミス以外のイベントは計数しない。
また、検出部302は、解析対象プログラム221の実行中において、測定用プロセッサ201から所定時間間隔で発生する割り込み信号の発生時における命令アドレスを検出する。ここで、命令アドレスとは、解析対象プログラム221を実行する場合、測定用プロセッサ201が実行するアセンブリ命令のプログラム位置である。検出部302は、具体的には、測定用プロセッサ201内のタイマ214から出力される割り込み信号により、解析対象プログラム221の実行が停止したときの命令アドレスを検出する。以降、この検出部302によって検出された命令アドレスを、「検出命令アドレス」と称す。
また、算出部303は、設定部301によって設定されたイベントの発生回数を示すハードウェアカウンタ213の計数値の変化量の総計を、検出命令アドレスごとに算出する。具体的には、検出命令アドレスごとに、当該検出時(すなわち、割り込み信号発生時)におけるハードウェアカウンタ213の計数値を読み出す。そして、今回割り込み発生時の計数値から前回割り込み発生時の計数値を減算することで、計数値の変化量を算出する。これにより、前回割り込み発生時から今回割り込み発生時までのイベントの変化量を得ることができる。
この変化量をΔPとすると、検出命令アドレスごとに変化量ΔPを累積する。これにより、検出命令アドレスごとに変化量ΔPの総計を得ることができる。図4は、検出命令アドレス/変化量総計対応テーブル223の一例を示す説明図である。
図4では、便宜上、検出命令アドレスのアセンブリ命令を対応付けているが、算出部303では、アセンブリ命令を認識しておらず、検出命令アドレスと変化量総計とを対応付けているだけである。
また、特定部304は、算出部303によって変化量の総計が算出された命令アドレスの中から、イベントに対応する命令アドレスを特定する。図4に示した検出命令アドレス/変化量総計対応テーブル223には、イベントに関係のないアセンブリ命令の命令アドレスが含まれているため、イベントに対応する命令アドレスを特定する。
たとえば、イベントがキャッシュミスである場合、キャッシュミスに対応するアセンブリ命令は、「LD」(ロード)であるため、図4に示した検出命令アドレスの中から、アセンブリ命令:LDの命令アドレスを特定する。なお、どの命令アドレスがどのようなアセンブリ命令であるかは、解析対象プログラム221のソースコードから得ることができる。
また、表示部305は、図1に示したディスプレイ108に相当し、表示制御部306の制御内容に従って、表示画面に各種画像やテキストを表示する。表示制御部306は、表示画面を制御して、算出部303によって算出された命令アドレスごとの変化量ΔPの総計を表示する。たとえば、変化量ΔPの総計の命令アドレスごとの変化を示すグラフを表示する。
図5−1は、変化量ΔPの総計の命令アドレスごとの変化を示すグラフである。図5−1において、横軸は命令アドレスであり、縦軸が命令アドレスごとの変化量ΔPの総計である。このとき、特定部304によって特定された命令アドレス(イベントに対応した命令アドレス)を強調表示することにより、イベントに対応した命令アドレスの変化量総計を視覚的に認識することができる。
なお、強調表示については、他の命令アドレスやその変化量総計とは識別できるように表示すればよく、その表示形態は様々である。たとえば、イベントに対応した命令アドレスを他の命令アドレスとは異なる大きさ、色などで表示したり、グラフ上、イベントに対応した命令アドレスの変化量総計の箇所を他の箇所とは異なる色で表示したりすることが考えられる。
また、表示制御部306は、命令アドレスごとの変化量の総計を、命令アドレスのアセンブリ命令を含む実行単位に基づいて表示することとしてもよい。ここで、実行単位とは、命令アドレスのアセンブリ命令そのもの、アセンブリ命令を含む処理(たとえば、For文などのまとまった文章記述)、アセンブリ命令を含む関数である。
この場合、図5−1に示したグラフの横軸は、実行単位となり、縦軸の変化量総計は、横軸の実行単位に応じて変化する。実行単位を関数Fi(F1〜Fn)とした場合のグラフを図5−2に示す。図5−2は、変化量ΔPの総計の関数Fiごとの変化を示すグラフである。
なお、図3に示した設定部301、検出部302、算出部303、特定部304、および表示制御部306は、具体的には、たとえば、図1に示したROM102,RAM103,HD105などの記録媒体に記録されているプログラムを、CPU101に実行させることによって、またはI/F109によって、その機能を実現する。
(性能解析処理手順)
つぎに、この発明の実施の形態にかかる性能解析装置300の性能解析処理手順について説明する。図6は、この発明の実施の形態にかかる性能解析装置300の性能解析処理手順を示すフローチャートである。図6において、まず、設定部301により、ハードウェアカウンタ213に性能モニタリングしたいイベントを設定する(ステップS601)。
つぎに、解析対象プログラム221が実行開始されるまで待ち受け(ステップS602:No)、実行開始された場合(ステップS602:Yes)、検出部302により、タイマ214からの割り込み信号発生時の命令アドレスを検出する(ステップS603)。
つぎに、算出部303により、検出命令アドレスにおけるハードウェアカウンタ213の計数値の変化量ΔPを算出し(ステップS604)、検出命令アドレスごとに変化量ΔPを累積保持する(ステップS605)。そして、解析対象プログラム221の実行が終了したか否かを判断する(ステップS606)。
終了していない場合(ステップS606:No)、ステップS603に戻り、つぎの割り込み信号発生時の命令アドレスを検出する。一方、実行終了である場合(ステップS606:Yes)、ステップS607に移行する。この段階で、図4に示した検出命令アドレス/変化量総計対応テーブル223が完成する。
そして、特定部304により、イベントに対応する命令アドレスを特定して(ステップS607)、表示制御部306により図5−1または図5−2に示したような変化量総計のグラフを表示画面に表示する(ステップS608)。これにより、一連の処理を終了する。
このように、この実施の形態によれば、特定全体の区間として曖昧であった解析対象プログラム221のハードウェアカウンタ213により計数される各種イベントの発生回数を示す計数値を、そのイベントに対応する関数、処理、アセンブリ命令位置として視覚的に表示することができる。したがって、解析対象プログラム221やシステムへのチューニングや設計を容易かつ正確におこなうことができる。
たとえば、キャッシュミスをイベントとして設定した場合、その命令アドレスの近辺でキャッシュミスが発生していることを早急に突き止めることができる。そのため解析対象プログラム221に対して、キャッシュミスの各種対策(プリフェッチなど)などプログラム修正をすることでキャッシュミスの低減化を図ることができ、解析対象プログラム221の性能の向上を図ることができる。このように、ハードウェアカウンタ213の計数値に対応した性能向上に対する阻害要因を分析することにより、正確なチューニングをおこなうことができる。
また、細粒度の区間情報を視覚することで従来は平均値としてとらえられなかった情報を最小値/最大値や分散値などの新たな指標として取得でき、解析対象プログラム221やシステムでの設計、チューニングや、さらに新しい“特徴分析の指標”としても活用することができる。
以上説明したように、この発明にかかる性能解析装置300、性能解析方法、性能解析プログラム222、および記録媒体によれば、解析対象プログラム221のチューニングポイントをプロセッサの既存のハードウェア構成を用いるだけで簡単かつわかりやすく提示することができるという効果を奏する。
なお、本実施の形態で説明した性能解析方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
以上のように、本発明にかかる性能解析装置、性能解析方法、性能解析プログラム、および記録媒体は、プログラムの性能モニタリングに有用である。
この発明の実施の形態にかかる性能解析装置のハードウェア構成を示すブロック図である。 図1に示したハードウェア構成を部分的に拡大したブロック図である。 この発明の実施の形態にかかる性能解析装置の機能的構成を示すブロック図である。 検出命令アドレス/変化量総計対応テーブルの一例を示す説明図である。 変化量総計の命令アドレスごとの変化を示すグラフである。 変化量総計の関数ごとの変化を示すグラフである。 この発明の実施の形態にかかる性能解析装置の性能解析処理手順を示すフローチャートである。
符号の説明
201 測定用プロセッサ
202 メモリ
203 性能解析用プロセッサ
211 プロセッサコア
212 キャッシュ
213 ハードウェアカウンタ
214 タイマ
221 解析対象プログラム
222 性能解析プログラム
223 検出命令アドレス/変化量総計対応テーブル
300 性能解析装置
301 設定部
302 検出部
303 算出部
304 特定部
305 表示部
306 表示制御部

Claims (10)

  1. 解析対象プログラムを実行させるプロセッサ内のハードウェアカウンタにより発生回数が計数されるイベントを設定する設定手段と、
    前記解析対象プログラムの実行中において、前記プロセッサから所定時間間隔で発生する割り込み信号の発生時における命令アドレスを検出する検出手段と、
    前記設定手段によって設定されたイベントの発生回数を示す前記ハードウェアカウンタの計数値の変化量の総計を、前記検出手段によって検出された命令アドレスごとに算出する算出手段と、
    表示画面を有する表示手段と、
    前記表示画面を制御して、前記算出手段によって算出された前記命令アドレスごとの変化量の総計を表示する表示制御手段と、
    を備えることを特徴とする性能解析装置。
  2. 前記算出手段によって前記変化量の総計が算出された命令アドレスの中から、前記イベントに対応する命令アドレスを特定する特定手段を備え、
    前記表示制御手段は、
    前記特定手段によって特定された命令アドレスを、当該命令アドレスの前記変化量の総計に関連付けて表示することを特徴とする請求項1に記載の性能解析装置。
  3. 前記表示制御手段は、
    前記命令アドレスごとの変化量の総計を、前記命令アドレスの命令を含む実行単位に基づいて表示することを特徴とする請求項1または2に記載の性能解析装置。
  4. 解析対象プログラムを実行させるプロセッサ内のハードウェアカウンタにより発生回数が計数されるイベントを設定する設定工程と、
    前記解析対象プログラムの実行中において、前記プロセッサから所定時間間隔で発生する割り込み信号の発生時における命令アドレスを検出する検出工程と、
    前記設定工程によって設定されたイベントの発生回数を示す前記ハードウェアカウンタの計数値の変化量の総計を、前記検出工程によって検出された命令アドレスごとに算出する算出工程と、
    前記算出工程によって算出された前記命令アドレスごとの変化量の総計を表示画面に表示する表示工程と、
    を含んだことを特徴とする性能解析方法。
  5. 前記算出工程によって前記変化量の総計が算出された命令アドレスの中から、前記イベントに対応する命令アドレスを特定する特定工程を含み、
    前記表示工程は、
    前記特定工程によって特定された命令アドレスを、当該命令アドレスの前記変化量の総計に関連付けて表示することを特徴とする請求項4に記載の性能解析方法。
  6. 前記表示工程は、
    前記命令アドレスごとの変化量の総計を、前記命令アドレスの命令を含む実行単位に基づいて表示することを特徴とする請求項4または5に記載の性能解析方法。
  7. 解析対象プログラムを実行させるプロセッサ内のハードウェアカウンタにより発生回数が計数されるイベントを設定させる設定工程と、
    前記解析対象プログラムの実行中において、前記プロセッサから所定時間間隔で発生する割り込み信号の発生時における命令アドレスを検出させる検出工程と、
    前記設定工程によって設定されたイベントの発生回数を示す前記ハードウェアカウンタの計数値の変化量の総計を、前記検出工程によって検出された命令アドレスごとに算出させる算出工程と、
    前記算出工程によって算出された前記命令アドレスごとの変化量の総計を表示画面に表示させる表示工程と、
    をコンピュータに実行させることを特徴とする性能解析プログラム。
  8. 前記算出工程によって前記変化量の総計が算出された命令アドレスの中から、前記イベントに対応する命令アドレスを特定させる特定工程を前記コンピュータに実行させ、
    前記表示工程は、
    前記特定工程によって特定された命令アドレスを、当該命令アドレスの前記変化量の総計に関連付けて表示させることを特徴とする請求項7に記載の性能解析プログラム。
  9. 前記表示工程は、
    前記命令アドレスごとの変化量の総計を、前記命令アドレスの命令を含む実行単位に基づいて表示させることを特徴とする請求項7または8に記載の性能解析プログラム。
  10. 請求項7〜9のいずれか一つに記載の性能解析プログラムを記録した前記コンピュータに読み取り可能な記録媒体。
JP2006071335A 2006-03-15 2006-03-15 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体 Expired - Fee Related JP4832125B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006071335A JP4832125B2 (ja) 2006-03-15 2006-03-15 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体
US11/524,398 US7660974B2 (en) 2006-03-15 2006-09-21 Method and apparatus for analyzing performance, and computer product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006071335A JP4832125B2 (ja) 2006-03-15 2006-03-15 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体

Publications (2)

Publication Number Publication Date
JP2007249534A JP2007249534A (ja) 2007-09-27
JP4832125B2 true JP4832125B2 (ja) 2011-12-07

Family

ID=38519323

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006071335A Expired - Fee Related JP4832125B2 (ja) 2006-03-15 2006-03-15 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体

Country Status (2)

Country Link
US (1) US7660974B2 (ja)
JP (1) JP4832125B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4832125B2 (ja) * 2006-03-15 2011-12-07 富士通セミコンダクター株式会社 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体
US8136124B2 (en) 2007-01-18 2012-03-13 Oracle America, Inc. Method and apparatus for synthesizing hardware counters from performance sampling
JP5029245B2 (ja) * 2007-09-20 2012-09-19 富士通セミコンダクター株式会社 プロファイリング方法及びプログラム
JP2009129301A (ja) * 2007-11-27 2009-06-11 Nec Electronics Corp 自己診断回路及び自己診断方法
JP5326708B2 (ja) 2009-03-18 2013-10-30 富士通株式会社 演算処理装置および演算処理装置の制御方法
GB0912507D0 (en) * 2009-07-17 2009-08-26 Skype Ltd Reducing processing resources incurred by a user interface
WO2012001779A1 (ja) * 2010-06-30 2012-01-05 富士通株式会社 情報処理装置の使用量解析方法、情報処理システム及びそのプログラム
JP6544054B2 (ja) * 2015-06-02 2019-07-17 富士通株式会社 情報処理装置、実行情報記録プログラムおよび実行情報記録方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59208661A (ja) * 1983-05-12 1984-11-27 Hitachi Ltd 計算機の負荷測定方法
JPH03118644A (ja) * 1989-09-29 1991-05-21 Nippondenso Co Ltd プログラム実行モニタ
JP2777496B2 (ja) * 1991-02-28 1998-07-16 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムにおいてマルチプロセスをプロファイリングする際の使用方法
JPH0535549A (ja) 1991-07-31 1993-02-12 Toshiba Corp ソフトウエア負荷解析支援システム
JPH05241854A (ja) * 1992-02-04 1993-09-21 Nec Corp プログラム走行状態モニタ方式
JP3224426B2 (ja) * 1992-09-04 2001-10-29 富士通株式会社 プログラム解析支援装置
JPH0934850A (ja) 1995-07-21 1997-02-07 Hitachi Ltd 並列計算機における性能データの表示方法
US6230313B1 (en) * 1998-12-23 2001-05-08 Cray Inc. Parallelism performance analysis based on execution trace information
JP2002073379A (ja) * 2000-08-30 2002-03-12 Toshiba Corp プログラム性能測定装置および性能測定方法
US7093108B2 (en) * 2001-02-01 2006-08-15 Arm Limited Apparatus and method for efficiently incorporating instruction set information with instruction addresses
US7093236B2 (en) * 2001-02-01 2006-08-15 Arm Limited Tracing out-of-order data
JP3491617B2 (ja) * 2001-03-01 2004-01-26 日本電気株式会社 運用レポート作成方式、運用レポート作成方法および運用レポート作成用プログラム
US7080289B2 (en) * 2001-10-10 2006-07-18 Arm Limited Tracing multiple data access instructions
JP2004318538A (ja) * 2003-04-17 2004-11-11 Fujitsu Ltd 性能モニタリング方式
US7657875B2 (en) * 2005-04-12 2010-02-02 International Business Machines Corporation System and method for collecting a plurality of metrics in a single profiling run of computer code
JP4832125B2 (ja) * 2006-03-15 2011-12-07 富士通セミコンダクター株式会社 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体

Also Published As

Publication number Publication date
JP2007249534A (ja) 2007-09-27
US7660974B2 (en) 2010-02-09
US20070220237A1 (en) 2007-09-20

Similar Documents

Publication Publication Date Title
JP4832125B2 (ja) 性能解析装置、性能解析方法、性能解析プログラム、および記録媒体
US7239980B2 (en) Method and apparatus for adaptive tracing with different processor frequencies
US9576382B2 (en) Method and apparatus for visualizing and interactively manipulating profile data
JP5040136B2 (ja) チューニング支援装置、チューニング支援プログラム、チューニング支援プログラムを記録したコンピュータ読み取り可能な記録媒体およびチューニング支援方法
US10127129B2 (en) Non-invasive time-based profiling tool
JP4381436B2 (ja) シナリオ生成装置およびシナリオ生成プログラム
KR20070121649A (ko) 소프트웨어 프로그램의 성능분석 방법 및 장치
JP5749996B2 (ja) アプリケーション・コードの実行表示用のシステムおよび方法
JP2008077183A (ja) スクロール制御プログラム、記録媒体、スクロール制御装置およびスクロール制御方法
US6192490B1 (en) Method and system for monitoring computer performance utilizing sound diagnostics
CN113467877B (zh) 一种数据显示系统及方法
JP2018005855A (ja) 診断装置、診断システム、診断方法およびプログラム
US10657481B2 (en) Evaluation of output-producing asset productivity
JP2013182617A (ja) 同期ズームするためのシステム及び方法
Roberts et al. TraceVis: an execution trace visualization tool
JP2007280174A (ja) 操作履歴記録装置
EP2410429A1 (en) System and method for use in indicating execution of application code
JP4370274B2 (ja) 検証支援装置、検証支援方法、および検証支援プログラム
JP4382702B2 (ja) 環境測定システムおよび環境測定プログラム
JP2009259275A (ja) シナリオ生成装置およびシナリオ生成プログラム
JP2016139244A (ja) 情報処理装置、情報処理方法、及び、コンピュータ・プログラム
JP7452553B2 (ja) 入力表示システム、補助情報表示方法、及びプログラム
JP2009134535A (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法及びソフトウェア開発支援プログラム
JP2011150736A (ja) プロファイリングプログラム、プロファイリング方法、およびコンピュータ
JP2011198390A (ja) スクロール制御プログラム、記録媒体、スクロール制御装置およびスクロール制御方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110705

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110913

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110920

R150 Certificate of patent or registration of utility model

Ref document number: 4832125

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140930

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees