JP5433837B2 - 仮想計算機システム、仮想計算機の制御方法及びプログラム - Google Patents
仮想計算機システム、仮想計算機の制御方法及びプログラム Download PDFInfo
- Publication number
- JP5433837B2 JP5433837B2 JP2007314761A JP2007314761A JP5433837B2 JP 5433837 B2 JP5433837 B2 JP 5433837B2 JP 2007314761 A JP2007314761 A JP 2007314761A JP 2007314761 A JP2007314761 A JP 2007314761A JP 5433837 B2 JP5433837 B2 JP 5433837B2
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- virtual
- physical
- physical cpu
- allocation
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45541—Bare-metal, i.e. hypervisor runs directly on hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Description
物理計算機400は、演算処理を行う物理CPU410、411、412と、データやプログラムを格納するメモリ420と、物理CPU410〜412及びメモリ420へ電力を供給する電源供給部430と、物理CPU410〜412及びメモリ420へクロックを供給するクロック供給部を備える。また、物理計算機400は、図示しないインターフェースを介して接続された管理コンソール500を有し、この管理コンソール500は、表示装置と入力装置を備える。メモリ420には仮想化ソフトウェア300がロードされ、物理CPU410〜412により実行される。
・C0:動作状態(通常稼動状態)
・C1:アイドル状態(スリープ状態):物理CPUの待機状態で、動作クロックの停止や、HLT命令などによる命令実行の停止状態を示す
・C2:C1よりも低消費電力の状態
・C3:スタンバイ状態(プロセッサコア4101,4102への電源遮断状態。再起動に必要な電力は継続して供給される)
なお、物理CPU410〜412の動作モードは、上記ACPIのC0〜C3に代わって、システムの動作状態を示すS0〜S3を用いても良い。S0〜S3の動作モードは、次のとおりである。
・S0: 動作状態(通常稼動状態)
・S1:スリープ状態。VGA信号はオフ、物理CPUはパワーダウン。
・S2:物理CPUの電源遮断(再起動に必要な電力は継続して供給される)。
・S3 スタンバイ状態。作業内容をメモリに書き込み、メモリへの通電と再起動に必要な電流のみ流れる。
図1において、仮想化ソフトウェア300は、例えば、ハイパバイザなどホストOSを利用しないソフトウェアで構成されており、物理計算機400の計算機資源を複数の論理区画200(LPAR#1)、210(LPAR#2)に分割するLPAR制御部310と、論理区画200,210に物理CPU410〜412を仮想化した仮想CPU201,202,211,212を割り当てる仮想CPU制御部320と、物理CPU410〜412を制御する物理CPU制御部330と、仮想CPUと物理CPUの割り当て状況を管理する仮想−物理CPU割当制御部340とを含む。この仮想化ソフトウェア300は、メモリ420にロードされて物理CPU410〜412により実行される。また、仮想化ソフトウェア300は、図示しないストレージ装置や不揮発性メモリ等の記憶媒体に格納される。
次に、仮想化ソフトウェア300が行う仮想CPUの割り当てについて説明する。仮想化ソフトウェア300が物理計算機400の計算機資源を各論理区画200,210に割当てる方法は、専用割当と共用割当の二種類ある。
次に、仮想化ソフトウェア300で行われる処理の一例について、以下に説明する。図5は、仮想化ソフトウェア300で行われる仮想サーバ(または仮想CPU)を生成する処理の一例を示すフローチャートである。このフローチャートは、仮想化ソフトウェア300が管理コンソール500から指定された論理区画200,210に仮想サーバ(または仮想CPU)を生成する操作指令を受け付けたときに実行される処理である。なお、この処理を実行する以前に、管理コンソール500からの操作指令によって既に仮想化ソフトウェア300が論理区画201,202を設定したものとする。
図7〜図9は第2の実施形態を示し、前記第1実施形態に示した物理CPU制御部330が物理CPU410〜412の動作クロックを制御し、さらに、仮想−物理CPU割当制御部340が、仮想CPUを削除する際に、スリープ状態の物理CPUの数を最大にするよう仮想CPUの割り当てを制御するものである。物理計算機400の構成は前記第1実施形態と同様であり、仮想化ソフトウェア300は、仮想−物理CPU割当制御部340と物理CPU制御部330の機能の一部が前記第1実施形態と異なり、仮想−物理CPU割当表341Aの構成の一部が前記第1実施形態と異なる。
図11は第3の実施形態を示し、前記第2実施形態の図9に示した仮想化ソフトウェア300が行う仮想CPUの削除処理フローチャートの一部を変更したもので、その他の構成は、前記第2実施形態と同様である。
図13は、第4の実施形態を示し、前記第1実施形態のゲストOS100、110上で、ゲストOS毎の仮想CPUの使用率(以下、稼働率とする)を監視して仮想化ソフトウェア300へ通知する稼働率監視ミドルウェア500,510を実行し、仮想化ソフトウェア300の仮想−物理CPU割当制御部340では、仮想CPUの稼働率に応じて物理CPUに対する仮想CPUの割り当てを制御する。
200,210 論理区画
201,202、211,212 仮想CPU
300 仮想化ソフトウェア
310 LPAR制御部
320 仮想CPU制御部
330 物理CPU制御部
340 仮想−物理CPU割当制御部
400 物理計算機
410 物理CPU
Claims (15)
- スリープ状態と通常の動作状態とを切り替え可能な物理CPUを複数備えた物理計算機と、
前記物理計算機を複数の論理区画に分割し、各論理区画上でそれぞれゲストOSを動作させて、各論理区画に対する物理計算機の資源の割当を制御する仮想化制御部と、を備えた仮想計算機システムであって、
前記仮想化制御部は、
前記論理区画に対する操作指令を受け付ける論理区画制御部と、
前記操作指令に基づいて前記論理区画に前記ゲストOSを実行する仮想CPUを割り当てる仮想CPU制御部と、
前記操作指令に基づいて前記仮想CPUを前記物理CPUに割り当て、前記物理CPUの動作状態を制御する仮想−物理CPU割当制御部と、
前記仮想−物理CPU割当制御部からの操作指令に基づいて前記物理CPUの動作状態を制御する物理CPU制御部と、を含み、
前記物理CPUは、動作クロックの周波数を変更するクロック制御部を有し、
前記操作指令は、前記論理区画に割り当てられた当該仮想CPUが前記物理CPUを使用する比率としての割り当て率を含み、
前記仮想−物理CPU割当制御部は、
前記論理区画制御部から仮想CPUを生成する操作指令を受け付けると、前記複数の物理CPUのうち、前記通常動作状態の物理CPUに前記仮想CPUを割り当て可能か否かを判定し、割り当て可能な場合には当該仮想CPUを前記通常動作状態の物理CPUに割り当て、割り当て不能な場合にはスリープ状態の物理CPUを起動する指令を前記物理CPU制御部に発行して、前記仮想CPUを当該起動した物理CPUに割り当て、仮想CPUと物理CPUの割り当て状態と物理CPUの動作状態を管理するテーブルに前記割り当てた仮想CPUを追加して更新し、
前記論理区画制御部から仮想CPUを削除する操作指令を受け付けると、当該仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行するよう前記物理CPU制御部に指令し、
前記物理CPUに対する仮想CPUの割り当てを変更したときには、当該物理CPUに割り当てられている仮想CPUの割り当て率の和に基づいて前記物理CPUの動作クロックの周波数を決定し、当該動作クロックの周波数を前記物理CPU制御部へ指令し、
前記物理CPU制御部は前記動作クロックの周波数を前記クロック制御部へ指令することを特徴とする仮想計算機システム。 - 前記仮想−物理CPU割当制御部は、
前記論理区画制御部から仮想CPUを削除する操作指令を受け付けると、当該仮想CPUを前記テーブルから削除した後に、当該テーブルを参照して当該仮想CPUを削除した第1の物理CPUに割り当てられた第2の仮想CPUが存在し、かつ、通常動作状態にある第2の物理CPUに前記第2の仮想CPUを割り当て可能な場合には、前記第2の仮想CPUを前記第2の物理CPUに再割り当てを行い、前記第1の物理CPUに割り当てられている仮想CPUがなくなると、当該第1の物理CPUをスリープ状態に移行させることを特徴とする請求項1に記載の仮想計算機システム。 - 前記論理区画は、ゲストOSが利用する仮想CPUの実使用率を検知して前記仮想化制御部へ通知する稼動状態検出部を含み、
前記仮想−物理CPU割当制御部は、
前記物理CPUに対する仮想CPUの割り当てを変更したときには、当該物理CPUに割り当てられている仮想CPUの実使用率の和に基づいて物理CPUに対する仮想CPUの割り当てを変更することを特徴とする請求項1に記載の仮想計算機システム。 - 前記仮想−物理CPU割当制御部は、
前記論理区画制御部から仮想CPUを削除する操作指令を受け付けると、当該仮想CPUを前記テーブルから削除した後に、当該テーブルを参照して当該仮想CPUを削除した第1の物理CPUに割り当てられた第2の仮想CPUが存在するときには、前記稼動状態検出部からの実使用率を取得して、通常動作状態にある第2の物理CPUに割り当てられている仮想CPUの実使用率の和に、前記第2の仮想CPUの実使用率を加算した値が所定の閾値未満であれば、前記第2の仮想CPUを前記第2の物理CPUに再割り当てを行い、前記第1の物理CPUに割り当てられている仮想CPUがなくなると、当該第1の物理CPUをスリープ状態に移行させることを特徴とする請求項3に記載の仮想計算機システム。 - 前記仮想−物理CPU割当制御部は、
前記第2の物理CPUに割り当てられている仮想CPUの実使用率の和に、前記第2の仮想CPUの実使用率を加算した値が所定の閾値未満であれば、前記第2の物理CPUに割り当てられている仮想CPUの割り当て率の和に前記第2の仮想CPUの割り当て率を加算した値が100%を超えることを許容することを特徴とする請求項4に記載の仮想計算機システム。 - スリープ状態と通常の動作状態とを切り替え可能な物理CPUを複数備えた物理計算機を複数の論理区画に分割し、各論理区画上でそれぞれゲストOSを動作させて、各論理区画に対する物理計算機の資源の割当を制御する仮想化制御部を備えた仮想計算機システムの制御方法であって、
前記物理CPUは、動作クロックの周波数を変更するクロック制御部を有し、
前記仮想化制御部が前記論理区画に対する操作指令を受け付けるステップと、
前記仮想化制御部は、前記受け付けた操作指令が前記論理区画に前記ゲストOSを実行する仮想CPUを生成する操作指令のときには、前記複数の物理CPUのうち、前記通常動作状態の物理CPUに前記仮想CPUを割り当て可能か否かを判定し、割り当て可能な場合には当該仮想CPUを前記通常動作状態の物理CPUに割り当て、前記判定結果が割り当て不能な場合にはスリープ状態の物理CPUを起動して、前記仮想CPUを当該起動した物理CPUに割り当てるステップと、
前記仮想化制御部が、仮想CPUと物理CPUの割り当て状態と物理CPUの動作状態を管理するテーブルに前記割り当てた仮想CPUを追加して更新するステップと、
前記仮想化制御部は、前記受け付けた操作指令が前記論理区画制御部から仮想CPUを削除する操作指令のときには、当該仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップと、
を含み、
前記操作指令は、前記論理区画に割り当てられた当該仮想CPUが前記物理CPUを使用する比率としての割り当て率を含み、
前記仮想CPUを当該起動した物理CPUに割り当てるステップは、
新たに仮想CPUを割り当てた前記物理CPUに割り当てられている仮想CPUの割り当て率の和に基づいて前記物理CPUの動作クロックの周波数を変更し、
前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該物理CPUに他の仮想CPUが割り当てられているときには、割り当てられている仮想CPUの割り当て率の和に基づいて前記物理CPUの動作クロックの周波数を変更することを特徴とする仮想計算機の制御方法。 - 前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該仮想CPUを前記テーブルから削除するステップと、
前記テーブルを参照して当該仮想CPUを削除した第1の物理CPUに割り当てられた第2の仮想CPUが存在し、かつ、通常動作状態にある第2の物理CPUに前記第2の仮想CPUを割り当て可能か否かを判定するステップと、
前記判定結果が割り当て可能な場合には、前記第2の仮想CPUを前記第2の物理CPUに再割り当てを行い、前記第1の物理CPUに割り当てられている仮想CPUがなくなると、当該第1の物理CPUをスリープ状態に移行させるステップと、
を含むことを特徴とする請求項6に記載の仮想計算機の制御方法。 - 前記ゲストOSが利用する仮想CPUの実使用率を検知して前記仮想化制御部へ通知するステップをさらに含み、
前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該物理CPUに他の仮想CPUが割り当てられているときには、割り当てられている仮想CPUの前記実使用率の和に基づいて当該物理CPUに対する仮想CPUの割り当てを変更することを特徴とする請求項6に記載の仮想計算機の制御方法。 - 前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該仮想CPUを前記テーブルから削除した後に、当該テーブルを参照して当該仮想CPUを削除した第1の物理CPUに割り当てられた第2の仮想CPUが存在するときには、前記実使用率を取得して、通常動作状態にある第2の物理CPUに割り当てられている仮想CPUの実使用率の和に、前記第2の仮想CPUの実使用率を加算した値が所定の閾値未満であれば、前記第2の仮想CPUを前記第2の物理CPUに再割り当てを行い、前記第1の物理CPUに割り当てられている仮想CPUがなくなると、当該第1の物理CPUをスリープ状態に移行させることを特徴とする請求項8に記載の仮想計算機の制御方法。 - 前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
前記第2の物理CPUに割り当てられている仮想CPUの実使用率の和に、前記第2の仮想CPUの実使用率を加算した値が所定の閾値未満であれば、前記第2の物理CPUに割り当てられている仮想CPUの割り当て率の和に前記第2の仮想CPUの割り当て率を加算した値が100%を超えることを許容することを特徴とする請求項9に記載の仮想計算機の制御方法。 - スリープ状態と通常の動作状態とを切り替え可能な物理CPUを複数備えた物理計算機を複数の論理区画に分割し、各論理区画上でそれぞれゲストOSを動作させて、各論理区画に対する物理計算機の資源の割当を制御するプログラムであって、
前記物理CPUは、動作クロックの周波数を変更するクロック制御部を有し、
前記論理区画に対する操作指令を受け付けるステップと、
前記受け付けた操作指令が前記論理区画に前記ゲストOSを実行する仮想CPUを生成する操作指令のときには、前記複数の物理CPUのうち、前記通常動作状態の物理CPUに前記仮想CPUを割り当て可能か否かを判定し、割り当て可能な場合には当該仮想CPUを前記通常動作状態の物理CPUに割り当て、前記判定結果が割り当て不能な場合にはスリープ状態の物理CPUを起動して、前記仮想CPUを当該起動した物理CPUに割り当てるステップと、
前記仮想CPUと物理CPUの割り当て状態と物理CPUの動作状態を管理するテーブルに前記割り当てた仮想CPUを追加して更新するステップと、
前記受け付けた操作指令が前記論理区画制御部から仮想CPUを削除する操作指令のときには、当該仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップと、を前記物理計算機に実行させ、
前記操作指令は、前記論理区画に割り当てられた当該仮想CPUが前記物理CPUを使用する比率としての割り当て率を含み、
前記仮想CPUを当該起動した物理CPUに割り当てるステップは、
新たに仮想CPUを割り当てた前記物理CPUに割り当てられている仮想CPUの割り当て率の和に基づいて前記物理CPUの動作クロックの周波数を変更し、
前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該物理CPUに他の仮想CPUが割り当てられているときには、割り当てられている仮想CPUの割り当て率の和に基づいて前記物理CPUの動作クロックの周波数を変更することを特徴とするプログラム。 - 前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該仮想CPUを前記テーブルから削除するステップと、
前記テーブルを参照して当該仮想CPUを削除した第1の物理CPUに割り当てられた第2の仮想CPUが存在し、かつ、通常動作状態にある第2の物理CPUに前記第2の仮想CPUを割り当て可能か否かを判定するステップと、
前記判定結果が割り当て可能な場合には、前記第2の仮想CPUを前記第2の物理CPUに再割り当てを行い、前記第1の物理CPUに割り当てられている仮想CPUがなくなると、当該第1の物理CPUをスリープ状態に移行させるステップと、
を含むことを特徴とする請求項11に記載のプログラム。 - 前記ゲストOSが利用する仮想CPUの実使用率を検知して前記仮想化制御部へ通知するステップをさらに含み、
前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該物理CPUに他の仮想CPUが割り当てられているときには、割り当てられている仮想CPUの前記実使用率の和に基づいて当該物理CPUに対する仮想CPUの割り当てを変更することを特徴とする請求項11に記載のプログラム。 - 前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
当該仮想CPUを前記テーブルから削除した後に、当該テーブルを参照して当該仮想CPUを削除した第1の物理CPUに割り当てられた第2の仮想CPUが存在するときには、前記実使用率を取得して、通常動作状態にある第2の物理CPUに割り当てられている仮想CPUの実使用率の和に、前記第2の仮想CPUの実使用率を加算した値が所定の閾値未満であれば、前記第2の仮想CPUを前記第2の物理CPUに再割り当てを行い、前記第1の物理CPUに割り当てられている仮想CPUがなくなると、当該第1の物理CPUをスリープ状態に移行させることを特徴とする請求項13に記載のプログラム。 - 前記仮想CPUを前記テーブルから削除し、当該仮想CPUを削除した物理CPUに割り当てられている仮想CPUがなくなった場合には、当該物理CPUをスリープ状態に移行させるステップは、
前記第2の物理CPUに割り当てられている仮想CPUの実使用率の和に、前記第2の仮想CPUの実使用率を加算した値が所定の閾値未満であれば、前記第2の物理CPUに割り当てられている仮想CPUの割り当て率の和に前記第2の仮想CPUの割り当て率を加算した値が100%を超えることを許容することを特徴とする請求項14に記載のプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007314761A JP5433837B2 (ja) | 2007-12-05 | 2007-12-05 | 仮想計算機システム、仮想計算機の制御方法及びプログラム |
US12/328,121 US8307369B2 (en) | 2007-12-05 | 2008-12-04 | Power control method for virtual machine and virtual computer system |
DE602008003655T DE602008003655D1 (de) | 2007-12-05 | 2008-12-04 | Leistungssteuerungsverfahren für virtuelle Maschinen und virtuelles Computersystem |
EP08021082A EP2071458B1 (en) | 2007-12-05 | 2008-12-04 | Power control method for virtual machine and virtual computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007314761A JP5433837B2 (ja) | 2007-12-05 | 2007-12-05 | 仮想計算機システム、仮想計算機の制御方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009140157A JP2009140157A (ja) | 2009-06-25 |
JP5433837B2 true JP5433837B2 (ja) | 2014-03-05 |
Family
ID=40427255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007314761A Expired - Fee Related JP5433837B2 (ja) | 2007-12-05 | 2007-12-05 | 仮想計算機システム、仮想計算機の制御方法及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US8307369B2 (ja) |
EP (1) | EP2071458B1 (ja) |
JP (1) | JP5433837B2 (ja) |
DE (1) | DE602008003655D1 (ja) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8452991B2 (en) * | 2009-08-20 | 2013-05-28 | International Business Machines Corporation | Partition level power management using fully asynchronous cores with software that has limited asynchronous support |
US9563250B2 (en) | 2009-12-16 | 2017-02-07 | Qualcomm Incorporated | System and method for controlling central processing unit power based on inferred workload parallelism |
US8775830B2 (en) | 2009-12-16 | 2014-07-08 | Qualcomm Incorporated | System and method for dynamically controlling a plurality of cores in a multicore central processing unit based on temperature |
US8650426B2 (en) * | 2009-12-16 | 2014-02-11 | Qualcomm Incorporated | System and method for controlling central processing unit power in a virtualized system |
US9104411B2 (en) | 2009-12-16 | 2015-08-11 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
US9128705B2 (en) | 2009-12-16 | 2015-09-08 | Qualcomm Incorporated | System and method for controlling central processing unit power with reduced frequency oscillations |
US9176572B2 (en) | 2009-12-16 | 2015-11-03 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
US8689037B2 (en) | 2009-12-16 | 2014-04-01 | Qualcomm Incorporated | System and method for asynchronously and independently controlling core clocks in a multicore central processing unit |
US8909962B2 (en) | 2009-12-16 | 2014-12-09 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
US8595721B2 (en) * | 2009-12-22 | 2013-11-26 | International Business Machines Corporation | Preserving a dedicated temporary allocation virtualization function in a power management environment |
KR20110072922A (ko) * | 2009-12-23 | 2011-06-29 | 삼성전자주식회사 | 화상형성장치의 추가 확장기능을 실행하는 방법 및 이를 수행하는 화상형성장치 |
US8370836B2 (en) * | 2010-01-28 | 2013-02-05 | Dell Products, Lp | System and method to enable power related decisions in a virtualization environment |
JP2011170647A (ja) * | 2010-02-19 | 2011-09-01 | Nec Corp | 信号処理装置、信号処理方法およびプログラム |
JP5388909B2 (ja) | 2010-03-09 | 2014-01-15 | 株式会社日立製作所 | ハイパバイザ、計算機システム、及び、仮想プロセッサのスケジューリング方法 |
WO2011134716A1 (en) * | 2010-04-26 | 2011-11-03 | International Business Machines Corporation | Managing a multiprocessing computer system |
CN102934086B (zh) | 2010-06-10 | 2017-08-25 | 富士通株式会社 | 多核处理器系统、电力控制方法及电力控制程序 |
US8381002B2 (en) | 2010-06-23 | 2013-02-19 | International Business Machines Corporation | Transparently increasing power savings in a power management environment |
CN102971710B (zh) * | 2010-07-06 | 2016-06-29 | 松下电器(美国)知识产权公司 | 虚拟计算机系统、虚拟计算机控制方法、及集成电路 |
JP2012018515A (ja) * | 2010-07-07 | 2012-01-26 | Fujitsu Ltd | 情報処理装置,制御方法,制御プログラム |
JP5435133B2 (ja) * | 2010-07-13 | 2014-03-05 | 富士通株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
US8448006B2 (en) | 2010-10-19 | 2013-05-21 | International Business Machines Corporation | Performing virtual and/or physical resource management for power management |
EP2458501A1 (en) * | 2010-11-30 | 2012-05-30 | France Telecom | Method of operating a communication device and related communication device |
JP5708013B2 (ja) | 2011-02-22 | 2015-04-30 | 富士通株式会社 | 仮想マシンの配置変更方法、仮想マシンの配置変更装置、及び、仮想マシンの配置変更プログラム |
JP5633440B2 (ja) * | 2011-03-17 | 2014-12-03 | 富士通株式会社 | 情報処理装置、電力制御方法及び電力制御プログラム |
WO2012103728A1 (zh) * | 2011-06-30 | 2012-08-09 | 华为技术有限公司 | 热点域虚拟机cpu调度方法及虚拟机系统 |
WO2012109870A1 (zh) * | 2011-08-01 | 2012-08-23 | 华为技术有限公司 | 虚拟资源管理方法、系统及装置 |
CN102955549B (zh) * | 2011-08-29 | 2016-06-29 | 华为技术有限公司 | 一种多核cpu的电源管理方法、系统及cpu |
EP2568353A1 (en) | 2011-09-06 | 2013-03-13 | Basque Center for Applied Mathematics | Method for scaling the speed of operation of at least one processor unit in a virtualized resource-sharing system |
CN102364455B (zh) * | 2011-10-31 | 2013-10-23 | 杭州华三通信技术有限公司 | 一种级联多核cpu间vcpu均衡分担控制方法及其装置 |
KR20130101693A (ko) * | 2012-03-06 | 2013-09-16 | 삼성전자주식회사 | 이종의 운영체제를 사용하는 가상화 시스템의 전력 관리 방법 및 장치 |
US9003218B2 (en) | 2012-05-21 | 2015-04-07 | International Business Machines Corporation | Power shifting in multicore platforms by varying SMT levels |
JP5725303B2 (ja) * | 2012-08-10 | 2015-05-27 | コニカミノルタ株式会社 | 画像形成装置 |
KR101433030B1 (ko) * | 2012-12-18 | 2014-08-22 | 서강대학교산학협력단 | 가상환경 내 중앙처리장치의 전력 스케줄링 방법 및 시스템 |
US9933832B2 (en) * | 2013-03-14 | 2018-04-03 | Vmware, Inc. | Systems and methods for modifying power states in a virtual environment |
US20150081400A1 (en) * | 2013-09-19 | 2015-03-19 | Infosys Limited | Watching ARM |
JP6263995B2 (ja) * | 2013-11-29 | 2018-01-24 | 富士通株式会社 | 情報処理システム、管理装置、情報処理システムの制御方法及び管理装置の制御プログラム |
US9367345B1 (en) * | 2015-02-26 | 2016-06-14 | Red Hat Israel, Ltd. | Power efficient cross-VCPU notification by VM function |
US10572667B2 (en) * | 2016-03-31 | 2020-02-25 | Intel Corporation | Coordinating power management between virtual machines |
CN106383747A (zh) * | 2016-08-31 | 2017-02-08 | 华为技术有限公司 | 一种计算资源调度方法及装置 |
JP2018116462A (ja) * | 2017-01-18 | 2018-07-26 | 株式会社東芝 | 仮想環境実行装置及びプログラム |
US11080097B1 (en) * | 2017-05-30 | 2021-08-03 | Amazon Technologies, Inc. | User defined logical spread placement groups for computing resources within a computing environment |
JP6958414B2 (ja) * | 2018-02-19 | 2021-11-02 | 日本電信電話株式会社 | 仮想リソース管理装置、仮想リソース割り当て方法、仮想リソース割り当てプログラム、および、仮想リソース管理システム |
JP7151530B2 (ja) * | 2019-02-13 | 2022-10-12 | 日本電信電話株式会社 | サーバ基盤および物理cpu割当プログラム |
US11347558B2 (en) * | 2019-12-09 | 2022-05-31 | Nutanix, Inc. | Security-aware scheduling of virtual machines in a multi-tenant infrastructure |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3265540B2 (ja) * | 1994-04-05 | 2002-03-11 | 株式会社日立製作所 | 電子計算機システムの運転制御方式 |
JPH09179667A (ja) * | 1995-12-21 | 1997-07-11 | Hitachi Ltd | 情報処理装置 |
US7007183B2 (en) * | 2002-12-09 | 2006-02-28 | International Business Machines Corporation | Power conservation by turning off power supply to unallocated resources in partitioned data processing systems |
US20050060590A1 (en) * | 2003-09-16 | 2005-03-17 | International Business Machines Corporation | Power-aware workload balancing usig virtual machines |
US20050108711A1 (en) * | 2003-11-13 | 2005-05-19 | Infineon Technologies North America Corporation | Machine instruction for enhanced control of multiple virtual processor systems |
US7194641B2 (en) * | 2004-01-22 | 2007-03-20 | International Business Machines Corporation | Method and apparatus for managing power and thermal alerts transparently to an operating system in a data processing system with increased granularity in reducing power usage and thermal generation |
JP4982971B2 (ja) * | 2004-09-29 | 2012-07-25 | ソニー株式会社 | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム |
JP2006099332A (ja) * | 2004-09-29 | 2006-04-13 | Sony Corp | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム |
JP2006113767A (ja) | 2004-10-14 | 2006-04-27 | Sony Corp | 情報処理システム、および、情報処理方法、並びに、プログラム |
JP4322232B2 (ja) * | 2005-06-14 | 2009-08-26 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム |
US20060294401A1 (en) * | 2005-06-24 | 2006-12-28 | Dell Products L.P. | Power management of multiple processors |
US7680643B2 (en) * | 2005-11-17 | 2010-03-16 | International Business Machines Corporation | Method for carrying multiple suspended runtime images |
US8201165B2 (en) * | 2007-01-02 | 2012-06-12 | International Business Machines Corporation | Virtualizing the execution of homogeneous parallel systems on heterogeneous multiprocessor platforms |
JP4705051B2 (ja) * | 2007-01-29 | 2011-06-22 | 株式会社日立製作所 | 計算機システム |
-
2007
- 2007-12-05 JP JP2007314761A patent/JP5433837B2/ja not_active Expired - Fee Related
-
2008
- 2008-12-04 DE DE602008003655T patent/DE602008003655D1/de active Active
- 2008-12-04 US US12/328,121 patent/US8307369B2/en not_active Expired - Fee Related
- 2008-12-04 EP EP08021082A patent/EP2071458B1/en not_active Not-in-force
Also Published As
Publication number | Publication date |
---|---|
JP2009140157A (ja) | 2009-06-25 |
EP2071458A1 (en) | 2009-06-17 |
EP2071458B1 (en) | 2010-11-24 |
US8307369B2 (en) | 2012-11-06 |
DE602008003655D1 (de) | 2011-01-05 |
US20090150896A1 (en) | 2009-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5433837B2 (ja) | 仮想計算機システム、仮想計算機の制御方法及びプログラム | |
JP6646114B2 (ja) | 動的仮想マシンサイジング | |
JP6359069B2 (ja) | オペレーティングシステムと切り離される異種計算 | |
JP4370336B2 (ja) | 低消費電力ジョブ管理方法及び計算機システム | |
US10579132B2 (en) | System and method for performing distributed power management without power cycling hosts | |
US7694158B2 (en) | Parallel processing method and system, for instance for supporting embedded cluster platforms, computer program product therefor | |
JP5075274B2 (ja) | 電力認識スレッドスケジューリングおよびプロセッサーの動的使用 | |
US8489744B2 (en) | Selecting a host from a host cluster for live migration of a virtual machine | |
US9304803B2 (en) | Cooperative application workload scheduling for a consolidated virtual environment | |
EP2430538B1 (en) | Allocating computing system power levels responsive to service level agreements | |
KR101680109B1 (ko) | 복수 코어 장치 및 그의 로드 조정 방법 | |
JP5681527B2 (ja) | 電力制御装置及び電力制御方法 | |
JP5345990B2 (ja) | 特定のプロセスを短時間で処理する方法およびコンピュータ | |
US20120239952A1 (en) | Information processing apparatus, power control method, and recording medium | |
US9311142B2 (en) | Controlling memory access conflict of threads on multi-core processor with set of highest priority processor cores based on a threshold value of issued-instruction efficiency | |
US20130080809A1 (en) | Server system and power managing method thereof | |
EP3295276B1 (en) | Reducing power by vacating subsets of cpus and memory | |
JP2010211644A (ja) | メモリ消費電力削減システム、方法及びプログラム | |
JP2010160565A (ja) | タスクスケジューリング装置、タスクスケジューリング制御方法、及びタスクスケジューリング制御プログラム | |
JP2010191567A (ja) | 情報管理装置及び情報管理方法等 | |
Shelar et al. | Autonomic and energy-aware resource allocation for efficient management of cloud data centre |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101006 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120309 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120814 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131112 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |