JP6679146B2 - 電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化 - Google Patents

電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化 Download PDF

Info

Publication number
JP6679146B2
JP6679146B2 JP2017527913A JP2017527913A JP6679146B2 JP 6679146 B2 JP6679146 B2 JP 6679146B2 JP 2017527913 A JP2017527913 A JP 2017527913A JP 2017527913 A JP2017527913 A JP 2017527913A JP 6679146 B2 JP6679146 B2 JP 6679146B2
Authority
JP
Japan
Prior art keywords
data processing
pool
processing system
processor
event
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
Application number
JP2017527913A
Other languages
English (en)
Other versions
JP2018504665A (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
Publication of JP2018504665A publication Critical patent/JP2018504665A/ja
Application granted granted Critical
Publication of JP6679146B2 publication Critical patent/JP6679146B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • 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/4557Distribution of virtual machine instances; Migration and load balancing
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B70/00Technologies for an efficient end-user side electric power management and consumption
    • Y02B70/10Technologies improving the efficiency by using switched-mode power supplies [SMPS], i.e. efficient power electronics conversion e.g. power factor correction or reduction of losses in power supplies or efficient standby modes
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

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

Description

本発明は、一般に、コンピュータ及びコンピュータ・ソフトウェアに関し、具体的には、論理的にパーティション化されたコンピューティング環境に関する。
コンピューティング技術は、驚くべき速度で進歩してきており、その後にコンピューティング・システムが生成されるたびに、多くの場合は低減したコストで、性能、機能及びストレージ容量が向上している。さらに、エネルギー・スター(Energy Star)・コンプライアンス、並びに「グリーン(green)」コンピュータ・システム及びデータ・センタの概念の出現からも明らかなように、データ・センタにおける電力管理(パワーマネージメント)は、近年、ますます重要になってきている。電力コスト及び環境問題は、特に、大規模データ・センタを有する企業にとって重要な問題である。従って、エネルギー効率の良いシステム及び解決法を構築するコンピュータ及びソフトウェア製造業者は、市場において明白な利点を有し得る。
電力管理技術は、多くの場合、ワークロード及び環境要因を監視し、システム又はシステムのプール内の計算リソースの間でワークロードを、電力管理に関連した何らかの利点を達成するような方法で移動することを含む。この利点は、システム又はシステム内のコンポーネントをパワーダウンする(低電力状態(low power state)にする又は完全にシャットオフ(電源遮断)する)こと、又はデータ・センタ内のホット・スポットを回避すること、又は高電力コスト領域若しくは時間を回避することを通じて得ることができる。シフトされるワークロードは、通常、プロセッサ及びメモリ・フォールディング(folding)を容易にするためにプロセッサ・コア間でワークロードを移動する際のディスパッチ・ユニット、又はデータ・センタ内のシステム間でワークロードを移動する際のアプリケーション/ジョブのいずれかである。
多くのデータ・センタは、論理パーティション化を利用し、これにより、コンピュータを用いて、幾つかの動作環境又はオペレーティング・システムを一度に実行することが可能になる。典型的な実施形態においては、単一の論理的にパーティション化されたコンピュータ又はデータ処理システムは、仮想マシン(VM)とも呼ばれる、対応する複数の論理パーティション(LPAR)において複数のオペレーティング・システムを実行することが可能であきる。各オペレーティング・システムは、それぞれの論理パーティション内にあり、各論理パーティションは、コンピュータから、物理プロセッサの一部、物理プロセッサ全体、又は複数の物理プロセッサに割り当てられる。さらに、コンピュータのメモリの一部は、各論理パーティションに割り当てられる。ハイパーバイザ又は仮想マシン・モニタ(VMM)と呼ばれることが多い基礎となるパーティション・マネージャは、論理パーティションを管理し、制御する。ハイパーバイザは、一般に、システム・ファームウェアの一部であり、オペレーティング・システム及び論理パーティションへのリソースの割り当てを管理する。従って、1つの論理的にパーティション化されたコンピュータは、1つ又は複数の論理パーティションを実行することができ、よって、アプリケーション、オペレーティング・システム及びそれらの論理パーティション内で動作するように構成された他のプログラム・コードにより使用される基礎となるハードウェア・リソースを仮想化することができる。
大規模データ・センタにおいては、一般に、十分な処理容量が存在し、データ・センタのワークロード全体をデータ・センタ内の利用可能なハードウェア・リソースのサブセットにのみ配置することが可能であり、それにより、ハードウェア・リソースの一部をパワーダウンし、電力消費全体を低減させることが可能である。しかしながら、多くのワークロードの動的性質を考えると、データ・センタ内のハードウェア・リソースへの論理パーティションの最適な割り当ては、時間の経過と共に変化することがあり、場合によっては、準最適な(sub-optical)論理パーティションの割り当てに対処するための管理者アクションを必要とすることがある。場合によっては、準最適な割り当てが容易に明らかでないことさえあり、データ・センタ内の過度の電力消費及び/又は性能の低下をもたらすことがある。
論理的にパーティション化されたコンピューティング環境において電力消費を管理する方法、システム及びコンピュータ・プログラムを提供する。
本発明は、イベント駆動型再最適化を用いて、論理的にパーティション化されたコンピューティング環境内にある論理パーティションの集合的リソース需要を増大又は減少させる可能性が高いシステム・イベントの検出に応答して、論理的にパーティション化されたデータ処理システムのプール内の1つ又は複数の論理パーティションを再割り当てする、請求項1に請求されるような方法、及び対応する、請求されるようなシステム及びコンピュータ・プログラムを提供することにより、従来技術と関連したこれら及び他の問題に対処する。場合によっては、例えば、再最適化を用いて、論理パーティションをより少ないプロセッサ・ノードに統合し、ハードウェア・リソースをパワーダウンする可能性を改善し、それにより電力消費を低減することができる。
従って、本発明の1つの態様と整合して、論理的にパーティション化されたデータ処理システムのプール内に配置されたプロセッサ・ノードのコレクションを含む論理的にパーティション化されたコンピューティング環境において、電力消費を管理することができる。論理的にパーティション化されたコンピューティング環境における電力消費を最適化するために、論理的にパーティション化されたデータ処理システムのプールに複数の論理パーティションを割り当てること、複数の論理パーティションを割り当てた後、論理的にパーティション化されたデータ処理システムのプールに割り当てられた論理パーティションのリソース需要を変更するシステム・イベントについて、論理的にパーティション化されたデータ処理システムのプールを自律的に監視すること、論理的にパーティション化されたデータ処理システムのプールの監視に基づいて、論理的にパーティション化されたデータ処理システムのプールに割り当てられた論理パーティションのリソース需要を変更する第1のシステム・イベントを検出すること、及び第1のシステム・イベントの検出に応答して、複数の論理パーティションの少なくともサブセットをプロセッサ・ノードのコレクションに動的に再割り当てし、かつ、論理的にパーティション化されたデータ処理システムのプール内に配置されたプロセッサ・ノードのコレクションのプロセッサ・ノードの少なくとも1つの電力状態を動的に修正することにより、論理的にパーティション化されたコンピューティング環境における電力消費を再最適化することができる。
本発明を特徴付けるこれら及び他の利点及び特徴は、本明細書に添付され、さらに別の部分を形成する特許請求の範囲内に示される。しかしながら、本発明並びにその利点及びその使用により達成される目的をより良く理解するために、本発明の例示的な実施形態を説明する図面及び付随の記述事項を参照されたい。
本発明と整合する論理的にパーティション化されたコンピューティング環境を実装するのに適した例示的なハードウェア環境のブロック図である。 本発明と整合する論理的にパーティション化されたコンピューティング環境を実装するのに適した例示的なソフトウェア環境のブロック図である。 本発明と整合する1つの実施形態においてイベント駆動型再最適化を実施するために使用されるモデルのブロック図である。 有使用資格(使用資格のある、entitled)容量減少システム・イベントに応答して、論理的にパーティション化されたコンピューティング環境による電力消費を再最適化するために、図1のオーケストレータ・コンポーネントにより実施することができる例示的な再最適化ルーチンを示すフローチャートを示す。 有使用資格容量減少システム・イベントに応答して、論理的にパーティション化されたコンピューティング環境による電力消費を再最適化するために、図1のオーケストレータ・コンポーネントにより実施することができる例示的な再最適化ルーチンを示すフローチャートを示す。 有使用資格容量増大システム・イベントに応答して、論理的にパーティション化されたコンピューティング環境による電力消費を再最適化するために、図1のオーケストレータ・コンポーネントにより実施できる例示的な再最適化ルーチンを示すフローチャートを示す。 有使用資格容量増大システム・イベントに応答して、論理的にパーティション化されたコンピューティング環境による電力消費を再最適化するために、図1のオーケストレータ・コンポーネントにより実施できる例示的な再最適化ルーチンを示すフローチャートを示す。 有使用資格容量増大システム・イベントに応答して、論理的にパーティション化されたコンピューティング環境による電力消費を再最適化するために、図1のオーケストレータ・コンポーネントにより実施できる例示的な再最適化ルーチンを示すフローチャートを示す。 有使用資格容量増大システム・イベントに応答して、論理的にパーティション化されたコンピューティング環境による電力消費を再最適化するために、図1のオーケストレータ・コンポーネントにより実施できる例示的な再最適化ルーチンを示すフローチャートを示す。
本発明と整合する実施形態は、イベント駆動型再最適化を用いて、論理的にパーティション化されたコンピューティング環境内にある論理パーティションの集合的リソース需要を増大又は減少させる可能性が高いシステム・イベントの検出に応答して、論理的にパーティション化されたコンピューティング環境における論理的にパーティション化されたデータ処理システムのプール内の1つ又は複数の論理パーティションを再割り当てする。場合によっては、例えば、再最適化を用いて、論理パーティションをより少ないプロセッサ・ノードに統合し、ハードウェア・リソースをパワーダウンする可能性を改善し、それにより電力消費を低減することができる。
この点で、論理的にパーティション化されたコンピューティング環境は、論理パーティション化(又は、仮想化)をサポートする1つ又は複数のデータ処理システムを含むと考えることができ、データ処理システムの少なくとも一部は、1つ又は複数の論理パーティションをホストすることが可能なハードウェア・リソースを表す複数のプロセッサ・ノードを組み込む。本発明と整合する論理的にパーティション化されたコンピューティング環境は、一般に、パーティション・モビリティ(パーティション・モビリティ以外の名前で呼ばれることもある)の概念をサポートし、これにより、実行時に、1つの論理的にパーティション化されたデータ処理システム上にホストされる論理パーティションを、サービスの中断が殆どない又は全くない状態で、異なる論理的にパーティション化されたデータ処理システムに移動することができる。
この点で、プロセッサ・ノードは、データ処理システム内の利用可能なハードウェア・リソースのいずれかのサブセットを含むと考えることができ、一般に、必ずしもではないが、1つ又は複数のプロセッサ、1つ又は複数のメモリ・デバイス、及び場合によっては、入力/出力(I/O)リソース、ネットワーク・リソース、又は論理パーティションに割り当てることができる他のタイプのリソースのような付加的なハードウェア・リソースを含む。幾つかの実施形態において、プロセッサ・ノードは、マルチチップ・モジュール、回路基板若しくはカード、ブック、ドロワー、ラック、スロット、シャーシ、又はさらにそれらの組み合わせとして実装することができる。幾つかの実施形態において、プロセッサ・ノードはまた、自己完結型(self-contained)コンピュータ・システムとすることもできる。電力消費を最適化するためにイベント駆動型再最適化を用いる実施形態において、プロセッサ・ノードはまた、電力消費を増大又は減少させるために、別個にパワーオン、パワーオフすること、又は他の方法で制御することができるハードウェア・リソースのグループ化に基づいて定めることもできる。従って、本明細書で説明される実施形態の観点から、プロセッサ・ノードは、他のプロセッサ・ノードとは別個に、パワーダウンし、完全にパワーオフすることができるプロセッサ及びメモリの少なくともコレクションを含む。
本発明の幾つかの実施形態において、電力消費は、論理的にパーティション化されたデータ処理システムのプール内に配置されたプロセッサ・ノードのコレクションを含む論理的にパーティション化されたコンピューティング環境において管理することができる。論理的にパーティション化されたコンピューティング環境における電力消費を最適化するために、論理的にパーティション化されたデータ処理システムのプールに複数の論理パーティションを割り当てること、複数の論理パーティションを割り当てた後、論理的にパーティション化されたデータ処理システムのプールに割り当てられた論理パーティションのリソース需要を変更するシステム・イベントについて、論理的にパーティション化されたデータベース処理システムのプールを自律的に監視すること、論理的にパーティション化されたデータ処理システムのプールの監視に基づいて、論理的にパーティション化されたデータ処理システムのプールに割り当てられた論理パーティションのリソース需要を変更する第1のシステム・イベントを検出すること、及び第1のシステム・イベントの検出に応答して、複数の論理パーティションの少なくともサブセットをプロセッサ・ノードのコレクションに動的に再割り当てし、かつ、論理的にパーティション化されたデータ処理システムのプール内に配置されたプロセッサ・ノードのコレクション内のプロセッサ・ノードの少なくとも1つの電力状態を動的に修正することによって、電力消費を管理することができる。
幾つかの実施形態において、プロセッサ・ノードのコレクションは、論理的にパーティション化されたデータ処理システムのプールの第1の論理的にパーティション化されたデータベース処理システム内に配置された第1のプロセッサ・ノードを含み、第1のシステム・イベントは、リソース需要を減少させ、論理的にパーティション化されたコンピューティング環境における電力消費を再最適化することは、プロセッサ・ノードのコレクション内の第1のプロセッサ・ノードの電力状態を低下させること、及び、第1のプロセッサ・ノードに以前に割り当てられた少なくとも1つの論理パーティションを、論理的にパーティション化されたデータ処理システムのプールの第1の論理的にパーティション化されたデータ処理システム又は異なる論理的にパーティション化されたデータ処理システム内の1つ又は複数の異なるプロセッサ・ノードに移動することを含む。幾つかの実施形態において、第1のシステム・イベントは、論理パーティション・パワーオフ・イベント、論理パーティション・ハイバーネーション(hibernation)・サスペンド・イベント、プールからのアクティブ論理パーティション・マイグレーション・イベント、論理パーティションからの動的プロセッサ容量除去イベント、又は論理パーティションからの動的メモリ容量除去イベントである。
幾つかの実施形態において、プロセッサ・ノードのコレクションは、論理的にパーティション化されたデータ処理システムのプールの第1の論理的にパーティション化されたデータ処理システム内に配置された第1のプロセッサ・ノードを含み、第1のシステム・イベントは、リソース需要を増大させ、論理的にパーティション化されたコンピューティング環境における電力消費を再最適化することは、第1のプロセッサ・ノードの電力状態を上昇させること、及びプロセッサ・ノードの電力レベルを上昇させることによって得られる容量を用いて、増大したリソース需要を満たすことを含む。幾つかの実施形態において、第1のシステム・イベントは、論理パーティション・パワーオン・イベント、論理パーティション・ハイバーネーション・レジューム・イベント、プールへのアクティブ論理パーティション・マイグレーション・イベント、論理パーティションへの動的プロセッサ容量付加イベント、又は論理パーティションへの動的メモリ容量付加イベントである。
幾つかの実施形態において、論理的にパーティション化されたデータ処理システムのプールの第1の論理的にパーティション化されたデータ処理システムは、プロセッサ・ノードのコレクションからの第1及び第2のプロセッサ・ノードを含み、プロセッサ・ノードのコレクション内のプロセッサ・ノードの少なくとも1つの電力状態を動的に修正することは、第2のプロセッサ・ノードの電力状態を維持しながら、第1のプロセッサ・ノードをパワーダウン又はパワーアップすることを含む。幾つかの実施形態において、論理的にパーティション化されたデータ処理システムのプールの第1の論理的にパーティション化されたデータ処理システムは、プロセッサ・ノードのコレクションからの複数のプロセッサ・ノードを含み、論理的にパーティション化されたデータ処理システムのプールの第2の論理的にパーティション化されたデータ処理システムは、プロセッサ・ノードのコレクションからの単一のプロセッサ・ノードを含み、プロセッサ・ノードのコレクション内のプロセッサ・ノードの少なくとも1つの電力状態を動的に修正することは、第1の論理的にパーティション化されたデータ処理システム内の複数のプロセッサ・ノードの各々の電力状態を維持しながら、第2の論理的にパーティション化されたデータ処理システムをパワーダウン又はパワーアップすることを含む。
以下の説明から明らかになるように、当業者には、種々の変形及び修正が明らかであろう。従って、本発明は、本明細書に記載される特定の実施に限定されるものではない。
ハードウェア及びソフトウェア環境
幾つかの図の全体を通して同様の部品が同様の番号を示す図面を参照すると、図1〜図2は、本発明と整合する、論理的にパーティション化されたコンピューティング環境内の主要なハードウェア及びソフトウェア・コンポーネント又は装置10を示す。図1に示されるように、装置10は、物理ハードウェアが複数のコンピュータ又はデータ処理システム16内に配置された複数の物理プロセッサ・ノード14に分散され、データ処理システム16が1つ又は複数のプール18内に配置されている、マルチノード・システムとして構成することができる。各プロセッサ・ノード14は、1つ又は複数のプロセッサ20、1つ又は複数のメモリ・デバイス22、及び幾つかの実施形態においては、入力/出力(I/O)ハードウェア24(例えば、1つ又は複数の入力/出力(I/O)アダプタ)及び/又はネットワーキング・ハードウェア26のような付加的なハードウェアを含む。適切なネットワーキング機能(図示せず)を用いて、種々のプロセッサ・ノード14及びシステム16、並びに他の外部システム間のデータ通信を与えることもできる。
装置10は、論理的にパーティション化された環境を実装するのに適した多数の異なるアーキテクチャのいずれかを用いて実装することができる。例えば、1つの実施形態において、装置10は、インターナショナル・ビジネス・マシーンズ・コーポレーションから入手可能なPower 770、780、又は795システムとして実装することができ、その構成は、本開示の利点を有する当業者には明らかであろう。しかしながら、本発明の他の実施形態において、論理的にパーティション化された環境を実行するのに適した他のアーキテクチャを使用することもでき、従って、本発明は、本明細書に開示される特定のアーキテクチャに限定されるものではないことが理解されるであろう。
各プロセッサ20は、単一の又はマルチスレッド・プロセッサ及び/又は単一の又はマルチコア・プロセッサとして実装することができ、一方、各メモリ22は、例えば、DRAMベースの主ストレージなどの1つ又は複数のレベルのメモリ・デバイス、並びに、1つ又は複数のレベルのデータ、命令、及び/又は当技術分野において周知のように、個々のプロセッサ又は複数のプロセッサにサービスする特定のキャッシュを有するコンビネーション・キャッシュを含むと考えることができる。さらに、装置10のメモリは、例えば、プロセッサ内のいずれかのキャッシュ・メモリなど、装置10内のどこかに物理的に位置するメモリ・ストレージ、並びに、大容量ストレージ・デバイス上又は装置10に結合された別のコンピュータ上に格納されるような、仮想メモリとして使用されるいずれかのストレージ容量を含むと考えることができる。
以下により詳細に説明されるように、装置10は、1つ又は複数のカーネル、ハイパーバイザ、オペレーティング・システム等の制御の下で動作し、種々のコンピュータ・ソフトウェア・アプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、データ構造等を実行し、又は他の方法でこれらに依存する。さらに、種々のアプリケーション、コンポーネント、プログラム、オブジェクト、モジュール等はまた、例えば分散型又はクライアント−サーバ・コンピューティング環境において、ネットワークを介して装置10に結合された別のコンピュータ内の1つ又は複数のプロセッサ上で実行することもでき、それにより、コンピュータ・プログラムの機能を実施するために必要とされる処理をネットワーク上で複数のコンピュータに割り当てることができる。
例えば、図2は、装置10のシステム16内に常駐できる種々のソフトウェア・コンポーネント28〜42を示す。ハイパーバイザ28は、1つ又は複数の論理パーティション(LPAR)30をホストすることができ、各論理パーティション30に、ここでは1つ又は複数の仮想プロセッサ(VP)32、仮想メモリ34及び仮想入力/出力(V/O)リソース36により表される、システム16の物理ハードウェア・リソースの部分(例えば、プロセッサ、メモリ、及び/又は1つ又は複数のプロセッサ・ノード14と関連したIOリソース)を割り当てることができる。次に、各論理パーティション30は、順に、オペレーティング・システム38、随意的にミドルウェア40、並びに1つ又は複数のジョブ及び/又はアプリケーション42をホストすることができる。各論理パーティション30は、仮想マシン又は仮想コンピュータと呼ばれることもあり、別個の物理コンピュータをエミュレートする方法で動作することができ、従って、事実上、コンピュータによりホストされ得るあらゆるソフトウェア・コンポーネントをホストすることができることが理解されるであろう。
例えば大容量ストレージ・ハードウェア、プリンタ若しくはディスプレイのような外部入力/出力デバイス、並びに管理者により装置のハードウェア及び/又はソフトウェア構成を管理することができる、例えばハードウェア管理コンソール(HMC)などの管理ハードウェア及び/又はソフトウェアなど、付加的なハードウェア及び/又はソフトウェア・コンポーネントが、装置10内にあってもよい。論理的にパーティション化された環境は、無数の方法で実装することができ、無数のハードウェア及び/又はソフトウェア変形を含むことができ、従って、本明細書は、本明細書に開示される特定の実装に限定されるものではない。
本発明は、システム、方法、及び/又はコンピュータ・プログラム製品とすることができることが理解されるであろう。コンピュータ・プログラム製品は、1つ又は複数のプロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体(単数又は複数)を含むことができる。
コンピュータ可読ストレージ媒体は、命令実行デバイスにより使用される命令を保持し、格納することができる有形デバイスとすることができる。コンピュータ可読ストレージ媒体は、例えば、これらに限定されるものではないが、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイス、又は上記のいずれかの適切な組み合わせとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的リストとして、以下のもの:即ち、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラム可能読み出し専用メモリ(EPROM又はフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読み出し専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)、メモリ・スティック、フロッピーディスク、パンチ・カード又は命令が記録された溝内の隆起構造のような機械的にエンコードされたデバイス、及び上記のいずれかの適切な組み合わせが挙げられる。本明細書で使用される場合、コンピュータ可読ストレージ媒体は、電波又は他の自由に伝搬する電磁波、導波管若しくは他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバ・ケーブルを通る光パルス)、又はワイヤを通って伝送される電気信号などの、一時的な信号自体として解釈されるべきではない。
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング/処理デバイスに、又は、例えばインターネット、ローカル・エリア・ネットワーク、広域ネットワーク及び/又は無線ネットワークなどのネットワークを介して、外部コンピュータ又は外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、及び/又はエッジ・サーバを含むことができる。各コンピューティング/処理デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受け取り、コンピュータ可読プログラム命令を転送して、それぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体内に格納する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又は、Java、Smalltalk、C++等のオブジェクト指向プログラミング言語、又は、「C」プログラミング言語若しくは類似のプログラミング言語などの通常の手続き型プログラミング言語を含む1つ又は複数のプログラミング言語の任意の組み合わせで記述されるいずれかのソース・コード若しくはオブジェクト・コードとすることができる。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、又は完全に遠隔コンピュータ若しくはサーバ上で実行される場合もある。最後のシナリオにおいては、遠隔コンピュータは、ローカル・エリア・ネットワーク(LAN)若しくは広域ネットワーク(WAN)を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、又は外部コンピュータへの接続がなされる場合もある(例えば、インターネット・サービス・プロバイダを用いたインターネットを通じて)。幾つかの実施形態において、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又はプログラム可能論理アレイ(PLA)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を用いて電子回路を個人化することによってコンピュータ可読プログラム命令を実行し、本発明の態様を実施することができる。
本発明の態様は、本発明の実施形態による方法、装置(システム)及びコンピュータ・プログラム製品のフローチャート図及び/又はブロック図を参照して説明される。フローチャート図及び/又はブロック図の各ブロック、並びにフローチャート図及び/又はブロック図内のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装できることが理解されるであろう。
これらのコンピュータ可読プログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えてマシンを製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャート及び/又はブロック図の1つ又は複数のブロック内で指定された機能/動作を実装するための手段を作り出すようにすることができる。これらのコンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイスを特定の方式で機能させるように指示することができるコンピュータ可読媒体内に格納し、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャート及び/又はブロック図の1つ又は複数のブロックにおいて指定された機能/動作を実装する命令を含む製品を製造するようにすることもできる。
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連の動作ステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生成し、それにより、コンピュータ又は他のプログラム可能装置上で実行される命令が、フローチャート及び/又はブロック図の1つ又は複数のブロックにおいて指定された機能/動作を実行するためのプロセスを提供するようにすることもできる。
図面内のフローチャート及びブロック図は、本発明の種々の実施形態による、システム、方法、及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及び動作を示す。この点に関して、フローチャート内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を含む、モジュール、セグメント、又はコードの一部を表すことができる。幾つかの代替的な実装において、ブロック内に示される機能は、図に示される順序とは異なる順序で生じることがある。例えば、連続して示される2つのブロックは、関与する機能に応じて、実際には実質的に同時に実行されることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図及び/又はフローチャート図の各ブロック、及びブロック図及び/又はフローチャート図内のブロックの組み合わせは、指定された機能又は動作を実行する、又は専用のハードウェアとコンピュータ命令との組み合わせを実行する、専用ハードウェア・ベースのシステムによって実装できることにも留意されたい。
さらに、本明細書ではその1つ又は複数をまとめて「プログラム・コード」と呼ぶことができる、コンピュータ可読プログラム命令は、本明細書では、本発明の特定の実施形態においてこうした命令を実施するアプリケーションに基づいて識別することができる。しかしながら、以下のいずれの特定のプログラム名も、便宜上使用されるものに過ぎず、従って、本発明は、こうした命名により識別される及び/又は暗示されるいずれかの特定のアプリケーションのみに限定されるものではない。さらに、一般的に、コンピュータ・プログラムをルーチン、手順、方法、モジュール、オブジェクト等に編成することができる無数の方法、並びに、プログラム機能を、一般的なコンピュータ内に常駐する種々のソフトウェア層(例えば、オペレーティング・システム、ライブラリ、APIのアプリケーション、アプレット)の間で割り当てることができる種々の方法を考えると、本発明は、本明細書で説明されるプログラム機能の特定の編成及び割り当てに限定されるものではないことを理解されたい。
当業者であれば、図1〜図2に示される例示的な環境は、本発明を限定することを意図しないことを認識するであろう。実際に、当業者であれば、本発明の範囲から逸脱することなく、他の代替的なハードウェア及び/又はソフトウェア環境を使用できることを認識するであろう。
電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化
エネルギー・スター・コンプライアンス、並びに「グリーン」コンピュータ・システム及びデータ・データ・センタの概念の出現からも明らかなように、データ・センタにおける電力管理は、近年、ますます重要になってきている。電力コスト及び環境問題は、特に、大規模データ・センタを有する企業にとって重要な問題である。従って、エネルギー効率の良いシステム及び解決法を構築するコンピュータ及びソフトウェア製造業者は、市場において明白な利点を有し得る。
電力管理技術は、従来、ワークロード及び環境要因を監視し、電力管理に関連した何らかの利点を達成するような方法で、システム又はシステムのプール内の計算リソースの間でワークロードを移動することを含む。この利点は、システム又はシステム内のコンポーネントをパワーダウンする(低電力状態にする又は完全にシャットオフする)こと、又はデータ・センタ内のホット・スポットを回避すること、又は高電力コスト領域若しくは時間を回避することを通じて、得ることができる。シフトされるワークロードは通常、プロセッサ及びメモリ・フォールディングを容易にするためにプロセッサ・コア間でワークロードを移動するときのディスパッチ・ユニット、又はデータ・センタ内のシステム間でワークロードを移動するときにアプリケーション/ジョブのいずれかである。
本発明と整合する実施形態は、パーティションの統合(consolidation)を通じて電力を節約し、使用されていないプール内のシステム又はプール内のシステムのコンポーネントをオフにする可能性を最適化するような方法で、単一のモジュラー・システム又はシステムのプールにわたって論理パーティションを動的に配置するためのフレームワークを利用することによって、例えばデータ・センタ内のさらなる電力管理を行う。処理容量を解放し、それにより多くのハードウェア・リソースのパワーダウンを潜在的に可能にするシステム・イベント、又は処理容量を増大させて、それによりハードウェア・リソースのパワーオンを潜在的に要求するシステム・イベントのいずれかに基づいて、論理パーティションを動的に移動させることができる。
示される実施形態において、システム・イベントの動的及び自律的監視を用いて、システムのプール内で実行されている論理パーティションの有使用資格処理容量を増大又は減少させるシステム・イベントを検出することができる。こうしたシステム・イベントに応答して、システムのプールにおける統合を最適化し、ハードウェア・リソースをパワーダウンする可能性を最適化するように、論理パーティションの配置を調整することができる。幾つかの実施形態において、例えば、システムのプール内で実行されている論理パーティションの有使用資格処理容量及び/又はメモリ容量は、論理パーティションのリソース需要と呼ぶことができる。従って、有使用資格容量を増大させるシステム・イベントは、プール内で実行されている論理パーティションのリソース需要を増大させると考えることができ、一方、有使用資格容量を減少させるシステム・イベントは、プール内で実行されている論理パーティションのリソース需要を減少させると考えることができる。
ディスパッチ・レベルのワークロード・シフトに優るこうした手法の1つの利点は、電力節約の可能性が通常大きくなり得るということである。プロセッサ・フォールディングは、個々のプロセッサ・コア及びチップ、及び場合によって関連したメモリを低電力状態にすることを可能にし、そのことは、場合によっては、より低いシステム・ファン速度ももたらし得る。しかしながら、プロセッサ・フォールディング手法のパワーオン待ち時間要件は、一般に、リソースが完全パワーオフするのを防止する。しかしながら、本明細書で説明される論理パーティション・ベースの手法は、処理フォールディング、並びにプール内のシステムの完全なパワーオフ、又はプロセッサ・ブック又はプロセッサ・ドロワーのような、別個に電力供給可能な(powerable)プロセッサ及びメモリ・ドメイン(すなわち、プロセッサ・ノード)を組み込むシステムの部分的なパワーダウンを可能にする。本明細書で説明されるような論理パーティション・ベースの手法はまた、有使用資格容量をあきらめず、従って、一般に、パワーオン待ち時間要件はあまり厳格ではなく、一般に、さらなるディープ・パワーダウンが可能である。
アプリケーション/ジョブ・レベルのワークロード・シフトに優るこうした手法の1つの利点は、この手法が、一般に、アプリケーション/ジョブ・レベルのシフトが一般に要求するクラスター化及び高可用性(HA)構成によって引き起こされるOS及びアプリケーションの複雑さを回避することである。本明細書で説明される手法は、ハードウェア及び/又はソフトウェア保守のような他の目的のために既に使用できる論理パーティション・モビリティ(LPM)能力を利用することができる。従って、このような論理パーティション・モビリティの電力管理への拡張は、幾つかの場合において、クラス化又はHA能力における付加的な投資を必要としない。
本明細書で説明される手法はまた、その各々を静止状態から別個にパワーオフ及びオンすることができる、マルチノードを組み込む上述のPower 770、780及び795システム(例えば、Power 795システムのプロセッサ・ブック、Power 770及びPower 780システムのCECドロワー)のようなモジュラー方式の企業クラス・システムにおける利点も有し得る。ノード・レベルの電力管理は、一般に、それらがサポートできる論理パーティションが多数であり、システム上の全てのパーティションを他のシステムに再配置し、システムをパワーオフできるように、十分な未使用の容量をプール内の他の場所で見つける困難さのために、企業クラスのシステムにとって重要である。従って、本明細書で説明されるシステム及び容量モデリング及び論理パーティション配置アルゴリズムは、システム全体の、並びにこうしたモジュラー方式システムで利用されるような個々のノードのパワーオン/オフをサポートすることができるのに対して、他の手法は、一般に、システム・レベルのパワーオフ/オンに制限される。
本発明の1つの実施形態においては、例えば、イベント駆動型再最適化をコンピュータ・システムのプール上で実行することができ、それらの間で、論理パーティションを移動させて、プール内のコンピュータ・システムの1つ又は複数における十分な容量を解放して、マルチノード・コンピュータ・システムにおける1つ又は複数のノード、又はコンピュータ・システム全体を、例えば低電力状態に移行するなどパワーダウンすることを可能にすることができる。本実施形態のために、コンピュータ・システムのセット又はプールは、電力管理プールと呼ばれる。
同じく本実施形態において、電力管理プール内のコンピュータ・システムは、個別にパワーアップ及びパワーダウンすることができる複数のプロセッサ・ノードを有する企業クラス・システム(例えば、上述のPower 770、780及び795システム)及び複数の別個に電力供給可能なプロセッサ・ノードを有さないローエンド・システムのいずれか又は両方として実装することができる。
一例として、図1は、複数のプール18を示す、ここで各プール18は、幾つかの点で、各々が1つ又は複数のプロセッサ・ノード14を含む1つ又は複数のコンピュータ・システム16を含む電力管理プールと考えることができる。本実施形態のために、各プロセッサ・ノード14は、別個に電力供給可能であるが、他の実施形態においては、本発明はそのように限定されない。
イベント駆動型再最適化を実施するために、幾つかの実施形態において、例えばシステム管理アプライアンス46上などで実行されているオーケストレータ(orchestrator)コンポーネント44を用いることができる。1つの実施形態において、例えば、オーケストレータ・コンポーネントは、パーティション配置ユーティリティと共に働くエネルギー管理ユーティリティを含むことができる。1つの適切な実装は、例えば、Active Energy Managerエネルギー管理ユーティリティ及びVMControlパーティション配置ユーティリティ(全て、インターナショナル・ビジネス・マシーンズ・コーポレーションから入手可能である)を実行しているSystem Directorシステム管理アプライアンスを用いて、オーケストレータ・コンポーネントの機能を実施する。システム管理アプライアンスは、本明細書で述べられる機能を実装するプログラム・コードを実行するための、1つ又は複数のプロセッサ、メモリ及び他のコンピュータ・コンポーネントを含むことができ、幾つかの実施形態においては、本明細書で説明されるイベント駆動型再最適化と共に、システム管理アプライアンスによって、データ処理システム10内にある付加的なプログラム・コード及び/又はハードウェア・コンポーネントにアクセスできることが理解されるであろう。さらに、幾つかの実施形態において、オーケストレータ・コンポーネントの機能は、例えば、論理パーティション内、ハイパーバイザ内、ミドルウェア内、オペレーティング・システム内、システム・ファームウェア内、ハードウェア管理コンソール内など、装置10の1つ又は複数のシステム16内に完全に常駐してもよい。従って、本発明は、主として、示される実施形態において以下に説明されるようなシステム管理アプライアンス内でのイベント駆動型再最適化の特定の実施に限定されないことが理解されるであろう。
示される実施形態におけるシステム管理アプライアンス46は、論理パーティションの有使用資格容量を変更することができる、電力管理プール18内のシステム16と関連したシステム・イベントについて自律的に監視する。この点で、自律的監視は、(幾つかの実施形態において、監視の可能化(enabling)及び不能化(disabling)をサポートできるが)管理者の指示外の管理と考えることができる。システム管理アプライアンス46はまた、論理パーティションを電力が最適化される方法で配置し、1つ又は複数のプロセッサ・ノード又はシステム全体をパワーダウンするのに十分な1つ又は複数のシステム16の利用を減らすように、論理パーティションを1つのシステム16から1つ又は複数の他のシステム16に動的にシフトする。プロセッサ・ノードがパワーダウンされると、ホスト・システム16上のハイパーバイザ28は、そのプロセッサ・ノード上で実行されているあらゆる論理パーティション30を、同じシステム16上の他のプロセッサ・ノード14の利用可能な容量に再配置することができる。さらに、システム管理アプライアンス46は、容量を再びパワーオンする必要があるイベントについて監視し、必要に応じて、そうした容量をパワーオンする。他の実施形態においては、システム管理アプライアンスは、プロセッサ・ノード上への論理パーティションの配置を直接管理することができる。
次に、図3は、本発明の1つの実施形態で用いられる電力管理プール52、システム54、ノード56及び論理パーティション(LPAR)58の1つの例示的なデータ・モデル50を示し、プール52が1つ又は複数のシステム54を含み、各システム54は1つ又は複数のプロセッサ・ノード56を有し、かつ、ある特定の時にこれに割り当てられる1つ又は複数のLPAR58を有することができることを示す。モデル50は、例えば、本発明と整合する方法でイベント駆動型再最適化を実施するために、オーケストレータ及び/又はシステム管理アプライアンスにより用いることができる。
以下の表I〜IVは、モデル50内で定めることができるプール52、システム54、ノード56及びLPAR58の各々についての例示的な属性を提供する。
Figure 0006679146

Figure 0006679146

Figure 0006679146

Figure 0006679146
示される実施形態において、電力管理プール内の論理パーティション及び電力消費の再最適化を開始するために、以下のシステム・イベントを自律的に監視し、それをシステム管理アプリケーションからオーケストレータ・コンポーネントに知らせることができる。:
−論理パーティション・パワーオフ(*)
−論理パーティション・パワーオン
−論理パーティション・ハイバネーション・サスペンド(*)
−論理パーティション・ハイバネーション・レジューム
−プールからのアクティブ論理パーティション・マイグレーション(*)
−プールへのアクティブ論理パーティション・マイグレーション
−動的プロセッサ除去(DLPAR)(*)
−動的プロセッサ付加(DLPAR)
−動的メモリ除去(DLPAR)(*)
−動的メモリ付加(DLPAR)
上記の(*)で示されるイベントは、一般に、パーティションの有使用資格容量減少に起因して、プロセッサ及び/又はメモリ容量を解放させ、パーティションの統合及びプロセッサ・ノード及び/又はシステムのパワーダウン(非アクティブ化)を潜在的に可能にする、有使用資格容量減少システム・イベントと呼ぶことができる。示される実施形態において、これらの有使用資格容量減少システム・イベントは、それが発生した後に、オーケストレータ・コンポーネントに知らせることができる。動的プロセッサ/メモリ除去イベントは、実行されている論理パーティションからプロセッサ/メモリ容量を動的に除去することが理解されるであろう。
上記の(*)で示されていないイベントは、一般に、パーティションの有使用資格容量増大に起因して、付加的なプロセッサ及び/又はメモリ容量を消費させる、有使用資格容量増大システム・イベントと呼ぶことができる。プロセッサ・ノード及び/又はシステムが電力節約の措置としてパワーダウンされる場合、付加的なプロセッサ及び/又はメモリ容量の要件を満たすために、それらの一部又は全てを再びパワーオンする(アクティブ化)ことが望ましい又は必要な場合がある。一般に、示される実施形態において、これらの有使用資格容量増大システム・イベントは、それが発生する前にオーケストレータ・コンポーネントに知らせることができる。動的プロセッサ/メモリ付加イベントは、プロセッサ/メモリ容量を実行中の論理パーティションに動的に付加することが理解されるであろう。
本明細書で検討される実施形態において、有使用資格容量減少システム・イベント又は有使用資格容量増大システム・イベントに応答して、少なくとも1つのノード及び/又はシステムの電力状態を変更することができる。電力状態を変更することは、一般に、電力状態を上昇又は低下させることを含むことができる。電力状態の上昇は、例えば、ノード及び/又はシステムをオフ状態からパワーオンすること、低電力モードから高電力モードに切り替えること、又は、一般にノード又はシステムの処理容量の増大と同時に発生する、ノード又はシステムの電力消費を増大させる他のあらゆる変更を含むことができる。反対に、電力状態の低下は、例えば、ノード及び/又はシステムをオン状態からパワーオフすること、高電力モードから低電力モードに切り替えること、又は一般にノード又はシステムの処理容量の減少と同時に発生するノード又はシステムの電力消費を減少させる他のあらゆる変更を含むことができる。
さらに、有使用資格容量減少又は有使用資格容量増大システム・イベントに応答して、かつ、一般的にノード又はシステムの電力状態の変更と関連して、1つ又は複数の論理パーティションをノード及び/又はシステム間で移動させ、電力管理プール内のノード及び/又はシステム間での論理パーティションの割り当てを効率的に再最適化する(例えば、電力管理の観点から)ことができる。システム・イベントに応答したプール内の論理パーティション割り当てのいずれの再最適化も、論理パーティション割り当ての従来の最適化の再最適化と考えることができることが理解されるであろう。幾つかの実施形態において、本明細書で検討される方法での論理パーティション割り当ての最適化は、手動で又は自動的に実行され得るが、具体的には、例えば最初のシステム・セットアップ後又は管理者により有用と考えられる別の時に、上述のシステム・イベントの1つに応答して実行され得ることも理解されるであろう。
図4〜図5は、有使用資格容量減少システム・イベントが伝えられたとき、及び、上述のように、概ねイベントと関連した動作(例えば、パーティション・パワーオフ、パーティション・ハイバネーション・サスペンド、プールからのアクティブ・パーティション・マイグレーション、動的プロセッサ除去又は動的メモリ除去動作など)が実行された後、オーケストレータ・コンポーネント内で行うことができる処理を示す例示的な再最適化ルーチン100を示す。幾つかの実施形態において、ルーチン100を管理者により手動で開始して、パーティション配置を最適化し、潜在的にはプロセッサ・ノード及び/又はシステムをパワーダウンすることができる。
ルーチン100は、電力管理プールについての上述のモデルを入力として受け取り、ブロック102において、targetFoundフラグを真に設定することから開始することができる。ブロック104は、targetFoundが偽になるまで実行するWHILEループを開始する。ブロック104は、制御をブロック106に渡し、例えば、プール内の各システムについて、そのシステムがパワーオンされ、そのシステムについての有使用資格プロセッサ容量及びメモリ容量(entitledProc及びentitledMem)の両方とも0であるかどうかを判断することによって、プール内のいずれのシステムも、パワーオフ基準を満たすかどうかを判断する。両方とも0である場合、システムをパワーオフすることができる。
次に、ブロック108において、targetFoundが偽に設定され、ブロック110は、プール内の各パワーオン・システムを処理するためのFORループを開始する(幾つかの実施形態においては、パワーオフ・システムはスキップされ得る)。各々のこうしたシステムにおいて、ブロック112は、LPARアレイ、システム・アレイ、ターゲット・ノード変数及びターゲット・システム変数の各々をヌルに初期化し、ブロック114は、FORループを開始して、システム内の各パワーオン・ノードを処理する(幾つかの実施形態においては、パワーオフ・ノードはスキップされ得る)。
図5を参照すると、現在のシステム内の各々のパワーオンされたノードについて、ブロック116は、現在のノードをパワーダウンするために、有使用資格プロセッサ及びメモリ容量をどれくらい減少させる必要があるかを判断し、現在のノードのパワーダウンを可能にするための、現在のシステムからマイグレートすべきパーティション(LPAR)のセットを判断する。1つの実施形態において、例えば、現在のシステム(S)上の現在のノード(N)をパワーダウンするために減少させる必要がある有使用資格プロセッサ及びメモリ容量は、次のように計算することができる。:
Figure 0006679146
さらに、幾つかの実施形態において、計算結果が0を下回る場合、これらの値の各々を0に設定することができる。
1つの実施形態において、現在のシステムからマイグレートすべきパーティションのセットを判断するために、検索を行って、その有使用資格容量の合計が要求される減少に最も近いが依然としてそれを上回るか又はそれに等しいパーティションのセットを決定することができる。こうした決定の入力は、移動すべきパーティションのセットが計算されるシステム、要求される有使用資格プロセッサ容量の減少、及び要求される有使用資格メモリ容量の減少を含むことができ、出力は、現在のシステムからマイグレートすべき1つ又は複数の論理パーティションのアレイである。
次に、ブロック118は、いずれかの適切な論理パーティションが見つかったかどうかを判断し、見つかった場合には、ブロック120は、論理パーティションをマイグレートすべき、宛先システムのセットを判断する。1つの実施形態において、例えば、判断は、LPARアレイを入力として受け取り、マイグレートする論理パーティションを受け取るための十分な余分の有使用資格容量を有する、プール内の他のシステムについて検索し、次に、宛先システムのセットとして結果を出力することができる。1つの実施形態において、LPARアレイ内の各論理パーティションについて、1つの宛先システムを選択することができるが、幾つかの実施形態においては、複数の論理パーティションを特定のシステムに移動することができる。潜在的な宛先システムが十分な容量を有し得るかどうかの判断は、システムについてのinstalledProc、installedMem、activeProc、activeMem、entitledProc、entitledMem、utilizationLimitProc、及び/又はutilizationLimitMem属性に基づくことができ、例えば、十分な余分のインストール容量を有するシステムに優る十分な余分のアクティブ容量を有するシステムの方を好み、システムの利用制限セットに留意する。
次に、ブロック122は、宛先システムのいずれかの適切なセットが見つかったかどうかを判断し、見つかった場合には、制御をブロック124に渡し、現在のノードが、ターゲット・ノード変数内に格納されるあらゆる以前に識別されたノードに比べて、パワーダウンすべき「より良い」選択であるかどうかを判断する。チェックを行って、他のノードがターゲット・ノード変数内にまだ格納されていないかどうかを判断することもでき、これにより、ターゲット・ノード変数により現在のノードが識別される。この点で、1つの実施形態において、ターゲット・ノードの代わりに現在のノードをパワーオフすることにより、潜在的に大きい電力節約を得ることができるので、現在のノードが、ターゲット・ノード変数により識別されるノードより高いパワー要件(powerRating)を有する場合、より良い選択が示され得る。他の実施形態においては、他の基準を用いて、例えば、予想されるパワーダウン時間又は要因の組み合わせに基づいて、1つのノードが別のものに比べてより良い選択であるかどうかを判断することができる。
現在のノードがより良い選択であると考えられる場合、ブロック124は、制御をブロック126に渡し、ターゲット・ノード変数を、現在のノードを識別するように設定し、ターゲット・システム変数を、現在のシステムを識別するように設定し、LPARアレイをブロック116において判断されたLPARのセットに設定し、システム・アレイをブロック120において識別されたシステムのセットに設定し、targetFoundを真に設定して、パワーダウンすべき適切なノードが見つかったことを示す。ブロック126の完了時、又はブロック118、122、又は124のいずれかにおける否定の判断に応答して、制御は、ブロック114(図4)に戻り、引き続き現在のシステム内のノードを繰り返す。ひとたび現在のシステム内の全てのノードが処理されると、ブロック114は、制御をブロック110に戻し、引き続きプール内の他のシステムを繰り返す。
ひとたび全てのシステムが処理されると、ブロック110は、制御をブロック128に渡し、targetFoundが真に設定されたかどうかを判断する。真に設定された場合、制御はブロック130に渡り、LPARアレイ内の論理パーティションをシステム・アレイ内のシステムにマイグレートさせ、ターゲット・ノード及びターゲット・ノード変数により識別されたノードをパワーオフする。ブロック130の完了時、又はブロック128において、targetFoundが偽であると判断された場合、制御はブロック104に戻り、最後の繰り返しによりパワーダウンすべき適切ターゲット・ノードが識別された(targetFoundが真である)場合、別の繰り返しを実行する。ひとたび更なるパワーダウンの機会が識別されると、ブロック104はルーチン100を終了する。
次に、図6〜図9は、有使用資格容量増大システム・イベントが伝えられたとき、オーケストレータ・コンポーネントにおいて行い得る処理を示す例示的な再最適化ルーチン150を示す。幾つかの実施形態において、ルーチン150は、管理者により手動で開始することもできる。
ルーチン150は、一般に、イベントと関連した動作(例えば、パーティション・パワーオン、パーティション・ハイバネーション・レジューム、プールへのアクティブ・パーティション・マイグレーション、動的プロセッサ付加又は動的メモリ付加動作など)が行われる前に呼び出すことができる。ルーチン150は、電力管理プールのモデル、並びに増大イベントに対応するのに必要なプロセッサ及びメモリ容量を入力として受け取ることができる。幾つかの実施形態において、必要なプロセッサ及びメモリ容量ではなく、パワーオン/レジューム/マイグレートすべきパーティションの識別を与えることができ、モデルから、必要とされるプロセッサ及びメモリ容量を得ることができる。
ルーチン150は、ブロック152において、ターゲット・システム変数をヌルに設定することから始まる。この変数は、要求される容量を用いることができるシステムを示すために、ルーチンの結果として戻される。次に、ブロック154は、FORループを開始し、既にパワーオンしているリソースから、パーティションを移動することなく、要求される容量を満たすことができるかどうかを判断する。プール内の各パワーオン・システムについて、ターゲット・システム変数がヌルの間、ブロック156は、要求されるアクティブ・プロセッサ及びメモリ容量を判断する。例えば、1つの実施形態において、要求される容量は、現在のシステム(S)について、以下のように求めることができる。:
Figure 0006679146
次にブロック158は、現在のシステム(S)が十分にアクティブ・プロセッサ及びメモリ容量を有するかどうか(例えば、S.activeProc≧requiredActiveProc及びS.activeMem≧requiredActiveMem)を判断する。有する場合、ターゲット・システムは現在のシステムに設定され、制御はブロック154に戻り、これにより、ターゲット・システムはもはやヌルではないので、ブロック154は制御をブロック162に渡す。同様にブロック158が、現在のシステムは十分なアクティブ容量を有していないと判断した場合、ブロック158は制御をブロック154に渡し、プール内の付加的なパワーオン・システムを処理する。
次にブロック162は、ターゲット・システム変数が依然としてヌルかどうか(従って、要求される容量にまだ対応していないこと)を判断し、ヌルである場合、制御をブロック164に渡し、別のFORループを開始して、プール内の各々のパワーオン・システムを処理し、1つ又は複数のパーティションを移動することによって、既にパワーオンしているリソースから要求される容量に対応できるかどうかを判断する。各々のパワーオン・システムについて、ブロック164は、制御をブロック166(図7)に渡し、LPAR及びシステム・アレイを最初にヌルに設定する。
次にブロック168は、要求される容量に対応するために、現在のシステムにおいて、どれだけの有使用資格プロセッサ及びメモリ容量を減少させる必要があるかを判断し、要求される容量の減少を達成するために、現在のシステムからマイグレートすべきパーティションのセットを判定する。次に、判定したパーティションのセットをLPARアレイ内に格納する。1つの実施形態において、例えば、減少させる必要がある有使用資格プロセッサ及びメモリ容量は、requestedProcCapacity及びrequestedMemCapacityを用いて、以下のように計算することができる。:
Figure 0006679146
1つの実施形態において、検索を行って、現在のシステムからマイグレートすべきパーティションのセットを判定し、その有使用資格容量の合計が要求される容量の減少に最も近く、しかし依然としてそれより大きいか又はそれに等しいパーティションのセットを判定することができる。こうした判定の入力は、移動すべきパーティションのセットが計算されるシステム、要求される有使用資格プロセッサ容量減少、及び要求される有使用資格メモリ容量減少を含むことができ、出力は、現在のシステムからマイグレートすべき1つ又は複数の論理パーティションのアレイである。
次に、ブロック170は、いずれかの適切な論理パーティションが見つかったかどうか(すなわち、LPARアレイがヌルではないこと)を判断し、見つかった場合には、ブロック172は、LPARアレイ内の論理パーティションをマイグレートすべき宛先システムのセットを判定し、その結果をシステム・アレイに格納する。1つの実施形態において、例えば、判定は、図5のブロック120について上述したものと同様の方法で行うことができる。
次に、ブロック174は、宛先システムのいずれかの適切なセットが見つかったかどうか(すなわち、LPARアレイがヌルではないこと)を判断し、見つかった場合には、制御をブロック176に渡し、LPARアレイ内のパーティションをシステム・アレイ内のシステムにマイグレートし、ターゲット・システムを現在のシステムに設定する。
ブロック176の完了時、又はブロック170若しくは174のいずれかにおける否定の判断に応答して、制御はブロック164(図4)に戻り、引き続きプール内の他のシステムを繰り返す。ひとたび全てのシステムが処理されると、ブロック164は、制御をブロック178に渡し、ターゲット・システム変数が依然としてヌルかどうか(従って、要求される容量にまだ対応していないこと)を判断する。
依然としてヌルである場合、制御はブロック180に渡り、プール内のパワーオン・システム上のノードをパワーオンすることにより、要求される容量に対応できるかどうかを確認しようと試みる。具体的には、ブロック180は、最適ノード・アレイ及び最適システム変数をヌルに設定する。最適ノード・アレイは、要求される容量に対応するためにパワーオンするのに適していると判断された1つ又は複数のノードを格納する。最適システム変数は、最適ノード・アレイ内のノードが常駐するシステムを示す。
次に、ブロック182はFORループを開始し、プール内の各パワーオン・システムを処理する。各々のそうしたシステムについて、ブロック182は、制御をブロック184(図8)に渡し、要求されるアクティブ・プロセッサ及びメモリ容量の増大を判断し、要求される増大に対応するために、パワーオフ・ノードのセットをパワーオンするかどうかを判断する。1つの実施形態において、例えば、以下の値を計算して、システム(S)についての要求されるアクティブ・プロセッサ及びメモリ容量の増大を求めることができる。:
Figure 0006679146
パワーオンすべきパワーオフ・ノードの判断は、ノードの電力定格を考慮に入れることができる、選択されたセットは、全ての有資格(eligible)セットの間で最小量の電力を使用する。
次に、ブロック186は、パワーオンすべきパワーオフ・ノードのセットが見つかったかどうかを判断し、見つかった場合には、そのセットが、現在の最適ノード・アレイ内に格納されたセット(あるとすれば)に比べて「より良い」かどうかを判断する。例えば、判断されたセット及び最適ノード・アレイの総電力定格の間で比較を行うことができ、判断されたセットがより低い総電力定格を有する場合、制御はブロック188に渡り、最適ノード・アレイを判断されたセットに設定し、最適システムをノードの判断されたセットが常駐する現在のシステムに設定する。
ブロック188の完了時、又はブロック186が、最適ノード・アレイが依然として最適であると判断した場合、制御はブロック182(図6)に戻り、プール内の残りのパワーオン・システムを処理する。ひとたび全てのシステムが処理されると、ブロック182は次に、制御をブロック190(図9)に渡し、最適ノードのセットが見つかったかどうか(すなわち、最適ノード・アレイがヌルではないこと)を判断する。見つかった場合、制御はブロック192に渡り、最適ノード・アレイ内の各ノードをパワーオンし、ターゲット・システムを判断された最適システムに設定する。
ブロック192の完了時、又はブロック190において最適なノードが見つからなかった場合、制御はブロック194に渡り、ターゲット・システム変数が依然としてヌルであるかどうか(従って、要求される容量にまだ対応していないこと)を再び判断する。依然としてヌルである場合、次に制御はブロック196に移り、システム全体をパワーオンすることにより、要求される容量に対応できるかどうかを判断するためのプロセスを開始する。具体的には、ブロック196は、一時的ターゲット・システム変数をヌルに設定し、ブロック198は、FORループを開始して、プール内の各々のパワーオフ・システムを処理する。各々のこうしたシステムについて、ブロック200は、例えば、要求される容量を、システムの利用制限(例えば、utilizationLimitProc及びutilizationLimitMem)で割ることにより、システムの要求されるアクティブ容量を求める。
次に、ブロック202は、システムのインストール済み容量(installedProc及びinstalledMem)が要求されるアクティブ容量を満たすかどうか(例えば、それより大きい又はそれに等しいこと)を判断する。満たす場合、ブロック202はまた、現在のシステムのインストールされた容量が、一時的ターゲット・システム変数により識別されるシステムのもの(もしあれば)を下回るかどうかも判断する。下回る場合、制御はブロック204に渡り、一時的ターゲット・システム変数を現在のシステムに設定する。ブロック204の完了時、又はブロック202が、現在のシステムが適正であると判断しなかった場合、制御はブロック198に戻り、プール内のあらゆる残りのパワーオフ・システムを処理する。
ひとたび全てのパワーオフ・システムが処理されると、ブロック198は、制御をブロック206に渡し、一時的ターゲット・システム変数がヌルでないかどうか(すなわち、パワーオンするのに適したシステムを識別すること)を判断する。ヌルでない場合、制御はブロック208に渡り、一時的ターゲット・システム変数により識別されるシステムをパワーオンし、ターゲット・システム変数をパワーオン・システムに設定する。次に、制御はブロック210に渡り、ターゲット・システム変数を戻し、ルーチンを終了する。
ブロック206が、一時的ターゲット・システム変数がヌルであると判断した場合、ブロック208が迂回され、制御はブロック210に進み、ルーチンを終了する。さらに、ターゲット・システム変数が非ヌル値に設定され、それにより要求される容量に対応したことが示されるや否や、ブロック162、178及び194の各々は、制御をブロック210に有効に渡すことも理解されるであろう。
本発明と整合する例証される実施形態に対して種々の変更をなすことができる。従って、本発明は、以下の添付の特許請求の範囲内にある。
10:論理的にパーティション化されたコンピューティング環境、装置
14:プロセッサ・ノード
16:データ処理システム
18、52:プール
20:プロセッサ
22:メモリ
24:入力/出力(I/O)ハードウェア
26:ネットワーキング
28:ハイパーバイザ
30、58:論理パーティション(LPAR)
38:オペレーティング・システム
40:ミドルウェア
42:ジョブ/アプリケーション
44:オーケストレータ・コンポーネント
46:システム管理アプライアンス
50:データ・モデル
52:電力管理プール
54:システム
56:ノード
100、150:ルーチン

Claims (11)

  1. 論理的にパーティション化された複数のデータ処理システムが含まれるプール内に配置された複数のプロセッサ・ノードのコレクションを含むコンピューティング環境において電力消費を管理する方法であって、
    前記コンピューティング環境における電力消費を最適化するために、前記複数のデータ処理システムの前記プールに複数の論理パーティションを割り当てることと、
    前記複数の論理パーティションを割り当てた後、前記複数のデータ処理システムの前記プール内で実行されている複数の論理パーティションに保証される有使用資格容量を変更する動作に応答して通知されるシステム・イベントについて、前記複数のデータ処理システムの前記プールを自律的に監視することと、
    前記複数のデータ処理システムの前記プールの監視に基づいて、前記複数のデータ処理システムの前記プール内で実行されている前記複数の論理パーティションに保証される有使用資格容量の変更にかかる第1のシステム・イベントを検出することと、
    前記第1のシステム・イベントの検出に応答して、前記最適化のために割り当てられた複数の論理パーティションのうちの少なくとも1つを含むサブセットを、前記複数のプロセッサ・ノードのコレクション内で動的に再割り当てし、かつ、前記複数のデータ処理システムの前記プール内に配置された前記コレクション内の前記複数のプロセッサ・ノードの少なくとも1つの電力状態を動的に修正することによって、前記コンピューティング環境における電力消費を再最適化することと、
    を含む、方法。
  2. 前記複数のデータ処理システムは、それぞれ、プロセッサ・ノードの集合を含み、前記コレクションは、前記プール中の前記複数のデータ処理システムそれぞれのプロセッサ・ノードの集合を含み、前記コンピューティング環境における電力消費を再最適化することは、各データ処理システム内での総有使用資格容量および各論理パーティションの有使用資格容量に基づいて、データ処理システム間で移動させる論理パーティションのセットを判断することを含む、請求項に記載の方法。
  3. 前記プロセッサ・ノードのコレクションは、前記複数のデータ処理システムの前記プールの第1のデータ処理システム内に配置された第1のプロセッサ・ノードを含み、前記第1のシステム・イベントは前記複数のデータ処理システムの前記プール内で実行されている複数の論理パーティションに保証される有使用資格容量を減少させる動作に基づくものであり、前記コンピューティング環境における電力消費を再最適化することは、前記第1のプロセッサ・ノードの前記電力状態を低下させること、及び、前記第1のプロセッサ・ノードに割り当てられた少なくとも1つの論理パーティションを、前記第1のデータ処理システムとは異なるデータ処理システム内の1つ又は複数の異なるプロセッサ・ノードに移動することを含む、請求項1または2に記載の方法。
  4. 前記第1のシステム・イベントは、論理パーティション・パワーオフ・イベント、論理パーティション・ハイバーネーション・サスペンド・イベント、プールからのアクティブ論理パーティション・マイグレーション・イベント、論理パーティションからの動的プロセッサ容量除去イベント、又は論理パーティションからの動的メモリ容量除去イベントである、請求項に記載の方法。
  5. 前記プロセッサ・ノードのコレクションは、前記複数のデータ処理システムの前記プールの第1のデータ処理システム内に配置された第1のプロセッサ・ノードを含み、前記第1のシステム・イベントは前記複数のデータ処理システムの前記プール内で実行されている複数の論理パーティションに保証される有使用資格容量を増大させる動作に基づくものであり、前記再割り当ては、少なくとも各データ処理システム内での総有使用資格容量に基づいて行われ、前記コンピューティング環境における電力消費を再最適化することは、前記第1のプロセッサ・ノードの前記電力状態を増大させること、及び、増大した前記総有使用資格容量を満たすために前記第1のプロセッサ・ノードの電力レベルを増大させることによって得られる容量を用いることを含む、請求項1または2に記載の方法。
  6. 前記第1のシステム・イベントは、論理パーティション・パワーオン・イベント、論理パーティション・ハイバーネーション・レジューム・イベント、プールへのアクティブ論理パーティション・マイグレーション・イベント、論理パーティションへの動的プロセッサ容量付加イベント、又は論理パーティションへの動的メモリ容量付加イベントである、請求項に記載の方法。
  7. 前記複数のデータ処理システムの前記プールの第1のデータ処理システムは、前記プロセッサ・ノードのコレクションからの第1及び第2のプロセッサ・ノードを含み、前記電力状態を動的に修正することは、前記第2のプロセッサ・ノードの電力状態を維持しながら、前記第1のプロセッサ・ノードをパワーダウン又はパワーアップすることを含む、請求項1〜6のいずれか1項に記載の方法。
  8. 前記複数のデータ処理システムの前記プールの第1のデータ処理システムは、前記プロセッサ・ノードのコレクションからの複数のプロセッサ・ノードを含み、前記複数のデータ処理システムの前記プールの第2のデータ処理システムは、前記プロセッサ・ノードのコレクションからの単一のプロセッサ・ノードを含み、前記電力状態を動的に修正することは、前記第1のデータ処理システム内の前記複数のプロセッサ・ノードの各々の電力状態を維持しながら、前記第2のデータ処理システムをパワーダウン又はパワーアップすることを含む、請求項1〜6のいずれか1項に記載の方法。
  9. 論理的にパーティション化された複数のデータ処理システムが含まれるプール内に配置された複数のプロセッサ・ノードのコレクションを含むコンピューティング環境において電力消費を管理する方法であって、
    前記プールに割り当てられ該プール内で実行されている複数の論理パーティションに保証される有使用資格容量を減少させる動作に応答して通知されるイベントを検知するステップと、
    前記イベントを検知したことに応答して、前記プール内に配置された前記コレクション内の前記プロセッサ・ノードの少なくとも1つの電力状態を低下させるように、当該複数のデータ処理システムそれぞれに割り当てられた論理パーティションを当該複数のデータ処理システム間で再配置するステップと、
    を含む方法。
  10. 請求項1乃至9の何れか一項に記載の方法の全てのステップを実行する手段を含むシステム。
  11. 請求項1乃至9の何れか一項に記載の方法の全てのステップをコンピュータに実行させるための命令を含むコンピュータ・プログラム。
JP2017527913A 2014-12-19 2015-12-02 電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化 Active JP6679146B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/576,370 2014-12-19
US14/576,370 US9886083B2 (en) 2014-12-19 2014-12-19 Event-driven reoptimization of logically-partitioned environment for power management
PCT/IB2015/059280 WO2016097913A1 (en) 2014-12-19 2015-12-02 Event-driven reoptimization of logically-partitioned environment for power management

Publications (2)

Publication Number Publication Date
JP2018504665A JP2018504665A (ja) 2018-02-15
JP6679146B2 true JP6679146B2 (ja) 2020-04-15

Family

ID=56126024

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017527913A Active JP6679146B2 (ja) 2014-12-19 2015-12-02 電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化

Country Status (6)

Country Link
US (3) US9886083B2 (ja)
JP (1) JP6679146B2 (ja)
CN (1) CN107003713B (ja)
DE (1) DE112015004564B4 (ja)
GB (1) GB2549230B (ja)
WO (1) WO2016097913A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9983652B2 (en) * 2015-12-04 2018-05-29 Advanced Micro Devices, Inc. Balancing computation and communication power in power constrained clusters
US10445009B2 (en) * 2017-06-30 2019-10-15 Intel Corporation Systems and methods of controlling memory footprint
US10824215B2 (en) 2018-07-31 2020-11-03 Nutanix, Inc. Managing power budget of multiple computing node clusters in a computing rack system
CN109708086A (zh) * 2018-12-05 2019-05-03 新奥数能科技有限公司 一种优化泛能站中燃气锅炉调度的方法和装置
JP7280476B2 (ja) * 2019-01-30 2023-05-24 日本電信電話株式会社 クラスタリングシステムおよびクラスタリング方法
CN111861551B (zh) * 2020-07-08 2023-12-05 海宁同兴智慧园区管理有限公司 一种园区用电智慧监测管理系统
US11972304B1 (en) * 2021-05-25 2024-04-30 United Services Automobile Association (Usaa) Systems and methods for automatic detection of an event and providing resources customized based on the event

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7167821B2 (en) * 2000-06-06 2007-01-23 Microsoft Corporation Evaluating hardware models having resource contention
US7523454B2 (en) 2001-03-06 2009-04-21 Hewlett-Packard Development Company, L.P. Apparatus and method for routing a transaction to a partitioned server
JP4119239B2 (ja) 2002-12-20 2008-07-16 株式会社日立製作所 計算機資源割当方法、それを実行するための資源管理サーバおよび計算機システム
US8156490B2 (en) * 2004-05-08 2012-04-10 International Business Machines Corporation Dynamic migration of virtual machine computer programs upon satisfaction of conditions
US20140067771A2 (en) 2004-07-09 2014-03-06 International Business Machines Corporation Management of a Scalable Computer System
JP4895266B2 (ja) * 2005-12-28 2012-03-14 富士通株式会社 管理システム、管理プログラムおよび管理方法
US8146089B2 (en) 2006-06-14 2012-03-27 Intel Corporation Sharing resources of a partitioned system
CN101470634B (zh) 2007-12-24 2012-05-09 联想(北京)有限公司 Cpu资源调度方法及cpu资源调度装置
JP4488072B2 (ja) * 2008-01-18 2010-06-23 日本電気株式会社 サーバシステム、及びサーバシステムの電力削減方法
US7650488B2 (en) 2008-06-18 2010-01-19 Intel Corporation Communication between processor core partitions with exclusive read or write to descriptor queues for shared memory space
JP4922255B2 (ja) * 2008-06-30 2012-04-25 株式会社日立製作所 情報処理システムおよびそのシステムにおける省電力制御方法
US9047083B2 (en) * 2008-09-15 2015-06-02 Vmware, Inc. Reducing power consumption in a server cluster
US8910169B2 (en) 2008-09-30 2014-12-09 Intel Corporation Methods and systems to perform a computer task in a reduced power consumption state
US8117613B2 (en) * 2009-04-08 2012-02-14 Microsoft Corporation Optimized virtual machine migration mechanism
JP5471080B2 (ja) * 2009-06-30 2014-04-16 日本電気株式会社 情報システム、制御装置、そのデータ処理方法およびプログラム
JP5531465B2 (ja) * 2009-06-30 2014-06-25 日本電気株式会社 情報システム、制御装置、そのデータ処理方法およびプログラム
US8291430B2 (en) 2009-07-10 2012-10-16 International Business Machines Corporation Optimizing system performance using spare cores in a virtualized environment
JP5435399B2 (ja) * 2009-10-07 2014-03-05 日本電気株式会社 省電力化システム、省電力化方法、及び省電力化用プログラム
JP5378946B2 (ja) * 2009-10-26 2013-12-25 株式会社日立製作所 サーバ管理装置およびサーバ管理方法
US8402259B2 (en) 2009-11-30 2013-03-19 International Business Machines Corporation Accelerating wake-up time of a system
US8627123B2 (en) * 2010-03-25 2014-01-07 Microsoft Corporation Managing power provisioning in distributed computing
JP5097263B2 (ja) * 2010-12-17 2012-12-12 株式会社日立製作所 計算機システム、その消費電力低減方法、及びそのプログラム
JP5664339B2 (ja) * 2011-03-01 2015-02-04 富士通株式会社 情報処理装置、仮想マシン管理方法および仮想マシン管理プログラム
US8819691B2 (en) 2011-05-04 2014-08-26 International Business Machines Corporation Logical partition defragmentation within a data processing system
JP5576827B2 (ja) * 2011-06-03 2014-08-20 日本電信電話株式会社 サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラム
US8909785B2 (en) 2011-08-08 2014-12-09 International Business Machines Corporation Smart cloud workload balancer
US8745237B2 (en) 2011-10-21 2014-06-03 Red Hat Israel, Ltd. Mapping of queues for virtual machines
US9047087B2 (en) * 2012-02-01 2015-06-02 Vmware, Inc. Power management and virtual machine migration between logical storage units based on quantity of shared physical storage units
EP2839373A4 (en) 2012-04-16 2015-12-09 Hewlett Packard Development Co ORCHESTRATION OF VIRTUAL CALCULATION RESOURCES
US9158668B2 (en) 2012-06-27 2015-10-13 International Business Machines Corporation System and program product to allocate and reallocate CPU resources needed to utilize full available network adapter bandwidth capacity for logical partition migration
WO2014045549A1 (ja) * 2012-09-19 2014-03-27 日本電気株式会社 マシン配置計画を生成する情報処理装置及びマシン配置計画生成方法
US20140237475A1 (en) * 2013-02-15 2014-08-21 Apple Inc. Sleep/wake with suppression and donated importance
JP6032089B2 (ja) * 2013-03-26 2016-11-24 富士通株式会社 管理プログラム、装置及び方法
US9189410B2 (en) 2013-05-17 2015-11-17 Vmware, Inc. Hypervisor-based flash cache space management in a multi-VM environment
US9262799B2 (en) 2013-11-08 2016-02-16 Silicon Graphics International Corp. Shared memory eigensolver
US10397131B2 (en) 2014-09-09 2019-08-27 Vmware, Inc. Method and system for determining bandwidth demand

Also Published As

Publication number Publication date
JP2018504665A (ja) 2018-02-15
GB2549230B (en) 2019-05-29
CN107003713B (zh) 2020-03-24
DE112015004564T5 (de) 2017-06-22
US10664040B2 (en) 2020-05-26
US20160179185A1 (en) 2016-06-23
DE112015004564B4 (de) 2020-04-02
CN107003713A (zh) 2017-08-01
GB201711272D0 (en) 2017-08-30
US9772677B2 (en) 2017-09-26
US20160179583A1 (en) 2016-06-23
US20180081423A1 (en) 2018-03-22
WO2016097913A1 (en) 2016-06-23
US9886083B2 (en) 2018-02-06
GB2549230A (en) 2017-10-11

Similar Documents

Publication Publication Date Title
JP6679146B2 (ja) 電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US11181970B2 (en) System and method for performing distributed power management without power cycling hosts
US9977689B2 (en) Dynamic scaling of management infrastructure in virtual environments
US10241674B2 (en) Workload aware NUMA scheduling
US9268394B2 (en) Virtualized application power budgeting
US11237856B2 (en) Mobility operation resource allocation
US8489744B2 (en) Selecting a host from a host cluster for live migration of a virtual machine
US10298512B2 (en) System and method for performing resource allocation for a host computer cluster
US9529642B2 (en) Power budget allocation in a cluster infrastructure
US20140250439A1 (en) Systems and methods for provisioning in a virtual desktop infrastructure
US20160196157A1 (en) Information processing system, management device, and method of controlling information processing system
US10789668B2 (en) Intelligent provisioning of virtual graphic processing unit resources
US10540206B2 (en) Dynamic virtual processor manager
US10732975B2 (en) Performance scaling for binary translation
US20120144389A1 (en) Optimizing virtual image deployment for hardware architecture and resources
US20150220442A1 (en) Prioritizing shared memory based on quality of service
US20160147285A1 (en) Management of power consumption in large computing clusters
US10412193B2 (en) Usage-aware standby service in a grid environment

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170713

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180817

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190702

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20190709

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190710

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190920

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20200304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200316

R150 Certificate of patent or registration of utility model

Ref document number: 6679146

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150