JP2010211644A - メモリ消費電力削減システム、方法及びプログラム - Google Patents

メモリ消費電力削減システム、方法及びプログラム Download PDF

Info

Publication number
JP2010211644A
JP2010211644A JP2009058745A JP2009058745A JP2010211644A JP 2010211644 A JP2010211644 A JP 2010211644A JP 2009058745 A JP2009058745 A JP 2009058745A JP 2009058745 A JP2009058745 A JP 2009058745A JP 2010211644 A JP2010211644 A JP 2010211644A
Authority
JP
Japan
Prior art keywords
memory
physical
lived
compaction
physical memory
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
Application number
JP2009058745A
Other languages
English (en)
Inventor
Katsuyuki Miyamuki
克幸 宮向
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2009058745A priority Critical patent/JP2010211644A/ja
Priority to US12/706,764 priority patent/US20100235669A1/en
Publication of JP2010211644A publication Critical patent/JP2010211644A/ja
Pending legal-status Critical Current

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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation

Abstract

【課題】VMMを用いる場合に稼動中の仮想機械に割り当てられたメモリの消費電力を削減することができない。
【解決手段】本発明によるメモリ消費電力削減システムは、VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を仮想マシンのプロセスに割り当てるメモリ割り当て手段と、プロセスが終了して、メモリ割り当て手段がプロセスに割り当てた物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクション手段と、メモリコンパクション手段がメモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御手段とを含むことを特徴とする。
【選択図】図5

Description

本発明は、VMMを用いる場合にメモリの消費電力を削減するメモリ消費電力削減システム、メモリ消費電力削減方法、及びメモリ消費電力削減プログラムに関する。
データセンターのランニングコストのうち電気料金が占める割合が高い。原因の1つとして、一般的なサーバ装置では、メモリの使用率が低くても常にメモリが電力を消費していることが挙げられる。そのため、エネルギー効率の観点からも、サーバ装置の電力消費量の削減を行う必要がある。
このような、メモリの電源を管理する装置として、例えば、特許文献1には、メモリ領域を複数のバンクに分割し、節電制御を行う装置が記載されている。
特開2008−262451号公報
特許文献1に記載された装置では、装置上で動作する仮想マシンが停止した際に、全メモリ領域が未使用の状態にあるメモリバンクを特定し、該当するメモリバンクへの節電制御を行う。しかし、仮想マシンが停止した場合に処理が実行されるに過ぎず、稼動中の仮想マシンに割り当てられたメモリの消費電力を削減することはできない。
そこで、本発明は、VMMを用いる場合に仮想マシンが稼動中であってもメモリの消費電力を削減することができるメモリ消費電力削減システム、メモリ消費電力削減方法及びメモリ消費電力削減プログラムを提供することを目的とする。
本発明によるメモリ消費電力削減システムは、VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を仮想マシンのプロセスに割り当てるメモリ割り当て手段と、プロセスが終了して、メモリ割り当て手段がプロセスに割り当てた物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクション手段と、メモリコンパクション手段がメモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御手段とを含むことを特徴とする。
本発明によるメモリ消費電力削減方法は、VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を仮想マシンのプロセスに割り当てるメモリ割り当てステップと、プロセスが終了して、プロセスに割り当てた物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクションステップと、メモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御ステップとを含むことを特徴とする。
本発明によるメモリ消費電力削減プログラムは、コンピュータに、VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を仮想マシンのプロセスに割り当てるメモリ割り当て処理と、プロセスが終了して、プロセスに割り当てた物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクション処理と、メモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御処理とを実行させるためのものである。
本発明によれば、仮想マシンが稼動中であってもメモリの消費電力を削減することができる。
本発明によるメモリ消費電力削減システムの構成の一例を示すブロック図である。 メモリ消費電力削減システムが実行する処理例を示す流れ図である。 メモリ消費電力削減システムが実行する処理例を示す流れ図である。 物理メモリ管理部211によるメモリ・コンパクションの処理例を示す説明図である。 メモリ消費電力削減システムの最小の構成例を示すブロック図である。
以下、本発明の実施形態について図面を参照して説明する。図1は、本発明によるメモリ消費電力削減システムの構成の一例を示すブロック図である。図1に示すように、物理サーバ10は、複数の物理メモリ101〜108と、物理メモリの電源を制御するメモリ電源制御部111とを備えている。物理サーバ10は、具体的には、プログラムに従って動作するサーバ装置等の情報処理装置によって実現される。
なお、本実施形態では、VMMやVMMに含まれる手段が実行する等の表現を用いるが、具体的には、物理サーバ10のCPUがプログラムであるVMMに従って、ハードディスク装置等のハードウェア資源を用いて、処理を実行することである。
図1に示すように、物理サーバ10には、VMM(Virtual Machine Manager)20が搭載されている。VMM20は、具体的には、物理サーバ10が搭載するプログラムによって実現される。VMM20は、物理サーバ10が備えている資源(例えば、物理メモリ等)を分割・管理する機能を備えている。また、VMM20は、物理サーバ10のリソースを仮想化した上で実現されるバーチャルマシン(VM)30を制御する機能を備えている。
図1に示すように、VMM20は、仮想メモリ201〜202、物理メモリ管理部111、メモリ割り当てテーブル212及びアドレス変換テーブル213を含む。
仮想メモリは、VMM20によって物理サーバ10が備えるリソースとしての物理メモリを用いて実現される仮想的なメモリである。本実施形態では、OS40は、物理サーバ10が備える物理メモリのアドレス空間を直接指定して物理メモリにアクセスするのではなく、VMM20が管理する仮想メモリの仮想的なアドレス空間を指定して物理メモリにアクセスする。この場合、VMM20は、指定された仮想的なアドレス空間を物理的なアドレス空間に変換し、OS40による物理メモリへのアクセスを仲介する。
物理メモリ管理部211は、物理メモリ101〜108を、短命なプロセス用と長命なプロセス用とに分けて管理する機能を備えている。物理メモリ管理部211は、物理メモリの使用量が低下したときに、物理メモリが記憶するページを他の物理メモリに移動し(以下、メモリ・コンパクション)整理する処理を実行する機能を備えている。
物理メモリ管理部211は、短命なプロセス用の物理メモリと長命なプロセス用のメモリとを分けて、メモリ・コンパクションを実行する。物理メモリ管理部211は、長命なプロセス用の物理メモリのメモリ・コンパクションを低頻度で実行する。例えば、物理メモリ管理部211は、通常、短命なプロセス用のメモリ・コンパクションのみを実行するようにし、長命なプロセス用のメモリ・コンパクションを実行しないようにすればよい。また、物理メモリ管理部211は、コンパクションの結果、未使用の物理メモリができた場合に、その物理メモリの通電をメモリ電源制御部111に停止させる機能を備えている。
メモリ割り当てテーブル212は、仮想メモリのアドレスに割り当てられたプロセスを示す情報を含むテーブルである。なお、メモリ割り当てテーブル212は、具体的には、物理サーバ10が備える光ディスク装置や磁気ディスク装置、メモリ等の記憶装置によって実現される。
アドレス変換テーブル213は、仮想メモリのアドレスと物理メモリのアドレスとを対応させるための情報を含むテーブルである。なお、アドレス変換テーブル213は、具体的には、物理サーバ10が備える光ディスク装置や磁気ディスク装置、メモリ等の記憶装置によって実現される。アドレス変換テーブル213は、短命と長命の物理メモリを区別してアドレスを対応させて含む。
また、物理サーバ10は、オペレーティングシステム(OS)を搭載している。OS40は、具体的には、物理サーバ10が搭載するプログラムによって実現される。図1に示すように、OS40は、プロセス管理部401、プロセス統計情報記憶部402及びメモリ管理部403を含む。
なお、本実施形態では、OSやOSに含まれる手段が実行する等の表現を用いるが、具体的には、物理サーバ10のCPUがプログラムであるOSに従って、ハードディスク装置等のハードウェア資源を用いて、処理を実行することである。
プロセス管理部401は、OS上で動作するアプリケーション(以下、プロセス)の平均起動時間及び平均メモリ使用量を、プロセス統計情報記憶部402に記憶させる。
プロセス統計情報記憶部402は、OS40によって管理され、各プロセスの平均起動時間や平均メモリ使用量等の統計情報を格納する。なお、プロセス統計情報記憶部402は、具体的には、物理サーバ10が備える光ディスクや磁気ディスク等の記憶装置によって実現される。
メモリ管理部403は、VM30において用いるメモリを管理する機能を備えている。メモリ管理部403は、プロセス統計情報記憶部402が記憶する統計情報に基づいて、プロセスを短命なプロセスと長命なプロセスとに分類する機能を備えている。
なお、OS41は、OS40と、VM31は、VM30と同様の機能を備えているので、説明を省略する。また、本実施形態では、VM30とVM31のように、2つのVMが仮想的に生成されているが、2つに限らず、例えば3つ以上作成してもよい。
次に、メモリ消費電力削減システムの動作について説明する。図2〜3は、メモリ消費電力削減システムが実行する処理例を示す流れ図である。
図2は、OS40上で動作するプロセスから、メモリ割り当て要求が実行された場合のOS及びVMMの処理例を示す流れ図である。
1.OS40の処理
まず、図2(a)に示すOS40の処理について説明する。
(ア)OS40上で動作するプロセスがメモリ割り当て要求を実行すると、メモリ管理部403は、メモリ割り当て要求を実行したプロセスを示す情報を、プロセス管理部401から取得(入力)する(ステップS11)。具体的には、メモリ管理部403は、プロセス管理部401が、プロセス統計情報記憶部402から取得(抽出)した、該当するプロセスの、1)平均起動時間と、2)平均メモリ使用量と、3)プロセスの起動回数とを取得(入力)する。
(イ)次いで、メモリ管理部403は、プロセス管理部401が、プロセス統計情報記憶部402から取得(抽出)した、4)全プロセスの平均起動時間を取得(入力)する(ステップS12)。
(ウ)次いで、メモリ管理部403は、取得(入力)した1)平均起動時間と4)全プロセスの平均起動時間とを比較する。そして、メモリ管理部403は、1)平均起動時間が4)全プロセスの平均起動時間より長ければ、長命なプロセスであると判断する。また、メモリ管理部403は、1)平均起動時間が4)全プロセスの平均起動時間より短ければ、短命なプロセスであると判断する(ステップS13)。
(エ)次いで、メモリ管理部403は、該当するプロセスの2)平均メモリ使用量と割り当て済みのメモリ使用量とから、残りのメモリ要求量を予測(算出)する(ステップS14)。
(オ)次いで、メモリ管理部403は、VMM20に対して物理メモリを要求する処理を実行する(ステップS15)。このとき、メモリ管理部403は、メモリ割り当てのヒント情報として、プロセスの世代(長命なプロセスか短命なプロセスか)を示す情報と、予測残りメモリ要求量を示す情報とを、VMM20に渡す(出力する)。
2.VMMの処理
次に、図2(b)に示すVMMの処理について説明する。
(ア)物理メモリ管理部211は、OS40から渡された(入力した)プロセスの世代を示す情報に基づいて、プロセスに割り当てる物理メモリを決定する(ステップS21)。具体的には、物理メモリ管理部211は、プロセスの世代が短命であれば、短命なプロセス用の物理メモリを選択し、プロセスの世代が長命であれば、長命なプロセス用の物理メモリを選択する。
(イ)次いで、物理メモリ管理部211は、割り当て先の物理メモリの空き容量の合計を確認(算出)し、割り当て可能な領域があるか否かを判定する(ステップS22)。
ステップS22において、割り当て可能でないと判定すると、物理メモリ管理部211は、利用していない物理メモリが存在するか否かを判定する(ステップS27)。
ステップS27において、利用していない物理メモリが存在すると判定すると、物理メモリ管理部211は、該当する物理メモリの通電をメモリ電源制御部111に再開させる(ステップS28)。その後、物理メモリ管理部211は、処理をステップS22に移行する。
ステップS27において、利用していない物理メモリが存在しないと判定すると、物理メモリ管理部211は、OS40にページ割り当て処理を失敗した旨の通知を行う(ステップS29)。その後、物理メモリ管理部211は、処理を終了する。
(ウ)ステップS22において、割り当て可能であると判定すると、物理メモリ管理部211は、OS40が指定したサイズのメモリブロックを確保する(ステップS23)。具体的には、物理メモリ管理部211は、メモリ割り当てテーブル212が含む情報を更新し、メモリ割り当てテーブル212にメモリ領域とメモリ領域に割り当てたプロセスとを対応付けて記憶する。長命のプロセスである場合には、アドレス変換テーブル213に基づいて、長命の物理メモリに対応する仮想メモリの領域を特定し、その長命のプロセスを割り当てる。一方、短命のプロセスである場合には、アドレス変換テーブル213に基づいて、短命の物理メモリに対応する仮想メモリの領域を特定し、その短命のプロセスを割り当てる。
(エ)次いで、物理メモリ管理部211は、OS40から渡された(入力した)予測残りメモリ要求量を示す情報に基づいて、予測残りメモリ要求量が物理メモリの空き容量以下であるか否か判定する(ステップS24)。
ステップS24において、物理メモリの空き容量以下であると判定すると、物理メモリ管理部211は、利用していない物理メモリが存在するか否かを判定する(ステップS25)。一方、ステップS24において、物理メモリの空き容量以下でないと判定すると、物理メモリ管理部211は、処理を終了する。
ステップS25において、利用していない物理メモリが存在すると判定すると、物理メモリ管理部211は、今後のメモリ割り当て要求に備えて、該当する物理メモリの通電を事前にメモリ電源制御部111に再開させる(ステップS26)。一方、ステップS25において、利用していない物理メモリが存在しないと判定すると、物理メモリ管理部211は、処理を終了する。
次に、プロセスが終了すると、メモリ消費電力削減システムは、該当するプロセスに割り当てられたメモリを開放する処理を実行する。以下、その処理について、図3を用いて説明する。
1.OS40の処理
まず、図3(a)に示すOS40の処理について説明する。
(ア)プロセスが終了すると、プロセスに割り当てられたメモリを開放するために、プロセス管理部401は、該当するプロセスの起動時間及び最大メモリ使用量を取得する。また、プロセス管理部401は、プロセス統計情報記憶部402から、該当するプロセスの1)平均起動時間と、2)平均メモリ使用量と、3)プロセスの起動回数を取得(抽出)する(ステップS31)。
(イ)次いで、プロセス管理部401は、プロセス統計情報記憶部402から、4)全プロセスの平均起動時間を取得(抽出)する(ステップS32)。
(ウ)次いで、メモリ管理部403は、該当するプロセスの起動時間と、4)全プロセスの平均起動時間とを比較する。そして、メモリ管理部403は、該当するプロセスの起動時間が、4)全プロセスの平均起動時間より長ければ、長命なプロセスと判断する。一方、メモリ管理部403は、該当するプロセスの起動時間が、4)全プロセスの平均起動時間より短ければ、短命なプロセスと判断する(ステップS33)。
(エ)次いで、プロセス管理部401は、該当するプロセスの過去の平均起動時間及び平均メモリ使用量と、今回の起動時間及び最大メモリ使用量とに基づいて、平均値を計算し、プロセス統計情報記憶部402に記憶させる(ステップS34)。
(オ)次いで、プロセス管理部401は、全プロセスの平均起動時間を更新し、プロセス統計情報記憶部402に記憶させる(ステップS35)。
(カ)次いで、メモリ管理部403は、VMM20に対して、プロセスに割り当てられた物理メモリの開放を要求する処理を実行する(ステップS36)。このとき、メモリ管理部403は、メモリ割り当てのヒント情報として、プロセスの世代(長命なプロセスか短命なプロセスか)を示す情報を、VMMに渡す(出力する)。
2. VMM20の処理
次に、図3(b)に示す、VMM20の処理について説明する。
(ア)メモリ管理部403が、VMM20の処理プロセスの世代を指定し、メモリを解放する要求を実行すると、物理メモリ管理部211は、要求に基づいて、指定されたメモリブロックを開放する(ステップS41)。具体的には、物理メモリ管理部211は、メモリ割り当てテーブル212が含む情報を更新し、メモリ割り当てテーブル212から、メモリ領域に割り当てられたプロセスを示す情報を消去する。
(イ)次いで、物理メモリ管理部211は、メモリ管理部403から渡された(入力した)プロセスの世代を示す情報に基づいて、メモリ・コンパクション対象の物理メモリを決定する(ステップS42)。
(ウ)次いで、物理メモリ管理部211は、世代別の物理メモリの空き容量の合計を確認(算出)する。そして、物理メモリ管理部211は、空き容量が閾値を超えるか否かを判定する(ステップS43)。
(エ)ステップS43において、閾値を超えると判定すると、物理メモリ管理部211は、任意の物理メモリで利用中のページを、他の物理メモリに移動する(メモリ・コンパクション)(ステップS44)。一方、ステップS43において、閾値を超えないと判定すると、物理メモリ管理部211は、処理を終了する。
(オ)次いで、物理メモリ管理部211は、利用していない物理メモリを確保できるか否かを判定する(ステップS45)
(カ)ステップS45において、利用していない物理メモリを確保できると判定すると、物理メモリ管理部211は、メモリ電源制御部111に未使用の物理メモリの通電を停止するように指示(要求を送信)する。すると、メモリ電源制御部111は、メモリ管理部211の指示(要求)に基づいて、該当する未使用の物理メモリの通電をメモリ電源制御部111に停止させる(ステップS46)。その後、物理メモリ管理部211は、処理を終了する。
一方、ステップS45において、利用していない物理メモリを確保できないと判定すると、物理メモリ管理部211は、処理を終了する。
最後に、物理メモリ管理部211が実行するメモリ・コンパクションの処理について図4を用いて説明する。図4は、物理メモリ管理部211によるメモリ・コンパクションの処理例を示す説明図である。
物理メモリ管理部211は、メモリ・コンパクション対象世代の物理メモリのうち、メモリ使用量が一番少ない物理メモリを取得(特定)する(ステップS51)。
次いで、物理メモリ管理部211は、ページを移動する物理メモリの使用量と、移動先候補の物理メモリの空き容量とを比較する。そして、物理メモリ管理部211は、ページを移動する物理メモリの使用量が、移動先候補の物理メモリの空き容量以下であるか否かを判定する(ステップS52)。
ステップS52において、移動先候補の物理メモリの空き容量以下であると判定すると、物理メモリ管理部211は、物理メモリが記憶するページを移動する(ステップS53)。すなわち、メモリ使用量が一番少ない物理メモリが記憶する情報を特定した移動先の物理メモリに移動させる。ここで、物理メモリ管理部211は、プロセスの世代を判断し、プロセスが短命であった場合のみ処理を実行する。又は、物理メモリ管理部211は、プロセスが長命であった場合に、処理を実行する頻度を下げるようにしてもよい。
次いで、物理メモリ管理部211は、移動したページのアドレス変換テーブルを更新する(ステップS54)。
ステップS52において、移動先候補の物理メモリの空き容量以下でないと判定する場合、又はステップS54の処理が終了した場合には、物理メモリ管理部211は、全てのメモリについてチェックを完了したか否かを判定する(ステップS55)。
ステップS55において、完了していないと判定すると、物理メモリ管理部211は、処理をステップS52に移行する。一方、ステップS55において、完了していると判定すると、物理メモリ管理部211は、処理を終了する。
以上のように、本実施形態では、VMにおいて生成されたプロセスが終了すると、物理メモリ管理部211は、該当するプロセスに割り当てられた物理メモリの領域を開放し、メモリコンパクションを実行する。そして、物理メモリ管理部211は、メモリ・コンパクションを実行し、実行した結果、未使用となった物理メモリの通電を停止するように制御する。従って、VMが稼動中であっても、メモリの消費電力を削減することができる。
また、本実施形態では、OSとVMMとが協調し、プロセスの世代別にメモリを割り当てる。そして、物理メモリ管理部211は、短命なプロセス用の物理メモリ領域と長命な物理メモリ領域とを分けてメモリ・コンパクションを実行する。そのため、メモリ・コンパクションのコストを削減することができる。
なお、本実施形態では、VMM20とOS40とが協調して、メモリ割り当て処理や電源管理を行っていたが、例えば、VMM20が、それら全ての処理を実行するようにしてもよい。例えば、VMM20は、VM40,41ごとに複数の物理メモリを仮想化し、OS40に対して、仮想メモリ201、OS41に対して仮想メモリ202を認識させる。すると、VMM20が、物理メモリの通電を停止しても、OS40又はOS41が認識する仮想メモリの容量は変わらない。従って、OSは、透過的に物理メモリの通電を制御することとなり、OS側の修正が不要となる。
次に、本発明によるメモリ消費電力削減システムの最小構成について説明する。図5は、メモリ消費電力削減システムの最小の構成例を示すブロック図である。図5に示すように、メモリ消費電力削減システムは、最小の構成要素として、仮想情報処理装置を生成可能な情報処理装置1を含む。また、情報処理装置1は、メモリ割り当て手段2と、メモリコンパクション手段3と、電源制御手段3とを含む。
図5に示す最小構成のメモリ消費電力削減システムでは、メモリ割り当て手段2は、情報処理装置1が生成する仮想情報処理装置においてプロセスが生成される際に、情報処理装置が備える物理メモリの領域をプロセスに割り当てる。そして、メモリコンパクション手段3は、プロセスが終了して、メモリ割り当て手段2がプロセスに割り当てた物理メモリの領域を開放すると、メモリコンパクションを実行する。そして、電源制御手段4は、メモリコンパクション手段3がメモリコンパクションを実行した結果、未使用となった物理メモリの通電を停止する。
従って、図5に示す最小構成のメモリ消費電力削減システムによれば、仮想情報処理装置が稼動中であってもメモリの消費電力を削減することができる。
なお、本実施形態では、以下の(1)〜(5)に示すようなメモリ消費電力削減システムシステムの特徴的構成が示されている。
(1)メモリ消費電力削減システムは、VMM(例えば、VMM20)を用いて仮想マシン(例えば、VM30)を制御する場合に、物理的な情報処理装置(例えば、物理サーバ10)が備える複数の物理メモリ例えば、物理メモリ101)の領域を仮想マシンのプロセスに割り当てるメモリ割り当て手段(例えば、物理メモリ管理部211によって実現される)と、プロセスが終了して、メモリ割り当て手段がプロセスに割り当てた物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクション手段(例えば、物理メモリ管理部211によって実現される)と、メモリコンパクション手段がメモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御手段(例えば、物理メモリ管理部211及びメモリ電源制御部111によって実現される)とを含むことを特徴とする。
(2)メモリ消費電力削減システムにおいて、プロセスの動作履歴を示す動作履歴情報(例えば、1)平均起動時間など)を記憶するプロセス情報記憶手段(例えば、プロセス統計情報記憶部402によって実現される)と、前記プロセス情報記憶手段が記憶する前記動作履歴情報(例えば、1)平均起動時間や4)全プロセスの平均起動時間)に基づいて、プロセスが長命であるか短命であるかを判定するプロセス判定手段(例えば、メモリ管理部403によって実現される)を含み、メモリ割り当て手段は、前記プロセス判定手段の判定結果に基づいて、前記長命なプロセスと、前記短命なプロセスとを区別して物理メモリの領域を割り当て、メモリコンパクション手段は、長命なプロセスの場合と短命なプロセスの場合とで異なる頻度でメモリコンパクションを実行するように構成されていてもよい。
(3)メモリ消費電力削減システムにおいて、プロセス判定手段は、生成されるプロセスの平均起動時間(例えば、1)平均起動時間)と、プロセスと異なる他の全てのプロセスの平均起動時間(例えば、4)全プロセスの平均起動時間)とを比較し、プロセスの平均起動時間の方が長ければ、長命なプロセスであると判定し、プロセスの平均起動時間の方が短ければ、短命なプロセスであると判定するように構成されていてもよい。
(4)メモリ消費電力削減システムは、仮想マシンにおいてプロセスが生成される際に、プロセス情報記憶手段が記憶する動作履歴情報(例えば、2)平均メモリ使用量)に基づいて、前記プロセスが今後要求するメモリ量を予測して算出するメモリ要求量算出手段(例えば、メモリ管理部403によって実現される)と、前記メモリ要求量算出手段が算出したメモリ量が、当該情報処理装置において稼動中の物理メモリの空き容量以下であるか否かを判定する空き容量判定手段(例えば、物理メモリ管理部211によって実現される)とを含み、電源制御手段は、前記空き容量判定手段が空き容量以下であると判定し、かつ、当該情報処理装置に停止状態の物理メモリが存在する場合に、前記停止状態の物理メモリの通電を開始する制御を行うように構成されていてもよい。
(5)メモリ消費電力削減システムにおいて、メモリコンパクション手段は、メモリ使用量が最も少ない物理メモリを特定し、物理メモリの使用量が他の物理メモリの空き容量より少なければ、他の物理メモリに物理メモリが保持する情報を全て移動するように構成されていてもよい。
本発明は、サーバ装置等の消費電力を削減する用途に適用可能である。
1 情報処理装置
2 メモリ割り当て手段
3 メモリコンパクション手段
4 電源制御手段
10 物理サーバ
20 VMM
30,31 VM
40,41 OS
101〜108 物理メモリ
111 メモリ電源制御部
201〜202 仮想メモリ
211 物理メモリ管理部
212 メモリ割り当てテーブル
213 アドレス変換テーブル
401 プロセス管理部
402 プロセス統計情報記憶部
403 メモリ管理部

Claims (9)

  1. VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を前記仮想マシンのプロセスに割り当てるメモリ割り当て手段と、
    前記プロセスが終了して、前記メモリ割り当て手段が前記プロセスに割り当てた前記物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクション手段と、
    前記メモリコンパクション手段がメモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御手段とを
    含むことを特徴とするメモリ消費電力削減システム。
  2. プロセスの動作履歴を示す動作履歴情報を記憶するプロセス情報記憶手段と、
    前記プロセス情報記憶手段が記憶する前記動作履歴情報に基づいて、プロセスが長命であるか短命であるかを判定するプロセス判定手段を含み、
    メモリ割り当て手段は、前記プロセス判定手段の判定結果に基づいて、前記長命なプロセスと、前記短命なプロセスとを区別して物理メモリの領域を割り当て、
    メモリコンパクション手段は、長命なプロセスの場合と短命なプロセスの場合とで異なる頻度でメモリコンパクションを実行する
    請求項1記載のメモリ消費電力削減システム。
  3. プロセス判定手段は、生成されるプロセスの平均起動時間と、前記プロセスと異なる他の全てのプロセスの平均起動時間とを比較し、前記プロセスの平均起動時間の方が長ければ、長命なプロセスであると判定し、前記プロセスの平均起動時間の方が短ければ、短命なプロセスであると判定する
    請求項2記載のメモリ消費電力削減システム。
  4. 仮想マシンにおいてプロセスが生成される際に、プロセス情報記憶手段が記憶する動作履歴情報に基づいて、前記プロセスが今後要求するメモリ量を予測して算出するメモリ要求量算出手段と、
    前記メモリ要求量算出手段が算出したメモリ量が、当該情報処理装置において稼動中の物理メモリの空き容量以下であるか否かを判定する空き容量判定手段とを含み、
    電源制御手段は、前記空き容量判定手段が空き容量以下であると判定し、かつ、当該情報処理装置に停止状態の物理メモリが存在する場合に、前記停止状態の物理メモリの通電を開始する制御を行う
    請求項1から請求項3のうちのいずれか1項に記載のメモリ消費電力削減システム。
  5. メモリコンパクション手段は、メモリ使用量が最も少ない物理メモリを特定し、前記物理メモリの使用量が他の物理メモリの空き容量より少なければ、前記他の物理メモリに前記物理メモリが保持する情報を全て移動する
    請求項1から請求項4のうちのいずれか1項に記載のメモリ消費電力削減システム。
  6. VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を前記仮想マシンのプロセスに割り当てるメモリ割り当てステップと、
    前記プロセスが終了して、前記プロセスに割り当てた前記物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクションステップと、
    メモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御ステップとを
    含むことを特徴とするメモリ消費電力削減方法。
  7. 仮想マシンにおいてプロセスが生成される際に、前記プロセスの動作履歴を示す動作履歴情報に基づいて、前記プロセスが長命であるか短命であるかを判定するプロセス判定ステップを含み、
    メモリ割り当てステップで、判定結果に基づいて、前記長命なプロセスと、前記短命なプロセスとを区別して物理メモリの領域を割り当て、
    メモリコンパクションステップで、長命なプロセスの場合と短命なプロセスの場合とで異なる頻度でメモリコンパクションを実行する
    請求項6記載のメモリ消費電力削減方法。
  8. コンピュータに、
    VMMを用いて仮想マシンを制御する場合に、物理的な情報処理装置が備える複数の物理メモリの領域を前記仮想マシンのプロセスに割り当てるメモリ割り当て処理と、
    前記プロセスが終了して、前記プロセスに割り当てた前記物理メモリの領域を開放すると、メモリコンパクションを実行するメモリコンパクション処理と、
    メモリコンパクションを実行した結果、未使用状態の物理メモリが発生すると、当該未使用状態となった物理メモリの通電を停止する制御を行う電源制御処理とを
    実行させるためのメモリ消費電力削減プログラム。
  9. プロセスの動作履歴を示す動作履歴情報を記憶する記憶手段を備えたコンピュータに、
    仮想マシンにおいてプロセスが生成される際に、前記動作履歴情報に基づいて、前記プロセスが長命であるか短命であるかを判定するプロセス判定処理を実行させ、
    メモリ割り当て処理で、判定結果に基づいて、前記長命なプロセスと、前記短命なプロセスとを区別して物理メモリの領域を割り当てる処理を実行させ、
    メモリコンパクション処理で、長命なプロセスの場合と短命なプロセスの場合とで異なる頻度でメモリコンパクションを実行させる
    請求項8記載のメモリ消費電力削減プログラム。
JP2009058745A 2009-03-11 2009-03-11 メモリ消費電力削減システム、方法及びプログラム Pending JP2010211644A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009058745A JP2010211644A (ja) 2009-03-11 2009-03-11 メモリ消費電力削減システム、方法及びプログラム
US12/706,764 US20100235669A1 (en) 2009-03-11 2010-02-17 Memory power consumption reduction system, and method and program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009058745A JP2010211644A (ja) 2009-03-11 2009-03-11 メモリ消費電力削減システム、方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2010211644A true JP2010211644A (ja) 2010-09-24

Family

ID=42731668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009058745A Pending JP2010211644A (ja) 2009-03-11 2009-03-11 メモリ消費電力削減システム、方法及びプログラム

Country Status (2)

Country Link
US (1) US20100235669A1 (ja)
JP (1) JP2010211644A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9524189B2 (en) 2014-08-20 2016-12-20 Kabushiki Kaisha Toshiba Information processing device, information processing method, and computer program product

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120124269A1 (en) * 2010-11-15 2012-05-17 International Business Machines Corporation Organizing Memory for Effective Memory Power Management
JP2013134533A (ja) * 2011-12-26 2013-07-08 Fuji Xerox Co Ltd 演算処理システムおよびプログラム
US9229760B2 (en) * 2012-11-12 2016-01-05 International Business Machines Corporation Virtual memory management to reduce power consumption in the memory
US9323317B2 (en) * 2012-12-12 2016-04-26 International Business Machines Corporation System and methods for DIMM-targeted power saving for hypervisor systems
US9195585B2 (en) * 2013-01-23 2015-11-24 Vmware, Inc. Techniques for allocating and surfacing host-side storage capacity to virtual machines
US9654411B2 (en) 2013-08-27 2017-05-16 Vmware, Inc. Virtual machine deployment and management engine
US9823881B2 (en) * 2013-12-23 2017-11-21 Vmware, Inc. Ensuring storage availability for virtual machines
CN107783812B (zh) * 2016-08-24 2022-03-08 阿里巴巴集团控股有限公司 虚拟机内存管理方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004047051A (ja) * 2002-05-17 2004-02-12 Matsushita Electric Ind Co Ltd メモリ制御装置および方法ならびにプログラム
JP2005196545A (ja) * 2004-01-08 2005-07-21 Matsushita Electric Ind Co Ltd 省電力制御装置
JP2006185456A (ja) * 1997-11-21 2006-07-13 Omron Corp メモリ割当装置、メモリ割当方法、およびプログラム記録媒体
JP2007317176A (ja) * 2006-04-28 2007-12-06 Sharp Corp 端末装置
JP2008040606A (ja) * 2006-08-02 2008-02-21 Hitachi Ltd 低消費電力メモリ管理方法及びその方法を用いた計算機
JP2008262451A (ja) * 2007-04-13 2008-10-30 Matsushita Electric Ind Co Ltd メモリ電源管理装置及びメモリ電源管理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272573A (ja) * 2006-03-31 2007-10-18 Hitachi Ltd 低消費電力化メモリ管理方法及びメモリ管理プログラム
US8868623B2 (en) * 2007-10-30 2014-10-21 International Business Machines Corporation Enhanced garbage collection in a multi-node environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006185456A (ja) * 1997-11-21 2006-07-13 Omron Corp メモリ割当装置、メモリ割当方法、およびプログラム記録媒体
JP2004047051A (ja) * 2002-05-17 2004-02-12 Matsushita Electric Ind Co Ltd メモリ制御装置および方法ならびにプログラム
JP2005196545A (ja) * 2004-01-08 2005-07-21 Matsushita Electric Ind Co Ltd 省電力制御装置
JP2007317176A (ja) * 2006-04-28 2007-12-06 Sharp Corp 端末装置
JP2008040606A (ja) * 2006-08-02 2008-02-21 Hitachi Ltd 低消費電力メモリ管理方法及びその方法を用いた計算機
JP2008262451A (ja) * 2007-04-13 2008-10-30 Matsushita Electric Ind Co Ltd メモリ電源管理装置及びメモリ電源管理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9524189B2 (en) 2014-08-20 2016-12-20 Kabushiki Kaisha Toshiba Information processing device, information processing method, and computer program product

Also Published As

Publication number Publication date
US20100235669A1 (en) 2010-09-16

Similar Documents

Publication Publication Date Title
JP2010211644A (ja) メモリ消費電力削減システム、方法及びプログラム
JP5433837B2 (ja) 仮想計算機システム、仮想計算機の制御方法及びプログラム
JP6219512B2 (ja) 仮想ハドゥープマネジャ
JP5417287B2 (ja) 計算機システム、及び、計算機システムの制御方法
JP6138774B2 (ja) コンピュータにより実行される方法及びコンピュータシステム
JP5681527B2 (ja) 電力制御装置及び電力制御方法
US20160196157A1 (en) Information processing system, management device, and method of controlling information processing system
KR20120097136A (ko) 가상화 환경에서의 메모리 풀 관리
JP2009512936A (ja) ロードバランシング
CN107003713B (zh) 用于电力管理的逻辑分区的事件驱动的方法和系统
KR20140035416A (ko) 강화된 어플리케이션 메타데이터를 갖는 메모리 매니저
JP2014523022A (ja) コンピュータにより実行される方法及びコンピュータシステム
KR20130019698A (ko) 사용자 스케줄러와 마이그레이션(Migration)을 통한 자원 최적화 방법 및 시스템
WO2016092856A1 (ja) 情報処理装置、情報処理システム、タスク処理方法、及び、プログラムを記憶する記憶媒体
Min et al. Vmmb: Virtual machine memory balancing for unmodified operating systems
JP2008217575A (ja) ストレージ装置及びその構成最適化方法
Zhang et al. CloudGC: Recycling idle virtual machines in the cloud
US9015418B2 (en) Self-sizing dynamic cache for virtualized environments
US10754547B2 (en) Apparatus for managing disaggregated memory and method thereof
JPWO2015015756A1 (ja) 不揮発性メモリ搭載サーバの省電力制御システム、制御装置、制御方法および制御プログラム
EP3295276A1 (en) Reducing power by vacating subsets of cpus and memory
Shelar et al. Autonomic and energy-aware resource allocation for efficient management of cloud data centre
Ro Modeling and analysis of memory virtualization in cloud computing
Sawamura et al. Evaluating the impact of memory allocation and swap for vertical memory elasticity in VMs
KR102214782B1 (ko) 가상 머신 성능 최적화를 위한 하드웨어 리소스 등급 분류 및 자원 할당방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130603

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130903