JP4973149B2 - 仮想計算機の性能モニタ方法および計算機システム - Google Patents
仮想計算機の性能モニタ方法および計算機システム Download PDFInfo
- Publication number
- JP4973149B2 JP4973149B2 JP2006315820A JP2006315820A JP4973149B2 JP 4973149 B2 JP4973149 B2 JP 4973149B2 JP 2006315820 A JP2006315820 A JP 2006315820A JP 2006315820 A JP2006315820 A JP 2006315820A JP 4973149 B2 JP4973149 B2 JP 4973149B2
- Authority
- JP
- Japan
- Prior art keywords
- switching
- counter
- virtual
- computer system
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
があった場合でも、計算機システムに本来設けられた構成要素を用いて、簡易にそれぞれの仮想計算機に対する性能モニタを実現できる。
ここでは、図1および図2を使用して本発明の第1実施形態を説明する。本計算機システムは、一般的なコンピュータの構成、例えば、プロセッサコア(例えば、CPU)、メモリ、外部記憶装置(例えば、ハードディスク、取り外し可能な可搬記録媒体の駆動装置等)、外部記憶装置とのインターフェース、通信インターフェース、入出力装置(例えば、キーボード、マウス等のポインティングデバイス等)を有する。
まず、図1に示すプロセッサコア1上でN個の仮想計算機が動作しているとする。今、各仮想計算機には識別IDとして#1〜#Nが割り振られているとする。そのうち、現在動作中の仮想計算機を#2とすると、仮想計算機IDレジスタ3には「2」という値が保持されていることになる。
次に、この状態で仮想計算機#2からパフォーマンスモニタを使った性能測定を行うとする。例えば、実行命令数を測定しようとする。そこで、仮想計算機#2の上で実行される性能測定プログラムがPMU5の設定レジスタ7−1に実行命令数イベントの設定を行い、カウントを開始させるとする。例えば、設定レジスタ7−1の値に応じて、所定のスイッチがオンとなるように構成し、プログラムカウンタ4に入力される更新信号を抽出すればよい。この更新信号から1パルスを発生させ、カウンタレジスタ8−1をインクリメントするようにすればよい。
れることになる。すなわち、仮想計算機#2が動作している限りPMU5のバンク6−2のカウンタレジスタ8−1で仮想計算機#2の実行命令数が計測され続けることになる。
ここで、一旦仮想計算機が#3に切り替わったとすると、先の[処理例1−1]の動作例にしたがって、有効ユニット切替器2により動作可能なPMU5がバンク6−2からバンク6−3に切り替わる。
そして再び仮想計算機#2の実行が再開されると、PMU5は再びバンク6−2に切り替わり、バンク6−2の設定レジスタ7−1のイベント設定に基づき、バンク6−2のカウンタレジスタ8−1による実行命令数の計測が再開される。ここでは、設定レジスタ7−1への設定とカウンタレジスタ8−1での計測とによって実行命令数を計測する例を示すが、他の設定レジスタ7−2、7−3等と、他のカウンタレジスタ8−2、8−3等との組み合わせを用いて、他の性能指標を並行して計測することもできる。
さらに図3を使用して、本発明の第2実施形態を示す。本実施形態では、図3に示すように、第1実施形態の構成に加えて、有効ユニット切替器2の動作自体の有効・無効を制御する切替有効・無効制御部9(本発明の有効・無効を制御する手段に相当)が設けられている。切替有効・無効制御部9への設定と、切替有効・無効制御部9による有効ユニット切替器2の制御もまたハードウェア(論理回路)で構成できる。例えば、有効・無効を保持するフリップフロップと、ANDゲートとによって構成できる。ANDゲートによって、仮想計算機IDレジスタ3から有効ユニット切替器2への接続をオンまたはオフにすればよい。また、複数のANDゲートを含む選択回路によって、有効ユニット切替器2の出力を1つのバンクに固定してもよい。
ここでは図4を使用して第3実施形態を示す。本実施形態では、仮想計算機の切り替え時に、その時点のPMU5の内容(コンテキストと呼ぶ)を自動退避・復元する計算機システムを説明する。
まず、図4に示すプロセッサコア1上でN個の仮想計算機が動作しているとする。このとき、各仮想計算機には識別IDとして#1〜#Nが割り振られているとする。
ここで、一旦仮想計算機が#3に切り替わるとすると、切替トリガ通知手段12(本発明の仮想計算機の切替を検知する手段に相当)から、切替信号がトリガとしてPMU自動退避・復元装置10に通知される。PMU自動退避・復元装置10がその切替通知をトリガとして受け取り、まず現在のPMUコンテキストを記憶装置11内のPMUコンテキストの保存エリアの1つであるVM#2用エリアに保存する。
そして再び仮想計算機#2に切り替わるとき、今度は、VM#2用エリアからPMUコンテキストが復元され、設定レジスタ7−1のイベント設定に基づき、カウンタレジスタ8−1による実行命令数の計測も再開される。
さらに図5を使用して、本発明の第4実施形態を示す。本実施形態では、PMU自動退避・復元装置10の動作の有効・無効の制御が可能な計算機システムを示す。図5に示すように、本実施形態では、PMU自動退避・復元装置10の有効・無効を制御する切替有効・無効制御部9A(本発明の保存制御手段と復元手段とにおける動作の有効・無効を制御する手段に相当)が設けられている。
ここでは図6を使用して本発明の第5実施形態を示す。図6は、図3のユニット切替方式と図5のPMU退避復元方式の混合方式を表している。
装置10が使用するPMU5のバンク6−Xを完全に分けて使用する例を説明する。具体的には、仮想計算機#1と#2はそれぞれ専用のPMU5のバンク6−1、6−2を持ち、ユニット切替方式で切り替えて測定が実行される。
まず、図6に示すプロセッサコア1上でN個の仮想計算機が動作しているとする。そのうち、現在動作中の仮想計算機を#2とすると、[処理例1−1]の動作例にしたがって、有効ユニット切替器2は有効なPMU5をバンク6−2に切り替えている状態となる。
次に、この状態で仮想計算機#2からパフォーマンスモニタ機能を使った性能測定を行うとする。例えば、実行命令数の測定を開始したとする。すると、[処理例1−2]で述べた様に、PMU5のバンク6−2の設定レジスタ7−1とカウンタレジスタ8−1が使用されることになる。
ここで、一旦仮想計算機が#3に切り替わるとする(仮想計算機IDレジスタ3の設定値が例えば仮想計算機モニタによって変更される)。ところが本実施例では仮想計算機#3用のPMU5のバンク6は用意されていない。
本計算機システムにより、カウンタ単位ではなくPMU単位での、ハードウェアによるパフォーマンスモニタの仮想化が可能となる。
本実施形態は、以下の態様(付記という)を含む。なお、以下の付記を組み合わせて実施形態の態様としてもよい。
(付記1)
計算機システムの性能指標を計数する複数の計数器を備え、1個以上の仮想計算機がその上で切り替え動作している計算機システムが、
現在動作している仮想計算機を識別するステップと、
現在動作している仮想計算機に対応して決定される計数器ごとに計数動作の可否を切り替える切替ステップとを実行し、
前記切替ステップにおいて計数動作が許可された計数器によって前記性能指標を計数するとともに、計数動作が許可されていない計数器については、前記計数動作中に計数された計数結果を保持することを特徴とする計算機システムの性能モニタ方法。(5、図1、図2)
(付記2)
前記計算機システムが、前記切替ステップでの切替動作の有効・無効の指示の設定を受け付けるステップと、
前記切替動作の有効・無効を制御するステップと、を実行し、
前記切替動作が無効の場合に、前記計算機の種類によらず継続して単一の計数器を動作させることを特徴とする付記1に記載の計算機システムの性能モニタ方法。(図3)
(付記3)
計算機システムの性能指標を計数する計数器と前記計数器の計数結果を保存する保存手段とを備える計算機システムが、
その計算機システム上で動作する仮想計算機の切替を検知するステップと、
前記切替検知をトリガとして、現在動作している仮想計算機に対する計数結果を前記保存手段に保存する保存ステップと、
前記切替後に動作する仮想計算機に対する前記切替前に計数済みの計数結果を前記保存手段から前記計数器に復元する復元ステップと、を実行することを特徴とする計算機システムの性能モニタ方法。(図4)
(付記4)
前記保存ステップと復元ステップとにおける動作の有効・無効を設定するステップをさらに実行し、
前記動作が無効の場合には、計算機の種類によらず継続して計数器を動作させることを特徴とする付記3に記載の計算機システムの性能モニタ方法。(図5)
(付記5)
計算機システムの性能指標を計数する複数の計数器と前記計数器の計数結果を保存する保存手段とを備える計算機システムが、
その計算機システム上で現在動作している仮想計算機を識別するステップと、
現在動作している仮想計算機に対応して決定される計数器ごとに計数動作の可否を切り替える切替ステップとを実行し、
前記切替ステップにおいて計数動作が許可された計数器によって前記性能指標を計数するとともに、計数動作が許可されていない計数器については、前記動作中に計数された計数結果を保持するとともに、
前記計算機の種類に対応して決定される計数器の数が不足した場合に前記切替手段による切替動作を無効に設定するステップと、
動作している仮想計算機の切替を検知するステップと、
前記切替動作が無効に設定されているときに、前記切替検知をトリガとして、現在動作している仮想計算機に対するすでに計数済みの計数結果を前記保存手段に保存する保存ステップと、
前記切替後に動作する仮想計算機に対する前記切替前に計数済みの計数結果を前記保存手段から前記計数器に復元する復元ステップと、を実行することを特徴とする計算機システムの性能モニタ方法。(図6)
(付記6)
仮想計算機をその上で実行中の計算機システムにおいて、
前記計算機システムの性能指標を計数する複数の計数器と、
現在動作している仮想計算機を識別する手段と、
現在動作している仮想計算機に対応して決定される計数器ごとに計数動作の可否を切り替える切替手段と、を備え、
前記切替手段によって、計数動作が許可された計数器は前記性能指標を計数するとともに、計数動作が許可されていない計数器は前記計数動作中に計数された計数結果を保持す
ることを特徴とする計算機システム。(1、図1、図2)
(付記7)
前記切替手段の切替動作の有効・無効の指示の設定を受け付ける手段と、
前記切替動作の有効・無効を制御する手段と、をさらに備え、
前記切替動作が無効の場合に、前記計算機の種類によらず継続して単一の計数器を動作させることを特徴とする付記6に記載の計算機システム。(2、図3)
(付記8)
仮想計算機をその上で実行中の計算機システムにおいて、
前記計算機システムの性能指標を計数する計数器と、
前記計数器の計数結果を保存する保存手段と、
その計算機システム上で動作する仮想計算機の切替を検知する手段と、
前記切替検知をトリガとして、現在動作している仮想計算機に対する計数結果を前記保存手段に保存する保存制御手段と、
前記切替後に動作する仮想計算機に対する前記切替前に計数済みの計数結果を前記保存手段から前記計数器に復元する復元手段と、を備えることを特徴とする計算機システム。(3、図4)
(付記9)
前記保存制御手段と復元手段とにおける動作の有効・無効を設定する手段をさらに備え、
前記動作が無効の場合には、計算機の種類によらず継続して計数器を動作させることを特徴とする付記8に記載の計算機システム。(図5)
(付記10)
仮想計算機をその上で実行中の計算機システムにおいて、
計算機システムの性能指標を計数する複数の計数器と、
前記計数器の計数結果を保存する保存手段と、
その計算機システム上で現在動作している仮想計算機を識別する手段と、
現在動作している仮想計算機に対応して決定される計数器ごとに計数動作の可否を切り替える切替手段と、を備え
前記切替手段によって計数動作が許可された計数器は前記性能指標を計数するとともに、計数動作が許可されていない計数器は前記動作中に計数された計数結果を保持し、
前記計算機の種類に対応して決定される計数器の数が不足した場合に前記切替手段による切替動作を無効に設定する手段と、
その計算機システム上で動作する仮想計算機の切替を検知する手段と、
前記切替動作が無効に設定されているときに、仮想計算機の切替検知をトリガとして、現在動作している仮想計算機に対するすでに計数済みの計数結果を前記保存手段に保存する保存制御手段と、
前記切替によって動作する仮想計算機に対するすでに計数済みの計数結果を前記保存手段から前記計数器に復元する復元制御手段と、をさらに備えることを特徴とする計算機システム。(4、図6)
2 有効ユニット切替器
3 仮想計算機IDレジスタ
4 プログラムカウンタ
5 PMU
6 バンク
7 設定レジスタ
8 カウンタレジスタ
9、9A 切替有効・無効制御部
12 切替トリガ通知手段
13 切替有効・無効の信号線
Claims (4)
- 実行させる仮想計算機を複数の仮想計算機間で切替可能な計算機システムにおいて、
前記計算機システムの性能指標を計数する複数の計数器と、
仮想計算機の切替の後に動作させる仮想計算機に対応した計数器に動作させる計数器を切り替える切替手段と、を備え、
前記動作させる計数器は、前記切替後に動作させる仮想計算機についての性能指標を計数するとともに、前記切替手段による切替前まで動作していた計数器は前記計数動作中に計数した前記切替前の仮想計算機についての計数結果を前記切替前まで動作していた計数器に保持することを特徴とする計算機システム。 - 前記切替手段の切替動作の有効・無効の指示の設定を受け付ける手段と、
前記切替動作の有効・無効を制御する手段と、をさらに備え、
前記切替動作が無効の場合に、前記仮想計算機の種類によらず継続して単一の計数器を動作させることを特徴とする請求項1に記載の計算機システム。 - 実行させる仮想計算機を複数の仮想計算機間で切替可能な計算機システムにおいて、
前記計算機システムの性能指標を計数する複数の計数器と、
前記計数器の計数結果を保存する保存手段と、
仮想計算機の切替の後に動作させる仮想計算機に対応した計数器に動作させる計数器を切り替える切替手段と、を備え
前記動作させる計数器は、前記切替後に動作させる仮想計算機についての性能指標を計数するとともに、前記切替手段による切替前まで動作していた計数器は前記動作中に計数した前記切替前の仮想計算機についての計数結果を前記切替前まで動作していた計数器に保持し、
前記仮想計算機の種類に対応した計数器の数が不足した場合に前記切替手段による計数器の切替動作を無効に設定する手段と、
その計算機システム上で動作する仮想計算機の切替を検知する手段と、
前記計数器の切替動作が無効に設定されているときに、前記仮想計算機の切替検知をトリガとして、切替前に動作していた仮想計算機に対するすでに計数済みの計数結果を前記
保存手段に保存する保存制御手段と、
前記切替によって動作させる仮想計算機に対するすでに計数済みの計数結果を前記保存手段から前記計数器に復元する復元制御手段と、をさらに備えることを特徴とする計算機システム。 - 計算機システムの性能指標を計数する複数の計数器を備え、実行させる仮想計算機を複数の仮想計算機間で切替可能な計算機システムが、
仮想計算機の切替の後に動作させる仮想計算機に対応した計数器に動作させる計数器を切り替える切替ステップとを実行し、
前記切替ステップにおいて動作させる計数器は、前記切替後に動作させる仮想計算機についての性能指標を計数するとともに、前記切替ステップによる切替前まで動作していた計数器は、前記計数動作中に計数した前記切替前の仮想計算機についての計数結果を前記切替前まで動作していた計数器に保持することを特徴とする計算機システムの性能モニタ方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006315820A JP4973149B2 (ja) | 2006-11-22 | 2006-11-22 | 仮想計算機の性能モニタ方法および計算機システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006315820A JP4973149B2 (ja) | 2006-11-22 | 2006-11-22 | 仮想計算機の性能モニタ方法および計算機システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008129931A JP2008129931A (ja) | 2008-06-05 |
JP4973149B2 true JP4973149B2 (ja) | 2012-07-11 |
Family
ID=39555669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006315820A Expired - Fee Related JP4973149B2 (ja) | 2006-11-22 | 2006-11-22 | 仮想計算機の性能モニタ方法および計算機システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4973149B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9760302B2 (en) | 2014-10-03 | 2017-09-12 | International Business Machines Corporation | Servicing multiple counters based on a single access check |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0833851B2 (ja) * | 1986-03-15 | 1996-03-29 | 株式会社日立製作所 | 仮想計算機のモニタリング方式 |
-
2006
- 2006-11-22 JP JP2006315820A patent/JP4973149B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008129931A (ja) | 2008-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7788664B1 (en) | Method of virtualizing counter in computer system | |
US8443175B2 (en) | Microprocessor with first processor for debugging second processor | |
US8245199B2 (en) | Selectively marking and executing instrumentation code | |
JP5551269B2 (ja) | 無制限トランザクショナル・メモリ(utm)モードでのオペレーティング・システム(os)トランザクションの処理 | |
US7814466B2 (en) | Method and apparatus for graphically marking instructions for instrumentation with hardware assistance | |
CN108475236B (zh) | 测量地址转换延迟 | |
JP5353227B2 (ja) | 性能測定プログラム及び性能測定方法並びに性能測定機能を有する情報処理装置。 | |
US20060242389A1 (en) | Job level control of simultaneous multi-threading functionality in a processor | |
US20070260849A1 (en) | Method and apparatus for executing instrumentation code using a target processor | |
US20070261032A1 (en) | Method and apparatus for hardware assisted profiling of code | |
JP2008518367A (ja) | 仮想マシン環境におけるタイマ・オフセット機構 | |
CN101452423A (zh) | 控制硬件加速器内数据值的清除 | |
US8286192B2 (en) | Kernel subsystem for handling performance counters and events | |
US7865703B2 (en) | Method and apparatus for executing instrumentation code within alternative processor resources | |
EP3123318A1 (en) | Idle time accumulation in a multithreading computer system | |
US10613895B2 (en) | Virtualization of storage buffers used by asynchronous processes | |
US8209681B1 (en) | Method of sampling hardware events in computer system | |
Inam et al. | Bandwidth measurement using performance counters for predictable multicore software | |
US7783866B2 (en) | Method and apparatus for executing instrumentation code using processor instructions | |
JP4973149B2 (ja) | 仮想計算機の性能モニタ方法および計算機システム | |
Becker et al. | Measuring software performance on linux | |
US7490206B2 (en) | Method and structure for low memory relocation for dynamic memory reconfiguration | |
JP2015166952A (ja) | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 | |
Larysch | Fine-grained estimation of memory bandwidth utilization | |
Cui et al. | A virtual machine replay system based on para-virtualized Xen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090710 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110117 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110906 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111107 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111122 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120217 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120223 |
|
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: 20120313 |
|
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: 20120326 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150420 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |