JP5178778B2 - 仮想計算機およびcpu割り当て方法 - Google Patents
仮想計算機およびcpu割り当て方法 Download PDFInfo
- Publication number
- JP5178778B2 JP5178778B2 JP2010126431A JP2010126431A JP5178778B2 JP 5178778 B2 JP5178778 B2 JP 5178778B2 JP 2010126431 A JP2010126431 A JP 2010126431A JP 2010126431 A JP2010126431 A JP 2010126431A JP 5178778 B2 JP5178778 B2 JP 5178778B2
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- group
- physical
- logical
- lpar
- 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/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
-
- 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
- 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/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
次に、論理CPU管理テ−ブル(050)のエントリの起動終了時刻(055)にゲストモード(907)が終了したときの時刻を書き込み(909)、論理CPU管理テ−ブル(050)のエントリのLPAR番号をインデックスとしてLPAR管理テ−ブル(040)のエントリを取得する(910)。
以上のように、グループサービス率がグループサービス率実測値より小さい場合、まず、CPUグル−プを割り当てられていない物理CPUを検索する。そして、958の処理により、その物理CPUを、グループサービス率がグループサービス率実測値よりも低いCPUグループに割り当てるので、グループサービス率が低いCPUグル−プを構成する物理CPU数が増加する。結果として、当該CPUグル−プのグル−プサービス率実測値が低くなるので、予め指定したグル−プサ−ビス率に近づけることが可能となる。
Claims (12)
- 複数の物理CPUと、複数のLPARと、前記LPARを構成する少なくとも1つ以上の論理CPUに前記物理CPUを時分割共有させて割り当てるハイパバイザとを備える仮想計算機システムにおいて、
前記ハイパバイザは、
前記物理CPUの識別子である物理CPU番号、及び前記物理CPUに割り当てるCPUグル−プの識別子であるCPUグループ番号を関連付けて保持する物理CPU管理情報と、
前記LPARの識別子を示すLPAR番号、前記LPARを構成する論理CPUの数、及び前記LPARに割り当てる前記CPUグル−プの識別子であるCPUグループ番号を関連付けて保持するLPAR管理情報とを有し、
前記ハイパバイザは、前記LPARをアクティベイトするとき、
前記CPUグル−プ毎に、前記CPUグル−プを割り当てたLPARを構成する前記論理CPUのエントリを作成し、
前記論理CPUが構成するLPARのLPAR番号、前記論理CPUの前記LPAR内の識別子である論理CPU番号、及び前記論理CPUの状態を前記エントリ毎に関連付けて論理CPU管理情報として管理し、
前記論理CPUに前記物理CPUを割り当てる際、同じCPUグループ番号に属する物理CPUを時分割共有させて、同じCPUグループ番号に属する論理CPUに割り当てることを特徴とする仮想計算機システム。 - 前記ハイパバイザは、前記CPUグル−プ番号、前記CPUグル−プを割り当てた物理CPUの数、前記CPUグル−プを割り当てたLPARを構成する論理CPUの数、及び前記論理CPU管理情報で管理される情報のCPUグループ毎のメモリ上のアドレス、LPARが利用する物理CPUの利用時間をCPUグル−プ毎に予め設定した配分を示すグループサ−ビス率、及びCPUグループ内のLPARが利用した物理CPUの利用時間を示すグループサ−ビス時間を関連付けて保持するCPUグループ管理情報を有し、
前記ハイパバイザが有するサービス時間監視部は、
前記仮想計算機システムが有する全ての物理CPUの総利用時間における前記CPUグループ毎のグループサービス時間の割合であるグループサービス率実測値を算出し、
前記グループサービス率実測値と前記グループサービス率とを比較して、前記CPUグループ毎の物理CPU資源の過不足を判断し、
前記判断した過不足の状況に応じて、物理CPUに割り当てるCPUグループを動的に変更することを特徴とする請求項1記載の仮想計算機システム。 - 前記サービス時間監視部によるグループサービス率実測値とグループサービス率との比較において、
前記グループサービス率実測値が前記グループサービス率より大きい場合、前記CPUグル−プを未割り当ての物理CPUに、前記CPUグル−プを割り当て、
前記グループサービス率実測値が前記グループサービス率と等しい場合、前記グループサービス時間をゼロとし、
前記グループサービス率実測値が前記グループサービス率より小さい場合、前記CPUグル−プを割り当てた物理CPUのうちの少なくとも1つ以上に対し、前記CPUグル−プを未割り当てに変更することを特徴とする請求項2記載の仮想計算機システム。 - 前記LPAR管理情報は、LPARに対して割り当てられた物理CPU時間の合計を示すLPARサ−ビス時間を保持することを特徴とする請求項1記載の仮想計算機システム。
- 前記ハイパバイザのプロセススケジューラは、
前記物理CPU管理情報を参照し、
動作している物理CPUの物理CPU番号をインデックスとして、前記物理CPU管理情報のエントリを取得し、
前記取得した物理CPU管理情報のエントリに含まれるCPUグル−プ番号を参照し、
前記参照したCPUグル−プ番号が定義されていない場合、処理を中断し、
前記参照したCPUグル−プ番号が定義されている場合、前記参照したCPUグル−プ番号をインデックスとして前記CPUグル−プ管理情報のエントリを取得し、
前記取得したCPUグル−プ管理情報のエントリに含まれる前記論理CPU管理情報で管理される情報のCPUグループ毎のメモリ上のアドレスを参照し、
前記参照したアドレスに対応する前記論理CPU管理情報のCPUグループを参照し、
前記参照した論理CPU管理情報のCPUグループに含まれるエントリのうち、前記論理CPUの状態がREADYであるエントリを選択し、
前記エントリの選択が成功した場合、前記論理CPU管理テ−ブルのエントリの起動開始時刻に論理CPUの起動処理906を実行するときの時刻を書き込み、論理CPU状態をRUNにし、論理CPUを起動することを特徴とする請求項1記載の仮想計算機システム。 - 前記論理CPU管理情報は、前記論理CPU上でのゲストプログラム起動開始時刻に対応するタイマ値、及び前記ゲストプログラム終了時刻に対応するタイマ値、とを関連付けて管理することを特徴とする請求項1記載の仮想計算機システム。
- 前記論理CPU管理情報において、
前記論理CPU上でのゲストプログラム起動開始時刻に対応するタイマ値とは、前記論理CPUを起動した時刻を示すタイマ値を設定する起動開始時刻であり、
前記ゲストプログラム終了時刻に対応するタイマ値とは、、物理CPUがゲストOSの命令をハイパバイザの介入なしに直接実行するモードであるゲストモ−ドからハイパバイザに移行して前記論理CPU動作が終了する時刻を示すタイマ値を設定する起動終了時刻であることを特徴とする請求項6記載の仮想計算機システム。 - 複数の物理CPUと、複数のLPARと、前記LPARを構成する少なくとも1つ以上の論理CPUに前記物理CPUを時分割共有させて割り当てるハイパバイザとを備える仮想計算機システムにおけるCPU割り当て方法であって
前記ハイパバイザは、
前記物理CPUの識別子である物理CPU番号、及び前記物理CPUに割り当てるCPUグル−プの識別子であるCPUグループ番号を関連付けて保持する物理CPU管理情報と、前記LPARの識別子を示すLPAR番号、前記LPARを構成する論理CPUの数、及び前記LPARに割り当てる前記CPUグル−プの識別子であるCPUグループ番号を関連付けて保持するLPAR管理情報とを有し、
前記LPARをアクティベイトするとき、
前記CPUグル−プ毎に、前記CPUグル−プを割り当てたLPARを構成する前記論理CPUのエントリを作成し、
前記論理CPUが構成するLPARのLPAR番号、前記論理CPUの前記LPAR内の識別子である論理CPU番号、及び前記論理CPUの状態を前記エントリ毎に関連付けて論理CPU管理情報として管理し、
前記論理CPUに前記物理CPUを割り当てる際、同じCPUグループ番号に属する物理CPUを時分割共有させて、同じCPUグループ番号に属する論理CPUに割り当てることを特徴とするCPU割り当て方法。 - 前記ハイパバイザは、前記CPUグル−プ番号、前記CPUグル−プを割り当てた物理CPUの数、前記CPUグル−プを割り当てたLPARを構成する論理CPUの数、及び前記論理CPU管理情報で管理される情報のCPUグループ毎のメモリ上のアドレス、LPARが利用する物理CPUの利用時間をCPUグル−プ毎に予め設定した配分を示すグループサ−ビス率、及びCPUグループ内のLPARが利用した物理CPUの利用時間を示すグループサ−ビス時間を関連付けて保持するCPUグループ管理情報を有し、
前記ハイパバイザは、
前記仮想計算機システムが有する全ての物理CPUの総利用時間における前記CPUグループ毎のグループサービス時間の割合であるグループサービス率実測値を算出し、
前記グループサービス率実測値と前記グループサービス率とを比較して、前記CPUグループ毎の物理CPU資源の過不足を判断し、
前記判断した過不足の状況に応じて、物理CPUに割り当てるCPUグループを動的変更することを特徴とする請求項8記載のCPU割り当て方法。 - 前記グループサービス率実測値とグループサービス率との比較において、
前記グループサービス率実測値が前記グループサービス率より大きい場合、前記CPUグル−プを未割り当ての物理CPUに、前記CPUグル−プを割り当て、
前記グループサービス率実測値が前記グループサービス率と等しい場合、前記グループサービス時間をゼロとし、
前記グループサービス率実測値が前記グループサービス率より小さい場合、前記CPUグル−プを割り当てた物理CPUのうちの少なくとも1つ以上に対し、前記CPUグル−プを未割り当てに変更することを特徴とする請求項9記載のCPU割り当て方法。 - 前記ハイパバイザは、
前記物理CPU管理情報を参照し、
動作している物理CPUの物理CPU番号をインデックスとして、前記物理CPU管理情報のエントリを取得し、
前記取得した物理CPU管理情報のエントリに含まれるCPUグル−プ番号を参照し、
前記参照したCPUグル−プ番号が定義されていない場合、処理を中断し、
前記参照したCPUグル−プ番号が定義されている場合、前記参照したCPUグル−プ番号をインデックスとして前記CPUグル−プ管理情報のエントリを取得し、
前記取得したCPUグル−プ管理情報のエントリに含まれる前記論理CPU管理情報で管理される情報のCPUグループ毎のメモリ上のアドレスを参照し、
前記参照したアドレスに対応する前記論理CPU管理情報のCPUグループを参照し、
前記参照した論理CPU管理情報のCPUグループに含まれるエントリのうち、前記論理CPUの状態がREADYであるエントリを選択し、
前記エントリの選択が成功した場合、前記論理CPU管理テ−ブルのエントリの起動開始時刻に論理CPUの起動処理906を実行するときの時刻を書き込み、論理CPU状態をRUNにし、論理CPUを起動することを特徴とする請求項8記載のCPU割り当て方法。 - 論理CPUに物理CPUを割り当て論理CPU上でゲストプログラムを動作させるときに、ゲストプログラム起動時刻に対応するタイマ値を論理CPU管理テ−ブルに設定し、
割り当てていた物理CPUで割り込みが発生しゲストプログラム動作が中断しハイパバイザに制御が移行するときに、
論理CPU終了時刻に対応するタイマ値を論理CPU管理テ−ブルに設定し、
(終了時刻−開始時刻)を当該論理CPUが属するLPARに割り当てられているCPUグル−プのグル−プサ−ビス時間に加算することを特徴とする請求項8記載のCPU割り当て方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010126431A JP5178778B2 (ja) | 2010-06-02 | 2010-06-02 | 仮想計算機およびcpu割り当て方法 |
US13/094,467 US8464258B2 (en) | 2010-06-02 | 2011-04-26 | Virtual computer and CPU allocation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010126431A JP5178778B2 (ja) | 2010-06-02 | 2010-06-02 | 仮想計算機およびcpu割り当て方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011253334A JP2011253334A (ja) | 2011-12-15 |
JP5178778B2 true JP5178778B2 (ja) | 2013-04-10 |
Family
ID=45065498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010126431A Expired - Fee Related JP5178778B2 (ja) | 2010-06-02 | 2010-06-02 | 仮想計算機およびcpu割り当て方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8464258B2 (ja) |
JP (1) | JP5178778B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9929951B1 (en) * | 2011-05-24 | 2018-03-27 | Amazon Technologies, Inc. | Techniques for using mappings to manage network traffic |
CN104461735B (zh) * | 2014-11-28 | 2018-03-27 | 杭州华为数字技术有限公司 | 一种虚拟化场景下分配cpu资源的方法和装置 |
US10395195B2 (en) * | 2016-01-08 | 2019-08-27 | International Business Machines Corporation | Provisioning virtual machines to optimize application licensing costs |
US10956193B2 (en) * | 2017-03-31 | 2021-03-23 | Microsoft Technology Licensing, Llc | Hypervisor virtual processor execution with extra-hypervisor scheduling |
CN109308196B (zh) * | 2018-08-22 | 2020-04-14 | 腾讯科技(深圳)有限公司 | 一种多机型设备复用方法、装置及存储介质 |
US11347558B2 (en) * | 2019-12-09 | 2022-05-31 | Nutanix, Inc. | Security-aware scheduling of virtual machines in a multi-tenant infrastructure |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3186244B2 (ja) | 1992-09-18 | 2001-07-11 | 株式会社日立製作所 | 仮想計算機システム |
US6986137B1 (en) * | 1999-09-28 | 2006-01-10 | International Business Machines Corporation | Method, system and program products for managing logical processors of a computing environment |
JP2004246779A (ja) * | 2003-02-17 | 2004-09-02 | Nec Corp | マルチプロセッサシステム及びデバイス共有方法 |
JP4982971B2 (ja) * | 2004-09-29 | 2012-07-25 | ソニー株式会社 | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム |
JP4519098B2 (ja) * | 2006-03-30 | 2010-08-04 | 株式会社日立製作所 | 計算機の管理方法、計算機システム、及び管理プログラム |
JP2008276320A (ja) * | 2007-04-25 | 2008-11-13 | Nec Corp | 仮想システム制御方法およびコンピュータシステム |
US8185907B2 (en) * | 2007-08-20 | 2012-05-22 | International Business Machines Corporation | Method and system for assigning logical partitions to multiple shared processor pools |
JP4839328B2 (ja) * | 2008-01-21 | 2011-12-21 | 株式会社日立製作所 | サーバの消費電力制御装置、サーバの消費電力制御方法及びコンピュータプログラム |
-
2010
- 2010-06-02 JP JP2010126431A patent/JP5178778B2/ja not_active Expired - Fee Related
-
2011
- 2011-04-26 US US13/094,467 patent/US8464258B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20110302579A1 (en) | 2011-12-08 |
US8464258B2 (en) | 2013-06-11 |
JP2011253334A (ja) | 2011-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5577412B2 (ja) | 計算機システム、マイグレーション方法及び管理サーバ | |
Kc et al. | Scheduling hadoop jobs to meet deadlines | |
JP6294586B2 (ja) | 命令スレッドを組み合わせた実行の管理システムおよび管理方法 | |
US9183016B2 (en) | Adaptive task scheduling of Hadoop in a virtualized environment | |
EP3036625B1 (en) | Virtual hadoop manager | |
JP5370946B2 (ja) | リソース管理方法及び計算機システム | |
JP5178778B2 (ja) | 仮想計算機およびcpu割り当て方法 | |
KR101385827B1 (ko) | 가상화된 환경들 내의 리소스 할당 | |
JP4705051B2 (ja) | 計算機システム | |
KR20110075295A (ko) | 멀티코어 시스템 상에서 단위 작업을 할당하는 방법 및 그 장치 | |
WO2009029496A1 (en) | Virtualization planning system | |
Kim et al. | Constraint-aware VM placement in heterogeneous computing clusters | |
KR20130088513A (ko) | 멀티코어 시스템의 태스크 분배 방법 및 장치 | |
WO2022108631A1 (en) | Coordinated container scheduling for improved resource allocation in virtual computing environment | |
JP2011186701A (ja) | リソース割当装置、リソース割当方法、およびリソース割当プログラム | |
EP3274859B1 (en) | Cluster computing service assurance apparatus and method | |
US10771982B2 (en) | Resource utilization of heterogeneous compute units in electronic design automation | |
KR20100074920A (ko) | 멀티코어 시스템에서의 로드 밸런싱 장치 및 방법 | |
Liu et al. | High-responsive scheduling with MapReduce performance prediction on hadoop YARN | |
WO2014141419A1 (ja) | 仮想計算機システムおよびスケジューリング方法 | |
JP2010191567A (ja) | 情報管理装置及び情報管理方法等 | |
CN116578416A (zh) | 一种基于gpu虚拟化的信号级仿真加速方法 | |
Jiang et al. | Resource allocation in contending virtualized environments through VM performance modeling and feedback | |
JP2011215812A (ja) | 仮想計算機管理方法、計算機システム及びリソース管理プログラム | |
US20210019159A1 (en) | Workload placement using conflict cost |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120417 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120730 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120919 |
|
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: 20121211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130108 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5178778 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160118 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |