JP5153503B2 - 消費電力を推定するシステムおよび方法 - Google Patents

消費電力を推定するシステムおよび方法 Download PDF

Info

Publication number
JP5153503B2
JP5153503B2 JP2008198128A JP2008198128A JP5153503B2 JP 5153503 B2 JP5153503 B2 JP 5153503B2 JP 2008198128 A JP2008198128 A JP 2008198128A JP 2008198128 A JP2008198128 A JP 2008198128A JP 5153503 B2 JP5153503 B2 JP 5153503B2
Authority
JP
Japan
Prior art keywords
server
power consumption
usage
virtual
unit
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
JP2008198128A
Other languages
English (en)
Other versions
JP2010039513A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2008198128A priority Critical patent/JP5153503B2/ja
Priority to US12/509,533 priority patent/US8266458B2/en
Publication of JP2010039513A publication Critical patent/JP2010039513A/ja
Application granted granted Critical
Publication of JP5153503B2 publication Critical patent/JP5153503B2/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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Description

本発明は、様々なハードウェア構成で動作するサーバの消費電力を推定するシステムおよび方法等に関する。
コンピュータのハードウェア資源をその物理的構成によらずに使用する仮想化技術が知られている(例えば、非特許文献1参照)。この仮想化技術により実現される仮想サーバでは、1台の物理サーバを論理的に分割して複数台のサーバであるかのように使用したり、複数の物理サーバのハードウェア資源を統合して1つのサーバとして機能させたりすることができる。そして、1台の物理サーバ上で動作する複数の仮想サーバは、各々、異なるOS(Operating System)やアプリケーションを動作させることができる。
また今日、サーバ機器などの使用に対して料金を課する場合がある。この課金の手法として、従来は、使用される機器の消費電力を計測し、計測された消費電力に応じて課金を行うことが行われている(例えば、特許文献1参照)。
大町一彦、「仮想マシン草創期」、情報処理学会誌、48巻8号、pp903−905、2007年8月 特開2004−135084号公報
サーバの使用に対して課金する場合、物理サーバごとの使用を対象とするのであれば、特許文献1に示した従来技術等に示すように、消費電力に応じて課金を行えば良い。しかし、仮想サーバの使用に対して課金する場合、単純に機器ごとの消費電力に応じた課金では不都合がある。すなわち、1台の物理サーバ上で複数の仮想サーバが実行される場合、各仮想サーバによって物理サーバのハードウェア資源が使用されるため、個々の仮想サーバの使用に対する課金額が、同じ物理サーバ上で実行されている他の仮想サーバの動作に影響を受けてしまう。また、使用される物理サーバ(ハードウェア資源)の種類が変わると、同じ性能およびサービス・レベルの仮想サーバが提供される場合でも、消費電力が異なるために課金額が変わってしまう場合がある。
本発明は、このような課題に鑑みて成されたものであり、様々なハードウェア構成で動作する仮想サーバの消費電力を推定するシステムおよび方法等を提供することを目的とする。また、推定された仮想サーバの消費電力に基づいて課金するシステムを提供することを他の目的とする。
上記の目的を達成するため、本発明は、次のようなシステムとして実現される。このシステムは、サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量を計測する資源使用量計測部と、この資源使用量計測部により計測されたハードウェア資源の使用量を、サーバの動作を予め設定されたハードウェア構成による基準サーバで行った場合における当該基準サーバのハードウェア資源の使用量に換算する換算部と、この換算部により換算された基準サーバの使用量に基づき、サーバの動作により消費されたと推定される電力として、基準サーバにおいて当該動作が行われた場合の消費電力を計算する仮想消費電力計算部と、この仮想消費電力計算部により計算された消費電力に基づいて、サーバの動作に対する課金処理を行う課金処理部と、を備える。
より詳細には、資源使用量計測部は、ハードウェア資源の使用量として、少なくともサーバの動作によるCPUの使用量を計測する。
また、上記のシステムにおいて、同一のコンピュータ上で複数のサーバが動作する場合に、個々のサーバごとに、資源使用量計測部がハードウェア資源の使用量を計測し、換算部がハードウェア資源の使用量を基準サーバのハードウェア資源の使用量に換算し、仮想消費電力計算部が消費電力を計算する。さらに、課金処理部は、個々のサーバごとに、当該サーバの動作に対する課金処理を行う。
また、上記の目的を達成する本発明は、サーバの消費電力を推定する方法としても実現される。この方法は、サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量を計測するステップと、ハードウェア資源の使用量を、基準サーバのハードウェア資源の使用量に換算するステップと、基準サーバの使用量に基づき、サーバの動作により消費されたと推定される電力として、基準サーバにおいて当該動作が行われた場合の消費電力を計算するステップと、計算された基準サーバにおける消費電力に基づいて、サーバの動作に対する課金処理を行うステップと、を含む。
また本発明は、コンピュータを制御して上記の課金システムの各機能を実現させるプログラムや、コンピュータに上記の方法における各ステップに対応する処理を実行させるプログラムとしても実現される。このプログラムは、光ディスクや磁気ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
以上のように構成された本発明によれば、仮想サーバの消費電力を推定することが可能となる。また、仮想サーバに対して消費電力に基づく課金を適用することが可能となる。
以下、添付図面を参照して、本発明の実施形態について詳細に説明する。
本実施形態では、仮想サーバの使用に基づく消費電力を推定するために、特定のハードウェア構成を持つ基準サーバを想定する。そして、仮想サーバにおける計算資源の使用量(すなわち、仮想サーバが実装されている物理サーバのハードウェア資源の使用量)を基準サーバにおける計算資源の使用量に置き換え、基準サーバの計算資源の使用量に基づく消費電力を計算し、得られた消費電力を仮想サーバの使用に基づく消費電力と見なす。この仮想サーバの消費電力と見なされる基準サーバの消費電力を、仮想消費電力と呼ぶ。
<システム構成>
図1は、本実施形態による課金システムの構成例を示す図である。
図1を参照すると、本実施形態の課金システムは、課金対象である仮想サーバが実現される物理サーバ100と、課金装置200とを備える。なお、図1に示す構成例では、1つの物理サーバ100が課金装置200に接続されているが、複数の物理サーバ100が課金装置200に接続されても良い。
物理サーバ100は、仮想サーバを実現するための仮想サーバ管理部110と、仮想サーバによる計算資源の使用量を計測するための資源使用量計測部120を備える。課金装置200は、仮想サーバによる計算資源(ハードウェア資源)の使用量を基準サーバでの計算資源の使用量に換算する換算部210と、換算部210の計算結果に基づいて仮想消費電力を計算する仮想消費電力計算部220とを備える。また、課金装置200は、仮想消費電力計算部220の計算結果に基づいて課金処理を行う課金処理部230を備える。物理サーバ100の資源使用量計測部120は、計測した計算資源の使用量(以下、資源使用量)を課金装置200に送信する。課金装置200の換算部210は、物理サーバ100の資源使用量計測部120から受信した資源使用量に基づいて、基準サーバでの資源使用量を計算する。
図2は、図1の物理サーバ100および課金装置200を実現するコンピュータのハードウェア構成例を示す図である。
図2に示すコンピュータ10は、演算手段であるCPU(Central Processing Unit)10aと、記憶手段であるメイン・メモリ10cおよび磁気ディスク装置(HDD:Hard Disk Drive)10gを備える。また、ネットワークを介して外部装置に接続するためのネットワーク・インタフェース・カード10fと、表示出力を行うためのビデオ・カード10dおよび表示装置10jと、音声出力を行うための音声機構10hとを備える。さらに、キーボードやマウス等の入力デバイス10iを備える。
図2に示すように、メイン・メモリ10cおよびビデオ・カード10dは、システム・コントローラ10bを介してCPU10aに接続されている。また、ネットワーク・インタフェース・カード10f、磁気ディスク装置10g、音声機構10hおよび入力デバイス10iは、I/Oコントローラ10eを介してシステム・コントローラ10bと接続されている。各構成要素は、システム・バスや入出力バス等の各種のバスによって接続される。例えば、CPU10aとメイン・メモリ10cの間は、システム・バスやメモリ・バスにより接続される。また、CPU10aと磁気ディスク装置10g、ネットワーク・インタフェース・カード10f、ビデオ・カード10d、音声機構10h、入力デバイス10i等との間は、PCI(Peripheral Components Interconnect)、PCI Express、シリアルATA(AT Attachment)、USB(Universal Serial Bus)、AGP(Accelerated Graphics Port)等の入出力バスにより接続される。
なお、図2は、本実施形態が適用されるのに好適なコンピュータのハードウェア構成を例示するに過ぎず、実際の各サーバが図示の構成に限定されないことは言うまでもない。例えば、ビデオ・カード10dを設ける代わりに、ビデオメモリのみを搭載し、CPU10aにてイメージ・データを処理する構成としても良い。また、音声機構10hを独立した構成とせず、システム・コントローラ10bやI/Oコントローラ10eを構成するチップセットの機能として備えるようにしても良い。また、補助記憶装置として磁気ディスク装置10gの他に、各種の光学ディスクやフレキシブル・ディスクをメディアとするドライブを設けても良い。表示装置10jとしては、主として液晶ディスプレイが用いられるが、その他、CRTディスプレイやプラズマ・ディスプレイ等、任意の方式のディスプレイを用いて良い。
図1に示した物理サーバ100において、仮想サーバ管理部110、資源使用量計測部120の各機能は、例えば図2に示したコンピュータにおいて、メイン・メモリ10cに読み込まれたプログラムをCPU10aが実行することにより実現される。また、課金装置200における換算部210、仮想消費電力計算部220、課金処理部230の各機能も同様に、物理サーバ100を構成するコンピュータにおいて、メイン・メモリ10cに読み込まれたプログラムをCPU10aが実行することにより実現される。
仮想サーバは、物理サーバ100の仮想サーバ管理部110と、仮想サーバ管理部110上で動作するOSによって実現される。仮想サーバ管理部110は、物理サーバ100の計算資源であるCPUやメモリ等の使用権を各OSに割り当て、物理サーバ100上でのOSの動作を管理する。これにより、物理サーバ100上で種々のOSを複数実行することが可能となり、それらのOSによる仮想的なサーバが実現される。仮想サーバ管理部110の機能は、例えば、仮想サーバを実現するための既存のソフトウェアを物理サーバ100において実行することにより実現される。
資源使用量計測部120は、仮想サーバ管理部110およびOSによって実現された仮想サーバごとの資源使用量を計測する。資源使用量の具体的な計算方法は、計測すべき計算資源の種類に応じて様々である。例えば、CPUの使用量は、仮想サーバ管理部110によって行われる各OSに対する時間割り当てのスケジュールや使用結果の情報を取得することにより計測することができる。また、メモリの使用量は、各OSが管理するページテーブルを参照することにより計測することができる。これらの情報は、各OSの動作を管理する仮想サーバ管理部110から得ることもできる。したがって、図1においては、各機能を区別するために仮想サーバ管理部110と資源使用量計測部120とを分けて記載しているが、実装においては、仮想サーバ管理部110の機能の一部として資源使用量計測部120の機能を設けることも可能である。また、図1の構成例では、資源使用量計測部120を物理サーバ100に設けたが、資源使用量計測部120自体は課金装置200に設けておき、資源使用量計測部120が資源使用量の計測に用いるべき情報を仮想サーバ管理部110から送信させる構成としても良い。
課金装置200の換算部210は、資源使用量計測部120により計測された物理サーバ100での資源使用量を取得して、基準サーバにおける資源使用量(仮想資源使用量)に換算する。基準サーバとは、仮想サーバごとの消費電力である仮想消費電力を計算するために想定されるサーバ構成であり、予め、CPUの種類、メモリの種類や記憶容量、その他のハードウェア構成が設定されている。資源使用量を換算するため、予め、物理サーバ100と基準サーバとで同じ動作を行った場合の資源使用量の関係(性能比)を調べる。そして、得られた資源使用量の関係の情報を、例えば図2のメイン・メモリ10cや磁気ディスク装置10g等の記憶手段に保持しておく。資源使用量の関係を調べる具体的な手法については後述する。
仮想消費電力計算部220は、基準サーバにおいて、換算部210により計算された仮想資源使用量に応じた消費電力を計算する。これにより、仮想サーバで実行された処理と同一の処理が基準サーバで実行された場合の消費電力が計算されることとなる。この基準サーバの消費電力が、仮想消費電力であり、仮想サーバの使用に基づく消費電力と見なされる。仮想消費電力を計算するため、予め、基準サーバと同一のハードウェア構成を持つ物理サーバ(物理基準サーバ)を用いて、様々な処理を実行した際の、計算資源の使用に応じた消費電力を計測する。そして、計測結果に基づいて、仮想資源使用量から仮想消費電力を求めるための計算式(関数)を作成しておく。この計算式を用い、換算部210から取得した仮想資源使用量に基づいて、仮想消費電力が計算される。計算式を作成するために行われる、物理基準サーバでの実際の処理に応じた消費電力の計測は、例えば下記文献に開示される既存の計測手法等を用いて行うことができる。

Dimitris Economou, Suzanne Rivoire, Christos Kozyrakis, Partha Ranganathan, “Full-System Power Analysis and Modeling for Server Environments”, Workshop on Modeling Benchmarking and Simulation, June 2006.
課金処理部230は、仮想消費電力計算部220により計算された仮想消費電力に応じて課金処理を行う。課金処理の具体的な内容としては、種々の機器に対して消費電力に応じて課金する際に行われる既存の処理を行うことができる。すなわち、仮想消費電力を課金パラメータとする予め用意された計算式により課金額を計算する等である。なお、課金の仕方としては、仮想消費電力の総量に対して単純に課金する他、仮想サーバの処理量等に大きく影響される計算資源の使用による仮想消費電力とその他の仮想消費電力とを分けて課金を行っても良い。例えば、課金対象となる資源使用量としては、CPU使用率、メモリ使用量、メモリバス使用量、磁気ディスク装置へのアクセス、ネットワーク使用量、冷却ファンの回転数などを考えることができる。このうち、CPU使用率やメモリ使用量、冷却ファンの動作等は、仮想サーバの処理量等に大きく影響される。そこで、これらの資源使用量に対する課金については、仮想消費電力計算部220により計算された仮想消費電力に基づき課金額を計算して行う。一方、磁気ディスク装置やネットワークについては、実際に使用していないときにも一定の記憶容量や帯域を確保する必要があるために、資源使用量に関わらず一律に固定額を課金するようにしても良い。
<課金システムの動作>
次に、上記のように構成された課金システムにおける動作について説明する。
以下では、基準サーバにおける資源使用量と消費電力の関係を求める手法の例、物理サーバ100と基準サーバにおける資源使用量の関係を調べる手法の例、課金額の計算手順の例について、それぞれ説明する。
図3は、資源使用量と消費電力の関係を求める手法を説明するフローチャートである。
図3では、資源使用量として2つの計算資源の使用率(例えば、CPU使用率とメモリ容量の使用率)を用い、消費電力をこれら2つの計算資源の使用率の関数として求める例を示す。ここでは、物理基準サーバを用いて、図3に示す操作を行うことにより、基準サーバにおける資源使用量と消費電力との関係が得られる。
図3を参照すると、まず、2つの計算資源の使用率(Util1、Util2)が初期化される(ステップ301、302)。次に、このときの消費電力(power[Util1,Util2])が計測される(ステップ303)。次に、使用率Util2を10%上昇させて(ステップ304)、使用率Util2の値が100%を越えていないか判断される(ステップ305)。使用率Util2の値が100%を越えていないならば(ステップ305でYes)、ステップ303に戻り、ステップ304で新たに設定された使用率Util2で、消費電力が計測される。
一方、使用率Util2を10%上昇させた結果、使用率Util2の値が100%を越えたならば(ステップ305でNo)、次に、使用率Util1を10%上昇させて(ステップ306)、使用率Util1の値が100%を越えていないか判断される(ステップ307)。使用率Util1の値が100%を越えていないならば(ステップ307でYes)、ステップ302に戻って使用率Util2が初期化され(0%に戻り)、ステップ303以降の処理が繰り返される。
そして、使用率Util1の値が100%を越えたならば(ステップ307でNo)、2つの計算資源の使用率Util1、Util2について0%から100%の各組み合わせ(10%刻み)で消費電力の計測が完了したので、処理を終了する。このようにして得られた資源使用量と消費電力の関係に基づいて、基準サーバにおいて仮想資源使用量から仮想消費電力を計算するための関数が作成される。
なお、図3に示す例では、計算資源の使用率を10%刻みで変化させて消費電力を計測したが、これに限定するものではなく、より精細に使用率を変化させながら消費電力を計測しても良い。また、10%刻みで計測した資源使用量と消費電力との関係を用い、使用率10%以下の単位での資源使用量と消費電力との関係を、補間により求めても良い。さらに、図3に示す例では、2つの計算資源の使用率を対象として消費電力との関係を調べたが、3つ以上の計算資源の使用率(使用量)を対象とする場合も同様に、1つの計算資源ごとに使用率(使用量)を変化させながら、消費電力を計測していけば良い。
図4は、物理サーバ100と基準サーバにおける資源使用量の関係を調べる手法を説明するフローチャートである。
図4を参照すると、まず物理サーバ100(target machine)の資源使用量(Utiltarget)が初期化され(ステップ401)、物理サーバ100の処理能力(perftarget[Utiltarget])が計測される(ステップ402)。また、物理基準サーバ(reference machine)の資源使用量(Utilreference)が初期化され(ステップ403)、物理基準サーバの処理能力(perfreference[Utilreference])が計測される(ステップ404)。ここで、処理能力の具体的な内容は、計測対象の計算資源の種類に応じて様々であるが、例えばCPUの場合、一定時間に処理する命令数等が採用される。
次に、ステップ402で求まった物理サーバ100の処理能力(perftarget[Utiltarget])と、ステップ404で求まった物理基準サーバの処理能力(perfreference[Utilreference])とが比較される(ステップ405)。そして、物理サーバ100の処理能力(perftarget[Utiltarget])の方が高いならば(ステップ405でYes)、物理基準サーバの資源使用量(Utilreference)が増加され(ステップ406)、処理能力が再度計測されて(ステップ404)、処理能力の比較が行われる(ステップ405)。
物理基準サーバの処理能力(perfreference[Utilreference])が物理サーバ100の処理能力(perftarget[Utiltarget])以上となったならば(ステップ405でNo)、このときの物理基準サーバの資源使用量(Utilreference)が、このときの物理サーバ100の資源使用量(Utiltarget)に対応する仮想資源使用量(vUtilreference[Utiltarget])とされる(ステップ407)。
次に、現在の物理サーバ100の資源使用量(Utiltarget)が100%以下か否かが判断され、100%以下であれば(ステップ408でYes)、物理サーバ100の資源使用量(Utiltarget)が増加されて(ステップ409)、ステップ402以降の処理が繰り返される。一方、物理サーバ100の資源使用量(Utiltarget)が100%を越えたならば(ステップ408でNo)、処理を終了する。このようにして得られた物理基準サーバと物理サーバ100との資源使用量の関係に基づいて、物理サーバ100の資源使用量から基準サーバの仮想資源使用量を計算するための関数(換算式)が作成される。なお、ステップ406およびステップ409の資源使用量の増加は、例えば、10%刻みで行われる。そして、必要に応じて線形補間や正規化等の処理が適宜行われる。
図4の動作により物理サーバ100と基準サーバとの性能比を調べる場合、各サーバの具体的な性能比を特定するために、例えば、物理サーバ100および物理基準サーバにおいて同一のベンチマーク・スコアを測定する。このベンチマーク・スコアの測定は、汎用のベンチマーク・テストを実行することにより行っても良いが、仮想サーバの用途が特定されている場合(ウェブサーバとしてのみ用いる等)、その用途に応じて特化されたベンチマーク・テストを実行することにより行っても良い。
図5は、図1に示した課金システムにおける課金処理の流れを示すフローチャートである。
図5に示すように、本実施形態の課金システムは、まず物理サーバ100において、資源使用量計測部120が、仮想サーバの使用に基づく資源使用量を計測する(ステップ501)。計測された仮想サーバごとの資源使用量は、課金装置200に送られる。
課金装置200では、換算部210が、資源使用量計測部120から受け取った資源使用量を基準サーバによる仮想資源使用量に換算する(ステップ502)。そして、仮想消費電力計算部220が、換算部210により計算された仮想資源使用量に基づいて、仮想消費電力を計算する(ステップ503)。最後に、課金処理部230が、仮想消費電力計算部220により計算された仮想消費電力に基づいて、課金処理を実行する(ステップ504)。
次に、具体的な適用例を挙げて、仮想サーバの使用に対する課金についてさらに説明する。
この例では、資源使用量としてCPU使用率のみを計測するものとする(すなわち、仮想サーバの使用による物理サーバ100のCPUの使用率に対して課金される)。基準サーバにおける仮想資源使用量と仮想消費電力との関係は、図6に示すものであるとする。また、仮想サーバを実装する物理サーバ100は、CPU時間あたりの処理量が基準サーバの1.5倍であるものとする。
図5に示した手順にしたがって、課金システムの動作を説明する。まず、仮想サーバの動作により、物理サーバ100においてCPU時間の40%が使用されたものとする。このCPU使用率の情報は、物理サーバ100の資源使用量計測部120によって取得され、課金装置200へ送られる(ステップ501参照)。課金装置200の換算部210は、この情報を受け付けると、物理サーバ100におけるCPU使用率を基準サーバによる仮想資源使用量に変換する(ステップ502参照)。上記のように、物理サーバ100のCPU時間当たりの処理量は基準サーバの1.5倍であるから、物理サーバ100における仮想サーバの動作と同様の処理を基準サーバで実行する場合のCPU使用率は60%(=40%×1.5)となる。
次に、課金装置200の仮想消費電力計算部220が、換算部210により計算された基準サーバによる仮想資源使用量に基づいて仮想消費電力を計算する(ステップ503参照)。ここで、基準サーバにおける仮想資源使用量と仮想消費電力との関係を示した図6を参照すると、CPU使用率が60%であるときの仮想消費電力は約64Wである。この仮想消費電力は、物理サーバ100が実際にはどれだけの電力を消費しているかということや、物理サーバ100上で他の仮想サーバが動作しているかどうかといったことに影響されない。すなわち、仮想化された環境における仮想サーバの使用のみに対応している。そこで、課金処理部230が、仮想消費電力64Wに基づいて課金処理を行うことにより(ステップ504参照)、仮想サーバが動作している実際の動作環境に関わらず、仮想サーバの使用に応じた課金を行うことができる。なお、計測したCPU時間を基準サーバでのCPU時間に換算すると100%を越えるような場合には、複数のCPUを使ったと見なして演算を行えば良い。また、そのような割り当てが起こらないように、仮想サーバ管理部110の設定を行うことで対応しても良い。
次に、他の適用例を挙げて、さらに説明する。
この例では、課金対象として、CPUおよびメモリの使用に伴う仮想消費電力と共に、機器の冷却のための仮想消費電力を考慮するものとする。基準サーバにおけるCPU使用率に関わる仮想資源使用量と仮想消費電力との関係は、下記の計算式によって得られるものとする。

CPU使用率に関わる仮想消費電力=
POWERidle+POWERCPU(CPU使用率)

ここで、POWERidleはアイドル時の仮想消費電力、POWERCPUはCPUによる仮想消費電力である。仮想資源使用量と仮想消費電力との関係が図6に従う場合、POWERidleは40W、POWERCPUはCPU使用率の関数で0%の時には0W、100%で40Wとなる。
さらに、CPU使用率に関わる仮想消費電力を計測したのと同様に、CPU使用率を一定として、物理メモリの量を変えた場合の消費電力の変化を計測し、メモリ容量に関わる仮想消費電力POWERmemをメモリ容量の関数として求める。例えば、メモリ容量が1GBで仮想消費電力10W、メモリ容量が4GBで仮想消費電力40W、というようなメモリ容量と仮想消費電力との関係を求め、メモリ容量から仮想消費電力を求める計算式を作成する。そして、これらを総合し、処理の実行に関わる仮想消費電力を、下記の計算式で表す。

処理の実行に関わる仮想消費電力=
POWERidle+POWERCPU(CPU使用率)+POWERmem(使用メモリ容量)

さらに、物理基準サーバの消費電力を変えながら、機器を冷却するのに必要だった冷却ファンの動作による消費電力POWERcoolingを計測して、仮想消費電力に加算する。したがって、全仮想消費電力は、下記の計算式により表される。

全仮想消費電力=
処理の実行に関わる仮想消費電力+POWERcooling(冷却のための消費電力)

すなわち、この全仮想消費電力は、基準サーバのアイドル時の消費電力、基準サーバのCPUの使用による消費電力、基準サーバのメモリ使用量に応じた消費電力、基準サーバの冷却のための消費電力の総和として求められる。
課金システムの動作は、図5に示した手順にしたがって行われる。すなわち、まず物理サーバ100の資源使用量計測部120が、仮想サーバの動作によるCPU使用率、仮想サーバにより使用されたメモリの記憶容量、仮想サーバの動作時の冷却ファンの動作状態の情報を課金装置200に送る(ステップ501参照)。課金装置200の換算部210は、この情報を受け付けて、物理サーバ100におけるCPU使用率を基準サーバによる仮想資源使用量に変換する(ステップ502参照)。次に、仮想消費電力計算部220が、上記の計算式を用いて全仮想消費電力を計算する(ステップ503参照)。そして、課金処理部230が、計算された仮想消費電力に基づいて課金処理を行う(ステップ504参照)。
なお、上記の計算モデルは一例であり、CPU、メモリ、機器の冷却を考慮した仮想消費電力の計算は、上記の計算式を用いた計算に限定されない。例えば、POWERmemを使用するメモリ容量だけの関数ではなく、さらにメモリアクセス回数やCPU使用率の影響も考慮に入れた精密な計算式を作成して仮想消費電力を計算しても良い。
以上のように、本実施形態は、仮想サーバの使用に基づく物理サーバ100における実際の資源使用量を、基準サーバによる仮想資源使用量に換算し、この仮想資源使用量に基づいて基準サーバにおける仮想消費電力を計算した上で、この仮想消費電力に基づいて課金処理を行う。したがって、仮想サーバが実現される実際のハードウェア構成に関わらず、個々の仮想サーバの使用に応じた課金を行うことが可能となる。例えば、図1に示したように、仮想サーバ管理部110上で複数のOSが動作する場合、すなわち、1つの物理サーバ100上に複数の仮想サーバが実装される場合にも、個々の仮想サーバの使用による資源使用量を計測することで、仮想サーバごとに個別に課金を行うことができる。
また、レンタル・サーバのサービスにおいて、サービス提供者側の事情で仮想サーバを実現する物理サーバ100のハードウェア構成が変更される場合がある。このような場合、物理サーバ100における資源使用量に直接基づいて課金処理を行うと、同一性能の仮想サーバが提供される場合でも、ハードウェア構成の変更に伴って課金額も変わってしまう可能性がある。これに対し、本実施形態のように、基準サーバによる仮想資源使用量に換算した上で課金処理を行うことにより、同一性能の仮想サーバが提供される場合には、物理サーバ100のハードウェア構成が変わっても同一の基準サーバ相当の資源使用量に換算されるため、課金額が変更されてしまうことはない。
以上、本実施形態について説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。例えば、上記実施形態では、物理基準サーバと物理サーバ100の処理能力を比較しながら各サーバの資源使用量を調整し、同等の処理能力を発揮する資源使用量を特定することとした(図4参照)。これに対し、物理基準サーバと物理サーバ100とで、同一の資源使用量で同一の処理を実行させ、そのときの処理能力を比較することによって、物理基準サーバと物理サーバ100資源使用量の関係を特定しても良い。
また、図1に示したシステム構成では、物理サーバ100と課金装置200とを別個に設け、物理サーバ100の資源使用量計測部120から課金装置200の換算部210へ資源使用量の情報を送ることとした。これに対し、換算部210や仮想消費電力計算部220の機能を物理サーバ100に設け、物理サーバ100から仮想消費電力の情報を課金装置200へ送信して課金処理のみを課金装置200で行っても良い。このように、課金装置200の機能の一部を物理サーバ100上に設ける他、同一のコンピュータ上に物理サーバ100および課金装置200の各機能を設ける(すなわち、特定の物理サーバ100上に課金装置200の機能全体を実現して、物理サーバ100と課金装置200とを兼用する)構成とすることも可能である。
その他、上記実施形態に、種々の変更または改良を加えたものも、本発明の技術的範囲に含まれることは、特許請求の範囲の記載から明らかである。
本実施形態による課金システムの構成例を示す図である。 図1の物理サーバおよび課金装置を実現するコンピュータのハードウェア構成例を示す図である。 本実施形態で用いられる資源使用量と消費電力の関係を求める手法を説明するフローチャートである。 本実施形態で用いられる物理サーバと基準サーバにおける資源使用量の関係を調べる手法を説明するフローチャートである。 本実施形態の課金システムにおける課金処理の流れを示すフローチャートである。 本実施形態で用いられる基準サーバにおける仮想資源使用量と仮想消費電力との関係の一例を示す図である。
符号の説明
100…物理サーバ、110…仮想サーバ管理部、120…資源使用量計測部、200…課金装置、210…換算部、220…仮想消費電力計算部、230…課金処理部

Claims (11)

  1. サーバの消費電力を推定するシステムにおいて、
    サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量を計測する資源使用量計測部と、
    前記資源使用量計測部により計測された前記ハードウェア資源の使用量を、前記サーバの動作を予め設定されたハードウェア構成による基準サーバで行った場合における当該基準サーバのハードウェア資源の使用量に換算する換算部と、
    前記換算部により換算された前記基準サーバの使用量に基づき、前記サーバの動作により消費されたと推定される電力として、当該基準サーバにおいて当該動作が行われた場合の消費電力を計算する仮想消費電力計算部と、
    を備える、システム。
  2. 前記仮想消費電力計算部により計算された前記消費電力に基づいて、前記サーバの動作に対する課金処理を行う課金処理部をさらに備える、請求項1に記載のシステム。
  3. 前記資源使用量計測部は、前記ハードウェア資源の使用量として、少なくとも前記サーバの動作によるCPUの使用量を計測する、請求項1に記載のシステム。
  4. 同一のコンピュータ上で複数のサーバが動作する場合に、個々の当該サーバごとに、前記資源使用量計測部が前記ハードウェア資源の使用量を計測し、前記換算部が当該ハードウェア資源の使用量を前記基準サーバのハードウェア資源の使用量に換算し、前記仮想消費電力計算部が前記消費電力を計算する、請求項1に記載のシステム。
  5. 前記仮想消費電力計算部により計算された前記消費電力に基づいて、個々の前記サーバごとに、当該サーバの動作に対する課金処理を行う課金処理部をさらに備える、請求項4に記載のシステム。
  6. サーバの消費電力を推定し、課金するシステムにおいて、
    同一のコンピュータ上で動作する複数のサーバに対して、個々のサーバごとに、当該サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量を計測する資源使用量計測部と、
    前記資源使用量計測部により計測された前記ハードウェア資源の使用量を、前記サーバの動作を予め設定されたハードウェア構成による基準サーバで行った場合における当該基準サーバのハードウェア資源の使用量に換算する換算部と、
    前記換算部により換算された前記基準サーバの使用量に基づき、前記サーバの動作により消費されたと推定される電力として、当該基準サーバにおいて当該動作が行われた場合の消費電力を計算する仮想消費電力計算部と、
    前記仮想消費電力計算部により計算された前記消費電力に基づいて、前記サーバの動作に対する課金処理を行う課金処理部と、
    を備える、システム。
  7. サーバの消費電力を推定するシステムにおいて、
    サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量として、少なくとも、CPU使用率およびメモリ使用量を計測する資源使用量計測部と、
    前記資源使用量計測部により計測された前記CPU使用率および前記メモリ使用量を、前記サーバの動作を予め設定されたハードウェア構成による基準サーバで行った場合における当該基準サーバのCPU使用率およびメモリ使用量に換算する換算部と、
    前記換算部により換算された前記基準サーバの使用量に基づき、下記の式

    消費電力=POWERidle+POWERCPU+POWERmem+POWERcooling
    ただし、POWERidleは予め設定された前記基準サーバのアイドル時の消費電力、POWERCPUは前記換算部により計算された前記基準サーバのCPUの使用による消費電力、POWERmemは前記換算部により計算された前記基準サーバのメモリ使用量に応じた消費電力、POWERcoolingは予め設定された前記基準サーバの冷却のための消費電力

    により、前記サーバの動作により消費されたと推定される電力を計算する仮想消費電力計算部と、
    を備える、システム。
  8. サーバの消費電力を推定する方法において、コンピュータの情報処理により、
    サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量を計測するステップと、
    前記ハードウェア資源の使用量を、前記サーバの動作を予め設定されたハードウェア構成による基準サーバで行った場合における当該基準サーバのハードウェア資源の使用量に換算するステップと、
    前記基準サーバの使用量に基づき、前記サーバの動作により消費されたと推定される電力として、当該基準サーバにおいて当該動作が行われた場合の消費電力を計算するステップと、
    を含む、方法。
  9. 計算された前記基準サーバにおける前記消費電力に基づいて、前記サーバの動作に対する課金処理を行うステップをさらに含む、請求項8に記載の方法。
  10. コンピュータを、
    サーバの動作に応じて使用される当該サーバのハードウェア資源の使用量の情報を取得する取得手段と、
    前記ハードウェア資源の使用量の情報に基づき、当該使用量を、前記サーバの動作を予め設定されたハードウェア構成による基準サーバで行った場合における当該基準サーバのハードウェア資源の使用量に換算する換算手段と、
    前記基準サーバの使用量に基づき、前記サーバの動作により消費されたと推定される電力として、当該基準サーバにおいて当該動作が行われた場合の消費電力を計算する仮想消費電力計算手段として、
    前記コンピュータを機能させる、プログラム。
  11. 前記コンピュータを、計算された前記基準サーバにおける前記消費電力に基づいて、前記サーバの動作に対する課金処理を行う課金処理手段として、さらに機能させる、請求項10に記載のプログラム。
JP2008198128A 2008-07-31 2008-07-31 消費電力を推定するシステムおよび方法 Expired - Fee Related JP5153503B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008198128A JP5153503B2 (ja) 2008-07-31 2008-07-31 消費電力を推定するシステムおよび方法
US12/509,533 US8266458B2 (en) 2008-07-31 2009-07-27 Estimating power consumption of a virtual server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008198128A JP5153503B2 (ja) 2008-07-31 2008-07-31 消費電力を推定するシステムおよび方法

Publications (2)

Publication Number Publication Date
JP2010039513A JP2010039513A (ja) 2010-02-18
JP5153503B2 true JP5153503B2 (ja) 2013-02-27

Family

ID=41609668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008198128A Expired - Fee Related JP5153503B2 (ja) 2008-07-31 2008-07-31 消費電力を推定するシステムおよび方法

Country Status (2)

Country Link
US (1) US8266458B2 (ja)
JP (1) JP5153503B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8447993B2 (en) * 2008-01-23 2013-05-21 Palo Alto Research Center Incorporated Integrated energy savings and business operations in data centers
US8631411B1 (en) 2009-07-21 2014-01-14 The Research Foundation For The State University Of New York Energy aware processing load distribution system and method
WO2012018347A1 (en) * 2010-08-06 2012-02-09 Hewlett-Packard Development Company, L.P. Systems and methods for apportioning power consumption
KR101428556B1 (ko) * 2010-11-29 2014-08-11 네이버비즈니스플랫폼 주식회사 전류 계산 시스템 및 이를 이용한 전력 분석 시스템
US20120239323A1 (en) * 2011-03-16 2012-09-20 Microsoft Corporation Virtual Machine Power Usage Estimations
US9191355B2 (en) * 2011-09-12 2015-11-17 Crytek Gmbh Computer-implemented method for posting messages about future events to users of a social network, computer system and computer-readable medium thereof
JP5799797B2 (ja) 2011-12-21 2015-10-28 富士通株式会社 算出方法、算出プログラム及びコンピュータ
US8930736B2 (en) * 2012-03-01 2015-01-06 Microsoft Corporation Inferred electrical power consumption of computing devices
US9348391B1 (en) * 2012-06-28 2016-05-24 Amazon Technologies, Inc. Managing resource power states in shared environments
US9292060B1 (en) * 2012-06-28 2016-03-22 Amazon Technologies, Inc. Allowing clients to limited control on power consumed by the cloud while executing the client's tasks
US9547353B1 (en) 2012-09-19 2017-01-17 Amazon Technologies, Inc. Processor energy monitoring and dynamic adjustment
EP2728441A1 (en) * 2012-10-31 2014-05-07 Thomson Licensing Device and method for detection of power failure in an external power supply
JP6056488B2 (ja) 2013-01-15 2017-01-11 富士通株式会社 消費電力量推定装置、及び消費電力量推定方法
US9407975B2 (en) * 2013-03-05 2016-08-02 Brandon Grusd Systems and methods for providing user interactions with media
KR101627912B1 (ko) * 2014-05-19 2016-06-07 네이버비즈니스플랫폼 주식회사 전류 계산 시스템 및 이를 이용한 전력 분석 시스템
US10037214B2 (en) 2015-07-16 2018-07-31 Cisco Technology, Inc. Determining power capping policies for a computer device
KR101977726B1 (ko) 2015-11-17 2019-05-14 한국전자통신연구원 가상 데스크탑 서비스 방법 및 장치
US10432491B2 (en) 2016-03-22 2019-10-01 Intel Corporation Control device for estimation of power consumption and energy efficiency of application containers
WO2023152896A1 (ja) * 2022-02-10 2023-08-17 日本電信電話株式会社 仮想マシン消費電力予測装置、仮想マシン消費電力予測方法、及びプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082521B1 (en) * 2000-08-24 2006-07-25 Veritas Operating Corporation User interface for dynamic computing environment using allocateable resources
JP2004135084A (ja) 2002-10-10 2004-04-30 Ricoh Co Ltd 電気電子装置、課金装置、課金方法、及び課金プログラム
JP3896352B2 (ja) * 2003-08-08 2007-03-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 分散コンピューティングシステム
JP4276201B2 (ja) * 2005-03-31 2009-06-10 富士通株式会社 Smtプロセッサ用課金処理装置,課金処理方法,および課金処理プログラム
JP2007249491A (ja) * 2006-03-15 2007-09-27 Fujitsu Ltd マルチサーバ環境においてバッチジョブを分散させるプログラム、装置、および方法
JP4385263B2 (ja) * 2006-03-31 2009-12-16 日本電気株式会社 ジョブスケジューリング装置およびジョブスケジューリング方法
JP4240062B2 (ja) * 2006-05-31 2009-03-18 日本電気株式会社 計算機システムおよび性能計測方法ならびに管理サーバ装置
JP2007330016A (ja) * 2006-06-07 2007-12-20 Nec Corp 電源装置、情報処理システム、電源装置制御方法及びプログラム
JP2008003712A (ja) * 2006-06-20 2008-01-10 Nec Corp 従量課金装置、従量課金方法、及びプログラム
US8402463B2 (en) * 2006-10-30 2013-03-19 Hewlett-Packard Development Company, L.P. Hardware threads processor core utilization

Also Published As

Publication number Publication date
JP2010039513A (ja) 2010-02-18
US20100031259A1 (en) 2010-02-04
US8266458B2 (en) 2012-09-11

Similar Documents

Publication Publication Date Title
JP5153503B2 (ja) 消費電力を推定するシステムおよび方法
US8862914B2 (en) Virtual machine power consumption measurement and management
JP4906686B2 (ja) 仮想マシンサーバサイジング装置及び仮想マシンサーバサイジング方法及び仮想マシンサーバサイジングプログラム
TWI546683B (zh) 結合記憶體及輸入/輸出週期資訊至運算使用率決定之技術
Zhou et al. Fine-grained energy consumption model of servers based on task characteristics in cloud data center
US20080301473A1 (en) Method and system for hypervisor based power management
US9672577B2 (en) Estimating component power usage from aggregate power usage
TW201642130A (zh) 中央處理單元超量配置及雲端計算工作量排程機制
Gu et al. Power metering for virtual machine in cloud computing-challenges and opportunities
US8103884B2 (en) Managing power consumption of a computer
JP2007183925A (ja) ソフトウェア熱プロファイルの分析生成のコンピュータによって実施する方法、データ処理システム、およびコンピュータ・プログラム
JP2008217332A (ja) 仮想マシン管理システム、その方法及びそのプログラム
JP2007200285A (ja) シミュレートされた環境でのアプリケーション用のソフトウェア熱プロファイル生成のコンピュータによって実施する方法、データ処理システム、およびコンピュータ・プログラム
US20120239323A1 (en) Virtual Machine Power Usage Estimations
US9020770B2 (en) Estimating component power usage from aggregate power usage
JP5577453B2 (ja) 仮想計算機のマイグレーション評価方法及び仮想計算機システム
Verma et al. Brownmap: Enforcing power budget in shared data centers
Singh et al. Estimating the energy consumption of executing software processes
Ge et al. Memory sharing for handling memory overload on physical machines in cloud data centers
Chinprasertsuk et al. Power model for virtual machine in cloud computing
Peng et al. A low-cost power measuring technique for virtual machine in cloud environments
CN108052375B (zh) 一种主机过载检测方法
Hovestadt et al. Adaptive online compression in clouds—making informed decisions in virtual machine environments
KR20160072465A (ko) 클라우드 컴퓨팅 시스템에서의 가상 머신 성능 계측 방법
JP5284406B2 (ja) リソース利用率測定装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20120817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120913

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: 20121113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121204

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

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5153503

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees