JP2006065430A - 仮想計算機性能変更方法 - Google Patents
仮想計算機性能変更方法 Download PDFInfo
- Publication number
- JP2006065430A JP2006065430A JP2004244548A JP2004244548A JP2006065430A JP 2006065430 A JP2006065430 A JP 2006065430A JP 2004244548 A JP2004244548 A JP 2004244548A JP 2004244548 A JP2004244548 A JP 2004244548A JP 2006065430 A JP2006065430 A JP 2006065430A
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- performance
- cpu
- user
- virtual 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】仮想計算機のCPU性能の動的変更を実現することによって、ユーザに必要なだけの計算機性能を提供する。
【解決手段】仮想計算機の運用状況(仮想計算機上のゲストOSの運用状況)を性能監視エージェント及び性能監視マネージャが監視し、仮想計算機の命令実行部分に含まれるダミーサイクルの値を仮想計算機の負荷の変動に応じて変更させることで仮想計算機のCPU性能を動的に変更する。
【選択図】 図2
【解決手段】仮想計算機の運用状況(仮想計算機上のゲストOSの運用状況)を性能監視エージェント及び性能監視マネージャが監視し、仮想計算機の命令実行部分に含まれるダミーサイクルの値を仮想計算機の負荷の変動に応じて変更させることで仮想計算機のCPU性能を動的に変更する。
【選択図】 図2
Description
本発明は、仮想計算機の制御方法に係り、特に仮想計算機のCPU性能の動的な変更処理に関する。
情報部門では、コスト削減の必要性が認識されてきている。そして、基幹系の処理を実施するメインフレームを筆頭とする汎用計算機においてもコスト削減が必要となってきている。汎用計算機の課金方法は、ユーザが利用する計算機の最大のCPU性能によって基本料金が課金されるシステムである。そこで、サーバ等のハードウェアの性能向上にともない、サーバOS上にソフトウェアで汎用計算機の処理機能を実現する仮想計算機を構築し、汎用計算機として用いることで、従来の計算機を使用するよりもコスト低減を目指す動きがある。
また、ユーザがCPU性能等の資源を必要としている時に、新たにCPUをプロセッサ単位でユーザに追加するように構成変更を行うキャパシティ・オン・デマンドに関する技術も開発されている(非特許文献1)。またユーザに対して資源を可変的に割当てることを許容することにより資源の使用量に応じて課金をする従量課金システムも提案されている(非特許文献2)。
http://www-1.ibm.com/servers/eserver/zseries/announce/z990/on off capacity.html
http://www-1.ibm.com/servers/eserver/zseries/swprice/wlc.html
メインフレームを筆頭とする基幹系の情報処理を実施する計算機は、ユーザが利用する計算機の最大のCPU性能に性能が固定されるシステムであった。ユーザから見るとCPU性能を十分に使用していない時であっても、ユーザが使用するCPU性能は固定されていて、自由に性能を変更することはできず、結果として計算機がアイドル状態となってしまう。また、CPU性能を変更する場合には、ユーザに対して仮想計算機を停止させた後、所定の手続きを踏むことで性能変更を実施しなければならず、非常に手間のかかる作業となる。
本発明の目的は、仮想計算機のCPU性能の動的変更を実現することによって、ユーザに必要なだけの計算機性能を提供することにある。
本発明は、仮想計算機の制御方法であって、仮想計算機の命令実行部分に含まれるダミーサイクルの値を仮想計算機の負荷の変動に応じて変更させることで仮想計算機のCPU性能を動的に変更する。これにより、仮想計算機のCPU性能を計算機を停止させることなく動的に変更する方法を提供する。
本発明によれば、ユーザの仮想計算機の使用状況及びユーザの計算機使用条件に従って、命令実行処理に加えるダミーサイクルを変更することで、特別な操作を要さずに仮想計算機のCPU性能を変更することができる。これにより、ユーザは仮想計算機をユーザの必要に応じた性能で使用することが可能となる。
以下、図面を参照しながら、本発明の実施の形態を説明する。
図1は、本発明で対象とする仮想計算機を構成する上で必要な要素を示したものである。本発明で対象とする仮想計算機12は、ハードウェア10、ホストOS11の上にソフトウェアを用いて計算機アーキテクチャを構築する。仮想計算機12の上層にユーザが使用するゲストOS13が存在する構成になっている。
図2は、本発明で対象とする仮想計算機の構造及び仮想計算機中でCPU性能の動的変更を実現する構造を示すブロック図である。仮想計算機12中には性能監視エージェント20、性能監視マネージャ21が存在する。性能監視エージェント20は、仮想計算機12の性能に関して情報提供を行っている。性能監視マネージャ21は、仮想計算機12の稼動状況に応じて仮想計算機のCPU性能設定を変更することをIP処理部分23に対して指示する。
ここで、仮想計算機12がCPU性能を変更する際のデータのやり取りを示す。仮想計算機12上のゲストOS13は、仮想計算機12が規定している、ある所定の時隔でゲストOS13の稼動情報24のデータを収集し、稼動状況データファイル22に稼動情報24を格納する(210)。次に、性能監視エージェント20が稼動状況データファイル22を定期的に確認し、図4のユーザ状態表43に示されるようにゲストOS13の稼動情報を集計する(211)。次に性能監視マネージャ21が性能監視エージェント20で取得した情報を収集し(212)、ユーザに対して割当てている仮想計算機のCPU性能を変更すべきか判断し、仮想計算機のCPU性能を変更する場合には、性能監視マネージャ内の制御プログラム25からIP処理部分23に対して制御が実施される(213)。
また、図2のIP処理部分23の201から204までの処理は、本仮想計算機のIP処理部分の基本処理ループを示す。IP処理の基本ループは、イベント処理201、命令フェッチ処理203、命令実行処理204からなるが、本手法においては、仮想計算機12の性能変更は、CPU性能変更処理202によって動的に変更される。CPU性能変更処理202は、性能監視マネージャ21が性能監視エージェント20から得られる仮想計算機12の稼動状況を判断した結果によって、IP処理部分23に指示される処理213によって実施される。なお、ユーザに割当てるCPU処理性能を変更する処理は、この処理のみで実施される。
図3は、図2の仮想計算機の性能変化を可能にする仕組みを示したものである。本方式において、仮想計算機のCPU性能の動的変更はIPの命令処理実行処理部分にダミーサイクルを挿入することで実現する。ここで、本仮想計算機のIP部分のCPU時間を一定の時隔Tsで見た場合、ダミーサイクル30と命令処理実行時間31の2つの部分からなる構造をしている。ダミーサイクル30と命令処理実行時間31はダミーサイクル30の実施時間Tdと命令処理実行時間31の実施時間Toの合計がTsなる条件の下であれば自由に変更可能である。ちなみに、IPの処理性能が最大値をとるときは、ダミーサイクル30の実施時間Tdの値は0となる。
図6は、ユーザAが仮想計算機の使用条件を決定するときの入力画面の一例を示す。図6では、仮想計算機使用条件入力画面61によって、仮想計算機12はユーザAのために仮想計算機のCPU処理性能を必ず最低2.5MIPS分だけを割当て、ゲストOS13においてCPU利用率20%以上80%未満となるように稼動させる。ゲストOS13で稼働率が80%以上となる場合は、最大10MIPSまではCPU性能処理を増加する契約を結んでいる。また、稼働率が20%未満となる場合は、最小2.5MIPSまで減少させる契約を結んでいる。
上記のような入力画面による使用条件に基づき、本仮想計算機を利用するユーザA社には、最低2.5MIPSの性能分の仮想計算機のCPU資源が与えられる。本実施例においては、ユーザAに対して2.5MIPSのCPU処理性能を割当てているが、ゲストOS13の稼動状況によって最低2.5MIPSから最高10MIPSまでのCPU処理性能が割当てられる。
上記のような入力画面による使用条件に基づき、本仮想計算機を利用するユーザA社には、最低2.5MIPSの性能分の仮想計算機のCPU資源が与えられる。本実施例においては、ユーザAに対して2.5MIPSのCPU処理性能を割当てているが、ゲストOS13の稼動状況によって最低2.5MIPSから最高10MIPSまでのCPU処理性能が割当てられる。
次に仮想計算機のCPU資源割当てを動的に変更する方法について説明する。
図4は図2中の性能監視マネージャ21が持っている情報を示した図である。図4のユーザ条件設定表41は仮想計算機CPU資源割当て表であり、図6の仮想計算機使用条件入力画面61の内容に基づき設定する。この場合、ユーザAに対しては5MIPS相当の仮想計算機のCPU資源を与え、CPU利用率20%以上80%未満でプログラムを動作させることとする。仮想計算機のCPU使用率がこの条件を上回りそうな場合は10MIPSまでは仮想計算機のCPU処理性能を増加する使用条件となっている。また、仮想計算機のCPU使用率がこの条件を下回りそうな場合は2.5MIPSまでは仮想計算機のCPU処理性能を減少する使用条件となっている。
その後、図4のユーザ条件設定表41の情報に基づき仮想計算機のユーザ資源割当履歴表42が作成される。ユーザ資源割当履歴表42には、ユーザAに対する割当CPU処理性能における割当時間の履歴のカラムが記録される。また、ユーザAに与えたCPU処理性能に関して、仮想計算機使用条件入力画面61で設定したCPU使用率以上で稼働していた時間の合計及びCPU使用率未満で稼働していた時間の合計のカラムも記録される。ここで、CPU使用率履歴の80%以上のカラムは、CPU使用率が仮想計算機使用条件入力画面61で決めた上限を超えた時間が記入される。上限を超えるケースとしては、ユーザが契約した最大の仮想計算機のCPU処理性能でも処理できない負荷が入った場合が挙げられる。なお、条件超過のカラムには、ユーザが契約した仮想計算機の最大のCPU処理性能、本実施例では10MIPSでも処理できないほど大きな負荷が入った場合の時間が記入される。また条件未達のカラムには、ユーザが契約した仮想計算機の最小のCPU処理性能、本実施例では2.5MIPSでもゲストOS13においてCPU使用率が20%に達しないほど少ない負荷しかない場合の時間が計算機使用条件外の時間として記入される。
性能監視マネージャ21は、性能監視エージェント20から受け取った仮想計算機12の運用状況、すなわちゲストOS13の稼動状況である図4のユーザ状態表43と図4のユーザ条件表41を照合し、現在の資源割当てが仮想計算機使用条件を満たしているかを調べ、その結果を図4のユーザ資源割当履歴表42に格納する。仮想計算機12の運用状況がユーザの仮想計算機使用条件を満たしていない場合は、仮想計算機12のCPU処理性能を増やす処理、あるいは、CPU処理性能を減らす処理を図2のIP処理部分23中の処理202を実行するよう指示する。図4のユーザ状態表43では、ユーザへのCPU処理性能の割当て状況を管理するために、ユーザへのCPU性能割当のカラムを保持している。
上記制御を行うために、システム立上げ時に資源を分割する手順を図7を用いて説明する。
最初に図6の仮想計算機使用条件入力画面61に示される情報を入力する(701)。仮想計算機使用条件入力画面61に入力された情報により、性能監視マネージャ21は、仮想計算機のユーザ条件表41を設定する(702)。
ユーザ条件表41を参照してユーザAに最低2.5MIPSのCPU処理性能を与えるべきことを性能監視マネージャ21が検出すると、ユーザに対して割当てる仮想計算機のCPU性能をユーザ状態表43のCPU性能割当のカラムに記述する(703)。
ユーザAがゲストOS13を利用した時に稼動状況として集められる情報は性能監視エージェント20が図5で示されるユーザ状態表55として取得する。図5のユーザ状態表55の内容に基づき、性能監視マネージャ21ではCPU使用率のカラムが作成される。これによって、ユーザ状態表43が作成される(704)。
さらに、ユーザ条件表41に基づき、図4のユーザ資源割当履歴表42を作成する(705)。すなわち、各ユーザに対するCPU使用率履歴やCPU性能割当履歴を記録するカラムを作成する。
以上により仮想計算機のCPU資源割当てに必要な情報が生成され、正しく資源割当された状態でシステムが動作開始できる。
次に、性能監視マネージャ21がゲストOS13の利用状況に応じて仮想計算機のCPU資源割当てを変更する際の手順を図8を用いて説明する。
まず、ユーザが使用している仮想計算機12の稼動情報は、図4の割当履歴表42に格納される(801)。但し、仮想計算機12のCPU使用率超過の場合等、ユーザの仮想計算機使用条件を満たしていない場合には、サーバの割当台数を変える制御を行うことでユーザの仮想計算機使用条件を満たすことができる場合には、ユーザの仮想計算機使用条件を満たす状態になった後にユーザ資源割当履歴表42に格納する。図4のユーザ条件表41と比較した後(802)、仮想計算機使用条件に照らしてユーザに割当てるCPU性能を削減できないかを性能監視マネージャ21が検討する(803)。
CPU資源の割当てを削減可能かどうかの判断方法の1例としては、ユーザのCPU利用率とユーザに提供されたCPU処理性能に対して比例計算を行う方法が挙げられる。たとえばユーザAの仮想計算機使用条件は仮想計算機のCPU利用率が20%以上80%未満であるが、現在の仮想計算機のユーザ割当てCPU性能が5.0MIPSである時に、CPU利用率が15%であれば、仮想計算機のユーザ割当てCPU性能を2.5MIPSに削減してもよいと判断できる。
ここでは、仮想計算機のCPU性能割当てを2.5MIPSまで削減することにする。尚、仮想計算機のCPU処理性能を削減可能の場合に、ユーザが対話処理を行っている場合には、ユーザに対して仮想計算機の性能が動的に低下したことを気づかれないように処理の終了まで待機するようにしてもよい。
仮想計算機のCPU割当て制御に戻る。性能監視マネージャ21が図2のCPU性能変更処理202を実行するように指示する。ここで、性能変更処理は、図4の仮想計算機CPU性能-ダミーサイクル対応表44に従って決定するダミーサイクル30の実施時間Tdを、図3に示すように設定することで実施する。CPU性能変更終了後、性能監視マネージャ21は図4のユーザ状態表43のCPU性能割当のカラムを変更する。その後、ユーザ資源割当履歴表42において、CPU性能割当履歴などのパラメータを変更する(804)。
続いてCPU性能を増強する必要があるかを性能監視マネージャ21が検討する(805)。どのくらい仮想計算機のCPU性能を増強すべきかの判断は、削減時と同様に比例計算とする。仮想計算機のCPU性能を増強する場合に、ユーザに割当てる仮想計算機のCPU性能がCPU性能の限界を超えていないかを判断する(806)。もし、仮想計算機のCPU性能がCPU性能の限界を超えている場合には、計算機の運用管理者に通知し、ユーザ資源割当履歴表42には、CPU性能割当履歴のカラムに条件超過ということで記録される(807)。
ユーザに割当てる仮想計算機のCPU性能が仮想計算機のCPU性能範囲内である場合は、CPU性能を新たに割り当てることができ、性能監視マネージャ21は図2のCPU性能変更処理202を実行するようにIP処理部分23に指示する。指示を受けた後、図4の仮想計算機CPU性能-ダミーサイクル対応表44に従って決定するダミーサイクル30の実施時間Tdを図3のように設定することで、ユーザに提供される仮想計算機12のCPU性能を動的に変更する。性能変更終了後、性能監視マネージャ21は図4のユーザ状態表43のCPU性能割当のカラムを変更する。その後、ユーザ資源割当履歴表42においてCPU性能割当履歴を変更する(808)。
本発明は、IPの処理部分に与えているダミーサイクル30と命令処理実行時間31の割合を変化させるだけで仮想計算機のCPU性能を動的に変更することが可能であるため、CPU性能を変更する際に、仮想計算機を停止させたり、特別な操作をしたりする必要がないというメリットがある。
11 ホストOS
12 仮想計算機
13 ゲストOS
20 性能監視エージェント
21 性能監視マネージャ
23 IP処理部分
41 ユーザ条件設定表
42 ユーザ資源割当履歴表
43 ユーザ状態表
44 仮想計算機CPU性能−ダミーサイクル対応表
61 仮想計算機使用条件入力画面
12 仮想計算機
13 ゲストOS
20 性能監視エージェント
21 性能監視マネージャ
23 IP処理部分
41 ユーザ条件設定表
42 ユーザ資源割当履歴表
43 ユーザ状態表
44 仮想計算機CPU性能−ダミーサイクル対応表
61 仮想計算機使用条件入力画面
Claims (1)
- 仮想計算機の制御方法であって、仮想計算機の命令実行部分に含まれるダミーサイクルの値を仮想計算機の負荷の変動に応じて変更させることで仮想計算機のCPU性能を動的に変更することを特徴とする仮想計算機性能変更方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004244548A JP2006065430A (ja) | 2004-08-25 | 2004-08-25 | 仮想計算機性能変更方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004244548A JP2006065430A (ja) | 2004-08-25 | 2004-08-25 | 仮想計算機性能変更方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006065430A true JP2006065430A (ja) | 2006-03-09 |
Family
ID=36111904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004244548A Pending JP2006065430A (ja) | 2004-08-25 | 2004-08-25 | 仮想計算機性能変更方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006065430A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007148371A1 (ja) * | 2006-06-19 | 2007-12-27 | Nec Corporation | 仮想マシンのための性能管理システムと性能管理方法 |
JP2009176228A (ja) * | 2008-01-28 | 2009-08-06 | Nec Corp | 仮想マシンサーバ、仮想マシンサーバの情報保存方法及び仮想マシンサーバの情報保存用プログラム |
WO2010001434A1 (ja) * | 2008-06-30 | 2010-01-07 | 富士通株式会社 | 情報処理装置の性能調整装置及び方法 |
JP2011128706A (ja) * | 2009-12-15 | 2011-06-30 | Fujitsu Ltd | 仮想計算機割当資源管理プログラム、仮想計算機割当資源管理装置および仮想計算機割当資源管理方法 |
JP2011192194A (ja) * | 2010-03-16 | 2011-09-29 | Hitachi Solutions Ltd | 仮想マシン制御システム |
US8219359B2 (en) | 2008-06-25 | 2012-07-10 | Nec Corporation | Performance evaluating apparatus |
JP2013054534A (ja) * | 2011-09-05 | 2013-03-21 | Fujitsu Ltd | 仮想マシン制御装置,仮想マシン制御プログラムおよび仮想マシン制御方法 |
-
2004
- 2004-08-25 JP JP2004244548A patent/JP2006065430A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007148371A1 (ja) * | 2006-06-19 | 2007-12-27 | Nec Corporation | 仮想マシンのための性能管理システムと性能管理方法 |
JP2009176228A (ja) * | 2008-01-28 | 2009-08-06 | Nec Corp | 仮想マシンサーバ、仮想マシンサーバの情報保存方法及び仮想マシンサーバの情報保存用プログラム |
US8219359B2 (en) | 2008-06-25 | 2012-07-10 | Nec Corporation | Performance evaluating apparatus |
WO2010001434A1 (ja) * | 2008-06-30 | 2010-01-07 | 富士通株式会社 | 情報処理装置の性能調整装置及び方法 |
US8464042B2 (en) | 2008-06-30 | 2013-06-11 | Fujitsu Limited | Performance adjustment apparatus and method of information processing apparatus |
JP5459207B2 (ja) * | 2008-06-30 | 2014-04-02 | 富士通株式会社 | 情報処理装置の性能調整装置及び方法 |
JP2011128706A (ja) * | 2009-12-15 | 2011-06-30 | Fujitsu Ltd | 仮想計算機割当資源管理プログラム、仮想計算機割当資源管理装置および仮想計算機割当資源管理方法 |
JP2011192194A (ja) * | 2010-03-16 | 2011-09-29 | Hitachi Solutions Ltd | 仮想マシン制御システム |
JP2013054534A (ja) * | 2011-09-05 | 2013-03-21 | Fujitsu Ltd | 仮想マシン制御装置,仮想マシン制御プログラムおよび仮想マシン制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Park et al. | CoPart: Coordinated partitioning of last-level cache and memory bandwidth for fairness-aware workload consolidation on commodity servers | |
Sarood et al. | Maximizing throughput of overprovisioned hpc data centers under a strict power budget | |
JP4367856B2 (ja) | プロセス制御システム及びその制御方法 | |
CN102696000B (zh) | 用于虚拟化数据中心中的协调能量管理的方法和设备 | |
Franke et al. | An evaluation of parallel job scheduling for ASCI Blue-Pacific | |
Sampaio et al. | PIASA: A power and interference aware resource management strategy for heterogeneous workloads in cloud data centers | |
CN101408853B (zh) | 一种虚拟机调度的装置及方法 | |
JP2012094030A (ja) | 計算機システム及び処理制御方法 | |
JP2013232207A (ja) | コンピュータマイクロジョブを中断せずに実行するようスケジュールするための方法、システムおよび装置 | |
US20150301864A1 (en) | Resource allocation method | |
Blagodurov et al. | Maximizing server utilization while meeting critical SLAs via weight-based collocation management | |
Yang et al. | Rumr: Robust scheduling for divisible workloads | |
Lawson et al. | Power-aware resource allocation in high-end systems via online simulation | |
KR101695013B1 (ko) | 적응형 자원 할당 및 관리 방법 | |
JP5355592B2 (ja) | ハイブリッド型のコンピューティング環境を管理するためのシステムおよび方法 | |
Petrou et al. | Implementing Lottery Scheduling: Matching the Specializations in Traditional Schedulers. | |
Sfakianakis et al. | Skynet: Performance-driven resource management for dynamic workloads | |
Chae et al. | CMcloud: Cloud platform for cost-effective offloading of mobile applications | |
JP2006065430A (ja) | 仮想計算機性能変更方法 | |
Kurowski et al. | Dynamic grid scheduling with job migration and rescheduling in the GridLab resource management system | |
Jia et al. | {vSMT-IO}: Improving {I/O} Performance and Efficiency on {SMT} Processors in Virtualized Clouds | |
Agrawal et al. | An empirical evaluation of work stealing with parallelism feedback | |
Sudarsan et al. | Scheduling resizable parallel applications | |
JP2006107197A (ja) | メモリ制御方法およびプログラムならびに端末装置 | |
JP2001282560A (ja) | 仮想計算機制御方法及びその実施装置並びにその処理プログラムを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060424 |