JP5923627B2 - 仮想プラットフォーム上でi/oチャネルを調整する方法及び装置 - Google Patents
仮想プラットフォーム上でi/oチャネルを調整する方法及び装置 Download PDFInfo
- Publication number
- JP5923627B2 JP5923627B2 JP2014557993A JP2014557993A JP5923627B2 JP 5923627 B2 JP5923627 B2 JP 5923627B2 JP 2014557993 A JP2014557993 A JP 2014557993A JP 2014557993 A JP2014557993 A JP 2014557993A JP 5923627 B2 JP5923627 B2 JP 5923627B2
- Authority
- JP
- Japan
- Prior art keywords
- vms
- throughput
- worker threads
- host
- processing
- 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.)
- Active
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
-
- 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/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
Description
ホストHOSTが、HOST上で動作している複数の仮想マシンVMの現在の平均I/Oスループットを計測するステップと、
現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、HOSTが、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、現在の平均I/Oスループットが第2の閾値よりも小さい場合、ワーカースレッドが減少された後は複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、HOSTが、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを減少させるステップであって、第1の閾値は第2の閾値よりも大きい、ステップと、
HOSTが、増加又は減少後のVMを処理するためのワーカースレッドに応じて、複数のVMのフロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、複数のVMのバックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、複数のVMのフロントデバイスとバックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するステップと、
を含む。
HOSTが、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較するステップと、I/Oスループットの増加がCPU使用率の増加よりも大きい場合、HOSTが、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるステップを実行するステップとを含む。
HOSTが、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながるかどうかを決定するステップと、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながらない場合、HOSTが、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させるステップを実行するステップとを含む。
増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも少ない場合、HOSTが、各ワーカースレッドを、各VMのフロントデバイス内のキューと、各VMのバックデバイス内のキューとにマッピングするステップか、又は、増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも多い又は等しい場合、HOSTが、排他的ワーカースレッドを、1つのVMのフロントデバイス内のキューとバックデバイス内のキューとにマッピングし、共有ワーカースレッドを、少なくとも2つのVMのフロントデバイス及びバックデバイス内にあり、排他的ワーカースレッドに対応しないキューにマッピングするステップを含み、当該VMを処理するためのワーカースレッドは、排他的ワーカースレッドと共有ワーカースレッドとを含む。
HOSTが、複数のVMのバックデバイス内のキューと、HOSTのネイティブデバイスNative Device内のキューとのマッピング関係を、複数のVMのバックデバイスとNative Deviceとの間に複数のデータ伝送チャネルが形成されるように調整するステップを含む。
HOST上で動作している複数の仮想マシンVMの現在の平均I/Oスループットを計測するように構成された計測モジュールと、当該計測モジュールに接続され、当該計測モジュールによって計測された現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、当該計測モジュールによって計測された現在の平均I/Oスループットが第2の閾値よりも小さい場合、ワーカースレッドが減少された後は複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを減少させるように構成された処理モジュールであって、第1の閾値は第2の閾値よりも大きい、処理モジュールと、当該処理モジュールに接続され、当該処理モジュールによる増加又は減少後のVMを処理するためのワーカースレッドに応じて、複数のVMのフロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、複数のVMのバックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、複数のVMのフロントデバイスとバックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成された第1の調整モジュールと、を含む。
当該計測モジュールによって計測された現在の平均I/Oスループットが第1の閾値よりも大きい場合に、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較するように構成された決定モジュールを更に含み、当該処理モジュールは更に、I/Oスループットの増加がCPU使用率の増加よりも大きい場合、ワーカースレッドが増加された後は、複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるように構成される。
当該計測モジュールによって計測された現在の平均I/Oスループットが第2の閾値よりも小さい場合に、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながるかどうかを決定するように構成された決定モジュールを更に含み、当該処理モジュールは更に、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながらない場合、ワーカースレッドが減少された後は、複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させるように構成される。
増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも少ない場合、各ワーカースレッドを、各VMのフロントデバイス内のキューと、各VMのバックデバイス内のキューとにマッピングし、又は、増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも多い又は等しい場合、排他的ワーカースレッドを、1つのVMのフロントデバイス内のキュー及びバックデバイス内のキューにマッピングし、共有ワーカースレッドを、少なくとも2つのVMのフロントデバイス及びバックデバイス内にあり、排他的ワーカースレッドに対応しないキューにマッピングするように構成され、当該VMを処理するためのワーカースレッドは、排他的ワーカースレッドと共有ワーカースレッドとを含む。
複数のVMのバックデバイス内のキューと、HOSTのネイティブデバイスNative Device内のキューとのマッピング関係を、複数のVMのバックデバイスとNative Deviceとの間に複数のデータ伝送チャネルが形成されるように調整するように構成された第2の調整モジュールを更に含む。
当該データ処理モジュールは、
複数の仮想マシンVMの現在の平均I/Oスループットを計測し、現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、現在の平均I/Oスループットが第2の閾値よりも小さい場合、ワーカースレッドが減少された後は複数のVMの平均I/Oスループットが第2の閾値より大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させ、ただし、第1の閾値は第2の閾値より大きく、複数のVMのフロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、複数のVMのバックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、複数のVMのフロントデバイスとバックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成される。
複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較し、I/Oスループットの増加がCPU使用率の増加よりも大きい場合、ワーカースレッドが増加された後は、複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるように構成される。
複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながるかどうかを決定し、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながらない場合、ワーカースレッドが減少された後は、複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させるように構成される。
HOSTは、複数のVMのバックデバイスとHOSTのネイティブデバイスNative Deviceとの間に複数のデータ送信チャネルが形成されるように、複数のVMのバックデバイス内のキューとNative Device内のキューとのマッピング関係を調整するステップを含む。
HOST上で動作している複数の仮想マシンVMの現在の平均I/Oスループットを計測するように構成された計測モジュール501と、
計測モジュール501に接続され、計測モジュール501によって計測された現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、計測モジュール501によって計測された現在の平均I/Oスループットが第2の閾値よりも小さい場合、ワーカースレッドが減少された後は複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させるように構成され、第1の閾値は第2の閾値よりも大きい、処理モジュール502と、
処理モジュール502に接続され、処理モジュール502による増加又は減少後のVMを処理するためのワーカースレッドに応じて、複数のVMのフロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、複数のVMのバックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、複数のVMのフロントデバイスとバックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成された第1の調整モジュール503と、を含む。
計測モジュール501によって計測された現在の平均I/Oスループットが第1の閾値よりも大きい場合に、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較するように構成された決定モジュール504を含み、
処理モジュール502は更に、決定モジュール504が、I/Oスループットの増加がCPU使用率の増加よりも大きいと決定した場合、ワーカースレッドが増加された後は、複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるように構成される。
計測モジュール501によって計測された現在の平均I/Oスループットが第2の閾値よりも小さい場合に、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながるかどうかを決定するように構成された決定モジュール504を含み、
処理モジュール502は更に、決定モジュール504が、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながらないと決定した場合、ワーカースレッドが減少された後は、複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させるように構成される。
増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも少ない場合、各ワーカースレッドを、各VMのフロントデバイス内のキューと、各VMのバックデバイス内のキューとにマッピングし、又は、増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも多い又は等しい場合、排他的ワーカースレッドを、1つのVMのフロントデバイス内のキュー及びバックデバイス内のキューにマッピングし、共有ワーカースレッドを、少なくとも2つのVMのフロントデバイス及びバックデバイス内にあり、排他的ワーカースレッドに対応しないキューにマッピングするように構成される。VMを処理するためのワーカースレッドは、排他的ワーカースレッドと共有ワーカースレッドとを含む。
HOST上で動作している複数の仮想マシンVMの現在の平均I/Oスループットを計測し、
現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、現在の平均I/Oスループットが第2の閾値よりも小さい場合、ワーカースレッドが減少された後は複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させ、ただし、第1の閾値は第2の閾値よりも大きく、
増加又は減少後のVMを処理するためのワーカースレッドに応じて、複数のVMのフロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、複数のVMのバックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、複数のVMのフロントデバイスとバックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成される。
増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも少ない場合、各ワーカースレッドを、各VMのフロントデバイス内のキューと、各VMのバックデバイス内のキューとにマッピングするか、又は、増加又は減少後のVMを処理するためのワーカースレッドの数が、HOST上で動作しているVMの数よりも多い又は等しい場合、排他的ワーカースレッドを、1つのVMのフロントデバイス内のキューとバックデバイス内のキューとにマッピングし、共有ワーカースレッドを、少なくとも2つのVMのフロントデバイス及びバックデバイス内にあり、当該排他的ワーカースレッドに対応しないキューにマッピングすることを含み、VMを処理するためのワーカースレッドは、排他的ワーカースレッドと共有ワーカースレッドとを含む。
複数のVMの現在の平均I/Oスループットを計測し、
現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は複数のVMの平均I/Oスループットが第1の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、現在の平均I/Oスループットが第2の閾値よりも小さい場合、ワーカースレッドが減少された後は複数のVMの平均I/Oスループットが第2の閾値より大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させ、ただし、第1の閾値は第2の閾値より大きく、
増加又は減少後のVMを処理するためのワーカースレッドに応じて、複数のVMのフロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、複数のVMのバックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、複数のVMのフロントデバイスとバックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成される。
複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較し、I/Oスループットの増加がCPU使用率の増加よりも大きい場合、ワーカースレッドが増加された後は、複数のVMの平均I/Oスループットが第1の閾値よりも小さくなるように、複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるように構成される。
複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながるかどうかを決定し、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、複数のVMのスループットへの対応不能につながらない場合、ワーカースレッドが減少された後は、複数のVMの平均I/Oスループットが第2の閾値よりも大きくなるように、複数のVMのフロントデバイスとバックデバイスとの間のワーカースレッドを減少させるように構成される。
Claims (13)
- 仮想プラットフォーム上でI/Oチャネルを調整する方法であって、
ホストHOSTが、前記HOST上で動作している複数の仮想マシンVMの現在の平均I/Oスループットを計測するステップと、
前記現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は前記複数のVMの前記平均I/Oスループットが前記第1の閾値よりも小さくなるように、前記HOSTが、前記複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、前記現在の平均I/Oスループットが第2の閾値よりも小さい場合、前記ワーカースレッドが減少された後は前記複数のVMの前記平均I/Oスループットが前記第2の閾値よりも大きくなるように、前記HOSTが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを減少させるステップであって、前記第1の閾値は前記第2の閾値よりも大きい、ステップと、
前記HOSTが、前記増加又は減少後のVMを処理するためのワーカースレッドに応じて、前記複数のVMの前記フロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、前記複数のVMの前記バックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するステップと、
を含む、方法。 - 前記現在の平均I/Oスループットが前記第1の閾値よりも大きい場合、前記HOSTが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させるステップの前に、前記方法は更に、
前記HOSTが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較するステップと、
前記I/Oスループットの増加が前記CPU使用率の増加よりも大きい場合、前記HOSTが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させるステップを実行するステップと、
を含む、請求項1に記載の方法。 - 前記現在の平均I/Oスループットが前記第2の閾値よりも小さい場合、前記HOSTが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを減少させるステップの前に、前記方法は更に、
前記HOSTが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、前記複数のVMの前記現在の平均I/Oスループットへの対応不能につながるかどうかを決定するステップと、
前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させることによりもたらされる前記CPU使用率の減少が、前記複数のVMの前記現在の平均I/Oスループットへの対応不能につながらない場合、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させるステップを実行するステップと、
を含む、請求項1に記載の方法。 - 前記HOSTが、前記増加又は減少後のVMを処理するためのワーカースレッドに応じて、前記複数のVMの前記フロントデバイス内のキューと前記VMを処理するためのワーカースレッドとのマッピング関係、及び、前記複数のVMの前記バックデバイス内のキューと前記VMを処理するためのワーカースレッドとのマッピング関係を、別々に調整するステップは、
前記増加又は減少後のVMを処理するためのワーカースレッドの数が、前記HOST上で動作しているVMの数よりも少ない場合、前記HOSTが、各ワーカースレッドを、各VMのフロントデバイス内のキューと、各VMのバックデバイス内のキューとにマッピングするステップか、又は、
前記増加又は減少後のVMを処理するためのワーカースレッドの数が、前記HOST上で動作しているVMの数よりも多い又は等しい場合、前記HOSTが、排他的ワーカースレッドを、1つのVMのフロントデバイス内のキューとバックデバイス内のキューとにマッピングし、共有ワーカースレッドを、少なくとも2つのVMのフロントデバイス及びバックデバイス内にあり、前記排他的ワーカースレッドに対応しないキューにマッピングするステップを含み、
前記VMを処理するためのワーカースレッドは、前記排他的ワーカースレッドと前記共有ワーカースレッドとを含む、請求項1乃至3の何れか一項に記載の方法。 - 前記HOSTが、前記増加又は減少後のVMを処理するためのワーカースレッドに応じて、前記複数のVMの前記フロントデバイス内のキューと前記VMを処理するためのワーカースレッドとのマッピング関係、及び、前記複数のVMの前記バックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、別々に調整した後、前記方法は更に、
前記HOSTが、前記複数のVMの前記バックデバイス内のキューと、前記HOSTのネイティブデバイスNative Device内のキューとのマッピング関係を、前記複数のVMのバックデバイスと前記Native Deviceとの間に複数のデータ伝送チャネルが形成されるように調整するステップを含む、請求項1乃至4の何れか一項に記載の方法。 - 仮想プラットフォーム上でI/Oチャネルを調整する装置であって、
HOST上で動作している複数の仮想マシンVMの現在の平均I/Oスループットを計測するように構成された計測モジュールと、
前記計測モジュールに接続され、前記計測モジュールによって計測された前記現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は前記複数のVMの前記平均I/Oスループットが前記第1の閾値よりも小さくなるように、前記複数のVMのフロントデバイスとバックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、前記計測モジュールによって計測された前記現在の平均I/Oスループットが第2の閾値よりも小さい場合、前記ワーカースレッドが減少された後は前記複数のVMの前記平均I/Oスループットが前記第2の閾値よりも大きくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを減少させるように構成された処理モジュールであって、前記第1の閾値は前記第2の閾値よりも大きい、前記処理モジュールと、
前記処理モジュールに接続され、前記処理モジュールによる前記増加又は減少後のVMを処理するためのワーカースレッドに応じて、前記複数のVMの前記フロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、前記複数のVMの前記バックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成された第1の調整モジュールと、
を含む、装置。 - 前記計測モジュールによって計測された前記現在の平均I/Oスループットが前記第1の閾値よりも大きい場合に、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較するように構成された決定モジュールを更に含み、
前記処理モジュールは更に、前記決定モジュールが、前記I/Oスループットの増加が前記CPU使用率の増加よりも大きいと決定した場合、前記ワーカースレッドが増加された後は、前記複数のVMの前記平均I/Oスループットが前記第1の閾値よりも小さくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させるように構成される、請求項6に記載の調整装置。 - 前記計測モジュールによって計測された前記現在の平均I/Oスループットが前記第2の閾値よりも小さい場合に、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、前記複数のVMの前記現在の平均I/Oスループットへの対応不能につながるかどうかを決定するように構成された決定モジュールを更に含み、
前記処理モジュールは更に、前記決定モジュールが、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させることによりもたらされる前記CPU使用率の減少が、前記複数のVMの前記現在の平均I/Oスループットへの対応不能につながらないと決定した場合、前記ワーカースレッドが減少された後は、前記複数のVMの前記現在の平均I/Oスループットが前記第2の閾値よりも大きくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させるように構成される、請求項6に記載の調整装置。 - 前記第1の調整モジュールは、特に、
前記増加又は減少後のVMを処理するためのワーカースレッドの数が、前記HOST上で動作しているVMの数よりも少ない場合、各ワーカースレッドを、各VMのフロントデバイス内のキューと、各VMのバックデバイス内のキューとにマッピングし、又は、
前記増加又は減少後のVMを処理するためのワーカースレッドの数が、前記HOST上で動作しているVMの数よりも多い又は等しい場合、排他的ワーカースレッドを、1つのVMのフロントデバイス内のキュー及びバックデバイス内のキューにマッピングし、共有ワーカースレッドを、少なくとも2つのVMのフロントデバイス及びバックデバイス内にあり、前記排他的ワーカースレッドに対応しないキューにマッピングするように構成され、
前記VMを処理するためのワーカースレッドは、前記排他的ワーカースレッドと前記共有ワーカースレッドとを含む、請求項6乃至8の何れか一項に記載の調整装置。 - 前記複数のVMの前記バックデバイス内のキューと、前記HOSTのネイティブデバイスNative Device内のキューとのマッピング関係を、前記複数のVMの前記バックデバイスと前記Native Deviceとの間に複数のデータ伝送チャネルが形成されるように調整するように構成された第2の調整モジュールを更に含む、請求項6乃至9の何れか一項に記載の調整装置。
- ネイティブデバイスNative Deviceと、前記Native Device上で動作している複数の仮想マシンVM内のフロントデバイス及びバックデバイスと、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のデータ処理モジュールと、前記複数のVMの前記バックデバイスと前記Native Deviceとの間のブリッジBriedgeと、を含み、
前記データ処理モジュールは、
複数の仮想マシンVMの現在の平均I/Oスループットを計測し、
前記現在の平均I/Oスループットが第1の閾値よりも大きい場合、ワーカースレッドが増加された後は前記複数のVMの前記平均I/Oスループットが前記第1の閾値よりも小さくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させるか、又は、前記現在の平均I/Oスループットが第2の閾値よりも小さい場合、前記ワーカースレッドが減少された後は前記複数のVMの前記平均I/Oスループットが前記第2の閾値より大きくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させ、ただし、前記第1の閾値は前記第2の閾値より大きく、
前記増加又は減少後のVMを処理するためのワーカースレッドに応じて、前記複数のVMの前記フロントデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係、及び、前記複数のVMの前記バックデバイス内のキューとVMを処理するためのワーカースレッドとのマッピング関係を、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間に複数のデータ送信チャネルが形成されるように、別々に調整するように構成される、ホストHOST。 - 前記データ処理モジュールは更に、
前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させることによりもたらされる、CPU使用率の増加とI/Oスループットの増加とを比較し、
前記I/Oスループットの増加が前記CPU使用率の増加よりも大きい場合、前記ワーカースレッドが増加された後は、前記複数のVMの前記現在の平均I/Oスループットが前記第1の閾値よりも小さくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のVMを処理するためのワーカースレッドを増加させるように構成される、請求項11に記載のHOST。 - 前記データ処理モジュールは更に、
前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させることによりもたらされるCPU使用率の減少が、前記複数のVMの前記現在の平均I/Oスループットへの対応不能につながるかどうかを決定し、
前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させることによりもたらされる前記CPU使用率の減少が、前記複数のVMの前記現在の平均I/Oスループットへの対応不能につながらない場合、前記ワーカースレッドが減少された後は、前記複数のVMの前記現在の平均I/Oスループットが前記第2の閾値よりも大きくなるように、前記複数のVMの前記フロントデバイスと前記バックデバイスとの間のワーカースレッドを減少させるように構成される、請求項11に記載のHOST。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310027312.7 | 2013-01-24 | ||
CN201310027312.7A CN103116517B (zh) | 2013-01-24 | 2013-01-24 | 虚拟化平台下i/o通道的调整方法和调整装置 |
PCT/CN2013/080837 WO2014114072A1 (zh) | 2013-01-24 | 2013-08-05 | 虚拟化平台下i/o通道的调整方法和调整装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015513732A JP2015513732A (ja) | 2015-05-14 |
JP5923627B2 true JP5923627B2 (ja) | 2016-05-24 |
Family
ID=48414901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014557993A Active JP5923627B2 (ja) | 2013-01-24 | 2013-08-05 | 仮想プラットフォーム上でi/oチャネルを調整する方法及び装置 |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP2772854B1 (ja) |
JP (1) | JP5923627B2 (ja) |
KR (1) | KR101559097B1 (ja) |
CN (1) | CN103116517B (ja) |
AU (1) | AU2013273688B2 (ja) |
RU (1) | RU2573733C1 (ja) |
WO (1) | WO2014114072A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100578350B1 (ko) * | 2002-08-29 | 2006-05-11 | 엘지전자 주식회사 | 진공청소기의 집진케이스 |
US8819685B2 (en) | 2013-01-24 | 2014-08-26 | Huawei Technologies Co., Ltd. | Method and apparatus for adjusting I/O channel on virtual platform |
CN103116517B (zh) * | 2013-01-24 | 2016-09-14 | 华为技术有限公司 | 虚拟化平台下i/o通道的调整方法和调整装置 |
CN105324973B (zh) * | 2014-05-09 | 2019-05-24 | 华为技术有限公司 | 快速输入输出报文处理方法、装置及系统 |
WO2016101282A1 (zh) * | 2014-12-27 | 2016-06-30 | 华为技术有限公司 | 一种i/o任务处理的方法、设备和系统 |
TWI648637B (zh) * | 2017-11-30 | 2019-01-21 | 財團法人工業技術研究院 | 於平台部署與操作行動作業系統的系統及其方法 |
CN109240802B (zh) | 2018-09-21 | 2022-02-18 | 北京百度网讯科技有限公司 | 请求处理方法和装置 |
KR102212512B1 (ko) * | 2019-02-28 | 2021-02-04 | 성균관대학교산학협력단 | 가상화기술에서 뮤텍스 객체를 이용한 소프트웨어 기반 은닉채널 구성 시스템 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132518A (ja) * | 2000-10-25 | 2002-05-10 | Fujitsu Ltd | 仮想計算機システムおよび仮想計算機間の入出力装置交換方法 |
US7788665B2 (en) * | 2006-02-28 | 2010-08-31 | Microsoft Corporation | Migrating a virtual machine that owns a resource such as a hardware device |
US8443398B2 (en) * | 2006-11-01 | 2013-05-14 | Skyfire Labs, Inc. | Architecture for delivery of video content responsive to remote interaction |
CN101499021A (zh) | 2008-01-31 | 2009-08-05 | 国际商业机器公司 | 在多个虚拟机上动态分配资源的方法和装置 |
US8387059B2 (en) * | 2008-07-02 | 2013-02-26 | International Business Machines Corporation | Black-box performance control for high-volume throughput-centric systems |
US9152464B2 (en) * | 2010-09-03 | 2015-10-06 | Ianywhere Solutions, Inc. | Adjusting a server multiprogramming level based on collected throughput values |
JP2012234425A (ja) * | 2011-05-06 | 2012-11-29 | Canon Inc | 画像処理装置及び画像処理方法 |
EP2698711B1 (en) * | 2011-06-30 | 2015-08-05 | Huawei Technologies Co., Ltd. | Method for dispatching central processing unit of hotspot domain virtual machine and virtual machine system |
CN102508718B (zh) * | 2011-11-22 | 2015-04-15 | 杭州华三通信技术有限公司 | 一种虚拟机负载均衡方法和装置 |
CN102591702B (zh) * | 2011-12-31 | 2015-04-15 | 华为技术有限公司 | 虚拟化处理方法及相关装置和计算机系统 |
CN103116517B (zh) * | 2013-01-24 | 2016-09-14 | 华为技术有限公司 | 虚拟化平台下i/o通道的调整方法和调整装置 |
-
2013
- 2013-01-24 CN CN201310027312.7A patent/CN103116517B/zh active Active
- 2013-08-05 WO PCT/CN2013/080837 patent/WO2014114072A1/zh active Application Filing
- 2013-08-05 JP JP2014557993A patent/JP5923627B2/ja active Active
- 2013-08-05 EP EP13802520.0A patent/EP2772854B1/en active Active
- 2013-08-05 KR KR1020137034172A patent/KR101559097B1/ko active IP Right Grant
- 2013-08-05 AU AU2013273688A patent/AU2013273688B2/en active Active
- 2013-08-05 RU RU2013158942/08A patent/RU2573733C1/ru active
Also Published As
Publication number | Publication date |
---|---|
CN103116517B (zh) | 2016-09-14 |
AU2013273688B2 (en) | 2015-08-06 |
KR101559097B1 (ko) | 2015-10-08 |
EP2772854A1 (en) | 2014-09-03 |
CN103116517A (zh) | 2013-05-22 |
EP2772854A4 (en) | 2014-11-19 |
WO2014114072A1 (zh) | 2014-07-31 |
RU2573733C1 (ru) | 2016-01-27 |
KR20140119624A (ko) | 2014-10-10 |
AU2013273688A1 (en) | 2014-08-07 |
EP2772854B1 (en) | 2018-10-24 |
JP2015513732A (ja) | 2015-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5923627B2 (ja) | 仮想プラットフォーム上でi/oチャネルを調整する方法及び装置 | |
US11593179B2 (en) | Capacity and load analysis using storage attributes | |
US8819685B2 (en) | Method and apparatus for adjusting I/O channel on virtual platform | |
US8997108B2 (en) | Analysis of operator graph and dynamic reallocation of a resource to improve performance | |
EP2717158A1 (en) | Method and device for integrating virtualized cluster, and virtualized cluster system | |
US8910153B2 (en) | Managing virtualized accelerators using admission control, load balancing and scheduling | |
US8788658B2 (en) | Allocation and balancing of storage resources | |
WO2017143548A1 (zh) | 用于应用自动化部署的方法和云管理节点 | |
WO2018010654A1 (zh) | 一种虚拟机热迁移的方法、装置及系统 | |
US20140137117A1 (en) | Virtualization planning system | |
US20100115510A1 (en) | Virtual graphics device and methods thereof | |
US9697031B2 (en) | Method for implementing inter-virtual processor interrupt by writing register data in a single write operation to a virtual register | |
US9395918B2 (en) | Dynamic record management including opening a virtual storage access method (VSAM) data set and modifying a VSAM control block structure | |
US20160232026A1 (en) | Selecting a host for a virtual machine using a hardware multithreading parameter | |
EP2881860A1 (en) | Method for implementing an interrupt between virtual processors, related device, and system | |
JP2022033688A (ja) | メモリアクセスリクエストスケジューリング方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム | |
US20220318057A1 (en) | Resource Management for Preferred Applications | |
US20160224390A1 (en) | Placement of virtual cpus using a hardware multithreading parameter | |
US9690610B2 (en) | Computer system and management computer controlling method | |
Elder et al. | vSphere High Performance Cookbook | |
CN108052375A (zh) | 一种主机过载检测方法 | |
KR20220070625A (ko) | 가상화 환경에서 가상머신의 i/o 성능을 높이기 위한 스케줄링 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150630 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150930 |
|
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: 20160322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160418 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5923627 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |