JP2004310181A - Device and method for and subroutine performance measuring, program - Google Patents
Device and method for and subroutine performance measuring, program Download PDFInfo
- Publication number
- JP2004310181A JP2004310181A JP2003099114A JP2003099114A JP2004310181A JP 2004310181 A JP2004310181 A JP 2004310181A JP 2003099114 A JP2003099114 A JP 2003099114A JP 2003099114 A JP2003099114 A JP 2003099114A JP 2004310181 A JP2004310181 A JP 2004310181A
- Authority
- JP
- Japan
- Prior art keywords
- performance
- shared
- subroutine
- subroutines
- computer
- 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.)
- Pending
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、複数の利用者プログラムから呼び出される共有サブルーチンの性能測定を行う技術に関し、特に、コンピュータが備えている多数の共有サブルーチンの中から、重要度が高い共有サブルーチンを自動的に選択して性能測定を行う技術に関する。
【0002】
【従来の技術】
コンピュータは、複数の利用者プログラムによって共有される共有サブルーチンを多数備えており、利用者プログラムは、定型的な処理を行う場合、多数存在する共有サブルーチンの中から該当する共有サブルーチンを呼び出し、その共有サブルーチンに定型的な処理を実行させる。
【0003】
ところで、コンピュータが備えている共有サブルーチンの性能測定を行う場合、コンピュータが備えている全ての共有サブルーチンを対象にして性能測定を行うということは、現実的ではない。即ち、コンピュータは、多数の共有サブルーチンを備えているため、その全てを対象にして性能測定を行うと、性能測定に要する時間が長くなってしまう。また、全ての共有サブルーチンを性能測定の対象にすると、性能測定に伴うオーバヘッドの増加により、コンピュータの動作が通常の運用時の動作と大きく異なるものになってしまい、通常の運用状態での共有サブルーチンの性能を測定できなくなってしまう。
【0004】
そこで、共有サブルーチンの性能測定を実施する際、それに先立って、性能測定の対象にする共有サブルーチンを選択することが必要になる。性能測定の対象とするオブジェクト(共有サブルーチン)を選択する方法としては、選択対象の一覧を画面上に表示し、その中から測定者に選択させる方法が従来から知られている(例えば、特許文献1参照)。
【0005】
【特許文献1】
特開2000−293410号公報
【0006】
【発明が解決しようとする課題】
ところで、上述した従来の技術のように、測定者が人手で性能測定の対象にする共有サブルーチンを選択すると、次のような問題が生じる。
【0007】
第1の問題点は、測定者にかかる負担が大きくなると共に、測定対象を選択するために多くの時間が費やされるという点である。その理由は、コンピュータが備えている多数の共有サブルーチンそれぞれについて、測定者が性能測定の要・不要を判断することが必要になるからである。
【0008】
第2の問題点は、適切な共有サブルーチンが選択されない場合があるという点である。つまり、通常の運用状態において頻繁に呼び出される共有サブルーチンが選択されなかったり、反対に通常の運用状態において呼び出されない或いはほとんど呼び出されない共有サブルーチンが選択されてしまう場合があるという点である。その理由は、測定者が性能測定の対象にする共有サブルーチンを手作業で選択しているからである。
【0009】
そこで、本発明の目的は、測定者に負担をかけたり、選択作業に時間をかけたりすることなく、運用状態において頻繁に呼び出される重要性の高い共有サブルーチンを対象にして性能測定を行えるようにすることにある。
【0010】
【課題を解決するための手段】
本発明にかかる第1のサブルーチン性能測定装置は、上記目的を達成するため、
複数の利用者プログラムから呼び出される共有サブルーチンの性能を測定するサブルーチン性能測定装置において、
コンピュータが備えている複数の共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を採取し、呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う手段を備えたことを特徴とする。
【0011】
より具体的には、本発明にかかる第2のサブルーチン性能測定装置は、
複数の利用者プログラムから呼び出される共有サブルーチンの性能を測定するサブルーチン性能測定装置において、
コンピュータが備えている複数の共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を、所定期間において採取するトレース採取手段と、
前記複数の共有サブルーチンの内の、前記トレース採取手段によって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定手段とを備えたことを特徴とする。
【0012】
更に、本発明にかかる第3のサブルーチン性能測定装置は、特定の利用者プログラムから頻繁に呼び出される共有サブルーチンを、選択的に性能測定対象とするため、
複数の利用者プログラムから呼び出される共有サブルーチンの性能を測定するサブルーチン性能測定装置において、
コンピュータが備えている複数の共有サブルーチンそれぞれについて、1或いは複数の特定利用者プログラムを前記コンピュータで実行したときの前記特定利用者プログラムからの呼び出し回数を採取するトレース採取手段と、
前記特定利用者プログラムを起動させると共に、前記複数の共有サブルーチンの内の、前記トレース採取手段によって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定手段とを備えたことを特徴とする。
【0013】
また、本発明にかかる第4のサブルーチン性能測定装置は、第3のサブルーチン性能測定装置において、
前記特定利用者プログラムは、測定者によって指定された利用者プログラムであることを特徴とする。
【0014】
また、本発明にかかる第5のサブルーチン性能測定装置は、第1、第2、第3または第4のサブルーチン性能測定装置において、
前記性能測定では、共有サブルーチンの実行時間及び入出力回数を測定することを特徴とする。
【0015】
【作用】
各共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を採取し、呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行うようにしているので、測定者に負担をかけたり、選択作業に時間をかけたりすることなく、運用状態において頻繁に呼び出される重要性の高い共有サブルーチンを対象にして性能測定を行うことが可能になる。
【0016】
また、特定利用者プログラムから頻繁に呼び出される共有サブルーチンを対象にして性能測定を行うので、コンピュータが運用状態にない場合であっても、特定利用者プログラムとして運用状態で頻繁に使用される利用者プログラムを指定しておくことにより、運用状態に近い状態で性能測定を行うことが可能になる。
【0017】
【発明の実施の形態】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【0018】
【実施例の構成】
図1を参照すると、本発明の一実施例にかかるコンピュータ1は、利用者プログラム111〜11mと、オペレーティングシステム12と、トレース採取手段13と、性能測定手段14と、記録媒体K1とを含む。なお、コンピュータ1は、運用状態にあり、利用者プログラム111〜11mは、コンピュータ1が運用状態において業務を実行する際に使用するプログラムであるとする。
【0019】
オペレーティングシステム12は、複数の共有サブルーチン121〜12nを備えている。
【0020】
性能測定手段14は、性能測定開始前に、トレース採取手段13に対してトレース採取開始指示および測定対象サブルーチン数を通知する機能や、性能測定開始時に、トレース採取手段13に対して性能測定開始指示を通知する機能や、性能測定開始指示に応答してトレース採取手段13から通知された測定対象リストに含まれているサブルーチン名の共有サブルーチンを対象にして性能測定を行う機能を有する。ここで、測定対象サブルーチン数は、性能測定の対象にする共有サブルーチンの個数を示し、オペレーティングシステム12が備えている共有サブルーチン121〜12nの個数や、性能測定に費やすことができる時間に応じて決まる値である。
【0021】
トレース採取手段13は、共有サブルーチン121〜12n毎のトレース採取領域131〜13nを備えている。トレース採取領域13k(k=1〜n)には、対応する共有サブルーチン12kが利用者プログラムから呼び出された回数が記録される。また、トレース採取手段13は、性能測定手段14からトレース採取開始指示が通知されたとき、トレース採取領域131〜13nをクリアし、トレース採取処理を有効にする機能や、性能測定手段14から性能測定開始指示が通知されたとき、トレース採取処理を無効にすると共に、トレース採取領域131〜13nに格納されている呼び出し回数に基づいて、利用者プログラムからの呼び出し回数が多い方から測定対象サブルーチン数分の共有サブルーチンを選択し、選択した共有サブルーチンのサブルーチン名を含んだ測定対象リストを性能測定手段14に通知する機能を有する。なお、トレース採取処理では、利用者プログラム11j(j=1〜m)から共有サブルーチン12kが呼び出されたとき、トレース採取領域13kに格納されている呼び出し回数をインクリメントする処理を行う。
【0022】
記録媒体K1は、ディスク、半導体メモリ、その他の記録媒体であり、コンピュータ1上にトレース採取手段13、性能測定手段14を実現するためのプログラムが記録されている。このプログラムは、コンピュータ1によって読み取られ、その動作を制御することで、コンピュータ1上にトレース採取手段13、性能測定手段14を実現する。
【0023】
【実施例の動作の説明】
次に、本実施例の全体の動作について詳細に説明する。
【0024】
コンピュータ1が運用状態にあるときに、共有サブルーチンの性能測定を行う場合、先ず、測定者が性能測定手段14を起動する。その際、測定者は、測定対象サブルーチン数を性能測定手段14に入力する。
【0025】
性能測定手段14は、起動されると、図2の流れ図に示すように、トレース採取手段13に対して、トレース採取開始指示および測定者によって指定された測定対象サブルーチン数を通知する(ステップA1)。その後、性能測定手段14は、測定者から性能測定開始指示が投入されるか、或いは一定時間が経過するまで待ち状態となる(ステップA2、A3)。
【0026】
トレース採取手段13は、性能測定手段14からトレース採取開始指示および測定対象サブルーチン数が通知されると(図3のステップB1)、トレース採取領域131〜13nを全てクリアする(ステップB2)。その後、トレース採取手段13は、トレース採取中フラグをONとすることによりトレース採取処理を有効にし(ステップB3)、更に、性能測定手段14から通知された測定対象サブルーチン数を保存する(ステップB4)。
【0027】
トレース採取中フラグがONとなっている間(トレース採取処理が有効になっている間)、トレース採取手段13は、サブルーチン呼び出し命令を検知する毎に以下のトレース採取処理を行う。
【0028】
図4の流れ図に示すように、トレース採取手段13は、トレース採取中フラグがONになっているときに利用者プログラムが発行するサブルーチン呼び出し命令を検知すると(ステップC1がY)、サブルーチン呼び出し命令の内容に基づいて、呼び出し先の共有サブルーチンを特定する(ステップC2)。その後、呼び出し先の共有サブルーチンに対応するトレース採取領域から現在の値を読み込み(ステップC3)、値を1増やしてトレース採取領域に書き戻す(ステップC4)。例えば、呼び出し先の共有サブルーチンが121であるとすると、トレース採取領域131に格納されている値を+1することになる。なお、トレース採取中フラグがOFFになっており、トレース採取処理が無効にされている場合(ステップC1がN)は、トレース採取手段13は、サブルーチン呼び出し命令を検知しても、上記したようなトレース採取処理は行わず、直ちに処理終了となる。。
【0029】
一方、待ち状態にある性能測定手段14は、測定者から性能測定開始指示が投入されるか(図2のステップA2がY)、或いは一定時間が経過すると(ステップA3がY)、トレース採取手段13に対して性能測定開始指示を通知する(ステップA4)。
【0030】
トレース採取手段13は、性能測定開始指示が通知されると(図3のステップB1)、直ちにトレース採取中フラグをOFFとし、トレース採取処理を無効にする(ステップB5)。その後、トレース採取手段13は、トレース採取領域131〜13nに格納されている各共有サブルーチン121〜12nの呼び出し回数とステップB4で保存した測定対象サブルーチン数とに基づいて、性能測定の対象にする共有サブルーチンを決定し(ステップB6)、決定した共有サブルーチンのサブルーチン名を含んだ測定対象リストを性能測定手段14に通知する(ステップB7)。ステップB6では、呼び出し回数が多い方から測定対象サブルーチン数分の共有サブルーチンを選択し、選択した共有サブルーチンを性能測定の対象にする共有サブルーチンとする。
【0031】
性能測定手段14は、トレース採取手段13から測定対象リストが通知されると(図2のステップA5)、測定対象リスト中のサブルーチン名によって特定される共有サブルーチンを対象にした性能測定を実行可能な状態にし、その後、性能測定を開始する(ステップA6、A7)。性能測定では、例えば、性能測定の対象にした共有サブルーチンの実行時間や、入出力回数等を測定する。
【0032】
なお、上述した実施例では、性能測定手段14の起動時に、測定者が測定対象サブルーチン数を性能測定手段14に入力するようにしたが、オペレーティングシステム12が備えている共有サブルーチン数および性能測定に費やすことができる時間を性能測定手段14に入力し、性能測定手段14が入力された情報から測定対象サブルーチン数を算出するようにしても良い。また、上述した実施例では、トレース採取処理と性能測定処理とを連続的に実施する場合を例に挙げて説明したが、性能測定の開始タイミングは、トレース採取処理終了直後でなくとも良い。
【0033】
続いて、図5を参照し、具体例を用いて本実施例の動作を説明する。
【0034】
先ず、測定者が性能測定手段14を起動する。その際、測定者は、測定対象サブルーチン数として「4個」を指定する。
【0035】
これにより、性能測定手段14は、トレース採取手段13に対してトレース採取開始指示および測定対象サブルーチン数「4個」を通知する(図2のステップA1)。
【0036】
トレース採取手段13は、トレース採取開始指示を受信すると、トレース採取領域131〜13nを全てクリアする(図3のステップB1、B2)。性能測定手段14は、性能測定開始指示が投入されるか、一定時間が経過するのを待つ(図2のステップA2、A3)。この間に、利用者プログラム111〜11mが動作する。利用者プログラム111〜11mは、オペレーティングシステム12の提供する共有サブルーチン121〜12nを、任意の回数呼び出す。
【0037】
トレース採取手段13は、サブルーチン呼び出し命令の発行を検知し、各サブルーチンの呼び出し回数を積算する(図4のステップC2〜C4)。
【0038】
性能測定手段14は、性能測定開始指示を投入されるか、一定時間が経過した場合(図2のステップA2がY或いはステップA3がY)、トレース採取手段13に対して、性能測定開始指示を通知する(ステップA4)。
【0039】
トレース採取手段13は、性能測定開始指示が通知されると、トレース採取処理を無効にする(図3のステップB1、B5)。その後、トレース採取手段13は、トレース採取領域131〜13nに記録された各共有サブルーチン121〜12nの呼び出し回数に基づいて、呼び出し回数が上位の4個の共有サブルーチンを選択し、選択した共有サブルーチンのサブルーチン名を含む測定対象リストを性能測定手段14に通知する(ステップB6、B7)。
【0040】
性能測定手段14は、測定対象リストによって指定されている4個の共有サブルーチンを対象にした性能測定を開始する(図2のステップA5〜A7)。
【0041】
【発明の他の実施例】
次に本発明の他の実施例について説明する。
【0042】
図6は本発明の他の実施例にかかるコンピュータ1aの構成例を示すブロック図である。本実施例と図1に示した実施例との相違点は、性能測定手段14の代わりに性能測定手段14aを備えている点、記録媒体K1の代わりに記録媒体K2を備えている点および利用者プログラム111〜11mの代わりに利用者プログラム121〜12x,131〜13yを備えている点である。
【0043】
なお、コンピュータ1aは、運用開始前のテスト段階のコンピュータであるとする。また、コンピュータ1aが備えている利用者プログラム121〜12x,131〜13yの内、利用者プログラム121〜12xは、運用状態において業務を遂行する際に頻繁に利用される利用者プログラムであり、利用者プログラム131〜13yは、ほとんど利用されない利用者プログラムであるとする。
【0044】
性能測定手段14aは、測定者によって指定された利用者プログラム(特定利用者プログラム)を順次起動する機能を有している点、および性能測定開始指示の通知タイミングを特定利用者プログラムの実行終了後としている点が図1に示した性能測定手段14と相違している。
【0045】
記録媒体K2は、ディスク、半導体メモリ、その他の記録媒体であり、コンピュータ1a上にトレース採取手段13、性能測定手段14aを実現するプログラムが記録されている。このプログラムは、コンピュータ1aによって読み取られ、その動作を制御することで、コンピュータ1a上にトレース採取手段13、性能測定手段14aを実現する。
【0046】
【他の実施例の動作の説明】
次に本実施例の動作を説明する。
【0047】
テスト段階において共有サブルーチンの性能測定を行う場合、測定者は、先ず、性能測定手段14aを起動する。その際、測定者は、業務遂行に頻繁に使用する利用者プログラム121〜12xのプログラム名および測定対象サブルーチン数を性能測定手段14aに入力する。
【0048】
性能測定手段14aは、起動されると、図7の流れ図に示すように、トレース採取手段13に対してトレース採取開始指示および測定対象サブルーチン数を通知する(ステップA1)。
【0049】
これにより、トレース採取手段13は、前述した実施例と同様に、トレース採取領域131〜13nをクリアする処理、トレース採取中フラグをONにする処理、測定対象サブルーチン数を保存する処理を実行する(図3のステップB1〜B4)。
【0050】
一方、性能測定手段14aは、ステップA1の処理が終了すると、測定者によって指定されている特定利用者プログラム121〜12xを順次起動する(図7のステップA21〜A2x)。性能測定手段14aによって起動され、実行状態となった利用者プログラム121〜12xが、サブルーチン呼び出し命令を発行すると、トレース採取手段13は、前述した実施例と同様に、呼び出し先の共有サブルーチン12kに対応するトレース採取領域13kに格納されている呼び出し回数を+1する(図4のステップC1〜C4)。
【0051】
特定利用者プログラム121〜12xの実行が終了すると、性能測定手段14aは、トレース採取手段13に対して性能測定開始指示を通知する(図7ステップA4)。これ以後、前述した実施例と同様の処理が行われ、呼び出し回数が多い方から測定対象サブルーチン数分の共有サブルーチンを対象にした性能測定が行われる(ステップA5〜A7)。
【0052】
【発明の効果】
以上説明したように、本発明は、各共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を採取し、呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行うようにしているので、測定者に負担をかけたり、選択作業に時間をかけたりすることなく、運用状態において頻繁に呼び出される重要性の高い共有サブルーチンを対象にして性能測定を行うことが可能になる。
【0053】
また、性能測定の対象とする共有サブルーチン数が制限されるので、性能測定に伴うオーバヘッドを低減することもできる。
【0054】
更に、特定利用者プログラムから頻繁に呼び出される共有サブルーチンを対象にして性能測定を行うので、コンピュータが運用状態にない場合であっても、特定利用者プログラムとして運用状態で頻繁に使用される利用者プログラムを指定しておくことにより、運用状態に近い状態で性能測定を行うことが可能になる。
【図面の簡単な説明】
【図1】本発明の一実施例のブロック図である。
【図2】性能測定手段14の処理例を示す流れ図である。
【図3】性能測定手段14から起動されたときのトレース採取手段13の処理例を示す流れ図である。
【図4】サブルーチン呼び出し命令を検知したときのトレース採取手段13の処理例を示す流れ図である。
【図5】図1に示した実施例の動作を具体例を挙げて説明するための図である。
【図6】本発明の他の実施例のブロック図である。
【図7】性能測定手段14aの処理例を示す流れ図である。
【符号の説明】
1、1a…コンピュータ
111〜11m、121〜12x、131〜13y…利用者プログラム
12…オペレーティングシステム
121〜12n…共有サブルーチン
13…トレース採取手段
131〜13n…トレース採取領域
14、14a…性能測定手段
K1、K2…記録媒体[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a technique for measuring the performance of a shared subroutine called from a plurality of user programs, and in particular, automatically selects a highly important shared subroutine from a large number of shared subroutines provided in a computer. The present invention relates to a technique for measuring performance.
[0002]
[Prior art]
The computer has a large number of shared subroutines shared by a plurality of user programs, and the user program calls a corresponding shared subroutine from among a large number of shared subroutines when performing routine processing. Causes subroutines to perform routine processing.
[0003]
By the way, when measuring the performance of the shared subroutine provided in the computer, it is not realistic to measure the performance for all the shared subroutines provided in the computer. That is, since the computer has a large number of shared subroutines, if the performance is measured for all of them, the time required for the performance measurement becomes long. Also, if all shared subroutines are targeted for performance measurement, the operation of the computer will be significantly different from the operation during normal operation due to the increase in overhead accompanying the performance measurement, and the shared subroutine in normal operation state Performance cannot be measured.
[0004]
Therefore, when performing the performance measurement of the shared subroutine, it is necessary to select a shared subroutine to be subjected to the performance measurement prior to the performance measurement. As a method of selecting an object (shared subroutine) as a performance measurement target, a method of displaying a list of selection targets on a screen and allowing a measurer to select from the list has been conventionally known (for example, see Patent Document 1). 1).
[0005]
[Patent Document 1]
JP 2000-293410 A
[Problems to be solved by the invention]
By the way, when the measurer manually selects a shared subroutine to be measured for performance as in the above-described conventional technique, the following problem occurs.
[0007]
The first problem is that the burden on the measurer increases and a lot of time is spent to select a measurement target. The reason is that it is necessary for the measurer to determine whether performance measurement is necessary or not for each of the many shared subroutines provided in the computer.
[0008]
A second problem is that an appropriate shared subroutine may not be selected. That is, a shared subroutine that is frequently called in the normal operation state may not be selected, or a shared subroutine that is not called or hardly called in the normal operation state may be selected. The reason is that the measurer manually selects a shared subroutine to be subjected to performance measurement.
[0009]
Therefore, an object of the present invention is to perform performance measurement on a highly important shared subroutine that is frequently called in an operation state without putting a burden on a measurer or taking time for a selection operation. Is to do.
[0010]
[Means for Solving the Problems]
A first subroutine performance measuring device according to the present invention achieves the above object,
In a subroutine performance measuring device for measuring the performance of a shared subroutine called from a plurality of user programs,
For each of the plurality of shared subroutines provided in the computer, the number of calls from the user program is collected, and a means for performing performance measurement for a predetermined number of shared subroutines from the one with the largest number of calls is provided. I do.
[0011]
More specifically, the second subroutine performance measuring device according to the present invention comprises:
In a subroutine performance measuring device for measuring the performance of a shared subroutine called from a plurality of user programs,
For each of a plurality of shared subroutines provided in the computer, trace collection means for collecting the number of calls from the user program in a predetermined period,
And a performance measuring unit for measuring a performance of a predetermined number of shared subroutines from a plurality of shared subroutines, which are collected more frequently by the trace collecting unit, among the plurality of shared subroutines.
[0012]
Further, the third subroutine performance measuring apparatus according to the present invention selectively sets shared subroutines frequently called from a specific user program as performance measurement targets.
In a subroutine performance measuring device for measuring the performance of a shared subroutine called from a plurality of user programs,
Trace collecting means for collecting the number of calls from the specific user program when one or more specific user programs are executed on the computer for each of the plurality of shared subroutines provided in the computer;
A performance measuring unit that activates the specific user program and performs performance measurement on a predetermined number of shared subroutines from among the plurality of shared subroutines, from the one with the highest number of calls collected by the trace collecting unit. And characterized in that:
[0013]
A fourth subroutine performance measuring device according to the present invention is the third subroutine performance measuring device,
The specific user program is a user program specified by a measurer.
[0014]
Further, a fifth subroutine performance measuring device according to the present invention is the first, second, third or fourth subroutine performance measuring device,
In the performance measurement, the execution time and the number of input / output times of the shared subroutine are measured.
[0015]
[Action]
For each shared subroutine, the number of calls from the user program is collected, and the performance is measured for a predetermined number of shared subroutines starting from the one with the largest number of calls. The performance measurement can be performed on a highly important shared subroutine that is frequently called in the operation state without spending time on the selection operation.
[0016]
In addition, since performance is measured for shared subroutines that are frequently called from specific user programs, even if the computer is not in operation, users who are frequently used in operation as specific user programs By specifying a program, performance measurement can be performed in a state close to the operation state.
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described in detail with reference to the drawings.
[0018]
[Configuration of the embodiment]
Referring to FIG. 1, a
[0019]
The
[0020]
The
[0021]
The trace collection means 13 includes
[0022]
The recording medium K1 is a disk, a semiconductor memory, or another recording medium, in which a program for realizing the
[0023]
Description of operation of the embodiment
Next, the overall operation of the present embodiment will be described in detail.
[0024]
When performing the performance measurement of the shared subroutine while the
[0025]
When started, the performance measuring means 14 notifies the trace collecting means 13 of a trace collection start instruction and the number of subroutines to be measured specified by the measurer, as shown in the flow chart of FIG. 2 (step A1). . Thereafter, the performance measuring means 14 is in a waiting state until a performance measurement start instruction is input from the measurer or a predetermined time has elapsed (steps A2 and A3).
[0026]
When the
[0027]
While the trace collection flag is ON (while the trace collection process is enabled), the
[0028]
As shown in the flow chart of FIG. 4, when the
[0029]
On the other hand, the
[0030]
Upon receiving the performance measurement start instruction (step B1 in FIG. 3), the
[0031]
When notified of the measurement target list from the trace collection unit 13 (Step A5 in FIG. 2), the
[0032]
In the above-described embodiment, the measurer inputs the number of subroutines to be measured into the
[0033]
Subsequently, the operation of this embodiment will be described using a specific example with reference to FIG.
[0034]
First, the measurer activates the performance measuring means 14. At this time, the measurer specifies “4” as the number of subroutines to be measured.
[0035]
As a result, the
[0036]
Upon receiving the trace collection start instruction, the
[0037]
The
[0038]
The performance measuring means 14 sends a performance measurement start instruction to the trace collection means 13 when a performance measurement start instruction is input or when a predetermined time has elapsed (Y in step A2 or Y in step A3 in FIG. 2). Notify (step A4).
[0039]
When notified of the performance measurement start instruction, the
[0040]
The
[0041]
Another Embodiment of the Invention
Next, another embodiment of the present invention will be described.
[0042]
FIG. 6 is a block diagram showing a configuration example of a computer 1a according to another embodiment of the present invention. The difference between the present embodiment and the embodiment shown in FIG. 1 is that a
[0043]
It is assumed that the computer 1a is a computer in a test stage before the start of operation. Further, among the
[0044]
The performance measuring means 14a has a function of sequentially starting a user program (specified user program) designated by the measurer, and sets a notification timing of a performance measurement start instruction after the execution of the specified user program. This is different from the performance measuring means 14 shown in FIG.
[0045]
The recording medium K2 is a disk, a semiconductor memory, or another recording medium, and a program for realizing the
[0046]
[Description of Operation of Another Embodiment]
Next, the operation of this embodiment will be described.
[0047]
When performing the performance measurement of the shared subroutine in the test stage, the measurer first activates the
[0048]
When activated, the
[0049]
As a result, the
[0050]
On the other hand, when the processing of step A1 ends, the performance measuring means 14a sequentially starts the
[0051]
When the execution of the
[0052]
【The invention's effect】
As described above, according to the present invention, for each shared subroutine, the number of calls from the user program is collected, and the performance is measured for a predetermined number of shared subroutines in descending order of the number of calls. Therefore, it is possible to measure the performance of a highly important shared subroutine that is frequently called in the operation state without putting a burden on the measurer or taking much time for the selection operation.
[0053]
Further, since the number of shared subroutines to be measured for performance is limited, overhead associated with performance measurement can be reduced.
[0054]
Furthermore, since the performance is measured for a shared subroutine frequently called from a specific user program, even when the computer is not in an operation state, a user who is frequently used in an operation state as a specific user program is used. By specifying a program, performance measurement can be performed in a state close to the operation state.
[Brief description of the drawings]
FIG. 1 is a block diagram of one embodiment of the present invention.
FIG. 2 is a flowchart showing a processing example of a
FIG. 3 is a flowchart illustrating a processing example of a trace collection unit when activated by a performance measurement unit;
FIG. 4 is a flowchart showing a processing example of a
FIG. 5 is a diagram for explaining the operation of the embodiment shown in FIG. 1 with a specific example.
FIG. 6 is a block diagram of another embodiment of the present invention.
FIG. 7 is a flowchart showing a processing example of a
[Explanation of symbols]
1,
Claims (11)
コンピュータが備えている複数の共有サブルーチンそれぞれについて利用者プログラムからの呼び出し回数を採取し、呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う手段を備えたことを特徴とするサブルーチン性能測定装置。In a subroutine performance measuring device for measuring the performance of a shared subroutine called from a plurality of user programs,
Means for collecting the number of calls from the user program for each of a plurality of shared subroutines provided in the computer, and performing a performance measurement for a predetermined number of shared subroutines in descending order of the number of calls Subroutine performance measurement device.
コンピュータが備えている複数の共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を、所定期間において採取するトレース採取手段と、
前記複数の共有サブルーチンの内の、前記トレース採取手段によって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定手段とを備えたことを特徴とするサブルーチン性能測定装置。In a subroutine performance measuring device for measuring the performance of a shared subroutine called from a plurality of user programs,
For each of a plurality of shared subroutines provided in the computer, trace collection means for collecting the number of calls from the user program in a predetermined period,
A subroutine characterized by comprising: performance measuring means for measuring performance of a predetermined number of shared subroutines from the one with the highest number of calls collected by the trace collecting means among the plurality of shared subroutines Performance measurement device.
コンピュータが備えている複数の共有サブルーチンそれぞれについて、1或いは複数の特定利用者プログラムを前記コンピュータで実行したときの前記特定利用者プログラムからの呼び出し回数を採取するトレース採取手段と、
前記特定利用者プログラムを起動させると共に、前記複数の共有サブルーチンの内の、前記トレース採取手段によって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定手段とを備えたことを特徴とするサブルーチン性能測定装置。In a subroutine performance measuring device for measuring the performance of a shared subroutine called from a plurality of user programs,
Trace collecting means for collecting the number of calls from the specific user program when one or more specific user programs are executed on the computer for each of the plurality of shared subroutines provided in the computer;
A performance measuring unit that activates the specific user program and performs performance measurement on a predetermined number of shared subroutines from among the plurality of shared subroutines, from the one with the highest number of calls collected by the trace collecting unit. A subroutine performance measuring device comprising:
前記特定利用者プログラムは、測定者によって指定された利用者プログラムであることを特徴とするサブルーチン性能測定装置。The subroutine performance measuring device according to claim 3,
The subroutine performance measuring device, wherein the specific user program is a user program specified by a measurer.
前記性能測定では、共有サブルーチンの実行時間及び入出力回数を測定することを特徴とするサブルーチン性能測定装置。The subroutine performance measuring device according to any one of claims 1 to 4,
In the performance measurement, a subroutine performance measuring apparatus is characterized in that an execution time and a number of input / output times of a shared subroutine are measured.
コンピュータが備えている複数の共有サブルーチンそれぞれについて利用者プログラムからの呼び出し回数を採取し、呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行うことを特徴とするサブルーチン性能測定方法。In a subroutine performance measuring method for measuring the performance of a shared subroutine called from a plurality of user programs,
A subroutine performance measuring method characterized in that the number of calls from a user program is collected for each of a plurality of shared subroutines provided in a computer, and the performance is measured for a predetermined number of shared subroutines in descending order of the number of calls. .
コンピュータが備えている複数の共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を、所定期間において採取するトレース採取ステップと、
前記複数の共有サブルーチンの内の、前記トレース採取ステップによって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定ステップとを含むことを特徴とするサブルーチン性能測定方法。In a subroutine performance measuring method for measuring the performance of a shared subroutine called from a plurality of user programs,
For each of a plurality of shared subroutines provided in the computer, a trace collection step of collecting the number of calls from the user program in a predetermined period,
A performance measurement step of performing performance measurement on a predetermined number of shared subroutines from the one with the highest number of calls collected by the trace collection step among the plurality of shared subroutines. Measuring method.
コンピュータが備えている複数の共有サブルーチンそれぞれについて、1或いは複数の特定利用者プログラムを前記コンピュータで実行したときの前記特定利用者プログラムからの呼び出し回数を採取するトレース採取ステップと、
前記特定利用者プログラムを起動させると共に、前記複数の共有サブルーチンの内の、前記トレース採取ステップによって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定ステップとを含むことを特徴とするサブルーチン性能測定方法。In a subroutine performance measuring method for measuring the performance of a shared subroutine called from a plurality of user programs,
For each of a plurality of shared subroutines provided in the computer, a trace collection step of collecting the number of calls from the specific user program when executing one or more specific user programs on the computer,
A performance measurement step of activating the specific user program and performing a performance measurement on a predetermined number of shared subroutines from among the plurality of shared subroutines, of which the number of calls collected by the trace collection step is large. And a subroutine performance measurement method.
前記コンピュータを、前記複数の共有サブルーチンそれぞれについて利用者プログラムからの呼び出し回数を採取し、呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う手段として機能させるためのプログラム。A program for causing a computer having a plurality of shared subroutines called from a plurality of user programs to function as a subroutine performance measuring device,
A program for causing the computer to function as a unit that collects the number of calls from a user program for each of the plurality of shared subroutines and performs performance measurement on a predetermined number of shared subroutines with the largest number of calls.
前記コンピュータを、
前記複数の共有サブルーチンそれぞれについて、利用者プログラムからの呼び出し回数を、所定期間において採取するトレース採取手段、
前記複数の共有サブルーチンの内の、前記トレース採取手段によって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定手段として機能させるためのプログラム。A program for causing a computer having a plurality of shared subroutines called from a plurality of user programs to function as a subroutine performance measuring device,
Said computer,
Trace collecting means for collecting the number of calls from the user program for a predetermined period for each of the plurality of shared subroutines;
A program for functioning as a performance measuring means for measuring performance of a predetermined number of shared subroutines from a plurality of shared subroutines, which are collected more frequently by the trace collecting means.
前記コンピュータを、
前記複数の共有サブルーチンそれぞれについて、1或いは複数の特定利用者プログラムを前記コンピュータで実行したときの前記特定利用者プログラムからの呼び出し回数を採取するトレース採取手段、
前記特定利用者プログラムを起動させると共に、前記複数の共有サブルーチンの内の、前記トレース採取手段によって採取されている呼び出し回数が多い方から所定個数の共有サブルーチンを対象にして性能測定を行う性能測定手段として機能させるためのプログラム。A program for causing a computer having a plurality of shared subroutines called from a plurality of user programs to function as a subroutine performance measuring device,
Said computer,
Trace collecting means for collecting, for each of the plurality of shared subroutines, the number of calls from the specific user program when one or more specific user programs are executed on the computer;
A performance measuring unit that activates the specific user program and performs performance measurement on a predetermined number of shared subroutines from among the plurality of shared subroutines, from the one with the highest number of calls collected by the trace collecting unit. Program to function as.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003099114A JP2004310181A (en) | 2003-04-02 | 2003-04-02 | Device and method for and subroutine performance measuring, program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003099114A JP2004310181A (en) | 2003-04-02 | 2003-04-02 | Device and method for and subroutine performance measuring, program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004310181A true JP2004310181A (en) | 2004-11-04 |
Family
ID=33463667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003099114A Pending JP2004310181A (en) | 2003-04-02 | 2003-04-02 | Device and method for and subroutine performance measuring, program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004310181A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008257287A (en) * | 2007-03-30 | 2008-10-23 | Ntt Data Corp | Program profiling device, program profiling method, and program |
JP2012084150A (en) * | 2010-10-12 | 2012-04-26 | Computer Associates Think Inc | Two-pass automated application instrumentation |
-
2003
- 2003-04-02 JP JP2003099114A patent/JP2004310181A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008257287A (en) * | 2007-03-30 | 2008-10-23 | Ntt Data Corp | Program profiling device, program profiling method, and program |
JP2012084150A (en) * | 2010-10-12 | 2012-04-26 | Computer Associates Think Inc | Two-pass automated application instrumentation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5259714B2 (en) | Execution order determination apparatus, execution order determination program, execution order determination circuit, and information processing apparatus | |
JP4681491B2 (en) | Profiling program and profiling method | |
JP2007505401A5 (en) | ||
KR20160124895A (en) | Diagnosis and optimization of cloud release pipelines | |
WO2011121730A1 (en) | Multi-core processor sytem, control program, and control method | |
CN106209412B (en) | Resource monitoring system and method thereof | |
EP3296875B1 (en) | Simulation reproduction device, simulation reproduction method, and simulation reproduction program | |
JP4879782B2 (en) | Program profiling method and program | |
JP4992740B2 (en) | Multiprocessor system, failure detection method, and failure detection program | |
JP2004310181A (en) | Device and method for and subroutine performance measuring, program | |
JP5939579B2 (en) | Apparatus, method and program for creating list | |
Abrams | A tool to aid in model development and validation | |
JP4978504B2 (en) | Information processing apparatus, communication information collecting method, and program | |
JPH11242547A (en) | Computer user support system | |
JP2005215816A (en) | Performance profiling method using hardware monitor | |
TW200407702A (en) | Automatic motherboard testing system and method | |
EP3234781B1 (en) | Audio benchmarking with simulated real time processing of audio | |
JP2008027283A (en) | Labor recording apparatus, labor record program, and recording medium with stored labor record program and labor recording method | |
JP5386416B2 (en) | GAME DEVICE, ITS CONTROL METHOD, INFORMATION RECORDING MEDIUM, AND TEST PLAY PROGRAM | |
JP2715904B2 (en) | Computer system performance evaluation device | |
CN109101192B (en) | Data storage method and device | |
JP2012095034A5 (en) | ||
US8484646B1 (en) | System and method for managing process flows within a computing device based on user behavior | |
JP5435403B2 (en) | Image processing apparatus, operation test execution system, operation test execution method, program, and recording medium | |
JP6919399B2 (en) | Judgment program, information processing device, and judgment method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070515 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071002 |