JP3659324B2 - コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品 - Google Patents
コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品 Download PDFInfo
- Publication number
- JP3659324B2 JP3659324B2 JP2000290041A JP2000290041A JP3659324B2 JP 3659324 B2 JP3659324 B2 JP 3659324B2 JP 2000290041 A JP2000290041 A JP 2000290041A JP 2000290041 A JP2000290041 A JP 2000290041A JP 3659324 B2 JP3659324 B2 JP 3659324B2
- Authority
- JP
- Japan
- Prior art keywords
- logical
- logical partition
- partition
- central processing
- processors
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
Description
【発明の属する技術分野】
本発明は、全般的にはコンピュータ・システム内のワークロードの管理に関し、具体的には、論理分割されたシステムなどの分割されたシステムでのワークロードの管理に関する。
【0002】
【従来の技術】
論理分割を用いると、単一の物理計算機または中央演算処理装置複合システム(CPC)内で複数のシステム・イメージを確立することができる。各システム・イメージは、別々のコンピュータ・システムであるかのように動作することができる。すなわち、各論理区画は、独立にリセットでき、論理区画ごとに異なるものとすることのできるオペレーティング・システムを当初にロードでき、異なる入出力装置を使用して異なるソフトウェア・プログラムと共に動作することができる。
【0003】
論理分割されたコンピュータ・システムの例は、たとえば、米国特許第4564903号明細書、米国特許第4843541号明細書、および米国特許第5564040号明細書に記載されている。
【0004】
論理分割されたシステムの商業実施形態には、たとえば、プロセッサ・リソース/システム管理機構(PR/SM)を備えたIBM S/390プロセッサが含まれ、PR/SMは、たとえば、IBM社の出版物「Processor Resource/Systems Manager Planning Guide」、GA22−7236−04、1999年3月に記載されている。
【0005】
【発明が解決しようとする課題】
論理分割されたシステムの重要な態様の1つが、そのシステムの区画内で稼動するワークロードの管理である。たとえば、S/390システムでは、ワークロード・マネージャを使用して、区画内および区画間でワークロードを管理する。ワークロード・マネージャは、作業をシステムの物理リソースに移動することによって、ワークロードの平衡化を試みる。しかし、作業を移動するためには、リロケートされる作業が必要とするデータが、移動先の位置にあることを保証することが重要である。この必要が、作業の移動を制限することがしばしばである。したがって、論理分割されたシステム内でワークロードを平衡化するための努力が行われてきたが、さらなる必要が存在し、さらなる努力が必要である。
【0006】
【課題を解決するための手段】
コンピュータ環境の論理プロセッサを管理する方法を提供することにより、従来技術の短所が克服され、追加の長所がもたらされる。この方法には、たとえば、1つまたは複数の論理プロセッサを用いてコンピュータ環境の論理区画を構成するステップと、その構成を動的に調整するステップが含まれる。
【0007】
一例では、動的調整は、論理区画のワークロードに応答する。
【0008】
もう1つの例では、この方法に、さらに、構成を調整しなければならないかどうかを判定するステップが含まれる。一例では、この判定で、判定を行うために定義済みの式が使用される。
【0009】
上で要約した方法に対応するシステムおよびコンピュータ・プログラム製品も、本明細書に記載され、請求される。
【0010】
有利なことに、本発明の少なくとも一態様によって、コンピュータ環境の論理区画の論理プロセッサの構成の動的調整が可能になる。これによって、論理区画に構成される論理プロセッサの数を、論理区画に割り当てられる(またはそれによって使用される)CPC能力を提供するために望まれる物理CPUの数に近い状態に保つことが可能になる。さらに、管理される論理プロセッサの数が最小になる。
【0011】
追加の特徴および長所は、本発明の技法を介して実現される。本発明の他の実施形態および態様は、本明細書に記載されており、請求される発明の一部とみなされる。
【0012】
【発明の実施の形態】
コンピュータ環境のリソースの割振りの動的調整によって、その環境のワークロードを平衡化できるようにする、ワークロード管理機能を提供する。一例では、コンピュータ環境に、複数の論理区画が含まれ、ワークロードは、複数の区画にまたがって管理される。
【0013】
本発明のワークロード管理機能を組み込まれ、これを使用するコンピュータ環境の一実施形態を、図1に関連して説明する。コンピュータ環境100は、たとえば、米国ニューヨーク州アーモンクのInternational Business Machines Corporationが提供するエンタープライズ・システム・アーキテクチャー(ESA)/390に基づく。ESA/390は、IBM社の出版物、「Enterprise Systems Architecture/390 Principles Of Operation」、IBM Publication No.SA22−7201−04、1997年6月に記載されている。ESA/390に基づくコンピュータ環境の一例が、International Business Machines Corporationが提供する9672 Parallel Enterprise Serverである。
【0014】
コンピュータ環境100には、たとえば、1つまたは複数の中央処理装置106(たとえばCP1ないしCP4)、1つまたは複数の論理区画108(たとえば論理区画(LP1ないしLP4))、および少なくとも1つの論理区画マネージャ110を有する中央演算処理装置複合システム(CPC)102が含まれる。これらのそれぞれを、下で説明する。
【0015】
中央処理装置106は、論理区画に割り振られる物理プロセッサ・リソースである。具体的に言うと、各論理区画108は、1つまたは複数の論理プロセッサ(図を明瞭にするために特に図示せず)を有し、この論理プロセッサのそれぞれが、その区画に割り振られた物理プロセッサである中央処理装置106のすべてまたは共用部分を表す。特定の論理区画108の論理プロセッサは、その区画専用(その結果、基礎になる中央処理装置106がその区画のために予約される)とするか、別の区画と共用する(その結果、基礎になるプロセッサ・リソースが、潜在的に別の区画から使用可能になる)のいずれかとすることができる。
【0016】
図示の特定の例では、論理区画LP1ないしLP4のそれぞれが、常駐するオペレーティング・システム112(論理区画ごとに異なるものとすることができる)と1つまたは複数のアプリケーション114を有する別々のシステムとして機能する。一実施形態では、オペレーティング・システム112は、International Business Machines Corporationが提供するOS/390またはMVS/ESAオペレーティング・システムである。
【0017】
さらに、各オペレーティング・システム(またはそのサブセット)には、区画内および区画間でワークロードを管理するためのワークロード・マネージャ116が含まれる。ワークロード・マネージャの一例が、International Business Machines Corporationが提供するWLMである。WLMは、たとえば、米国特許第5473773号明細書および米国特許第5675739号明細書に記載されている。
【0018】
論理区画108は、中央処理装置106上で稼動するマイクロコードによって実施される論理区画マネージャ110によって管理される。論理区画108(LP1ないしLP4)および論理区画マネージャ110のそれぞれには、中央処理装置に関連する中央記憶装置のそれぞれの部分に常駐する1つまたは複数のプログラムが含まれる。論理区画マネージャ110の一例が、PR/SMである。
【0019】
コンピュータ環境のもう1つの実施形態では、複数の中央演算処理装置複合システムが、図2に示されているように互いに結合されて、シスプレックスを形成する。一例として、中央演算処理装置複合システム(CPC)102は、たとえば結合装置122を介して、1つまたは複数の他のCPC120に結合される。
【0020】
図示の例では、CPC120に、複数の論理区画124(たとえばLP1ないしLP3)が含まれ、これらの論理区画は、論理区画マネージャ126によって管理される。1つまたは複数の論理区画に、オペレーティング・システムが含まれ、この論理区画は、ワークロード・マネージャおよび1つまたは複数のアプリケーション・プログラムを有することができる(図を明瞭にするためにこの例では図示せず)。さらに、CPC120には、複数の中央処理装置128(たとえばCP1ないしCP3)が含まれ、その中央処理装置のリソースは、複数の論理区画の間で割り振られる。具体的に言うと、リソースは、各区画の1つまたは複数の論理プロセッサ130の間で割り振られる(他の実施形態では、各CPCが、1つまたは複数の論理区画と、1つまたは複数の中央処理装置を有することができる)。
【0021】
結合装置122(別名、構造化外部ストレージ(SES)プロセッサ)は、中央演算処理装置複合システムによってアクセス可能な記憶装置を含み、CPC内のプログラムによって要求される動作を実行する。結合装置は、共用リソース再分配決定を行う際に使用される状態情報の共用のために本発明のさまざまな態様によって使用される(一実施形態では、各中央演算処理装置複合システムが、複数の結合装置に結合される)。結合装置の動作の諸態様は、米国特許第5317739号明細書、米国特許第5561809号明細書、および米国特許第5706432号明細書などの参考文献に詳細に記載されている。
【0022】
一実施形態では、1つまたは複数の中央処理装置が、少なくとも1つのチャネル・サブシステムに結合され、このチャネル・サブシステムは、入出力装置との通信に使用される。たとえば、中央処理装置200(図3)は、主記憶装置202および少なくとも1つのチャネル・サブシステム204に結合される。チャネル・サブシステム204は、さらに、1つまたは複数の制御装置206に結合される。制御装置は、1つまたは複数の入出力装置208に結合される。
【0023】
チャネル・サブシステムは、入出力装置と主記憶装置の間の情報の流れを指示する。チャネル・サブシステムは、中央処理装置を、入出力装置と直接に通信するという作業から解放し、入出力処理と並列にデータ処理を進行できるようにする。チャネル・サブシステムは、入出力装置208との間の情報の流れを管理する際の通信リンクとして、1つまたは複数のチャネル・パス214を使用する。
【0024】
各チャネル・パス214には、たとえば、チャネル・サブシステム204のチャネル210、制御装置206、およびチャネルと制御装置の間のリンク212が含まれる。他の実施形態では、チャネル・パスが、複数のチャネル、制御装置またはリンクを有することができる。さらに、もう1つの例では、チャネル・パスの一部として、1つまたは複数の動的交換機を有することも可能である。動的交換機は、チャネルおよび制御装置に結合され、交換機に付加されるリンクの任意の2つを物理的に相互接続する能力を提供する。チャネル・サブシステムに関するさらなる詳細は、参照によってその全体を本明細書に組み込まれる米国特許第5526484号明細書に記載されている。
【0025】
本発明の一態様では、さまざまな物理リソースが、1つまたは複数のワークロード・マネージャの指示の下で、コンピュータ環境の論理区画の間で動的に再分配される。この動的再分配は、アプリケーション・サブシステムにとって透過的である。例として、再分配される物理リソースには、CPUリソース、論理プロセッサ・リソース、入出力リソース、コプロセッサ、チャネル・リソース、ネットワーク・アダプタ、およびメモリ・リソースが含まれる。一例として、コプロセッサは、特定の機能をサービスする、CPC内のマイクロプロセッサ(CPU以外の)である。コプロセッサの例には、たとえば、チャネル・サブシステム、ネットワーク・アダプタ・カード、および暗号コプロセッサが含まれる。上記の物理リソースは、例として提供されるものにすぎない。他の共用可能リソースも、本発明の主旨から逸脱せずに再分配することができる。
【0026】
リソースの動的再分配を容易にするために、一実施形態では、論理区画が、グループの区画の間でリソースを共用するためにグループ化される。各グループのサイズは、1区画からn区画まで変更できる(一実施形態では、1つまたは複数のグループに1つまたは複数の区画が含まれるが、区画の数はコンピュータ環境のすべての区画より少ない)。具体的に言うと、各グループには、たとえば、計算機の独立のドメインで稼動する1つまたは複数のオペレーティング・システム・イメージが含まれ、このドメインは、ワークロードおよびリソースを分配するために共通のワークロード・マネージャ機能によって管理される。一例では、これらのドメインは、論理分割モードで稼動する論理区画であり、オペレーティング・システムは、論理区画内で稼動するOS/390である。グループの論理区画は、システム(たとえばCPC)またはシスプレックスの区画のサブセット、システムまたはシスプレックス全体、または、異なるシスプレックス(たとえば単一のCPC上の)または異なるシステムの区画とすることができる。
【0027】
中央演算処理装置複合システムの2つの論理区画グループ(またはクラスタ)の一実施形態を、図4に示す。図からわかるように、それぞれに1つまたは複数の論理区画が含まれる、論理区画グループA300および論理区画グループB302がある。論理区画のグループ化によって、リソース割振り(たとえば、優先順位に基づくリソース割振り)を介するグループの区画の間でのリソース共用が可能になる。
【0028】
例として、共用されるリソースには、CPUリソース、入出力リソース、およびメモリならびに、コプロセッサまたは他の、計算機が提供することのできる共用可能リソースが含まれる。特定の論理区画グループは、特定の計算機のすべてのリソースへのアクセス権を有する場合とそうでない場合がある。実際に、複数の論理区画グループを、単一の計算機上で同時に動作するように定義することができる。各論理区画グループを効率的に管理するために、特定の論理区画グループを構成するリソースは、効果的にそのグループにスコーピングされる。
【0029】
スコーピングには、各グループに割振り可能であるリソースの識別が含まれる。具体的に言うと、有効範囲によって、どのリソースがそのグループに制限され、そのグループのために管理可能であるかが定義される。論理区画グループを構成する論理区画は、リソースのコンテナとみなすことができる。これらのコンテナは、論理区画から使用可能なリソース全体の組の境界の中に存在する。一例では、これは、特定のCPC上で使用可能なリソース全体の組である。
【0030】
特定の論理区画グループ(たとえば論理区画グループA)を構成する論理区画には、共用可能なすべてのリソースのうちの特定の部分が割り当てられる。たとえば、共用可能なリソースがCPUリソースであると仮定する。共用CPUリソースについて、論理区画グループAに含まれる論理区画には、中央演算処理装置複合システムCPUリソース全体のうちの特定の部分が割り当てられる。これらのリソースは、特定のグループ内の論理区画ならびに、潜在的に、他の論理区画グループ内の論理区画およびどの論理区画グループにも含まれない論理区画によって共用されている。したがって、グループ内でのリソース移動(たとえば、論理区画グループ内の1区画からそのグループ内の別の区画へ)に関する決定を行おうとするワークロード・マネージャは、グループを構成するリソースの理解ならびに、より大きいコンテナ(たとえばCPC)に含まれるものの理解を有する必要がある。ワークロード・リソース管理に関する決定を行うのに使用される測定フィードバック(たとえば、結合装置に記憶された状態情報)は、上記のように顧客が定義したコンテナを理解するのに十分なものでなければならない。
【0031】
この理解が確立された後に、ワークロード・マネージャが指示する、所与のグループの論理区画でのリソース割振りに対する変更は、通常は、コンテナ・サイズ(すなわち、論理区画グループに割り振られるリソース)を一定に保つ形で行われる。たとえば、管理されるリソースがCPUリソースであると仮定し、さらに、各論理区画に、優先順位を示すCPU処理重みが割り当てられると仮定する。CPU相対重みを管理するために、所与のグループ内の論理区画の相対重みの合計が、たとえばワークロード・マネージャを介する、指示された変更の前と後で一定にならなければならない。これによって、顧客が指定した、グループおよび計算機上に存在する他の論理区画へのリソースの割振りが維持される。
【0032】
上記にもかかわらず、いくつかの場合に、リソースが指定された所有者によって使用されていない時に、区画のグループが、定義されたコンテナより多いリソースを使用することが望ましく、可能である場合がある。しかし、リソースの競合が発生すると同時に、リソースは、定義されたコンテナのサイズ(たとえば、この例では処理重み)に従って、LPARマネージャによって管理される。しかし、そのコンテナを超えてグループを拡張することを許可してはならない場合もありえる。これは、スコーピングに関してもありえる。他のリソースは、リソースの使用の正確なイメージを得るために、単一のグループに完全にスコーピングされる必要がある可能性がある。この形での制限によって、所与のグループの外部の論理区画がそのリソースにアクセスできなくなる。
【0033】
上記に加えて、論理区画グループ内のリソースの可用性に対する外部変更の影響にも考慮を払う。たとえば、ユーザが、なんらかの外部手段を介して(ワークロード・マネージャの指示の下ではなく)リソースの割振りを変更する可能性がある。これは、ある計算機での実際のワークロードの変化、またはグループ間または他の論理区画間のビジネス優先順位のシフトが原因で行われる可能性がある。これらの変更が行われる時には、これらの変更は、ワークロード・マネージャによって理解されなければならず、これらの変更の影響は、合理的に分配されなければならない。変更は、論理区画がグループに追加または除去される時、グループの外部の他の論理区画が追加または除去される時、または、単に外部手段を介して処理重みの変更が行われる時に、発生する可能性がある。これらの外部変更が実行される時には、コンテナのサイズが変更される可能性があり、ワークロード・マネージャは、その新しいサイズのコンテナのマネージャになる。
【0034】
グループの特定の論理区画に属するリソースが外部から変更される時には、グループ内のリソースの再分配が必要になる可能性がある。たとえば、論理区画がグループから除去される時には、その論理区画に関連する処理重みが、そのグループから除去される。その論理区画について現在ワークロード・マネージャが割り当てている重みが、除去される論理区画の重み(すなわち、当初に論理区画に関連する処理重み)より大きい場合には、これらの重みの間の差が、そのグループ内の他の論理区画に追加される。これは、たとえば、グループ内の他の論理区画での重みの既存の分配に比例して行われる。論理区画について現在ワークロード・マネージャが割り当てている重みが、論理区画の初期重みより小さい場合には、これらの重みの間の差が、グループ内の他の論理区画から減算される。やはり、これは、一例として、他の論理区画の重みの割り当てに比例して行われる。
【0035】
上で説明したように、グループは、グループに割り当てられたリソースおよび変更を許可されたリソースへのハンドルを得るためにスコーピングされ、その結果、ワークロード・マネージャは、次に何を行うかに関して正しい決定を行えるようになる。スコーピングによって、グループが識別され、プログラムが理解できる情報がプログラムに供給される。グループが変更される時には、リソースは、その変更を満足するために動的に調整される。
【0036】
一実施形態では、リソースごとに別々のグループ(クラスタ)を設けることができる。たとえば、論理区画グループAをCPUリソースに関するものとし、論理区画グループBを入出力リソースに関するものとすることができる。しかし、他の実施形態では、1つの論理区画グループを、リソースのサブセットまたはすべてに関するものとすることも可能である。
【0037】
LPARグループ有効範囲を確立するために、一例では、論理区画が、1つまたは複数の区画のグループに対してそれ自体を識別する。グループへの加入に関連する論理の一実施形態を、図5に関連して説明する。たとえば、論理区画グループに加入するために、論理区画で稼動するオペレーティング・システム(たとえばOS/390)は、その論理区画がその一部になろうとするLPARグループがどれであるかをLPARマネージャに示す(ステップ400)。一例として、命令を使用して、LPARグループ名をLPARマネージャに渡す。オペレーティング・システムは、LPARグループ内で管理されるリソースのタイプごとに名前を指定する。したがって、他のリソースがある場合には(問合せ402)、他の名前を指定する。たとえば、あるグループ名が、CPUリソースについて与えられ、もう1つの名前が、入出力リソースについて与えられる。望むならば、各リソース・タイプについて同一のLPARグループ名を指定することができる。
【0038】
このOS/390による宣言によって、計算機上で新しいLPARグループが確立される(論理区画がその名前を使用する最初の論理区画である場合)か、この論理区画がそのリソース・タイプに関する同一の名前の既存のLPARグループに加入することになるかのいずれかになる。たとえば、グループ名が指定された(ステップ404)(図6)後に、それが新しい名前であるかどうかに関する判定を行なう(問合せ406)。そうである場合には、新しいグループを作成する(ステップ408)。そうでない場合には、既存のグループに加入する(ステップ410)。その後、リソースをグループにスコーピングする(ステップ412)。
【0039】
具体的に言うと、LPARグループにバインドされるグループ・タイプのリソースは、LPARグループ内で稼動するWLMがそうする必要があると判定した場合に、その時に、その論理区画が使用するために使用可能にされる。スコーピングを必要とするLPARグループの特定のタイプのリソースには、少なくとも2つの変形すなわち、追加リソースおよび固定リソースが含まれる。
【0040】
追加リソース:いくつかの場合に、LPARグループへの加入によって、本質的に、論理区画が加入したばかりのLPARグループにリソースが追加される。この一例が、CPU処理重みであり、これは、たとえば、顧客によって、ハードウェア・コンソールで論理区画に割り当てられる。論理区画の現在の(使用中の)処理重みは、論理区画が活動化される時に、この顧客が割り当てた重みから初期設定される。論理区画がCPUリソースに関するLPARグループに加入する時には、その論理区画に顧客が割り当てた処理重みが、LPARグループ内での使用のために使用可能な総処理重みの一部になり、したがって、WLMによってLPARグループ内で再割り当てすることが可能になる。LPARグループに加入したばかりの論理区画は、寄与が行われたばかりのLPARグループ・リソースのより大きい組を使用する潜在能力を有する。
【0041】
固定リソース:いくつかの場合に、リソースの組が、特定のLPARグループに属するものとして事前に定義される。この一例が、管理対象(浮動)チャネル・パスである。管理対象チャネル・パスとは、ワークロード目標を達成するのを助けるためにそのリソースを再割り当てすることができるチャネル・パスである。特定のLPARグループによる使用のための管理対象チャネル・パスの組は、当初は、チャネル・パス(CHPID)をLPARグループに関連付ける入出力構成定義処理を介して定義される。論理区画は、このLPARグループに加入する時に、このチャネル・パスの組へのアクセスを許可される。論理区画自体は、このリソース・プールに全く寄与しない(このリソースのプールは、やはり動的に変更することができるが、要点は、論理区画がLPARグループに加入し、離脱する際にリソースが論理区画と共に移動しないことである)。
【0042】
LPARスコープも、リソースのタイプに応じてリソースに対して異なる形で実施することができる。
【0043】
追加リソース:LPARグループ内のオペレーティング・システムは、そのLPARグループのこのタイプのリソースの完全な組を問い合わせることができる。一例として、CPU処理重みの場合、これは、命令を介して達成される。オペレーティング・システムは、LPARグループ内のこのリソース・タイプの組全体、グループ内の論理区画へのリソースの割振り、および現在の計算機上で使用可能なリソース・プールの完全なサイズを知る。これらの構成要素のすべてが、全物理リソースのうちのどれだけが論理区画に割り振られるかを理解するのに使用される。その後、オペレーティング・システムは、LPARグループ内の論理区画への割振りを更新して、グループ内のリソースを再割当てする。オペレーティング・システムは、一例では、LPARグループに割り振られるリソースの総量を変更することを許可されない。LPARマネージャは、LPARグループのすべての部分が、更新で考慮され、LPARグループの外部の論理区画がそのリソースに影響を受けないようにすることによって、これを実施する。
【0044】
固定リソース:LPARグループ内のオペレーティング・システムは、このタイプのリソースについて、そのLPARグループに関連するリソースの組を問い合わせる。たとえば、管理対象チャネル・パスについて、特定のLPARグループについて定義された管理対象チャネル・パスのリストを、命令を介してLPARマネージャから取り出すことができる。LPARマネージャは、これらのリソースのスクリーニングも行って、これらが正しいLPARグループによってのみ使用されるようにする。管理対象チャネルの場合、これは、管理対象チャネル・パスを、その管理対象チャネル・パスについて定義された名前と一致するLPARグループ名を宣言した論理区画に対してオンラインに構成することだけが許可されることを意味する。
【0045】
LPARグループの一部である論理区画が、システム・リセット、再IPL、または非活動化される時には、その論理区画が1つまたは複数のLPARグループに関して有した所属のすべてが除去される。グループからの論理区画の除去に関連する論理の一実施形態を、図7に関連して説明する。リセットの一部として、論理区画マネージャは、宣言されたLPAR区画グループ名を論理区画から除去する(ステップ500)。次に、リソースに応じて(問合せ502)、その論理区画のLPARグループ・リソース割振り解除を完了するための1つまたは複数の他の処置を実行する。
【0046】
リソースが追加リソースの場合には、以下が行われる。このような、論理区画がLPARグループに加入した時にLPARグループに追加されたリソースは、LPARグループから除去される(ステップ504)。これには、このタイプのリソースの、LPARグループの残りのメンバへの現在の割振りの調整が含まれる場合がある。たとえば、処理重みの場合、グループを離脱する論理区画の初期処理重みが、LPARグループの有効範囲から除去される。WLMが、論理区画の現在の処理重みを変更している場合には、調整を行う必要がある。論理区画の現在の処理重みが、その初期処理重みより大きい場合には、この2つの間の差が、残りのLPARグループ・メンバに、その現在の処理重みに比例して再分配される。論理区画の現在の処理重みが、その初期処理重みより小さい場合には、この2つの間の差が、残りのLPARグループ・メンバから、その現在の処理重みに比例して除去される。この調整の結果として、結果のLPARグループに対する処理重みコンテナの内容が再確立される。
【0047】
その一方で、リソースが固定リソースの場合には、以下が行われる。このようなリソースは、リセットされる論理区画の構成から単純に除去される(ステップ506)。たとえば、管理対象チャネル・パスの場合、チャネル・パスは、リセットされる論理区画から構成解除される。これによって、LPARグループのメンバだけが、LPARグループのリソースにアクセスできることが、もう一度再確立される。
【0048】
LPARグループ環境内のWLMによって管理されるリソースの一部が、グループ・スコーピングの必要を有しない場合があることにも留意されたい。そのようなリソースの一例が、論理区画のためにオンラインになる論理中央処理装置(CP)の数である。LPARグループ内の特定の論理区画の効果的な挙動は、その論理区画に対してオンラインである論理CPの数によって大きく影響される可能性がある。論理区画が定義することのできるまたはオンラインである論理CPの数は、その論理区画がLPARグループに含まれるか否かに無関係に論理区画の特性であり、したがって、このリソースは、実際にはリソースのより大きいプールの一部にはならない。しかし、LPARグループでのその効果は、それによって、別のLPARグループ・メンバに対してあるLPARグループ・メンバ内で効果的に動作させることができるワークロードのタイプを変更できることである。
【0049】
一例では、複数の論理区画の間で共用されるリソースが、CPUリソースである。本発明の一態様では、OS/390ワークロード・マネージャは、論理区画に関連する1つまたは複数の相対プロセッサ重みを動的に調整することによって、論理区画の間でCPUリソースを再分配する。WLMは、重要なワークロードが稼動する区画の重みが低すぎるので重要なワークロードが遅延される時を理解する。WLMは、この区画の重みを引き上げ、別の区画の重みを引き下げることによってこのワークロードを助けることができ、これによって、追加のCPU能力が重要なワークロードに与えられる。CPUリソースは、ワークロード要件が変化する際に、必要な区画に動的に移動される。
【0050】
一実施形態では、論理区画重みのWLM管理の有効範囲が、論理区画グループである。一例として、WLMは、論理区画重みを調整するが、グループ内の区画の重みの合計を一定に維持する。合計を一定に維持することによって、グループに割り振られる総CPUリソースが、同一の物理コンピュータ上の他の独立のグループに対して相対的に同一に保たれる。したがって、WLMは、ある区画の重みを引き上げる時に、同一のグループ内の別の区画の重みを下げる。
【0051】
論理区画重みの管理は、WLMの目標指向リソース割振り技法に対する機能強化であり、これは、たとえば、米国特許第5473773号明細書および米国特許第5675739号明細書に記載されている。
【0052】
上記の特許明細書に記載されているように、WLMは、CPUディスパッチ優先順位を調整することによって、論理区画内のCPUリソースの割振りを制御する。CPUディスパッチ優先順位は、サービス・クラス・レベルで作業に割り当てられる。しかし、ディスパッチ優先順位の調整がサービス・クラスを助けない、さまざまな状況がある。たとえば、
1)サービス・クラスが、単独で、すでに非システム作業に許可される最高のCPUディスパッチ優先順位である。
2)サービス・クラスを助けるためのCPUディスパッチ優先順位の変更が、それ以上の重要性を有する他のサービス・クラスに及ぼす悪影響が大きすぎる。
【0053】
したがって、WLMは、サービス・クラスが、CPU遅延に起因してその目標を失いつつあり、それをCPU優先順位の調節によって助けることができないことを見つけた時に、WLMは、失敗しつつあるサービス・クラスに関連する区画の重みの調節を検討する。
【0054】
WLMが追加リソースの割振りを検討するサービス・クラスを、レシーバ・サービス・クラスと呼ぶ。WLMは、上に示した理由のどれかのために助けることができない、所与の区画でのCPU遅延に起因して目標を失いつつあるレシーバ・サービス・クラスを見つけた時に、WLMは、その区画の重みを引き上げることを検討する。レシーバ・サービス・クラスを助けるために区画の重みを引き上げることができるかどうかを判定するためにWLMが従う論理の一実施形態を、図8に関連して下で説明する。
【0055】
1.区画の重みを増やすことがレシーバ・クラスに及ぼす影響を見積もる(ステップ600)。区画の重みを増やすと、その区画のCPU能力が増える。レシーバ・クラスでの作業のCPU需要は、一定と仮定されるので、区画のCPU能力を増やすと、レシーバ・サービス・クラスが必要とする、この能力の比率が減る。レシーバ・サービス・クラスに対する利益の見積もりは、レシーバ・サービス・クラスと、システム需要に対する他の作業の両方の、使用可能なCPU能力の比率のこの減少に基づく。
【0056】
2.その重みを減らされる候補になる、論理区画グループ内の別の区画を見つける(ステップ602)。この区画を、候補ドナー区画と称する。候補ドナー区画は、たとえば、区画の重みを下げることによって、最も重要さの少ない作業が影響を受ける可能性が高い区画を探すことによって、選択される。
【0057】
3.その重みを下げられる候補ドナー区画で稼動する作業を有するすべてのサービス・クラスに対する影響を見積もる(ステップ604)。候補ドナー区画の重みを減らすことによって、候補ドナー区画のCPU能力が減る。このCPU能力の減少は、候補ドナーの能力の比率としての、候補ドナーで稼動する作業を有するサービス・クラスのCPU需要が増えることを意味する。候補ドナーの重みを減らすことの悪影響の見積もりは、これらのサービス・クラスが必要とする使用可能CPU能力の比率のこの減少に基づく。
【0058】
4.この重みの変更が正味の値を有するかどうかを判定する(問合せ606)。すなわち、レシーバ・サービス・クラスに対する利益が、関係するサービス・クラスの目標および重要性に基づく、候補ドナー区画の作業に対する悪影響に優越するかどうかを判定する。
【0059】
5.重みの調節が正味の値を有する場合には、提案された区画の重みに対する変更を実施する(ステップ608)。正味の値がない場合には、ほかに候補ドナー区画があるかどうかに関する判定を行う(問合せ610)。そうである場合には、もう1つの候補ドナー区画を選択し(ステップ612)、処理はステップ3(ステップ604)で続行する。ほかに候補ドナー区画がない場合には、処理を終了する(ステップ614)。
【0060】
ある区画で稼動するWLMが、別の区画で稼動する作業に対する区画重み変更の効果の見積もりを行えるようにするために、各区画は、グループ内の各論理区画に関する性能データを含む共用データ構造へのアクセス権を有する。この区画レベルの性能データには、たとえば以下が含まれる。
・サービス・クラスによって区画で実行される作業のCPU要件
・各サービス・クラスが、その目標に向かってその区画上でどの程度良好に動作しているか
・区画のCPUディスパッチ優先順位によるCPU使用量
【0061】
本発明のOS/390実施形態では、この共用データ構造が、結合装置内で作成され、維持される。しかし、メッセージ交換または共用ディスクなどの他のデータ共用手法を使用して、このデータ構造を実施することができる。
【0062】
上で説明したのは、コンピュータ環境のCPUリソースを動的に再分配する能力である。リソースは、一例として、論理区画重みを動的に調整することによって、論理区画の間で再分配される。
【0063】
コンピュータ環境のCPUリソースの動的調整のほかに、本発明のもう1つの態様では、論理プロセッサ・リソースも動的に調整することができる。
【0064】
論理区画は、1つまたは複数の論理プロセッサと共に構成され、この論理プロセッサは、中央演算処理装置複合システムの物理中央処理装置上で、作業を実行するためにディスパッチされる。区画がそれに割り当てられたCPU能力を消費できるようにするために、十分な論理プロセッサを論理区画に構成しなければならない。たとえば、10個のCPUを有するCPC上で稼動する論理区画Aの場合を検討する。ワークロード・マネージャが、論理区画AにCPCの能力の50%を割り当てる場合、論理区画Aは、少なくとも5つの論理プロセッサをそれに構成されることを必要とする(5つの論理プロセッサは、CPUのうちの5つすなわちCPCの能力の50%で稼動することができる)。論理区画Aに、その後、CPCの能力の95%が割り当てられた場合、論理区画Aは、10個の論理プロセッサを有するように構成されるはずである。WLMは、静的に定義された論理プロセッサ構成を用いて論理区画Aに割り当てられた能力を動的に調整することができるので、すべての可能な能力割当てを収めるために、10個の論理プロセッサが論理区画Aに構成される。しかし、論理区画Aに、たとえばCPCの能力の20%だけが割り当てられる場合には、静的に定義された論理プロセッサから次の2つ問題が生じる。1)10個の論理プロセッサのそれぞれが、平均して、物理CPUの能力の0.2の比率で物理CPUリソースを消費することしかできない(10個のCPUの20%を10個の論理プロセッサによって分割すると、1論理プロセッサあたり0.2CPUになる)。これは、スループットが単一のタスクによってゲーティングされるワークロードを厳しく制限する可能性がある。というのは、その単一のタスクを、物理CPUの能力の0.2倍で実行することしかできなくなるからである。これを、ショート・エンジン効果(short engine effect)と称することがしばしばである。2)2つの論理プロセッサだけが必要な時に10個の論理プロセッサを管理しなければならない時に、ソフトウェアおよびハードウェアの効率が大きく低下する。
【0065】
上記の欠陥に対処するために、論理区画の構成は、本発明の一態様によれば、静的に定義されるのではなく、動的に調整される。一例では、区画を管理し、動的調整を行うのは、WLMである。WLMは、コンピュータ環境(またはLPARグループ内)の各論理区画についてこれを行うことができる。論理プロセッサの構成の動的調整に関連する論理の一実施形態を、図9に関連して説明する。
【0066】
当初、論理区画を、ワークロード・マネージャによって論理区画に割り当てられた能力(または、実際に使用されている能力の方が大きい場合にはその能力)を消費できるようにするのに必要な最小の個数の論理プロセッサを用いて構成する(ステップ700)。論理区画の能力割り当て(または能力使用量)が変化する際に(問合せ702)、評価を行って、論理区画に構成される論理プロセッサの数を変更しなければならないかどうかを判定する(ステップ704)。一例では、論理区画に構成される論理プロセッサの数は、論理区画に割り当てられた(または論理区画によって消費される)CPC能力を提供するのに必要な物理CPUの数に近いままになる。したがって、各論理プロセッサは、物理CPUの能力に近い状態で実行され、管理される論理プロセッサの数が、最小になる。
【0067】
論理構成を変更するかどうかの評価を行うために、一例では次の式を使用する。
L=floor[max(W,U)×P+1.5](最大値L=P)
ここで、L=論理区画に構成される論理プロセッサの数、W=論理区画に割り当てられるCPC能力の比率、U=論理区画によって現在使用されているCPC能力の比率、P=論理区画に関連付けられたCPUの数である(ステップ705)。
【0068】
Lは、たとえば定期的で頻繁なインターバル(たとえば10秒ごと)に、P、W、およびUの現在の値に基づいて、ワークロード・マネージャによって評価される。閾値を使用して、論理区画のLの実際の値(L−act)を上げるか下げるかしなければならないかどうかを判定する。新たに計算されたLの値(L−calc)が、L−actの現在の値より高い場合(問合せ706)、L−actをL−calcまで引き上げる(ステップ708)。そうでない場合に、L−calcがL−actより2つ以上小さい値である場合(問合せ710)、L−actにL−calc−1をセットする(ステップ712)。L−calcが、L−actと等しいか、L−actより1つだけ小さい場合には、論理区画のL−actの値の変更は行われない(ステップ714)。これらの閾値の使用を介して、ワークロードのすばやく高まる能力需要に応答しながらも、小さいワークロード変動に起因するL−actの無用な変更が回避される。
【0069】
もう1つの例示として、次の例を検討されたい。P=10、W=U=24%と仮定する。論理プロセッサの静的構成では、Wが90%を超えて増加する場合を扱うために、L(静的)=10が必要になるはずである。しかし、本発明のこの態様によれば、L(動的)=floor[max(.24,.24)×10+1.5]=3である。したがって、この例では、L(静的)では、単一のタスクが物理CPUの0.24で実行されるように制約されるが、L(動的)では、単一のタスクが、物理CPUの0.80で実行されることが可能であり、これによって、単一タスク性能によってゲーティングされるワークロードのスループットの233%の向上がもたらされる。さらに、この例では、L(静的)に必要な10個の論理プロセッサではなく、3つの論理プロセッサだけが管理されるので、本発明のこの態様に起因して、ソフトウェアおよびハードウェアの効率が大幅に改善される。
【0070】
コンピュータ環境の、管理されるもう1つの共用可能リソースは、本発明の一態様によれば、入出力リソースなどの非同期リソースである。具体的に言うと、コプロセッサ(たとえばチャネル・サブシステム)内の入出力動作または入出力要求が管理される。この管理には、優先順位の高い入出力動作がすばやく処理される、より高い優先順位の入出力動作がチャネルのより多くの帯域幅を割り当てられる、もしくはその両方などの入出力動作の優先順位付けが含まれる。
【0071】
現在の大規模多重プログラミング・コンピュータ・システムでは、付加された入出力装置の読取、書込、および制御のための入出力動作などの長時間稼動する処理の開始および実行は、通常は、複数の独立に動作する計算要素(図10参照)の使用によって達成される。たとえば、中央処理装置800内で実行中のプログラムは、付加された装置804との入出力動作を要求することができる。しかし、付加された装置との入出力動作の実際の開始および実行は、通常はチャネル・サブシステム802と呼ばれる、1つまたは複数の別々に独立に実行する、一緒に動作するプロセッサによって実行される。一般に、非同期入出力処理方法は、比較的長時間稼動する入出力装置の実行と並列に他の作業のために中央処理装置を最適化し効率的に使用するために使用される。すなわち、そうしなければ付加された入出力装置にアクセスし、読み書きするために必要になるはずの総プロセッサ・オーバーヘッド、処理時間、およびプロセッサ待ち時間を最小にするためである。そのような方法は、大規模多重プログラミング・システムで他のプロセッサ作業の実行と入出力動作との、最大のオーバーラップまたは実行の並列性を達成するように設計される。
【0072】
そのような非同期入出力処理システムでは、中央処理装置が、S/390 START SUBCHANNEL命令などの入出力命令の使用によってプログラムが要求した入出力動作の実行を開始する。そのような命令は、通常は、次の2つの責任を負う。
1.チャネル・サブシステムの入出力作業キューに入出力動作要求をエンキュー(追加)し、
2.入出力作業キューを処理するために非同期に実行中のチャネル・サブシステムにシグナルを送る。
【0073】
その後、中央処理装置は、他の作業/命令を実行することができ、入出力装置との要求された入出力動作の実際の実行に直接にはかかわらない。
【0074】
1)上の処理の非同期な性質、2)中央処理装置とチャネル・サブシステム・プロセッサの独立動作、3)中央処理装置の実行速度と比較して相対的に長い、入出力動作の実行時間、および4)装置をチャネル・サブシステムに接続するチャネル・パスなどのチャネル・サブシステム・リソースの一部またはすべてが、入出力動作がプログラムによって要求された時に他の動作の実行で使用中である可能性があるという事実に起因して、複数の入出力要求が、チャネル・サブシステム入出力作業キューに同時にエンキューされる可能性が非常に高い。すなわち、START SUBCHANNEL命令は、チャネル・サブシステムが要求された入出力動作を実行する能力より高い速度で中央処理装置によって実行され、これによって、保留入出力動作要求のNレベルの深さの入出力作業キューが継続的に引き起こされる。
【0075】
保留入出力要求を処理するために、チャネル・サブシステムを構成するマイクロプロセッサは、それぞれの入出力作業キューを検査し(図10参照)、1つまたは複数の入出力要求をこれらのキューからデキューし、それぞれの入出力装置に関するデキューされた入出力要求の開始を試みる。この活動の発端は、チャネル・サブシステム内の問題のマイクロプロセッサおよび作業キューに応じて変化する。たとえば、中央処理装置と対話するチャネル・サブシステム入出力プロセッサは、他の作業の実行に使用中でない時に周期的に、1つまたは複数の中央処理装置START SUBCHANNEL信号の結果として、またはこの両方の組合せで、この処理を開始する可能性がある。
【0076】
チャネル・サブシステムのさまざまな作業キューの一例を、図10に関連して説明する。前に述べたように、入出力要求は、たとえばSTART SUBCHANNEL命令によって、入出力プロセッサ作業キュー806にエンキューされる。その後、入出力要求は、入出力プロセッサ808によって、入出力プロセッサ作業キューからデキューされる。入出力プロセッサ作業キューからデキューされた要求は、入出力プロセッサによって、チャネル・プロセッサ作業キュー810にエンキューされる。その後、これらの要求は、チャネル・プロセッサ812によってデキューされ、制御装置作業キュー814にエンキューされる。チャネル・プロセッサは、制御装置作業キューから要求をデキューして、チャネル・パスを介して制御装置へ、最終的には入出力装置へ送る。
【0077】
現在、S/390プロダクト・ファミリーのシステム内では、チャネル・サブシステムのデキュー処理および作業初期設定処理は、先入れ先出し法(FIFO)に基づいて実行される。この処理は、論理的に実施が最も単純であり、スループットの最適化を目的とし、過去には、保留作業キューの平均深さが比較的浅く、入出力作業保留時間が比較的短い持続時間にとどまる(すなわち、さまざまな入出力作業キューの保留入出力要求の平均数が、高い重要性のプログラムまたはリアルタイム・クリティカル・プログラムに関連する入出力動作の総入出力応答時間を大幅に引き延ばさない)ならば、さまざまな非同期処理要素の間の作業転送のために許容される戦略であった。
【0078】
しかし、クリティカルな作業または時間依存の作業の適時な処理に関するユーザの需要をサポートするためにアプリケーション/プログラム優先順位付け機能を提供するオペレーティング・システムでは、保留入出力要求に関するFIFO処理戦略は、FIFO作業キューの平均深さが増えるにつれて、ますます許容されなくなる。たとえば、IBM Enterprise Storage Serverと共に使用される並列アクセス・ボリュームでは、チャネル・サブシステムの平均キュー深さが増える。これは、通常は、重要性が低いかタイム・クリティカルでない入出力要求が、FIFO作業キュー上でより重要な要求の前にキューに置かれる可能性があり、したがって、よりクリティカルな入出力要求の前に開始されることになるという事実に起因する。頻繁に、クリティカルでない作業は、長時間にわたってリソースを束縛する入出力を実行し、より重要な作業が遭遇する遅延が増える。これは、通常は、より重要な入出力要求の遅延の可能性が高まることをもたらす。
【0079】
入出力保留時間とも称する遅延時間(総リアルタイム遅延または中央処理装置の速度と比較した時の相対時間遅れのいずれかとすることができる)の増加は、チャネル・サブシステムおよび付加された装置が、クリティカルな入出力要求の適時の完了に影響しない入出力実行の速度を維持する能力がないこと(言い換えると、高い重要性/時間にクリティカルなプログラムの実行時間の許容不能な延長をもたらさない実行速度を維持する能力がないこと)に起因することがしばしばである。上で述べたように、クリティカルな入出力要求に関する総入出力応答時間の許容不能な延長の確率は、FIFO作業処理方法が使用される時に、一般に高まる。この遅延の確率は、中央処理装置の速度および数が、付加される入出力装置および、装置が付加されるチャネル・パスなどの他の必要なチャネル・サブシステム要素の速度の向上より高い割合で向上する際に、さらに大きくなる。一般に、入出力速度の向上の割合に対する中央処理装置の速度の向上の割合の不一致は、現在の大規模システム環境で増大を続け、その結果、クリティカルな作業のキューイング遅延およびより大きい入出力応答時間(リアルタイムまたは相対時間のいずれか)の確率がますます高まる。
【0080】
例として、チャネル・サブシステムでのキューイング遅延に起因する、高い重要性の入出力動作および時間にクリティカルな入出力動作の長い入出力応答時間の頻度を最小にするために、優先順位処理技法を定義して、1つまたは複数のチャネル・サブシステム保留入出力作業キューを処理する。
【0081】
2つの独立に実行されるプロセッサまたはプロセスの間の優先順位処理技法の実施の例には、以下が含まれる。
1.エンキュー・プロセッサ(またはプロセス)が、プログラム指定の(たとえばWLMによる)優先順位番号に基づく優先順位シーケンシング技法を使用して、チャネル・サブシステム入出力作業キュー(処理の段階に依存する特定のキュー)に入出力要求を追加する。チャネル・サブシステムは、その後、FIFO技法を使用して、作業キューから最初の最も優先順位の高い入出力要求を除去する。または、
2.エンキュー・プロセッサ(またはプロセス)が、FIFOエンキュー技法を使用して、入出力作業キューの最下部に入出力要求を追加する。チャネル・サブシステムは、優先順位選択技法を使用して、その後、作業キューのすべての入出力要求要素を探索し、最も高いプログラム指定の優先順位番号を有する入出力要求を除去し、処理する。
【0082】
FIFOエンキュー技法(技法2)では、必要な命令が少なく、したがって、中央処理装置が、入出力要求スケジューリング処理をよりすばやく完了することができる。これによって、中央処理装置は、よりすばやく他の作業を実行できるようになる。チャネル・サブシステムを構成するさまざまなマイクロプロセッサの間のエンキュー/デキュー処理について、選択すべき技法は、通常は、参加するプロセッサのどれが、その処理能力および適時性の要件に関して最も制約されるかに依存する。すなわち、エンキュー・プロセッサが最も制約される場合には、第2の技法を選択する。デキュー・プロセッサが最も制約される場合には、通常は第1の技法を選択する。
【0083】
これらの技法のどちらを使用するかに無関係に、その結果は、チャネル・サブシステムが、到着時刻またはFIFO方法ではなく、優先順位付け方法に基づく保留入出力要求の開始および実行を優先することである。
【0084】
さらに、一実施形態では、使用されるエンキュー技法および選択技法に無関係に、処理される要求の優先順位付けまたは選択もしくはその両方に、さまざまな判断基準が使用される。一例では、この判断基準に以下が含まれる。
【0085】
1.各異なる番号が独自の優先順位レベルに対応する、プログラム指定の優先順位番号に基づく保留入出力要求の選択。たとえば、連続する独自の番号の範囲を設け、数の範囲全体が、優先順位の区別を必要とする別個の作業カテゴリの総数以上になるようにする。たとえば、システムが、通常のS/390システムで可能であるように、N個の異なるオペレーティング・システムを同時に実行する能力を有する場合には、チャネル・サブシステム優先順位技法は、N個以上の別個の優先順位レベルを提供しなければならない。最低のレベルから最高のレベルまでまたはその逆の各優先順位レベルは、0からN−1までの範囲の独自の数によって表されるはずである。
【0086】
2.優先順位に無関係にすべてのエンキューされた要求に「フェアネス」も適用する技法を使用する、保留入出力要求の優先順位選択。これは、通常は、たとえば、長時間にわたってチャネル・サブシステムに不相応に多数の高い優先順位の要求が提示されることに起因して発生する可能性がある、低い優先順位の要求が長時間にわたって処理されない確率を最低にするために所望される。フェアネス選択は、他の考慮点に応じて、同一の優先順位の保留要求に適用することもできる。たとえば、まだ選択されていない他の同一優先順位の要求と共に、すでにデキューされ、開始に失敗し、複数回再キューイングされた保留要求にフェアネスを提供することである。このような技法を、図11に関連して説明する。この技法では、複数の異なるカテゴリの保留要求に、優先順位とフェアネスの両方を適用する。
【0087】
3.下記に関する外部ユーザ/オペレータの制御
1.優先順位処理技法のグローバルな使用可能化/使用不能化。この制御は、優先順位技法が不要であるか、非類型的なプログラム実行環境に適当に対応することができない場合に、保留要求のFIFO処理を共生するために必要になる場合がある。
2.複数の論理区画の並列実行を提供するシステムの場合の、所与の論理区画に関連する入出力要求の「デフォルト」優先順位値をユーザが指定できるようにする外部制御。これは、論理区画内で実行中のオペレーティング・システムが、その入出力要求の優先順位値を指定するように設計されていないが、それでも、入出力優先順位付けを指定する他の論理区画内で実行中の他のオペレーティング・システムと成功裡に競合しなければならない時に使用される。
3.複数の論理区画の並列実行を提供するシステムの場合の、チャネル・サブシステムによって供給される値の組全体からの、各論理区画の優先順位値のサブセット最小最大範囲をユーザが指定できるようにするための外部制御。この制御は、別々の論理区画内で実行中の複数のオペレーティング・システムが、入出力優先順位を独立に、それを使用する他の区画の知識なしに使用する時に使用される。すなわち、各使用する区画によって開始される要求の優先順位に基づく分離を可能にするための制御である。
【0088】
上の項目3.2および3.3について、一実施形態では、中央処理装置が、論理区画内で実行中のプログラムのユーザ指定のデフォルト優先順位値またはユーザ指定の最大/最小許容優先順位を、その区画で動作するプログラムに透過的な形で、暗黙のうちに割り当てる。S/390システムでは、これは、論理区画マネージャ(ハイパーバイザ)および中央処理装置のSTART SUBCHANNEL命令によって共同で達成することができる。
【0089】
論理区画内で動作するプログラムが、入出力動作を開始するためにSTARTSUBCHANNELを実行する時には、中央処理装置でのSTART SUBCHANNEL命令の解釈実行で、暗黙のうちに、SIE(Start Interpretive Execution)SD(State Description)テーブルから、デフォルト優先順位番号および最大/最小許容優先順位番号の両方が獲得される。このテーブルは、論理区画ハイパーバイザが区画を実行状態にするためにSIE命令を実行する時に、その論理区画ハイパーバイザによって、中央処理装置内に作成され、ロードされる。その後、START SUBCHANNELの解釈実行では、SIE状態記述テーブルのデフォルト優先順位値および最大/最小優先順位値を使用して、論理区画内で動作するプログラムによる関与なしで、適当な優先順位値を入出力要求に暗黙のうちにセットする。
【0090】
優先順位値が、論理区画内で実行中のプログラムによって指定されない時には、START SUBCHANNELの解釈で、ユーザ指定のデフォルト優先順位値が入出力要求に割り当てられる。論理区画内で実行中のプログラムが、START SUBCHANNELを実行する時に優先順位番号を指定する時には、START SUBCHANNELの解釈実行で、プログラム指定の優先順位値を、状態記述テーブル内のハイパーバイザ指定の最小/最大優先順位値と比較する。プログラム指定の優先順位が、ハイパーバイザ指定の最小値より小さい時には、状態記述テーブルからの最小値によって、暗黙のうちにプログラム指定の値を置換する。プログラム指定の優先順位値が、ハイパーバイザ指定の最大優先順位を超える時には、状態記述テーブルからの最大優先順位値によって、プログラム指定の値を置換する。
【0091】
上記の判断基準のうちの0個以上を使用して、優先順位選択技法を導出することができる。上記の判断基準の少なくともいくつかを使用する、処理される要求を選択するための技法の一実施形態を、図11に関連して説明する。
【0092】
当初は、保留作業キューにアクセスする(ステップ900)。たとえば、入出力プロセッサ作業キュー、チャネル・プロセッサ作業キュー、または制御装置作業キューのいずれかにアクセスする。その後、デキューされた保留要求のカウントを1つ増分する(たとえば、DQCOUNT=DQCOUNT+1)(ステップ902)。
【0093】
その後、どのカテゴリの保留要求を処理するかに関する判定を行う(ステップ904)。一例では、選択されるカテゴリが、(DQCount MODULUS カテゴリ数)に等しい。したがって、この例では4つのカテゴリがあるので、選択されるカテゴリは、DQCount MODULUS 4に等しい。結果が0の場合には、任意の優先順位の最初の要求をデキューする(ステップ906)。しかし、選択されるカテゴリが1の場合には、前にデキューされていない最高優先順位の最初の要求を選択する(ステップ908)。さらに、選択されるカテゴリが2の場合には、前にデキューされ、開始に成功しなかった最高の優先順位の最初の要求を選択する(ステップ910)。しかし、結果が3の場合には、前にデキューされていない任意の優先順位の最初の要求を選択する(ステップ912)。その後、選択された要求をデキューし、処理する(ステップ914)。
【0094】
上で詳細に説明したのは、コプロセッサ内の非同期要求のための優先順位付け機構である。入出力要求およびチャネル・サブシステムに関連して例を説明したが、これらは例にすぎない。本発明は、他の非同期要求およびコプロセッサに同等に適用可能である。さらに、上に記載の例は、キューイングに関連して説明したが、同様の優先順位付け機構を使用して、複数の動作を同時に実行できるチャネル上のリソース(たとえば帯域幅)の割り当てを調整することができ、これによって、すべてを同等に実行するのではなく、優先順位の高い動作により多くのチャネル・リソースを与えることができる。
【0095】
さらに、本明細書に記載のさまざまな例は、論理分割されたシステムに関連して説明されるが、本発明の入出力優先順位機能を含むがそれに制限されない本発明のさまざまな態様は、論理区画を有しないかサポートしないシステム内で使用可能である。
【0096】
本発明のもう1つの態様によれば、人間の介入なしに使用可能なチャネル・リソースを必要な場所に移動するか、余分のチャネル・リソースを除去するために、コンピュータ環境の入出力構成(たとえばチャネル・パス構成)を動的に変更することができる。これによって、入出力を構成するのに必要な技術が減り、総合的なシステム可用性が強化され、導入されたチャネルの利用度が最大になり、使用可能入出力能力を分配するのにワークロードの相対優先順位が使用される。一実施形態では、「最良」の変更を決定するために、変更を行う前に1つまたは複数の要因を調べる。この要因には、たとえば、応答時間または入出力速度に対する影響、特定のワークロード目標を達成するための応答時間に対する影響、宛先ポートが使用中であるかどうか、結果の可用性特性(たとえば、共通の単一障害点がないパスの追加)、および結果の入出力構成の複雑さ(またはエントロピ)が含まれる。
【0097】
入出力構成の動的調整に関連する論理の一実施形態を、図12ないし17に関連して詳細に説明する。当初、基本平衡化処理は、たとえばコンピュータ環境のワークロード・マネージャ構成要素によって、定期的にスケジューリングされるタイム・インターバル、たとえば10秒ごとに呼び出される。基本平衡化処理の機能は、サブシステム(たとえば論理制御装置)(浮動(すなわち管理対象)チャネルを定義されている)にまたがって均等に入出力速度を継続的に平衡化し、好ましくは共通の単一障害点のない、複数のパスを介してすべての装置にアクセスできるようにし、ハードウェア障害の後にサブシステムの再平衡化を行うことである。この処理には、データ収集(図12のステップ1000)および平衡検査(ステップ1002)という2つの構成要素が含まれる。データ収集は、環境の各論理区画内(環境が論理分割されると仮定する。論理分割されていない場合には、各システム内)で各インターバルに1回実行され、平衡検査は、グループ化されたLPAR(やはりグループ化を仮定する)ごとにインターバルごとに1回だけ実行される。
【0098】
この処理のデータ収集部分の直列化は、どのシステムでもWLMだけがインターバルごとに1回基本平衡化技法を呼び出すという事実によって得られる。さらに、収集した情報を更新する時には、バージョン番号検査が使用される。たとえば、結合装置内に記憶された制御ブロックを直列化して、収集された情報を更新する。これらの制御ブロックによって、グループ・レベルのデータ収集が可能になり、これによって、同一CPC上のグループのメンバにまたがるチャネルの管理が可能になる。
【0099】
平衡検査を直列化するために、特にその目的のためのグループ有効範囲を有する直列化を使用する。通常、平衡化がデータ収集の直後に呼び出される時には、グループ単位の直列化が要求される。直列化が得られる場合には、平衡検査が進行し、そうでない場合には、平衡検査が、グループ化されたLPAR内ですでに行われつつあり、このインターバル中にもう一度実行する必要はない。
【0100】
図12のデータ収集処理を、図13に関連してさらに説明する。一実施形態では、定義されたサブシステム(たとえば論理制御装置)ごとに、測定データを収集し、更新する(ステップ1100)。測定データには、たとえば、接続時間、保留時間、サブシステム使用中、装置使用中、宛先ポート使用中時間、および宛先ポート使用中カウントが含まれる。更新された測定データは、結合装置などの共用メモリ内の制御ブロックと共に、プロセッサ・メモリ内の制御ブロックに記憶される。
【0101】
測定データの更新の後に、各サブシステムのデフォルト目標入出力速度を計算する(ステップ1102)。この入出力速度は、追加のチャネル帯域幅が必要または望まれるかどうかを示す。一例として、デフォルト目標入出力速度は、接続時間によって重みを付けられる。この計算を実行するために、一例では、以下のステップが行われる。DCMによって管理されるサブシステムごとに、前のインターバル中にそのサブシステムが与えた接続時間の量と共に、現在の速度または実際の速度を得る。その後、入出力速度に接続時間を乗じて、結果を得る。サブシステムの結果を足し合わせて、合計を得る。接続時間によって重みを付けられたデフォルト目標入出力速度を決定するために、この合計を総接続時間で割る。
【0102】
図12に戻って、データ収集を実行した後に、本明細書に記載されているように、平衡検査を実行する(ステップ1002)。平衡検査に関連する論理の一実施形態を、図14に関連して説明する。当初、平衡検査をこの瞬間に実行しなければならないかどうかを判定するために、直列化を実行する(問合せ1200)。グループ単位の直列化を得る試みが不成功の場合には、平衡検査論理は実行されない(ステップ1202)。しかし、直列化が得られる場合には、目標範囲から外れているサブシステムを探す(ステップ1204)。
【0103】
たとえば、すべてのサブシステムについて実際の入出力速度を得、平均をとる(一例では、動的CHPID管理(DCM)によって管理されるサブシステムだけが、この平均に含まれる)。平均を判定した後に、範囲を作成する。一例では、範囲は、たとえば、平均値の±5%である。その後、各サブシステムの目標入出力速度を、目標範囲と比較する。目標入出力速度が指定されていない場合には、デフォルト目標入出力速度を使用する。この比較の結果として、2つのリストが作成される(ステップ1206)。一方のリストには、目標範囲を超えるサブシステムが含まれ、もう一方には、目標を達成しないサブシステムが含まれる。どの場合でも、最近(たとえば最近の10秒以内)に変更されたサブシステムは、リストから排除される。
【0104】
その後、達成されない目標のリストをソートする(ステップ1208)。一例では、WLMを使用してこのリストをソートする。というのは、WLMが、どのサブシステムが最も重要であるかを決定する位置にあるからである。したがって、WLMは、WLMがサービスしようとする順序でサブシステムを並べる。
【0105】
リストをソートした後に、リストの1つまたは複数のサブシステムが、たとえば利用度の低いサブシステムから過度に利用されているサブシステムへ能力をシフトすることによって、サービスされる(ステップ1210)。割り当てられた時間内でサービスできる数のサブシステムが調整される。
【0106】
能力の調整に関連する論理の一実施形態を、図15ないし16に関連して説明する。当初は、リストからサブシステムを選択する(ステップ1300、図15)。一例では、選択されるのは、リストの最初のサブシステムである。その後、問題が宛先ポート使用中であるかどうかに関する判定を行う(問合せ1302)。具体的に言うと、競合(たとえば宛先ポート使用中時間)が高いかどうかに関する判定を行い、そうである場合には、それに接続されるさまざまなインターフェースに関してそれが変動するかどうかを判定する。宛先ポート使用中がすべてのインターフェースで高い場合には、これは、別のチャネル・パスを追加する必要があることを意味する。しかし、1つのインターフェースだけで高い場合には、チャネル・パスを別のインターフェースに移動する(ステップ1304)。したがって、既存のパスが、過度な宛先ポート使用中時間を有するインターフェースから別のインターフェースに移動され、処理は変更の実施(ステップ1306、図16)に続行する。
【0107】
変更を実施する方法の説明は、米国特許第5257379号明細書、米国特許第5257368号明細書、および米国特許第5220654号明細書に記載されている。
【0108】
変更を実施した後に、目標範囲内にない他のサブシステムがあるかどうかに関する判定を行う(問合せ1308)。ない場合には、不平衡訂正の処理が完了する。しかし、他のサブシステムが範囲内にない場合には、この処理は、ステップ1300「リストの次のサブシステムを選択する」(図15)に継続する。
【0109】
問合せ1302に戻って、問題が競合に起因するものでない場合には、処理は、本明細書で説明するように続行される。
【0110】
具体的に言うと、一例では、サブシステムに追加することが可能なチャネル・パスを判定する(ステップ1310)。この判定には、物理トポロジ内での、その特定のサブシステムに到達することができるすべてのチャネルの検査と、そのサブシステムに到達することが可能な方法(パス)の判定が含まれる。パスは、ハードウェア要素がそれを介して接続される接続性の順列であり、これには、チャネルとサブシステムの両方が含まれる。これらのパスのすべて(または、望むならばサブセット)が、可能なパスに含まれる。
【0111】
同様に、除去が可能なパスに関する判定を行う(ステップ1312)。一例として、同一チャネル上に複数のサブシステムがある場合に、共用するサブシステムに接続されたパスの1つが、除去の候補とみなされる。
【0112】
その後、その変更によって影響を受けるサブシステムに関する判定を行う(ステップ1314)。さらに、変更される構成の複雑さを示すエントロピ・インデックスも、下で説明するように判定する。
【0113】
影響を受けるサブシステムの判定に関連する論理の一実施形態を、図17に関連して説明する。当初、サブシステムのサブシステム制御ブロック(SSCB)リストおよびチャネルのCHPIDリストを、後の使用のためにクリアする(ステップ1400)。その後、チャネル・パスIDを、提案されたチャネルに関連する判断選択ブロック(DSB)から取り出し、CHPIDリストに追加する(ステップ1402)。具体的に言うと、各パスは、判断選択ブロックを関連付けられている。判断選択ブロックとは、たとえばチャネル・パスのID(CHPID)、チャネル・パスに関連する論理制御装置を示すサブシステム制御ブロック(SSCB)ポインタ、および影響を受けるSSCBの配列を含む、さまざまな情報を含む制御ブロックである。各SSCBには、サブシステムに接続されたチャネルのすべてが含まれる。
【0114】
その後、援助されるSSCBに関連するすべてのCHPIDも、CHPIDリストに追加する(ステップ1404)。具体的に言うと、SSCBポインタを、援助されるSSCBを示すDSBから取り出す。その後、SSCBのCHPIDのすべてを、CHPIDリストに追加する。
【0115】
その後、リスト内のCHPIDのそれぞれについて、チャネル・パスに関連するSSCBを、SSCBリストに追加する(ステップ1406)。一例では、この情報は、各CHPIDに接続されたSSCBを示すチャネル・パス・テーブルから入手される。
【0116】
その後、SSCBがリストに追加されたかどうかに関する判定を行う(問合せ1408)。そうである場合には、リスト内のSSCBのそれぞれについて、ステップ1404に関して上で説明したように、まだCHPIDリストに含まれていないCHPIDを追加する(ステップ1410)。
【0117】
その後、リストに追加されたCHPIDがあったかどうかに関するもう1つの判定を行う(問合せ1412)。リストに追加された他のCHPIDがあった場合には、処理はステップ1406で継続される。しかし、リストに追加されたSSCBもCHPIDもない場合には(問合せ1408および1412)、リストのSSCBのそれぞれについて、DSB配列要素を作成する(ステップ1414)。すなわち、SSCBのそれぞれを、影響を受けるSSCBの配列に追加する。さらに、配列要素のそれぞれを、実際の入出力速度、目標入出力速度、目標入出力速度と実際の入出力速度の間の現在のデルタ、およびSSCBポインタを用いて更新する(ステップ1416)。
【0118】
図15に戻って、上記に加えて、各パスの可用性インデックスを計算する(ステップ1316)。一例では、可用性インデックスは、提案されたパスがサブシステムへの既存のパスと共通して有する単一障害点の個数を示す数である。チャネル・パスを追加する場合には、単一障害点を有しないことが望まれる。チャネル・パスを削除する場合には、通常は、最も多数の単一障害点を有するパスが選択される。
【0119】
その後、影響を受けるシステムに対する影響を見積もる(ステップ1318)。具体的に言うと、一例では、各サブシステムに対する現在の負荷を調べて、変更を行った場合にそれがどれほど異なるかを判定する。この情報を使用して、最適のオプションを選択する(ステップ1320)。最適のオプションを選択するために、たとえば下記を含むさまざまな要因を検討することができる。
・どのオプションでサブシステムが目標の最も近くに移動されるか
・どのオプションが最良の可用性をもたらすか
・どのオプションが最良の対称性(最小のエントロピ)をもたらすか
・このオプションでパスの総数が2未満に減るか
・このオプションは、明示的な目標のどれかに違反するか(WLMは、デフォルト目標の代わりに使用される明示的目標を供給することができる)
・このオプションは、アーキテクチャ的制限のどれかに違反するか
・このオプションは、導入先によって定義される構成に違反するか
・このオプションは、現在使用不能なリソースの使用を試みるか
【0120】
1特定の例では、当初、どの状況の下でも実施できない判断選択ブロック(DSB)を排除する。これには、たとえば、アーキテクチャ的制限に違反するもの、パスの総数が2未満に減るもの、導入先によって定義される構成に違反するもの(たとえば、定義で許容される最大個数を超える浮動チャネル・パスを使用するもの)、および現在使用不能なリソースの使用を試みるもの(たとえば、使用不能にされたポートの使用を試みるもの)が含まれる(この機能は、この処理のより早い段階に移動し、その結果、可用性インデックスおよびサブシステムに対する影響の見積もりが、絶対に選択できないDSBについて計算されないようにすることができる)。
【0121】
現在サブシステムへのパスが1つだけ存在する場合(おそらくはシステム始動のすぐ後または障害の後)、最適の可用性インデックスを有するパスを選択する。複数のパスが同等の可用性インデックスを有する場合には、目標サブシステムを目標入出力速度目標内に移動する最低のエントロピ・インデックスを有するパスを選択する。複数存在する場合には、その見積もられたデルタの合計(DSBからの「Σ見積もられたデルタ」)が最小であるパスを選択する。
【0122】
現在サブシステムへのパスが複数存在する場合には、最良の可用性インデックスを有するDSBの組を見つける。その組から、目標サブシステムを目標入出力速度の許容範囲内にする、最も低いエントロピ・インデックスを有するオプションを探す。複数存在する場合には、その見積もられたデルタの合計(DSBからの「Σ見積もられたデルタ」)が最小であるパスを選択する。
【0123】
そのようなオプションが存在しない場合には、次によい可用性インデックスを有するパスの組を見つけ、再度試みる。
【0124】
どのオプションでもサブシステムを許容範囲内にすることができない場合には、可用性インデックスおよびエントロピ・インデックスを考慮せずに、サブシステムを目標に最も近づけるものを選択する(上で説明した最適オプション選択のための技法は、一例にすぎない。さまざまな追加、削除、および変更を、本発明の主旨から逸脱せずに行うことができる。さらに、他の技法を使用して、最適オプションを選択することができる)。
【0125】
最適オプションの選択を試みた後に、明示的目標を有するサブシステムに影響せずに新しい目標を達成できるかどうかに関する判定を行う(問合せ1322)。言い換えると、最適オプションが、WLMによって設定された明示的目標を有するサブシステムに悪影響を及ぼすかどうかを判定する。そうである場合には、ワークロード・マネージャを呼び出して、適当なパスを選択する(ステップ1324)。具体的に言うと、ワークロード・マネージャは、パスを選択し、ドナーの新しい目標を選択する。
【0126】
その後、または、明示的目標を有するサブシステムに悪影響を及ぼさずに新しい目標を達成できる場合に、変更を実施し(ステップ1306)、処理は、目標範囲内にない他のサブシステムが存在するかどうかの判定(問合せ1308)に継続する。
【0127】
上で述べたように、WLMは、明示的入出力速度目標を設定することができ、これは、デフォルト平均入出力速度目標の代わりに使用される。一実施形態では、サービス・クラスがその目標を満たさないことをWLMが見つけた時に、WLMが明示的目標を設定する。明示的サブシステム入出力速度目標の設定に関連する論理の一実施形態を、図18に関連して説明する。
【0128】
当初、入出力が最大の遅延を引き起こしているかどうかを判定する(問合せ1500)。そうでない場合には、本発明のこの態様においては処理が完了する。しかし、入出力が最大の遅延を引き起こしている場合には、入出力優先順位調整を試みる(ステップ1502)。その後、サービス・クラスがその目標を満たしているかどうかに関する判定を行う(問合せ1504)。サービス・クラスがその目標を満たしている場合には、処理が完了する。しかし、サービス・クラスが、まだその目標を満たしていない場合には、そのサービス・クラスによって使用されており、低い入出力速度を有するサブシステムを探す(ステップ1506)。突きとめられた1つまたは複数のサブシステムについて、新しいサブシステム入出力速度目標を設定する。一例では、定義済みの量だけ現在の目標を増やし、サブシステムに対する影響を見積もることによって、サブシステム入出力目標が設定される。影響が十分である(たとえば、レシーバ値を超える)場合には、処理が完了する。そうでない場合には、目標をもう一度増やし、この処理を繰り返す。
【0129】
上で詳細に説明したのは、入出力構成の動的調整を提供する動的CHPID管理(DCM)である。DCMは、WLMに有利に統合され、これによって、ワークロードおよび目標の理解を用いて判断を行えるようになる。さらに、DCMを用いると、複数の区画(たとえば区画のグループの区画)にまたがるチャネルの管理が可能になる。これによって、必要な場所へのリソースの追加、ならびに余分なリソースの除去が可能になる。
【0130】
上で説明したように、動的CHPID管理(DCM)を用いて、サブシステムに追加(またはそれから除去)される「最適の」チャネルが選択される。これを行うために、たとえば結果の入出力構成の複雑さ(またはエントロピ)を含む、1つまたは複数の属性が試験される。
【0131】
エントロピの増加は、入出力構成を過度に複雑にし、DCMの処理の過度な時間、影響を受けるサブシステムの過剰な数に起因する不正確な結果、性能報告の複雑さ、および問題判定の複雑さをもたらす。したがって、本発明の一態様では、異なる選択肢の相対エントロピを判定し、その結果、構成をどのように調整するかの選択を行う時に、入出力速度および可用性などの他の検討点と共に、相対エントロピを検討できるようにする機能が提供される。
【0132】
相対エントロピを判定する際には、エントロピ・インデックスを計算する。たとえば、パスを追加する場合には、エントロピ・インデックスは、結果の構成のチャネル数およびサブシステム数の合計になる。さらに、パスを削除する場合には、エントロピ・インデックスは、パスが削除された後に目標サブシステムに相互接続されているチャネルおよびサブシステムの組を反映する。これには、もはやその組に含まれないチャネルおよびサブシステムは含まれない。
【0133】
各オプションのエントロピの度合を計算するために、その決定が実施されると仮定して、一緒に接続されるチャネルおよびサブシステムの数を使用する。エントロピ技法の基本的な前提の1つが、複数の提案されたトポロジの間の比較と、どのトポロジがより対称であるか、またはより少ないエントロピを有するかの判定とを可能にするインデックスを計算することである。これの目的は、大規模な相互接続されたトポロジを避けることである。このようなトポロジは、入出力速度技法の精度を下げ、過度に複雑なトポロジに起因して、事後に性能問題を分析することを困難にすると思われる。
【0134】
エントロピ判定技法の一実施形態を、さまざまな例に関連して説明する。たとえば、図19は、2つのサブシステム1604に接続された2つのチャネル1602を含む構成1600の一例を示す図である。サブシステム22は、追加リソースを必要とする場合に、少なくとも2つの場所からそれを入手することができる。サブシステム22は、チャネル1またはチャネル3のいずれかからそれを受け取ることができる。サブシステム22がチャネル3からそれを入手する場合、結果の構成は、3つのチャネルと2つのサブシステムを有する(図20)。これによって、この構成に5(3+2)のエントロピ・インデックスが与えられる。しかし、サブシステム22が、チャネル1から追加リソースを受け取る場合(図21)、結果の構成は、元々有したもの以上のチャネルもサブシステムも有しておらず、結果のエントロピ・インデックスは2になる。この例では、第2のオプションが最小のエントロピを有する。
【0135】
もう1つの例を検討されたい。図22に示された例では、サブシステム22が、追加リソースを必要としている。その追加リソースは、チャネル2またはチャネル4から入手することができる。チャネル2が使用される場合(図23)、結果のエントロピ・インデックスは5になる(すなわち、ある構成で3つのチャネルが2つのサブシステムに相互接続されているが、チャネル4は、接続されていないのでカウントされない)。チャネル4が使用される場合(図24)、結果のインデックスは3になる。したがって、第2の選択肢が最小のエントロピを有する。
【0136】
次に、構成が分割される場合を検討して、これがエントロピにどのように影響するかを判定する。
【0137】
図25を参照すると、サブシステム23が、過度の能力を有する場合に、チャネル2またはチャネル3を除去することができる。チャネル2を除去する場合(図26)、構成が分割され、両方の構成のエントロピ・インデックスが下がる。チャネル3を除去する場合(図27)、まだ1つの構成が存在するが、エントロピ・インデックスは元のインデックスより低い。一実施形態では、構成を2つに分割するという決定は、2つのより複雑でないネットワークをもたらし、よりよい選択肢であると思われる。
【0138】
削除の際に、既存の構成(図28)のインデックスならびに考慮中のサブシステムを含む提案された構成(図29の右側)のインデックスが既知である場合には、もう一方の構成(図29の左側)のインデックスは、減算によって計算することができる。この例では、もう一方の構成のインデックスは、2に等しい(4−3=1かつ2−1=1、したがって1+1=2)。図30のように、減算がサブシステムまたはチャネルの数としての0をもたらす場合には、エントロピは、構成を分割せずに減らされている(たとえば、2サブシステム−2サブシステム=0)。一実施形態では、分割が好ましい。
【0139】
以下の例では、サブシステム23が、過剰なリソースを有する(図31)。チャネル2またはチャネル3を除去することができる。チャネル3を除去する場合(図32)、結果のエントロピ・インデックスは7になる。チャネル2を除去する場合(図33)、構成が2つの構成に分割され、考慮中の構成(サブシステム23を有する構成)は、5のエントロピ・インデックスを有し、結果の第2の構成は、3のエントロピ・インデックスを有する。一実施形態では、構成の分割が好ましい。
【0140】
次に、結果のエントロピ値ではなく、削除の際に分割を探すことだけが望まれる場合を判定するための例を検討する。
【0141】
図34に示された例では、サブシステム23が、多すぎる帯域幅を有する。チャネル2またはチャネル4のいずれかを除去することができる。チャネル2を除去する場合(図35)、新しいエントロピ・インデックス6が得られ、残りの第2の構成のエントロピ・インデックスは3である。チャネル4を除去する場合(図36)、新しいエントロピ・インデックス5が得られ、残りの第2の構成のエントロピ・インデックスは4である。5および4のエントロピ・インデックスを有する構成が、よりよい選択肢である。したがって、一実施形態では、分割の種類が重要である。
【0142】
図37に示された例では、サブシステム23が、追加リソースを必要としている。サブシステム21をチャネル2から除去し(図38)、サブシステム23にチャネル2のすべてのリソースを与えることができ、また、サブシステム25をチャネル4から除去し(図39)、サブシステム23にチャネル4のすべてのリソースを与えることができる。
【0143】
サブシステム21をチャネル2から除去する場合、結果のエントロピ・インデックスは7であり、結果の第2の構成のエントロピ・インデックスは2である。サブシステム25をチャネル4から除去する場合、結果のエントロピ・インデックスは6であり、残りの第2の構成は3である。一実施形態では、分割が均等により近いので、第2の選択肢がより良いと思われる。
【0144】
どのオプションが半分により近い(すなわち「均等」)かを計算するために、新しいエントロピ・インデックスと結果の第2の構成のエントロピ・インデックスとの間で、チャネルおよびサブシステムの数の差を判定する。この例では、第1の選択肢は、7および2のエントロピ・インデックスがもたらされるので、差は5である(すなわち、対称インデックス)。第2の選択肢は、6および3のエントロピ・インデックスをもたらすので、差は3である。より少ない差を有する選択肢が、この実施形態では最良の選択肢である。
【0145】
結論を出すと、一実施形態では、サブシステムを目標入出力速度に近づけないオプションが、排除される。さらに、エントロピ・インデックスが、結果の構成で相互接続されているチャネルおよびサブシステムの総数を加算することによって計算される。エントロピ・インデックスが変化しない場合には、その変更は対称である。最低のエントロピ・インデックスを有する構成が、通常は選択される。より高いエントロピ・インデックスを有する構成を選択することを意味する場合であっても、8つを超えるチャネルを有する構成を選択することは回避されたい。代替案がない場合には、8つを超えるチャネルを有する構成を選択し、うまくいけば、次のインターバルにこの構成が分割されることになる。
【0146】
上記の実施形態の変形形態を、入出力構成に関連して説明してきたが、本発明の機能は、記憶域ネットワークならびに他のネットワークなど、他のネットワークに同等に適用可能である。
【0147】
上で説明したのは、コンピュータ環境のリソースを管理するためのさまざまな機構である。本発明の一態様では、物理共用可能リソースが、コンピュータ環境の論理区画にまたがって管理される。さらに、一実施形態では、論理区画をグループ化して、たとえば優先順位に基づくリソース割振りを介する、リソース共用が可能になる。このリソース共用には、たとえば、LPARにまたがるCPUリソースの動的管理、LPARにまたがる動的CHPID管理、チャネル・サブシステム内の入出力優先順位キューイング、およびLPARにまたがるメモリの動的管理が含まれる。
【0148】
一例では、システムのワークロード・マネージャが、少なくとも部分的にこの管理の責任を負う。共用可能リソースは、アプリケーションのサブシステムにとって透過的なワークロード・マネージャ指示の下で、LPARにまたがって動的に再分配される。リソースは、モニタリング活動および顧客の目標に基づいて、必要な区画に供給される。さらに、たとえばWLM、シスプレックス、およびPR/SM統合を介する、ワークロード目標による物理リソースの動的調整は、並列シスプレックス・データ共用を必要とせずに実行される。
【0149】
上で説明した実施形態では、さまざまなコンピュータ環境およびシステムを説明した。これらは、例にすぎず、本発明のさまざまな態様を制限する目的のものではない。さらに、本発明のさまざまな態様を、論理区画に関連して説明した。論理区画の使用は、一例にすぎない。本発明の諸態様は、他のタイプの分割ならびに分割されないシステムに適用される。したがって、これらも、本発明の範囲内と見なされる。
【0150】
本発明は、たとえばコンピュータ使用可能媒体を有する、製造品(たとえば、1つまたは複数のコンピュータ・プログラム製品)に含めることができる。この媒体は、その中に、たとえば、本発明の機能を提供し、容易にするためのコンピュータ可読プログラム・コード手段を実施される。製造品は、コンピュータ・システムの一部として含めるか、別々に販売することができる。
【0151】
さらに、本発明の機能を実行するために計算機によって実行可能な命令の少なくとも1つのプログラムを具体的に実施する、計算機によって読取可能な少なくとも1つのプログラム記憶装置を提供することができる。
【0152】
本明細書で示した流れ図は、例示にすぎない。本発明の主旨から逸脱しない、これらの図または本明細書に記載のステップ(または動作)に対する多数の変形形態がありえる。たとえば、ステップを異なる順序で実行することができ、ステップを追加、削除、または変更することができる。これらの変形形態のすべてが、請求される発明の一部とみなされる。
【0153】
本明細書で好ましい実施形態を図示し、説明してきたが、さまざまな変更、追加、置換、および類似行為を、本発明の主旨から逸脱せずに行うことができ、したがって、これらが、請求項で定義される本発明の範囲内であると見なされることを、当業者は諒解するであろう。
【0154】
まとめとして、本発明の構成に関して以下の事項を開示する。
【0155】
(1) コンピュータ環境の論理区画の論理プロセッサを管理する方法であって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、前記コンピュータ環境は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記方法は、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成するステップと、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定するステップと、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整するステップであって、前記動的に調整するステップにおける調整が、前記論理区画の作業負荷に基づくステップと
を含み、
前記判定するステップが、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較するステップを含み、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整するステップが、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らすステップを含む方法。
(2) 前記判定するステップが、複数のタイム・インターバルで実行される、(1)に記載の方法。
(3) 前記式において、Lの最大値がPに従う、(1)に記載の方法。
(4) コンピュータ環境の論理区画の論理プロセッサを管理するシステムであって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、前記コンピュータ環境は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記システムは、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成する手段と、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定する手段と、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整する手段であって、前記動的に調整する手段における調整が、前記論理区画の作業負荷に基づく手段と
を含み、
前記判定する手段が、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較する手段を含み、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整する手段が、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らす手段を含むシステム。
(5) 前記判定する手段において、前記判定が、複数のタイム・インターバルで実行される、(4)に記載のシステム。
(6) 前記式において、Lの最大値がPに従う、(4)に記載のシステム。
(7) コンピュータ環境の論理プロセッサを管理するシステムであって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、論理区画の各々は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記システムは、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成するように適合されたプロセッサと、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定するように適合されたプロセッサと、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整するように適合されたプロセッサであって、前記動的に調整するように適合されたプロセッサにおける調整が、前記論理区画の作業負荷に基づくプロセッサと
を含み、
前記判定するように適合されたプロセッサが、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較し、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整するように適合されたプロセッサが、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らすように適合されたプロセッサを含むシステム。
(8) 判定するように適合されたプロセッサにおいて、前記判定が、複数のタイム・インターバルで実行される、(7)に記載のシステム。
(9) 前記式において、Lの最大値がPに従う、(7)に記載のシステム。
(10) コンピュータ環境の論理区画の論理プロセッサを管理するプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、前記コンピュータ環境は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記プログラムは、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成するステップと、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定するステップと、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整するステップであって、前記動的に調整するステップにおける調整が、前記論理区画の作業負荷に基づくステップと
を含み、
前記判定するステップが、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較するステップを含み、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整するステップが、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らすステップを含むプログラムを記録したコンピュータ読み取り可能な記録媒体。
(11) 前記判定するステップが、複数のタイム・インターバルで実行されるプログラムを記録した(10)に記載のコンピュータ読み取り可能な記録媒体。
(12) 前記式において、Lの最大値がPに従うプログラムを記録した(10)に記載のコンピュータ読み取り可能な記録媒体。
【図面の簡単な説明】
【図1】本発明の機能を組み込まれ、使用するコンピュータ環境の一例を示す図である。
【図2】本発明の機能を組み込まれ、使用するコンピュータ環境のもう1つの実施形態を示す図である。
【図3】本発明の機能を組み込まれ、使用するコンピュータ環境の追加構成要素を示す図である。
【図4】本発明の原理に従って使用される論理区画グループの一例を示す図である。
【図5】本発明の原理による、グループに加入する区画に関連する論理の一例を示す図である。
【図6】本発明の原理による、グループに加入する区画に関連する論理の一例を示す図である。
【図7】本発明の原理による、グループからの区画の除去に関連する論理の一実施形態を示す図である。
【図8】本発明の原理による、区画のレシーバ・サービス・クラスを助けるための、区画の重みを増やすことができるかどうかの判定に関連する論理の一実施形態を示す図である。
【図9】本発明の原理による、論理プロセッサの構成の動的調整に関連する論理の一実施形態を示す図である。
【図10】本発明の1つまたは複数の機能を組み込まれ、使用するチャネル・サブシステムの一実施形態を示す図である。
【図11】本発明の原理による、処理される入出力動作の選択に関連する論理の一実施形態を示す図である。
【図12】本発明の原理による、入出力構成を調整しなければならないかどうかの判定に関連する論理の一実施形態を示す図である。
【図13】本発明の原理による、図12のデータ収集に関連する論理の一実施形態を示す図である。
【図14】本発明の原理による、図12の平衡検査に関連する論理の一実施形態を示す図である。
【図15】本発明の原理による、入出力構成の不平衡の訂正に関連する論理の一実施形態を示す図である。
【図16】本発明の原理による、入出力構成の不平衡の訂正に関連する論理の一実施形態を示す図である。
【図17】本発明の原理による、影響を受けるサブシステムの判定に関連する論理の一実施形態を示す図である。
【図18】本発明の原理に従って使用される、明示的入出力速度目標の設定に関連する論理の一実施形態を示す図である。
【図19】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図20】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図21】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図22】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図23】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図24】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図25】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図26】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図27】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図28】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図29】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図30】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図31】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図32】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図33】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図34】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図35】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図36】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図37】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図38】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【図39】本発明の原理による、エントロピ判定に使用される入出力構成の一例を示す図である。
【符号の説明】
800 中央処理装置
802 チャネル・サブシステム
804 付加された装置
806 入出力プロセッサ作業キュー
808 入出力プロセッサ
810 チャネル・プロセッサ作業キュー
812 チャネル・プロセッサ
814 制御装置作業キュー
Claims (12)
- コンピュータ環境の論理区画の論理プロセッサを管理する方法であって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、前記コンピュータ環境は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記方法は、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成するステップと、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定するステップと、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整するステップであって、前記動的に調整するステップにおける調整が、前記論理区画の作業負荷に基づくステップと
を含み、
前記判定するステップが、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較するステップを含み、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整するステップが、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らすステップを含む方法。 - 前記判定するステップが、複数のタイム・インターバルで実行される、請求項1に記載の方法。
- 前記式において、Lの最大値がPに従う、請求項1に記載の方法。
- コンピュータ環境の論理区画の論理プロセッサを管理するシステムであって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、前記コンピュータ環境は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記システムは、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成する手段と、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定する手段と、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整する手段であって、前記動的に調整する手段における調整が、前記論理区画の作業負荷に基づく手段と
を含み、
前記判定する手段が、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較する手段を含み、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整する手段が、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らす手段を含むシステム。 - 前記判定する手段において、前記判定が、複数のタイム・インターバルで実行される、請求項4に記載のシステム。
- 前記式において、Lの最大値がPに従う、請求項4に記載のシステム。
- コンピュータ環境の論理プロセッサを管理するシステムであって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、論理区画の各々は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記システムは、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成するように適合されたプロセッサと、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定するように適合されたプロセッサと、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整するように適合されたプロセッサであって、前記動的に調整するように適合されたプロセッサにおける調整が、前記論理区画の作業負荷に基づくプロセッサと
を含み、
前記判定するように適合されたプロセッサが、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較し、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整するように適合されたプロセッサが、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らすように適合されたプロセッサを含むシステム。 - 判定するように適合されたプロセッサにおいて、前記判定が、複数のタイム・インターバルで実行される、請求項7に記載のシステム。
- 前記式において、Lの最大値がPに従う、請求項7に記載のシステム。
- コンピュータ環境の論理区画の論理プロセッサを管理するプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記コンピュータ環境は1つ又は複数の中央処理装置を有し、前記中央処理装置は物理プロセッサであり、前記コンピュータ環境は1つ又は複数の論理区画を有し、前記論理区画の各々は1つ又は複数の論理プロセッサを有し、前記論理プロセッサの各々は、前記論理区画に割り振られた中央処理装置の全て又は共用部分を表し、
前記プログラムは、
1つまたは複数の論理プロセッサを用いて前記コンピュータ環境の論理区画を構成するステップと、
前記構成された論理区画の論理プロセッサの数を調整しなければならないことを判定するステップと、
前記判定に基づき、前記構成された論理区画の論理プロセッサの数を動的に調整するステップであって、前記動的に調整するステップにおける調整が、前記論理区画の作業負荷に基づくステップと
を含み、
前記判定するステップが、調整を行わなければならないかどうかを判定するために、判定を行う際に定義済みの式を使用して、前記定義済みの式の結果Lを1つまたは複数の閾値と比較するステップを含み、
前記定義済みの式が、
L=floor[max(W,U)×P+1.5]
を含み、ここで、
L=前記論理区画に構成される論理プロセッサの数、
W=前記論理区画に割り当てられる中央処理装置能力の比率、
U=前記論理区画によって現在使用されている中央処理装置能力の比率、
P=前記論理区画に関連付けられた前記中央処理装置の数
であり、
前記動的に調整するステップが、前記論理区画に割り振られる論理プロセッサの数を増やす又は減らすステップを含むプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 前記判定するステップが、複数のタイム・インターバルで実行されるプログラムを記録した請求項10に記載のコンピュータ読み取り可能な記録媒体。
- 前記式において、Lの最大値がPに従うプログラムを記録した請求項10に記載のコンピュータ読み取り可能な記録媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/407594 | 1999-09-28 | ||
US09/407,594 US6986137B1 (en) | 1999-09-28 | 1999-09-28 | Method, system and program products for managing logical processors of a computing environment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001147824A JP2001147824A (ja) | 2001-05-29 |
JP3659324B2 true JP3659324B2 (ja) | 2005-06-15 |
Family
ID=23612731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000290041A Expired - Lifetime JP3659324B2 (ja) | 1999-09-28 | 2000-09-25 | コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品 |
Country Status (7)
Country | Link |
---|---|
US (2) | US6986137B1 (ja) |
EP (1) | EP1089173B1 (ja) |
JP (1) | JP3659324B2 (ja) |
KR (1) | KR100420421B1 (ja) |
AT (1) | ATE460703T1 (ja) |
DE (1) | DE60043970D1 (ja) |
TW (1) | TW522310B (ja) |
Families Citing this family (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6957435B2 (en) * | 2001-04-19 | 2005-10-18 | International Business Machines Corporation | Method and apparatus for allocating processor resources in a logically partitioned computer system |
US6792514B2 (en) * | 2001-06-14 | 2004-09-14 | International Business Machines Corporation | Method, system and computer program product to stress and test logical partition isolation features |
JP4199444B2 (ja) * | 2001-08-30 | 2008-12-17 | 日本電気株式会社 | パーティション構成変更方式、パーティション構成変更方法およびパーティション構成変更用プログラム |
US20030061262A1 (en) * | 2001-09-25 | 2003-03-27 | Hahn Stephen C. | Method and apparatus for partitioning resources within a computer system |
US7103529B2 (en) * | 2001-09-27 | 2006-09-05 | Intel Corporation | Method for providing system integrity and legacy environment emulation |
US7171668B2 (en) * | 2001-12-17 | 2007-01-30 | International Business Machines Corporation | Automatic data interpretation and implementation using performance capacity management framework over many servers |
US7099814B2 (en) * | 2002-03-29 | 2006-08-29 | International Business Machines Corportion | I/O velocity projection for bridge attached channel |
US7352761B2 (en) * | 2002-06-04 | 2008-04-01 | Lucent Technologies Inc. | Distributing unused allocated bandwidth using a borrow vector |
US7185086B2 (en) * | 2002-06-26 | 2007-02-27 | Hewlett-Packard Development Company, L.P. | Method for electronic tracking of an electronic device |
US7167916B2 (en) * | 2002-08-30 | 2007-01-23 | Unisys Corporation | Computer OS dispatcher operation with virtual switching queue and IP queues |
US7219241B2 (en) * | 2002-11-30 | 2007-05-15 | Intel Corporation | Method for managing virtual and actual performance states of logical processors in a multithreaded processor using system management mode |
US7290260B2 (en) * | 2003-02-20 | 2007-10-30 | International Business Machines Corporation | Dynamic processor redistribution between partitions in a computing system |
US7376948B2 (en) | 2003-04-24 | 2008-05-20 | International Business Machines Corporation | Selective generation of an asynchronous notification for a partition management operation in a logically-partitioned computer |
US7478393B2 (en) | 2003-04-30 | 2009-01-13 | International Business Machines Corporation | Method for marketing to instant messaging service users |
US7472246B2 (en) | 2003-04-30 | 2008-12-30 | International Business Machines Corporation | Method and system for automated memory reallocating and optimization between logical partitions |
US7620950B2 (en) * | 2003-07-01 | 2009-11-17 | International Business Machines Corporation | System and method to monitor amount of usage of applications in logical partitions |
US7836450B2 (en) | 2003-08-28 | 2010-11-16 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7870553B2 (en) | 2003-08-28 | 2011-01-11 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7594089B2 (en) | 2003-08-28 | 2009-09-22 | Mips Technologies, Inc. | Smart memory based synchronization controller for a multi-threaded multiprocessor SoC |
US7321965B2 (en) | 2003-08-28 | 2008-01-22 | Mips Technologies, Inc. | Integrated mechanism for suspension and deallocation of computational threads of execution in a processor |
US7711931B2 (en) | 2003-08-28 | 2010-05-04 | Mips Technologies, Inc. | Synchronized storage providing multiple synchronization semantics |
US9032404B2 (en) | 2003-08-28 | 2015-05-12 | Mips Technologies, Inc. | Preemptive multitasking employing software emulation of directed exceptions in a multithreading processor |
US7418585B2 (en) | 2003-08-28 | 2008-08-26 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7849297B2 (en) | 2003-08-28 | 2010-12-07 | Mips Technologies, Inc. | Software emulation of directed exceptions in a multithreading processor |
WO2005022385A1 (en) * | 2003-08-28 | 2005-03-10 | Mips Technologies, Inc. | Mechanisms for dynamic configuration of virtual processor resources |
US7376954B2 (en) | 2003-08-28 | 2008-05-20 | Mips Technologies, Inc. | Mechanisms for assuring quality of service for programs executing on a multithreaded processor |
JP4257783B2 (ja) * | 2003-10-23 | 2009-04-22 | 株式会社日立製作所 | 論理分割可能な記憶装置及び記憶装置システム |
JP4141391B2 (ja) * | 2004-02-05 | 2008-08-27 | 株式会社日立製作所 | ストレージサブシステム |
US7526421B2 (en) * | 2004-02-27 | 2009-04-28 | International Business Machines Corporation | System and method for modeling LPAR behaviors in a simulation tool |
US7231504B2 (en) | 2004-05-13 | 2007-06-12 | International Business Machines Corporation | Dynamic memory management of unallocated memory in a logical partitioned data processing system |
EP1769353A2 (en) * | 2004-05-21 | 2007-04-04 | Computer Associates Think, Inc. | Method and apparatus for dynamic memory resource management |
EP1769352B1 (en) * | 2004-05-21 | 2013-03-20 | Computer Associates Think, Inc. | Method and apparatus for dynamic cpu resource management |
US7412545B2 (en) * | 2004-07-22 | 2008-08-12 | International Business Machines Corporation | Apparatus and method for updating I/O capability of a logically-partitioned computer system |
US7752623B1 (en) * | 2004-09-16 | 2010-07-06 | Hewlett-Packard Development Company, L.P. | System and method for allocating resources by examining a system characteristic |
JP3964896B2 (ja) * | 2004-09-30 | 2007-08-22 | 株式会社東芝 | 資源割当装置及び資源割当方法 |
US7222223B2 (en) * | 2004-10-29 | 2007-05-22 | Pillar Data Systems, Inc. | Management of I/O operations in data storage systems |
DE102005014717B4 (de) * | 2005-03-31 | 2022-09-29 | Fujitsu Technology Solutions Intellectual Property Gmbh | Computersystem und Verfahren zur Aufteilung und Zuteilung von Rechenleistung innerhalb eines Computersystems |
US8104033B2 (en) * | 2005-09-30 | 2012-01-24 | Computer Associates Think, Inc. | Managing virtual machines based on business priorty |
JP2007108950A (ja) * | 2005-10-12 | 2007-04-26 | Nec Corp | I/o処理装置及び方法 |
US8225313B2 (en) * | 2005-10-19 | 2012-07-17 | Ca, Inc. | Object-based virtual infrastructure management |
US8060610B1 (en) * | 2005-10-28 | 2011-11-15 | Hewlett-Packard Development Company, L.P. | Multiple server workload management using instant capacity processors |
US8108863B2 (en) * | 2005-12-30 | 2012-01-31 | Intel Corporation | Load balancing for multi-threaded applications via asymmetric power throttling |
US8146089B2 (en) * | 2006-06-14 | 2012-03-27 | Intel Corporation | Sharing resources of a partitioned system |
US7657715B2 (en) * | 2006-10-31 | 2010-02-02 | International Business Machines Corporation | Dynamic operation mode transition of a storage subsystem |
US8286173B2 (en) * | 2007-03-23 | 2012-10-09 | Oracle America, Inc. | Methods and apparatus for window-based fair priority scheduling |
US8479208B2 (en) * | 2007-03-30 | 2013-07-02 | Intel Corporation | System partitioning to present software as platform level functionality including mode logic to maintain and enforce partitioning in first and configure partitioning in second mode |
US8180997B2 (en) * | 2007-07-05 | 2012-05-15 | Board Of Regents, University Of Texas System | Dynamically composing processor cores to form logical processors |
US8954562B2 (en) * | 2007-09-28 | 2015-02-10 | Intel Corporation | Entropy-based (self-organizing) stability management |
US7996510B2 (en) * | 2007-09-28 | 2011-08-09 | Intel Corporation | Virtual clustering for scalable network control and management |
US8250581B1 (en) * | 2007-10-28 | 2012-08-21 | Hewlett-Packard Development Company, L.P. | Allocating computer resources to candidate recipient computer workloads according to expected marginal utilities |
US8424078B2 (en) * | 2007-11-06 | 2013-04-16 | International Business Machines Corporation | Methodology for secure application partitioning enablement |
US8881163B2 (en) * | 2007-12-07 | 2014-11-04 | Microsoft Corporation | Kernel processor grouping |
US8352950B2 (en) * | 2008-01-11 | 2013-01-08 | International Business Machines Corporation | Algorithm to share physical processors to maximize processor cache usage and topologies |
US8276143B2 (en) * | 2008-03-10 | 2012-09-25 | Oracle America, Inc. | Dynamic scheduling of application tasks in a distributed task based system |
US8312456B2 (en) * | 2008-05-30 | 2012-11-13 | International Business Machines Corporation | System and method for optimizing interrupt processing in virtualized environments |
US8250579B2 (en) * | 2008-06-27 | 2012-08-21 | Oracle America, Inc. | Method for stage-based cost analysis for task scheduling |
KR20100035394A (ko) * | 2008-09-26 | 2010-04-05 | 삼성전자주식회사 | 멀티 프로세싱에서의 메모리 관리장치 및 그 방법 |
US8732716B2 (en) | 2008-09-30 | 2014-05-20 | International Business Machines Corporation | Virtualization across physical partitions of a multi-core processor (MCP) |
US9189222B1 (en) * | 2008-10-28 | 2015-11-17 | Hewlett-Packard Development Company, L.P. | Updating a computer system |
US9378062B2 (en) * | 2009-06-18 | 2016-06-28 | Microsoft Technology Licensing, Llc | Interface between a resource manager and a scheduler in a process |
KR100990412B1 (ko) * | 2009-10-29 | 2010-10-29 | 주식회사 팀스톤 | 씨피유 가상화를 지원할 수 있는 컴퓨터 서버 |
KR101656881B1 (ko) * | 2010-02-01 | 2016-09-12 | 삼성전자주식회사 | 데이터 처리 장치 및 방법 |
US9229783B2 (en) * | 2010-03-31 | 2016-01-05 | International Business Machines Corporation | Methods and apparatus for resource capacity evaluation in a system of virtual containers |
JP5178778B2 (ja) * | 2010-06-02 | 2013-04-10 | 株式会社日立製作所 | 仮想計算機およびcpu割り当て方法 |
JP4993002B2 (ja) * | 2010-07-05 | 2012-08-08 | 日本電気株式会社 | I/o処理装置及び方法 |
US8554917B2 (en) | 2010-08-20 | 2013-10-08 | International Business Machines Corporation | Performance isolation for storage clouds |
US8869164B2 (en) * | 2010-09-02 | 2014-10-21 | International Business Machines Corporation | Scheduling a parallel job in a system of virtual containers |
US9317329B2 (en) * | 2010-11-15 | 2016-04-19 | Qualcomm Incorporated | Arbitrating resource acquisition for applications of a multi-processor mobile communications device |
US8843633B2 (en) * | 2011-03-23 | 2014-09-23 | Bmc Software, Inc. | Cloud-based resource identification and allocation |
JP5370946B2 (ja) * | 2011-04-15 | 2013-12-18 | 株式会社日立製作所 | リソース管理方法及び計算機システム |
US8713562B2 (en) | 2012-01-06 | 2014-04-29 | International Business Machines Corporation | Intelligent and automated code deployment |
US9122780B2 (en) * | 2012-06-20 | 2015-09-01 | Intel Corporation | Monitoring resource usage by a virtual machine |
US9038090B1 (en) | 2013-03-06 | 2015-05-19 | zIT Consulting GmbH | System and method for managing mainframe computer system usage |
US9043575B2 (en) | 2013-03-15 | 2015-05-26 | International Business Machines Corporation | Managing CPU resources for high availability micro-partitions |
US9244826B2 (en) | 2013-03-15 | 2016-01-26 | International Business Machines Corporation | Managing CPU resources for high availability micro-partitions |
US9032180B2 (en) | 2013-03-15 | 2015-05-12 | International Business Machines Corporation | Managing CPU resources for high availability micro-partitions |
US10140626B1 (en) | 2014-07-14 | 2018-11-27 | Ca, Inc. | System and method for managing mainframe computer system billable usage |
US9912741B2 (en) | 2015-01-20 | 2018-03-06 | International Business Machines Corporation | Optimization of computer system logical partition migrations in a multiple computer system environment |
US9483315B2 (en) | 2015-02-03 | 2016-11-01 | International Business Machines Corporation | Autonomous dynamic optimization of platform resources |
US9342372B1 (en) * | 2015-03-23 | 2016-05-17 | Bmc Software, Inc. | Dynamic workload capping |
US10346168B2 (en) | 2015-06-26 | 2019-07-09 | Microsoft Technology Licensing, Llc | Decoupled processor instruction window and operand buffer |
US10409599B2 (en) | 2015-06-26 | 2019-09-10 | Microsoft Technology Licensing, Llc | Decoding information about a group of instructions including a size of the group of instructions |
US10409606B2 (en) | 2015-06-26 | 2019-09-10 | Microsoft Technology Licensing, Llc | Verifying branch targets |
US10175988B2 (en) | 2015-06-26 | 2019-01-08 | Microsoft Technology Licensing, Llc | Explicit instruction scheduler state information for a processor |
US11755484B2 (en) | 2015-06-26 | 2023-09-12 | Microsoft Technology Licensing, Llc | Instruction block allocation |
US9952867B2 (en) | 2015-06-26 | 2018-04-24 | Microsoft Technology Licensing, Llc | Mapping instruction blocks based on block size |
US10191747B2 (en) | 2015-06-26 | 2019-01-29 | Microsoft Technology Licensing, Llc | Locking operand values for groups of instructions executed atomically |
US9946548B2 (en) | 2015-06-26 | 2018-04-17 | Microsoft Technology Licensing, Llc | Age-based management of instruction blocks in a processor instruction window |
US10169044B2 (en) | 2015-06-26 | 2019-01-01 | Microsoft Technology Licensing, Llc | Processing an encoding format field to interpret header information regarding a group of instructions |
US9588913B2 (en) | 2015-06-29 | 2017-03-07 | International Business Machines Corporation | Management of allocation for alias devices |
US9680657B2 (en) | 2015-08-31 | 2017-06-13 | Bmc Software, Inc. | Cost optimization in dynamic workload capping |
US10768936B2 (en) | 2015-09-19 | 2020-09-08 | Microsoft Technology Licensing, Llc | Block-based processor including topology and control registers to indicate resource sharing and size of logical processor |
US11126433B2 (en) | 2015-09-19 | 2021-09-21 | Microsoft Technology Licensing, Llc | Block-based processor core composition register |
US11016770B2 (en) | 2015-09-19 | 2021-05-25 | Microsoft Technology Licensing, Llc | Distinct system registers for logical processors |
US9858124B1 (en) | 2015-10-05 | 2018-01-02 | Amazon Technologies, Inc. | Dynamic management of data stream processing |
US9569277B1 (en) | 2016-01-29 | 2017-02-14 | International Business Machines Corporation | Rebalancing virtual resources for virtual machines based on multiple resource capacities |
US10929326B2 (en) * | 2016-09-19 | 2021-02-23 | International Business Machines Corporation | Firm channel paths |
US11531552B2 (en) | 2017-02-06 | 2022-12-20 | Microsoft Technology Licensing, Llc | Executing multiple programs simultaneously on a processor core |
US10909046B2 (en) | 2018-06-15 | 2021-02-02 | Micron Technology, Inc. | Memory access determination |
US11086686B2 (en) | 2018-09-28 | 2021-08-10 | International Business Machines Corporation | Dynamic logical partition provisioning |
JP7120199B2 (ja) * | 2019-10-08 | 2022-08-17 | 横河電機株式会社 | 通信処理装置、通信処理方法、およびプログラム |
US11455195B2 (en) | 2020-01-03 | 2022-09-27 | International Business Machines Corporation | Workload-based cognitive dynamic computing system optimization |
US11481190B2 (en) | 2020-05-22 | 2022-10-25 | International Business Machiines Corporation | Selecting a plurality of processing systems to sort a data set |
JP7350694B2 (ja) * | 2020-06-25 | 2023-09-26 | Kddi株式会社 | 制御装置、情報処理装置、情報処理制御方法及びコンピュータプログラム |
US11782624B2 (en) * | 2020-10-06 | 2023-10-10 | Samsung Electronics Co., Ltd. | Worflow-based partition allocation |
Family Cites Families (92)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4271468A (en) * | 1979-11-06 | 1981-06-02 | International Business Machines Corp. | Multiprocessor mechanism for handling channel interrupts |
JPS5958553A (ja) | 1982-09-28 | 1984-04-04 | Nec Corp | 統合型仮想計算機のディスパッチ制御方式 |
US4564903A (en) | 1983-10-05 | 1986-01-14 | International Business Machines Corporation | Partitioned multiprocessor programming system |
US4633394A (en) * | 1984-04-24 | 1986-12-30 | International Business Machines Corp. | Distributed arbitration for multiple processors |
DE3688759T2 (de) * | 1985-03-20 | 1994-01-05 | Hitachi Ltd | Ein-/Ausgabe-Steuerungssystem. |
US4843541A (en) | 1987-07-29 | 1989-06-27 | International Business Machines Corporation | Logical resource partitioning of a data processing system |
JP2629278B2 (ja) * | 1988-06-30 | 1997-07-09 | 株式会社日立製作所 | 仮想計算機システム |
US4949254A (en) | 1988-09-29 | 1990-08-14 | Ibm Corp. | Method to manage concurrent execution of a distributed application program by a host computer and a large plurality of intelligent work stations on an SNA network |
US5455865A (en) * | 1989-05-09 | 1995-10-03 | Digital Equipment Corporation | Robust packet routing over a distributed network containing malicious failures |
US5168554A (en) * | 1989-10-13 | 1992-12-01 | International Business Machines Corporation | Converting trace data from processors executing in parallel into graphical form |
US5239649A (en) | 1989-10-30 | 1993-08-24 | International Business Machines Corporation | Channel path load balancing, through selection of storage volumes to be processed, for long running applications |
JP2701513B2 (ja) * | 1990-03-29 | 1998-01-21 | 日本電気株式会社 | 回線切替制御方式 |
US5301333A (en) * | 1990-06-14 | 1994-04-05 | Bell Communications Research, Inc. | Tree structured variable priority arbitration implementing a round-robin scheduling policy |
JPH0496828A (ja) * | 1990-08-15 | 1992-03-30 | Hitachi Ltd | 多重絶対アドレス空間構成方法および装置 |
DE69123663T2 (de) * | 1990-08-31 | 1997-06-26 | Ibm | Kanäle in einem Rechnerein-Ausgabesystem |
US5220653A (en) * | 1990-10-26 | 1993-06-15 | International Business Machines Corporation | Scheduling input/output operations in multitasking systems |
US5257368A (en) | 1991-03-28 | 1993-10-26 | International Business Machines Corp. | System for dynamically changing a system I/O configuration by determining differences between current and future configurations and describing differences to software and hardware control blocks |
US5220654A (en) | 1991-03-28 | 1993-06-15 | International Business Machines Corp. | Method and system for managing an operating system definition of a dynamically modifiable i/o configuration |
US5170472A (en) | 1991-03-28 | 1992-12-08 | International Business Machines Corp. | Dynamically changing a system i/o configuration definition |
US5644712A (en) * | 1991-06-05 | 1997-07-01 | International Business Machines Corporation | Indirect addressing of channels via logical channel groups |
US5210872A (en) * | 1991-06-28 | 1993-05-11 | Texas Instruments Inc. | Critical task scheduling for real-time systems |
US5257379A (en) | 1991-09-04 | 1993-10-26 | International Business Machines Corporation | Establishing synchronization of hardware and software I/O configuration definitions |
US5423026A (en) * | 1991-09-05 | 1995-06-06 | International Business Machines Corporation | Method and apparatus for performing control unit level recovery operations |
US5253344A (en) * | 1991-09-05 | 1993-10-12 | International Business Machines Corp. | Method and apparatus for dynamically changing the configuration of a logically partitioned data processing system |
US5388219A (en) * | 1992-03-02 | 1995-02-07 | International Business Machines Corporation | Efficient channel and control unit for host computer |
CA2086691C (en) | 1992-03-30 | 1997-04-08 | David A. Elko | Communicating messages between processors and a coupling facility |
US5317739A (en) | 1992-03-30 | 1994-05-31 | International Business Machines Corp. | Method and apparatus for coupling data processing systems |
US5504894A (en) * | 1992-04-30 | 1996-04-02 | International Business Machines Corporation | Workload manager for achieving transaction class response time goals in a multiprocessing system |
JP2682770B2 (ja) * | 1992-05-15 | 1997-11-26 | 富士通株式会社 | 仮想計算機システムのcpu制御方式 |
US5414851A (en) * | 1992-06-15 | 1995-05-09 | International Business Machines Corporation | Method and means for sharing I/O resources by a plurality of operating systems |
JP3186244B2 (ja) | 1992-09-18 | 2001-07-11 | 株式会社日立製作所 | 仮想計算機システム |
US5471609A (en) * | 1992-09-22 | 1995-11-28 | International Business Machines Corporation | Method for identifying a system holding a `Reserve` |
CA2100540A1 (en) * | 1992-10-19 | 1994-04-20 | Jonel George | System and method for performing resource reconfiguration in a computer system |
US5301323A (en) | 1992-10-30 | 1994-04-05 | International Business Machines Corp. | Data processing system including dynamic channel path management |
US5526484A (en) | 1992-12-10 | 1996-06-11 | International Business Machines Corporation | Method and system for pipelining the processing of channel command words |
US5459864A (en) * | 1993-02-02 | 1995-10-17 | International Business Machines Corporation | Load balancing, error recovery, and reconfiguration control in a data movement subsystem with cooperating plural queue processors |
US5388245A (en) * | 1993-06-01 | 1995-02-07 | Intel Corporation | Memory arbitration method and apparatus for multiple-cycle memory coprocessors employing a data cache unit and stack RAM |
US5430730A (en) * | 1993-09-14 | 1995-07-04 | Rolm Company | Method for building a sub-network in a distributed voice messaging system |
US5706432A (en) | 1993-11-04 | 1998-01-06 | International Business Machines Corporation | Mechanism for receiving messages at a coupling facility |
US5712974A (en) * | 1994-03-30 | 1998-01-27 | International Business Machines Corporation | Method and apparatus for controlling the configuration definitions in a data processing system with a plurality of processors |
US5473773A (en) | 1994-04-04 | 1995-12-05 | International Business Machines Corporation | Apparatus and method for managing a data processing system workload according to two or more distinct processing goals |
SE9402059D0 (sv) * | 1994-06-13 | 1994-06-13 | Ellemtel Utvecklings Ab | Sätt och anordning vid telekommunikation |
JP3696901B2 (ja) * | 1994-07-19 | 2005-09-21 | キヤノン株式会社 | 負荷分散方法 |
US5548791A (en) * | 1994-07-25 | 1996-08-20 | International Business Machines Corporation | Input/output control system with plural channel paths to I/O devices |
US5564040A (en) | 1994-11-08 | 1996-10-08 | International Business Machines Corporation | Method and apparatus for providing a server function in a logically partitioned hardware machine |
US5675739A (en) | 1995-02-03 | 1997-10-07 | International Business Machines Corporation | Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types |
US5659756A (en) * | 1995-03-31 | 1997-08-19 | International Business Machines Corporation | Method and system for providing access to logical partition information on a per resource basis |
US5802286A (en) * | 1995-05-22 | 1998-09-01 | Bay Networks, Inc. | Method and apparatus for configuring a virtual network |
US5737691A (en) * | 1995-07-14 | 1998-04-07 | Motorola, Inc. | System and method for allocating frequency channels in a two-way messaging network |
US5872918A (en) * | 1995-07-14 | 1999-02-16 | Telefonaktiebolaget Lm Erisson (Publ) | System and method for optimal virtual path capacity dimensioning with broadband traffic |
US6173306B1 (en) * | 1995-07-21 | 2001-01-09 | Emc Corporation | Dynamic load balancing |
US5996026A (en) * | 1995-09-05 | 1999-11-30 | Hitachi, Ltd. | Method and apparatus for connecting i/o channels between sub-channels and devices through virtual machines controlled by a hypervisor using ID and configuration information |
JPH0991257A (ja) | 1995-09-25 | 1997-04-04 | Nec Corp | Cpu管理方式 |
JP2940450B2 (ja) | 1995-10-26 | 1999-08-25 | 日本電気株式会社 | クラスタ型コンピュータのジョブスケジュール方法及び装置 |
JPH09167141A (ja) * | 1995-12-18 | 1997-06-24 | Hitachi Ltd | 負荷分散制御方法 |
JPH09190381A (ja) * | 1996-01-11 | 1997-07-22 | Hitachi Ltd | マルチプロセッサ構成の仮想計算機システム |
US6128657A (en) * | 1996-02-14 | 2000-10-03 | Fujitsu Limited | Load sharing system |
US5838968A (en) * | 1996-03-01 | 1998-11-17 | Chromatic Research, Inc. | System and method for dynamic resource management across tasks in real-time operating systems |
US5918021A (en) * | 1996-06-03 | 1999-06-29 | Intel Corporation | System and method for dynamic distribution of data packets through multiple channels |
WO1998000790A1 (fr) | 1996-07-01 | 1998-01-08 | Fujitsu Limited | Procede et dispositif de gestion de l'utilisation des ressources partagees par plusieurs groupes |
US5889989A (en) * | 1996-09-16 | 1999-03-30 | The Research Foundation Of State University Of New York | Load sharing controller for optimizing monetary cost |
US5925102A (en) | 1997-03-28 | 1999-07-20 | International Business Machines Corporation | Managing processor resources in a multisystem environment in order to provide smooth real-time data streams, while enabling other types of applications to be processed concurrently |
US5935234A (en) * | 1997-04-14 | 1999-08-10 | International Business Machines Corporation | Method and system for controlling access to a shared resource in a data processing system utilizing pseudo-random priorities |
US5790851A (en) * | 1997-04-15 | 1998-08-04 | Oracle Corporation | Method of sequencing lock call requests to an O/S to avoid spinlock contention within a multi-processor environment |
US5802354A (en) * | 1997-06-09 | 1998-09-01 | International Business Machines Corporation | Method and apparatus for synchronizing selected logical partitions of a partitioned information handling system to a test datesource |
US6266694B1 (en) * | 1997-06-19 | 2001-07-24 | Nortel Networks Limited | Architecture for network manager |
US6047332A (en) * | 1997-06-30 | 2000-04-04 | Sun Microsystems, Inc. | Global file system-based system and method for rendering devices on a cluster globally visible |
US6101508A (en) * | 1997-08-01 | 2000-08-08 | Hewlett-Packard Company | Clustered file management for network resources |
JPH1165862A (ja) | 1997-08-14 | 1999-03-09 | Nec Corp | マルチプロセッサ資源分割管理方式 |
US6360303B1 (en) * | 1997-09-30 | 2002-03-19 | Compaq Computer Corporation | Partitioning memory shared by multiple processors of a distributed processing system |
US6192401B1 (en) * | 1997-10-21 | 2001-02-20 | Sun Microsystems, Inc. | System and method for determining cluster membership in a heterogeneous distributed system |
US6157614A (en) * | 1997-10-22 | 2000-12-05 | Netro Corporation | Wireless ATM network with high quality of service scheduling |
US6260068B1 (en) * | 1998-06-10 | 2001-07-10 | Compaq Computer Corporation | Method and apparatus for migrating resources in a multi-processor computer system |
JP4634548B2 (ja) * | 1997-11-04 | 2011-02-16 | ヒューレット・パッカード・カンパニー | マルチプロセッサコンピュータシステム及びその動作方法 |
US6212669B1 (en) * | 1997-11-05 | 2001-04-03 | Fujitsu Limited | Method for verifying and representing hardware by decomposition and partitioning |
KR100607392B1 (ko) * | 1998-02-24 | 2006-08-02 | 시게이트 테크놀로지 엘엘씨 | 다이나믹 반이중 방식의 루프 공정성을 보존하기 위한통신 시스템 및 방법 |
US6104962A (en) * | 1998-03-26 | 2000-08-15 | Rockwell Technologies, Llc | System for and method of allocating processing tasks of a control program configured to control a distributed control system |
JP3726484B2 (ja) * | 1998-04-10 | 2005-12-14 | 株式会社日立製作所 | 記憶サブシステム |
US6070202A (en) * | 1998-05-11 | 2000-05-30 | Motorola, Inc. | Reallocation of pools of fixed size buffers based on metrics collected for maximum number of concurrent requests for each distinct memory size |
US6247109B1 (en) * | 1998-06-10 | 2001-06-12 | Compaq Computer Corp. | Dynamically assigning CPUs to different partitions each having an operation system instance in a shared memory space |
US6434637B1 (en) * | 1998-12-31 | 2002-08-13 | Emc Corporation | Method and apparatus for balancing workloads among paths in a multi-path computer system based on the state of previous I/O operations |
US6324613B1 (en) * | 1999-01-05 | 2001-11-27 | Agere Systems Guardian Corp. | Port router |
US6199137B1 (en) * | 1999-01-05 | 2001-03-06 | Lucent Technolgies, Inc. | Method and device for controlling data flow through an IO controller |
US6453344B1 (en) * | 1999-03-31 | 2002-09-17 | Amdahl Corporation | Multiprocessor servers with controlled numbered of CPUs |
US7051188B1 (en) * | 1999-09-28 | 2006-05-23 | International Business Machines Corporation | Dynamically redistributing shareable resources of a computing environment to manage the workload of that environment |
US7007276B1 (en) * | 1999-09-28 | 2006-02-28 | International Business Machines Corporation | Method, system and program products for managing groups of partitions of a computing environment |
US6651125B2 (en) * | 1999-09-28 | 2003-11-18 | International Business Machines Corporation | Processing channel subsystem pending I/O work queues based on priorities |
US6587938B1 (en) * | 1999-09-28 | 2003-07-01 | International Business Machines Corporation | Method, system and program products for managing central processing unit resources of a computing environment |
US6598069B1 (en) * | 1999-09-28 | 2003-07-22 | International Business Machines Corporation | Method and apparatus for assigning resources to logical partition clusters |
US6519660B1 (en) * | 1999-09-28 | 2003-02-11 | International Business Machines Corporation | Method, system and program products for determining I/O configuration entropy |
US7568052B1 (en) * | 1999-09-28 | 2009-07-28 | International Business Machines Corporation | Method, system and program products for managing I/O configurations of a computing environment |
US6567841B1 (en) * | 1999-09-28 | 2003-05-20 | International Business Machines Corporation | Method and apparatus for creating and identifying logical partition clusters |
-
1999
- 1999-09-28 US US09/407,594 patent/US6986137B1/en not_active Expired - Lifetime
-
2000
- 2000-08-14 TW TW089116315A patent/TW522310B/zh not_active IP Right Cessation
- 2000-09-18 KR KR10-2000-0054698A patent/KR100420421B1/ko active IP Right Grant
- 2000-09-25 JP JP2000290041A patent/JP3659324B2/ja not_active Expired - Lifetime
- 2000-09-27 EP EP00308493A patent/EP1089173B1/en not_active Expired - Lifetime
- 2000-09-27 DE DE60043970T patent/DE60043970D1/de not_active Expired - Lifetime
- 2000-09-27 AT AT00308493T patent/ATE460703T1/de not_active IP Right Cessation
-
2005
- 2005-09-06 US US11/220,296 patent/US8458714B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20010050506A (ko) | 2001-06-15 |
US8458714B2 (en) | 2013-06-04 |
US6986137B1 (en) | 2006-01-10 |
ATE460703T1 (de) | 2010-03-15 |
JP2001147824A (ja) | 2001-05-29 |
DE60043970D1 (de) | 2010-04-22 |
US20060020944A1 (en) | 2006-01-26 |
KR100420421B1 (ko) | 2004-03-03 |
EP1089173B1 (en) | 2010-03-10 |
EP1089173A3 (en) | 2002-03-20 |
TW522310B (en) | 2003-03-01 |
EP1089173A2 (en) | 2001-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3659324B2 (ja) | コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品 | |
JP3672236B2 (ja) | コンピュータ環境の中央処理装置を管理する方法、システム、およびプログラム製品 | |
JP3813056B2 (ja) | 優先順位に基づくチャネル・サブシステム保留入出力作業キューの処理 | |
JP3807916B2 (ja) | コンピュータ環境の区画のグループを管理する方法およびシステム | |
JP3872343B2 (ja) | コンピュータ環境におけるワークロード管理 | |
US7051188B1 (en) | Dynamically redistributing shareable resources of a computing environment to manage the workload of that environment | |
US6519660B1 (en) | Method, system and program products for determining I/O configuration entropy | |
US7945913B2 (en) | Method, system and computer program product for optimizing allocation of resources on partitions of a data processing system | |
US7167854B2 (en) | Database control method | |
WO2016078178A1 (zh) | 一种虚拟cpu调度方法 | |
US7568052B1 (en) | Method, system and program products for managing I/O configurations of a computing environment | |
JPH04229356A (ja) | ロードバランスシステム | |
Adly et al. | Performance evaluation of job scheduling in heterogeneous distributed systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040722 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20041020 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20041108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050120 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20050120 |
|
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: 20050223 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20050223 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20050223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050308 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3659324 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090325 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100325 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110325 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110325 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120325 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130325 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140325 Year of fee payment: 9 |