JPH08249291A - マルチシステム資源キャッピング - Google Patents

マルチシステム資源キャッピング

Info

Publication number
JPH08249291A
JPH08249291A JP8012477A JP1247796A JPH08249291A JP H08249291 A JPH08249291 A JP H08249291A JP 8012477 A JP8012477 A JP 8012477A JP 1247796 A JP1247796 A JP 1247796A JP H08249291 A JPH08249291 A JP H08249291A
Authority
JP
Japan
Prior art keywords
data
performance
processor
processor consumption
local
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.)
Granted
Application number
JP8012477A
Other languages
English (en)
Other versions
JP3172423B2 (ja
Inventor
Catherine Kreuger-Eilert
キャサリン・クルーガー・アイラート
Bernard Roy Pierce
バーナード・ロイ・ピアス
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 JPH08249291A publication Critical patent/JPH08249291A/ja
Application granted granted Critical
Publication of JP3172423B2 publication Critical patent/JP3172423B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 マルチシステム内の作業負荷によるプロセッ
サ資源の消費を管理する。 【解決手段】 共通プロセッサ消費標準により複数のデ
ータ処理システム間に分散する1つの作業負荷を管理す
るための方法であって、作業負荷のプロセッサ消費を測
定してローカル・プロセッサ消費データを作成するステ
ップと、他の少なくとも1つのシステムにローカル・プ
ロセッサ消費データを送信するステップと、他の少なく
とも1つのシステムからプロセッサ消費データを受け取
って遠隔プロセッサ消費データを作成するステップと、
システム制御パラメータの少なくとも1つを調整し、作
業単位の遠隔プロセッサ消費とローカル・プロセッサ消
費を変更して共通プロセッサ消費標準を達成するステッ
プとを含む方法を提供する。また、この方法による装置
も提供する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、相互接続され協調
動作する1組の独立コンピュータ・システム間でのユー
ザ・アプリケーション・プログラム実行のパフォーマン
ス管理に関する。
【0002】ユーザ・アプリケーション・プログラム
は、コンピュータ・システムの目的である有用な作業を
実行する。このようなアプリケーション・プログラム
は、その実行がコンピュータのオペレーティング・シス
テム・ソフトウェアによって管理される作業単位を形成
する。このようなアプリケーション・プログラムが1つ
の分散作業負荷を形成すると言われるのは、1組の共通
パフォーマンス目標を共用しながら、1組のシステム間
に分散されて実行される独立プログラムであるためであ
る。
【0003】このようなコンピュータ・システムが独立
していると言われるのは、それぞれが完全に別個であ
り、全体として機能するコンピュータ・システムであっ
て、IBMの多重仮想記憶/エンタープライズ・システ
ム体系(MVS/ESA)TMオペレーティング・システ
ムなどのオペレーティング・システムの専用コピーによ
ってその資源が制御されるためである。また、このよう
なコンピュータ・システムが協調動作すると言われるの
は、それぞれが同一組内の他のコンピュータ・システム
と操作測定データを交換するためである。さらに、この
ようなコンピュータ・システムが相互接続されていると
言われるのは、それぞれが、同一組内の他のすべてのシ
ステムにその操作測定データを送信でき、同一組内の他
のすべてのシステムから類似データを受信できるためで
ある。このようなコンピュータ・システムが1つの組を
構成するのは、すべてが上記の特性を備えているためで
ある。
【0004】本発明は、オペレーティング・システムが
同一組のシステム用に設定したそれぞれの個別パフォー
マンス目標ごとにパフォーマンス目標クラスを1つずつ
設定できるようになっているという意味でのパフォーマ
ンス管理と、同一組内の単一システムまたは複数システ
ムのいずれで所与のアプリケーション・プログラムが実
行されるかにかかわらず、実行のためにアプリケーショ
ン・プログラムをスケジューリングする部分として各ア
プリケーション・プログラムをそれぞれの目標クラスに
分類することと、所与の目標クラスに割り当てられたア
プリケーション・プログラムが1つの組と見なされるす
べてのシステム間のパフォーマンス目標を達成するよう
に、アプリケーション・プログラムの実行を制御するこ
とに関する。
【0005】
【従来の技術】1994年4月4日に出願され、本発明
の出願人に譲渡され、参照により組み込まれる、J.D.ア
マン他(Aman)による"APPARATUS AND METHOD FOR MANA
GING ADATA PROCESSING SYSTEM WORKLOAD ACCORDING TO
TWO OR MORE DISTINCT PROCESSING GOAL TYPES"という
名称の米国特許出願第08/222755号に開示され
た発明では、ユーザ・パフォーマンスの標準と標準の重
要性を指定することができ、その標準および重要性に応
じてシステム・パフォーマンスを管理し、このような管
理の手引きを行うためにシステム・パフォーマンス・パ
ラメータを指定したり人間が介入する必要なしに、導入
システムの目標を達成する責任をオペレーティング・シ
ステム・ソフトウェアが引き継ぐ方法を開示している。
この発明は、1994年4月4日に出願され、本発明の
出願人に譲渡され、参照により組み込まれる、C.アイラ
ート(Eilert)およびB.ピアス(Pierce)による"APPAR
ATUS AND METHOD FOR MANAGING SERVER WORKLOAD ACCOR
DING TO CLIENT PERFORMANCE GOALS IN A CLIENT/SERVE
R DATA PROCESSING SYSTEM"という名称の米国特許出願
第08/222752号に開示された発明によって、ク
ライアントサーバ環境に拡張された。また、本発明と同
じ日に出願され、本発明の出願人に譲渡される、C.K.ア
イラートおよびP.ヨコム(Yocom)による"APPARATUS AN
D METHOD FORMANAGING A DISTRIBUTED DATA PROCESSING
SYSTEM WORKLOAD ACCORDING TO A PLURALITY OF DISTI
NCT PROCESSING GOAL TYPES"という名称の米国特許出願
第08/383168号に開示された発明は、参照によ
り組み込まれる。この発明は、前記特許出願第08/2
22755号の発明をマルチシステム環境に拡張したも
のである。
【0006】
【発明が解決しようとする課題】まだ満たされていない
要求条件は、導入システムが、作業負荷によって消費さ
れるプロセッサ資源を制限し、プロセッサ消費標準内の
作業負荷パフォーマンス標準に応じて管理し、複数シス
テム間のパフォーマンス標準と消費標準とを管理できる
ようにすることである。
【0007】
【課題を解決するための手段】本発明により、作業単位
を1つまたは複数の資源グループにグループ化し、それ
ぞれの資源グループに割り当てられた作業単位によって
消費されるコンピュータ・システム処理容量の最大量と
して消費標準を指定することができる。資源グループ
は、マルチシステムの適用範囲を有することができる。
コンピュータのオペレーティング・システムは、指定さ
れた最大量を実施する。個々のコンピュータ・システム
内の作業単位が消費する処理容量を制限することは、コ
ンピュータ・ソフトウェアの分野では周知であり、作業
単位またはプログラム・キャッピングと呼ばれることが
多い。通常、キャッピングは、1つの作業単位がオペレ
ーティング・システムのディスパッチャ構成要素による
ディスパッチに使用できる時間量を制御することによっ
て実施される。
【0008】前記の米国特許出願第08/222755
号および第08/383168号の発明と同様、本発明
でも、1つまたは複数のユーザ・パフォーマンス目標ク
ラスのそれぞれについて1つずつの目標を含むパフォー
マンス標準を指定し、それぞれの目標を達成することの
重要性を指定することができる。さらに本発明では、そ
れぞれが指定のプロセッサ資源消費最大値を有するプロ
セッサ資源消費グループにユーザ・パフォーマンス目標
クラスをグループ化することを含む、プロセッサ消費標
準の指定が可能である。
【0009】本発明の目的は、資源グループ最大値と、
ユーザ・パフォーマンス目標および重要性が分かってい
る場合に、このような最大値、目標、重要性が最も適切
に達成されるようにコンピュータ・システム資源を実行
作業単位に割り振る責任をオペレーティング・システム
が引き受けることである。
【0010】資源グループおよびユーザ・パフォーマン
ス目標クラスは、作業負荷が分散されている複数の相互
接続協調動作独立コンピュータ・システムにまたがる可
能性がある。それぞれのローカル・システムは、ローカ
ル・システム上の作業負荷パフォーマンスと資源消費の
データを収集し、そのデータのサブセットを遠隔システ
ムに定期的に同報する。ローカル・システム上で収集し
たデータと、遠隔システムから受け取ったデータとの組
合せにより、それぞれのシステムは、マルチシステムの
最大値、目標、重要性を達成させるために、個別に資源
調整値を決定することができる。
【0011】
【発明の実施の形態】図1は、3つの相互接続協調動作
コンピュータ・システム(100−A、100−B、1
00−C)を有する実施例に関する本発明の環境および
主な特徴を示している。本発明の環境は、1組のコンピ
ュータ・システム間に作業負荷が分散されるというもの
である。本発明では、その組のシステムについて単一方
針によりこのような作業負荷を管理することができる。
その組のシステムについて単一方針を用意すれば、分散
作業負荷の単一イメージ・ビューを提供するのに役立
つ。当業者は、本発明の精神または範囲を逸脱せずにこ
のような相互接続協調動作コンピュータ・システムをい
くつでも使用できることが分かるであろう。
【0012】3つのコンピュータ・システム(100−
A、100−B、100−C)は1つの分散作業負荷を
実行し、それぞれのコンピュータ・システムはIBMの
MVS/ESATMオペレーティング・システムなどのオ
ペレーティング・システム(101)の専用コピーによ
って制御される。オペレーティング・システムのこのよ
うなコピーのそれぞれは、本明細書に記載する諸ステッ
プを実行する。以下の説明でローカル・システムと言う
場合、それは、説明する諸ステップを実行している特定
のシステムを意味する。管理される他のすべてのシステ
ムは遠隔システムである。すなわち、説明の際の観点
は、ローカル・システムと見なされる特定の1つのシス
テムのものであり、他のすべてのシステムは遠隔システ
ムと見なされる。
【0013】ディスパッチャ(102)は、オペレーテ
ィング・システムの構成要素であって、そのコンピュー
タによって次に実行される作業単位を選択するものであ
る。作業単位(103)は、コンピュータ・システムの
目的である有用な作業を実行するアプリケーション・プ
ログラムである。オペレーティング・システムに割り振
られたメモリ内では、それぞれの作業単位は、アドレス
空間制御ブロック(ASCB)(104)という制御ブ
ロックによって表される。それぞれのASCBは、関連
作業単位をディスパッチしてもよいかどうかをディスパ
ッチャに示す、ディスパッチ制御フィールド(105)
を1つずつ有する。このフィールドはキャップ・ビット
(105)と呼ばれる。このディスパッチ標識は、本発
明の動作によって設定されるシステム制御データ要素ま
たはパラメータであり、1つの資源グループの作業単位
用に見込まれているプロセッサ実行時間の量を制御する
ために使用する。
【0014】本発明は、システム管理者によって設定さ
れ、データ記憶機構(108)に格納されるパフォーマ
ンス目標(106)とプロセッサ消費最大値(107)
を入力として受け取る。この目標と最大値は、管理され
るすべてのシステム(100−A、100−B、100
−C)にわたる作業に適用される。また、データ記憶機
構(108)は、管理されるそれぞれのシステムからア
クセス可能である。
【0015】ここに示すパフォーマンス目標は応答時間
目標(秒単位)である。当業者は、本発明の精神または
範囲を逸脱せずに他の目標または追加目標を選択できる
ことが分かるだろう。このパフォーマンス目標ととも
に、それぞれの目標の相対的重要性の指定が含まれる。
目標(106)は、オペレーティング・システムの作業
負荷マネージャ(WLM)構成要素(109)によって
各システム(100−A、100−B、100−C)に
読み込まれる。システム管理者によって指定された各目
標により、作業負荷マネージャは、個々の作業単位が割
り当てられるユーザ・パフォーマンス目標クラスを設定
することになる。それぞれのユーザ・パフォーマンス目
標クラスは、クラス・テーブル項目(110)によって
オペレーティング・システムに割り振られたメモリ内に
表される。クラス・テーブル項目に格納される情報とし
ては、ユーザ・パフォーマンス目標クラスが属す資源グ
ループ名(111)(入力値)、ユーザ・パフォーマン
ス目標(112)(入力値)、ユーザ・パフォーマンス
目標クラスの相対的重要性(113)(入力値)、サン
プル・データ(114)(測定データ)、ローカルおよ
びマルチシステム・パフォーマンス・インデックス(1
15)(計算値)、本発明のオペレーティング・システ
ムによって設定される作業単位のディスパッチ優先順位
などのシステム資源制御(116)などがある。
【0016】ここに示すプロセッサ消費最大値(10
7)は、プロセッサ・サービス単位で表される。当業者
は、本発明の精神または範囲を逸脱せずにプロセッサ消
費について他の測定単位を選択できることが分かるだろ
う。プロセッサ消費最大値(107)は、オペレーティ
ング・システムの作業負荷マネージャ(WLM)構成要
素(109)によって、それぞれのシステムに読み込ま
れる。システム管理者が指定したそれぞれの資源消費最
大値(107)により、作業負荷マネージャは、個々の
作業単位が割り当てられる資源グループを設定すること
になる。それぞれの資源グループは、資源グループ・テ
ーブル項目(117)によってオペレーティング・シス
テムに割り振られたメモリ内に表される。資源グループ
・テーブル項目に格納される情報としては、資源グルー
プ名(118)(入力値)、プロセッサ・サービス消費
最大値(119)(入力値)、ローカル・システムおよ
び遠隔システムからのプロセッサ・サービス消費データ
(120および121)(測定データ)、資源グループ
内の作業単位をキャッピングしなければならないときの
特定の時間スライス(キャップ・スライス・パターン、
122)、すなわち、資源グループに関連する作業単位
がディスパッチ不能であることをキャップ・ビットが示
さなければならないときの特定の時間スライスなどがあ
る。キャップ・スライス・パターン(122)は計算値
である。
【0017】オペレーティング・システムのシステム資
源マネージャ(SRM)構成要素(123)は、ディス
パッチャ(102)による問合せを受けるキャップ・ビ
ット(105)値を操作する構成要素を含むように、本
発明により変更される。システム資源マネージャのこの
新しい構成要素は、後述するようにキャップ・ビット操
作プログラム(130)と呼ばれる。システム資源マネ
ージャ(123)の状態サンプラー(124)と、遠隔
データ受信プログラム(125)と、マルチシステム目
標主導パフォーマンス制御プログラム(MGDPC)
(126)(Eilert発明に開示されているもの)も、本
発明により変更されており、以下に説明する。
【0018】状態サンプラー 状態サンプリングは、当技術分野では周知のものであ
る。状態サンプラー(124)は、キャップ・ビット操
作プログラム(130)によってキャップ・ビット(1
05)がオンになっているためにディスパッチャが任意
の単位をディスパッチしない場合に追加の状態をサンプ
リングするよう、変更されている。このようなキャップ
・サンプルは、MGDPC(126)が計算に使用する
ときにプロセッサ遅延サンプルと組み合わされる。
【0019】マルチシステム目標主導パフォーマンス制御プログラム システム資源マネージャ(123)のマルチシステム目
標主導パフォーマンス制御プログラム(MGDPC)
(126)は、Eilert発明に記載されている。MGDP
C(126)は、システム資源マネージャの構成要素の
1つであって、パフォーマンス・インデックスを計算
し、管理される1組の相互接続協調動作独立コンピュー
タ・システム間でのユーザ・パフォーマンス目標の達成
を管理するためにディスパッチ優先順位などのシステム
資源制御を調整するものである。MGDPC(126)
は、オペレーティング・システム(101)に適応性を
持たせ、自己調整させるように、増分を検出し、パフォ
ーマンス問題を修正するためのフィードバック・ループ
を提供する。MGDPC(126)はタイマの満了によ
って呼び出される。
【0020】MGDPCの動作については、図14に詳
しく示す。MGDPCは、目標の達成度を測定し、その
パフォーマンスの改善を必要とするユーザ・パフォーマ
ンス目標クラスを選択し、後述するように関連作業単位
のシステム制御パラメータ(被制御変数)を変更するこ
とにより選択されたユーザ・パフォーマンス目標クラス
のパフォーマンスを改善するという機能を実行する。M
GDPC機能は、好ましい実施例では約10秒ごとであ
る定期的なタイマの満了に基づいて、定期的に実行され
る。
【0021】1415では、指定の目標(1410また
は1411)を使用するユーザ・パフォーマンス目標ク
ラス(110)ごとに、マルチシステム・パフォーマン
ス・インデックスとローカル・パフォーマンス・インデ
ックスが計算される。マルチシステム・パフォーマンス
・インデックス(1451)は、管理されるすべてのシ
ステム間での目標クラスに関連する作業単位のパフォー
マンスを表す。ローカル・パフォーマンス・インデック
ス(1452)は、ローカル・システムでの目標クラス
に関連する作業単位のパフォーマンスを表す。その結果
得られるパフォーマンス・インデックスは、1451お
よび1452で対応するクラス・テーブル項目(11
0)に記録される。ユーザ・パフォーマンス目標達成度
を測定する方法としてのパフォーマンス・インデックス
の概念は周知である。たとえば、1992年4月30日
に出願され、本発明の出願人に譲渡され、D.Ferguson他
による"WORKLOAD MANAGER FOR ACHIEVING TRANSACTION
CLASS RESPONSE TIME GOALSIN A MULTIPROCESSING SYST
EM"という名称の米国特許出願第07/876670号
には、実際の応答時間を目標応答時間で割ったものとし
てパフォーマンス・インデックスが記載されている。同
出願は参照により組み込まれる。
【0022】1416では、相対的目標重要性(11
3)の順序のパフォーマンス改善と、パフォーマンス・
インデックス(1451、1452)の現行値とを受け
取るために、ユーザ・パフォーマンス目標クラスが選択
される。選択されたユーザ・パフォーマンス目標クラス
は、レシーバ(receiver)と呼ばれる。まず、MGDP
Cは、作業単位が管理されるすべてのシステム間で目標
を達成するようにする際にそれが行うアクションが可能
な限り最大の影響を及ぼすようにレシーバを選ぶとき
に、マルチシステム・パフォーマンス・インデックス
(1451)を使用する。マルチシステム・パフォーマ
ンス・インデックスに基づくアクションが一切行われな
い場合は、ローカル・パフォーマンス・インデックス
(1452)を使用して、ローカル・システムがその目
標を達成するのに最も役立つようなレシーバを選択す
る。
【0023】システム制御データ要素に対するパフォー
マンス隘路は、周知の技法である状態サンプル(11
4)を使用することにより決定する(1417)。この
システム制御データ要素はディスパッチ優先順位(10
4)(CPU遅延およびキャップ遅延に影響する)であ
る。当業者は、本発明の精神または範囲を逸脱せずに他
の被制御変数を選択できることが分かるだろう。
【0024】1418では、被制御変数への潜在的変更
を考慮する。相対的目標重要性(113)とパフォーマ
ンス・インデックス(1451、1452)の現行値に
基づいてパフォーマンス低減を行うことができるユーザ
・パフォーマンス目標クラスが選択される(142
3)。このように選択されるユーザ・パフォーマンス目
標クラスはドナー(donor)と呼ばれる。次に、レシー
バおよび被制御変数(ディスパッチ優先順位(142
0)(105A)のドナーの両方について、マルチシス
テムおよびローカル・パフォーマンス・インデックスへ
の予期変更に対する提案変更の正味値が査定される(1
424)。結果が目標に関してドナーに及ぼす害以上に
レシーバに改善をもたらすと思われる場合には、提案変
更が正味値を有する。提案変更が正味値を有する場合
は、それぞれの被制御変数がドナーとレシーバの両方に
応じて調整される。
【0025】MGDPCを呼び出すごとに、その間、レ
シーバ目標クラスと、パフォーマンス隘路と、ドナー目
標クラスと、アクションとのあらゆる組合せが考慮され
る。被制御変数の企図変更は十分なレシーバ値をもたら
さなければならず、レシーバ(複数も可)とドナー(複
数も可)との間で企図される再割振りは、実際に行われ
る企図変更用の正味値を備えていなければならない。こ
れらのステップについては、以降の項で詳述する。
【0026】管理される各システムは、それぞれのシス
テムが他のすべてのシステムにデータ・レコードを送信
できるようにするデータ送信手段(129)を1つずつ
有する。それぞれの目標クラスの最新パフォーマンスを
記述するデータ・レコード(図23)が他のすべてのシ
ステムに送信される(214)。
【0027】125では、遠隔データ受信プログラム
が、MGDPCの動作とは非同期に遠隔システムからパ
フォーマンス・データを受け取る。受け取ったデータ
は、遠隔パフォーマンス・データ履歴(1457、14
58)と、MGDPCによるその後の処理のために遠隔
データ・ウィンドウ(121)とに置かれる。
【0028】主要処理ステップ 図2は、本発明のマルチシステム目標主導パフォーマン
ス制御プログラム(MGDPC)(126)の主要処理
ステップの論理の流れを示す流れ図である。
【0029】MGDPCの主な目的は、管理されるすべ
てのシステム間でパフォーマンス目標を達成することで
ある。この目的は、中央制御を行わずに達成される。む
しろ、それぞれのシステムが管理される他のすべてのシ
ステムからパフォーマンス・データを受け取り、分散作
業負荷全体が行われる状態に関する各システムのビュー
に基づいて、目標を最も適切に達成するための資源割振
り決定を行う。MGDPCの第2の目的は、パフォーマ
ンス目標をローカルで達成することであり、その場合、
資源割振り決定はローカル・データと遠隔データを使用
して行われる。
【0030】201では、各ユーザ・パフォーマンス目
標クラスごとにマルチシステムおよびローカル・パフォ
ーマンス・インデックスが計算される。(このパフォー
マンス・インデックスの計算については後述する。)ス
テップ203〜213により、最高2回のパスを行うこ
とができる。第1のパスは、マルチシステム・パスと呼
ばれる。このマルチシステム・パス中は、管理されるす
べてのシステム間で目標クラスがどのように実行される
かに基づいて、レシーバとドナーが選択される。ローカ
ル・パスという第2のパス中は、管理されるすべてのシ
ステム間で目標クラスがどのように実行されるかに加
え、その目標クラスがローカルでどのように実行される
かの両方に基づいて、レシーバとドナーが選択される。
ローカル・パスは、マルチシステム・パス中にアクショ
ンが一切行われない場合にのみ行われる。202では、
マルチシステム・パスが現在、処理されていることを示
すために、ループ制御変数が設定される。203では、
そのパフォーマンスが改善されるように、レシーバと呼
ばれるユーザ・パフォーマンス目標クラスが選択され
る。この選択プロセスについては、図3に詳しく示し、
後述する。204では、対処すべき隘路として、レシー
バの資源隘路の1つが選択される。隘路選択について
は、図5に詳しく示し、後述する。205では、レシー
バのパフォーマンスの改善に必要なものとして識別され
た資源を所有するユーザ・パフォーマンス目標クラスが
選択される。このように選択されたユーザ・パフォーマ
ンス目標クラスはドナーと呼ばれる。ドナーはレシーバ
とは逆の順序で選択される。すなわち、最適パフォーマ
ンス・インデックスと最低重要性を有するユーザ・目標
クラスが選択される。ドナー選択については、図6に詳
しく示し、後述する。
【0031】206では、ドナーからレシーバへの資源
再割振りの影響が見積られる。資源再割振りの影響を見
積るのに使用するアルゴリズムは、関係する資源に応じ
て決まる。CPU遅延とキャップ遅延に対処するための
CPUアルゴリズムについては、本明細書で後述する。
207では、ドナー(複数も可)からレシーバへの資源
の再割振りの正味値が査定される。資源再割振りにとっ
て正の正味値になるように見積られる場合は、特定のド
ナーからの資源を再割振りすることにより、レシーバの
み改善される。レシーバを改善するためのドナーの使用
が見積られ、結果的に、目標および重要性に関してレシ
ーバの改善以上にドナーに及ぼす害の方が大きくなる場
合には、資源再割振りは行われない。正味値の査定につ
いては、図8に詳しく示し、後述する。
【0032】再割振りにとって正の正味値がある場合
は、208でドナー(複数も可)からレシーバに資源が
再割振りされる。正の正味値がない場合は、別の潜在的
ドナーが存在するかどうかを判定するために、209で
検査が行われる。
【0033】別の潜在的ドナーが存在する場合は、別の
潜在的ドナーを選択するために制御が205に渡され
る。選択された隘路に対処するのに必要な資源の潜在的
ドナーがそれ以上存在しない場合は、レシーバが別の隘
路を持っているかどうかを判定するために、210で検
査が行われる。
【0034】レシーバが対処可能な別の隘路を持ってい
る場合は、別の隘路を選択するために制御が204に戻
される。レシーバが対処すべき隘路をそれ以上持ってい
ない場合は、別の潜在的レシーバが存在するかどうかを
判定するために、211で検査が行われる。
【0035】別の潜在的レシーバが存在する場合は、別
の潜在的レシーバを選択するために制御が203に戻さ
れる。潜在的レシーバがそれ以上存在しない場合は、現
行パスがマルチシステム・パスであることをループ制御
変数が示しているかどうかを確認するために、212で
検査が行われる。現行パスがマルチシステム・パスであ
る場合は、現行パスがローカル・パスであることを示す
ように213でローカル制御変数が設定され、別の潜在
的レシーバを選択するために制御が203に戻される。
【0036】ローカル・パスがすでに行われた場合は、
管理される各遠隔システムにパフォーマンス・データを
送信するために、制御が214に渡される。215で
は、データ履歴がロールされる(次の項に示すデータ履
歴の説明を参照)。
【0037】タイマが次に満了すると、MGDPC機能
がもう一度呼び出され、前に行われた資源再割振りの影
響に関するフィードバックを行うとともに、パフォーマ
ンス問題に対処する機会をもう一度提供する。
【0038】データ履歴 データ履歴とは、時間に関するデータを収集して分析す
るための機構である。データ履歴を使用することによ
り、MGDPCは、時代遅れになっている恐れがあるほ
ど古いデータを使用せずに、代表となるべき十分なサン
プルを有するデータを使用することができる。図19
は、データ履歴の一例を示している。データ履歴は、6
行のデータ(1903)とロール・カウンタ(190
1)を含んでいる。各行は、所定の範囲の履歴時間から
のデータを表している。行1は、最新期間のみのデータ
を含む。行2〜6は、各種範囲の古いデータを含む。ロ
ール・カウンタは、任意の時間範囲からそれより前の時
間範囲まで1行分のデータをロールすべき時期を制御す
る。ロール・カウンタはそれぞれのMGDPC間隔ごと
に増分される。各行には、その行のデータを「ロール」
すべき時期を指定するロール・カウンタ値に対応する数
値(1902)が関連づけられている。行1の行カウン
タ値は1であり、すべての間隔ごとに行1がロールされ
ることを意味する。行2の間隔数は2であり、間隔2つ
分ごとに行2がロールされる。行3のロール・カウンタ
値は4であり、行4のロール・カウンタ値は16であ
り、行5のロール・カウンタ値は64であり、行6のロ
ール・カウンタ値は64である。
【0039】データは次のように履歴に追加される。行
1に新しいデータが追加される。各MGDPC間隔の終
わりに、現行ロール・カウンタ値に均等に分かれるロー
ル・カウンタ値を有する最高行が検出される。次に数値
が大きい行にその行の内容が追加される。それより数値
が小さいすべての行の内容が1行ずつ上に上がり、行1
が空のままになる。行6からのデータをロールする時期
になると、そのデータが破棄される。データ履歴からデ
ータを獲得するには、行1〜nのデータをすべて加え
る。nの値は、使用するデータが代表となる十分なサン
プルを有する十分長い間隔にわたって収集されるように
選択する。行数の選択については、本明細書のパフォー
マンス・インデックスの項を参照されたい。
【0040】応答時間目標を備えたそれぞれの目標クラ
スは、その目標クラスについて遠隔システムから受け取
ったパフォーマンス・データを含む、ローカルおよび遠
隔応答時間データ履歴(1457)を有する。この履歴
の各行は、28項目を含む配列である。図20は、この
配列のレイアウトを示している。この配列の各項目は、
目標の所与の割合(%)の範囲内の応答時間を有する完
了回数を含む。第1の項目は、目標の半分より少ない応
答時間を有する完了のカウントを含む。第2の項目は、
目標の半分以上であるが0.575倍未満である応答時
間を有する完了のカウントを含む。
【0041】速度目標を備えたそれぞれの目標クラス
は、ローカルおよび遠隔速度サンプル・データ履歴(1
58)を有する。この履歴の各行は、2つの項目を含む
配列である。第1の項目は、目標クラスの作業が実行中
としてサンプリングされた回数のカウントを含む。第2
の項目は、目標クラスの作業が実行中または遅延済み
(非アイドル)としてサンプリングされた回数のカウン
トである。
【0042】パフォーマンス・インデックス パフォーマンス・インデックスが1.0の場合は、ユー
ザ・パフォーマンス目標クラスがその目標を正確に達成
していることを示す。パフォーマンス・インデックスが
1より大きい場合は、そのクラスのパフォーマンスがそ
の目標より悪いことを示し、パフォーマンス・インデッ
クスが1.0未満の場合は、そのクラスのパフォーマン
スがその目標より良いことを示す。マルチシステム・パ
フォーマンス・インデックスは、管理されるすべてのシ
ステム間でユーザ・パフォーマンス目標クラスがどのよ
うに実施しているかを示す。ローカル・パフォーマンス
・インデックスは、ローカル・システムでユーザ・パフ
ォーマンス目標クラスがどのように実施しているかを示
す。
【0043】実行速度パフォーマンス・インデックス 実行速度目標(1411)のパフォーマンス・インデッ
クスは次のように計算される(1415)。 (実行速度目標)/(実際の実行速度)
【0044】実行速度は、ユーザ目標パフォーマンス・
クラスの作業が実行中の時間をその作業が実行中または
遅延済みの時間で割って、パーセントで表したものであ
る。パフォーマンス・インデックスは、実行速度目標を
備えた作業の実際の実行速度で割った目標と、応答時間
目標を備えた作業の応答時間目標で割った実際の応答時
間である。
【0045】実行速度目標の場合、ローカル・サンプル
履歴(125)からローカル実行速度が計算される。ロ
ーカル・サンプル履歴(125)の各行は配列であり、
その第1の項目は、目標クラスの作業単位が実行中とし
てサンプリングされた回数のカウントであり、残りの項
目は、目標クラスの作業単位が本発明により対処される
8つの遅延状態のそれぞれについて遅延済みとしてサン
プリングされた回数のカウントになっている。サンプリ
ングされる遅延状態は、CPU遅延、MPL遅延、スワ
ップ遅延、専用領域補助記憶装置ページング遅延、共通
領域補助記憶装置ページング遅延、クロスメモリ・ペー
ジング遅延、仮想入出力(VIO)補助記憶装置遅延、
ハイパー空間TM補助記憶装置ページング遅延である。こ
れらの遅延をサンプリングする技法は当技術分野では周
知のものである。
【0046】ローカル・サンプル履歴(125)からデ
ータを取る場合、少なくとも500個の非アイドル・サ
ンプルを含めるために十分な行が合計される。履歴の最
初の2行はいつも使用される。履歴行を合計する場合、
最新データにより大きい重みを付けるために、最初の行
を2倍にする。現行速度を計算するため、結合行からの
サンプルを使用するCPUを結合行の合計サンプルで割
る。このローカル速度をクラスの目標に分割し、ローカ
ル・パフォーマンス・インデックスを計算する。
【0047】応答時間パフォーマンス・インデックス 応答時間目標(1410)のパフォーマンス・インデッ
クスは次のように計算される(1415)。 (実際の応答時間)/(応答時間目標)
【0048】応答時間目標の場合、ローカル応答時間履
歴(1426)からのデータからローカル・パフォーマ
ンス・インデックスが計算される。図20は、ローカル
応答時間履歴(1426)の1行を示している。20秒
以下の応答目標を有する目標クラスの場合、少なくとも
100回の完了を含めるために、ローカル応答時間デー
タ履歴の十分な行が合計される。それより長い応答時間
目標を有する目標クラスの場合、少なくとも10回の完
了を含めるために、十分な行が合計される。履歴のうち
少なくとも最初の2行はいつも使用される。行を合計す
る場合、最新情報により大きい重みを付けるため、最初
の行の値を2倍にする。次に、作動中の各作業単位ごと
に次のように応答時間が見積られる。 1.問題の作業単位がこれまでに使用したサービス時間
より多くのサービス時間で完了した同一目標クラスに割
り当てられた作業単位によって使用された平均サービス
量を求める。 2.その作業単位がこれまでに使用したサービス時間量
をこの平均から引いて、その作業単位が今後使用する追
加のサービス時間量の見積りを得る。 3.作業単位がサービス時間を蓄積する速度で追加サー
ビス時間の見積りを割って、作業単位が完了するまでの
時間の見積りを得る。 4.作業単位がすでに実行した時間の長さに作業単位が
完了するまでの時間の見積りを加算し、作業単位応答時
間の見積りを得る。
【0049】ローカル応答時間履歴から構築した行の適
切な項目に、作動中の作業単位の各完了見積りが加えら
れる。この結合行からローカル平均応答時間が計算さ
れ、この平均応答時間を目標で割って、ローカル・パフ
ォーマンス・インデックスを計算する。
【0050】マルチシステム・パフォーマンス・インデックス 各目標クラスごとにマルチシステム・パフォーマンス・
インデックスを計算するために以下のステップが行われ
るが、このステップについては図22に示す。2201
では、変数Cが第1の目標クラスに設定される。220
2では、その目標クラスが応答時間目標を有するかどう
かを判定するためにCがテストされる。Cが応答時間目
標を有する場合は、制御が2203に渡され、そこで遠
隔応答時間データ履歴からデータが取られる。遠隔応答
時間データ履歴からこのデータを取る場合、ローカル・
パフォーマンス・インデックスの計算に使用したデータ
と同じ量の時間を表すために、履歴の十分な行が使用さ
れる。遠隔応答時間データ履歴から返された応答時間デ
ータは履歴の1行分の形式になっている(図19を参
照)。管理されるすべてのシステムを表すデータを得る
ために、ローカル・パフォーマンス・インデックスの計
算に使用したローカル応答時間データを2204で遠隔
データに加える。この結合応答時間データから平均応答
時間が計算され、この平均を使用して2205でマルチ
システム・パフォーマンス・インデックスを計算する。
【0051】Cによって指定された目標クラスが実行速
度目標を有する場合は、制御が2206に渡され、そこ
で遠隔速度履歴からデータが取られる。遠隔速度履歴か
らこのデータを取る場合、ローカル・パフォーマンス・
インデックスを計算する際にローカル・サンプル履歴か
ら取られたのと同じ数の行が使用される。ローカル速度
の計算に使用したサンプルを使用するローカルCPUを
結合行の第1の項目に加え、ローカル速度の計算に使用
した遅延状態カウントの合計を結合行の第2の項目に加
えることにより、2207でこの遠隔データにローカル
実行速度データを加える。このマルチシステム実行速度
データからマルチシステム速度が計算され、2208で
マルチシステム速度からマルチシステム・パフォーマン
ス・インデックスが計算される。
【0052】処理すべき目標クラスがそれ以上存在する
場合は(2209)、制御が2210に渡され、そこで
Cが次の目標クラスに設定される。次に、次の目標クラ
スを処理するために制御が2202に戻される。
【0053】パフォーマンス・データの送信 マルチシステム目標主導パフォーマンス制御プログラム
間隔の終わりに、その間隔中の各目標クラスのパフォー
マンスを記述するデータ・レコードが管理される各遠隔
システムに送られる。それぞれの資源グループごとのプ
ロセッサ資源消費データは、パフォーマンス・データの
送信と同時に各遠隔システムに送られる。プロセッサ資
源消費データについては、図18に示し、後述する。図
23は、各遠隔システムに送られるパフォーマンス・デ
ータを示している。応答時間目標を有するパフォーマン
ス目標クラスの場合、このデータ・レコードは、目標ク
ラス名(2301)と、最後のMGDPC間隔でのその
目標クラスの完了を記述する遠隔応答時間データ履歴の
1行分に相当する28個の項目を有する配列(230
2)とを含む。速度目標を有する目標クラスの場合、こ
のデータ・レコードは、目標クラス名(2303)と、
最後のMGDPC間隔で目標クラスの作業が実行中とし
てサンプリングされた回数のカウントと、最後のMGD
PC間隔で目標クラスの作業が実行中または遅延済みと
してサンプリングされた回数のカウント(2304)と
を含む。
【0054】遠隔データ受信プログラム 図21は、遠隔目標クラス・パフォーマンス・データを
受け取るための論理の流れを示す流れ図である。210
1では、まったく同じ組の目標クラスとパフォーマンス
目標で実行中のシステムからのものであることを確認す
るために、着信データ・レコードが検査される。この検
査に不合格である場合、そのデータ・レコードは無視さ
れる(2102)。2103では、着信データ・レコー
ドが表す目標クラスと同じ名前の目標クラスを見つける
ために、パフォーマンス目標クラス・テーブルが探索さ
れる。この探索によって見つかった目標クラスが応答時
間目標を有する場合は(2104)、目標クラスの遠隔
応答時間データ履歴に着信データ・レコードの応答時間
データが加えられ(2105)、応答時間目標を有して
いない場合は、目標クラスの遠隔速度データ履歴に着信
レコードの速度データが加えられる(2106)。
【0055】データ履歴を使用して遠隔パフォーマンス
・データを管理することにより、管理されるシステムは
独立して動作することができる。1つのMGDPC間隔
中に遠隔システムからのデータが到着しない場合は、必
要であれば、代表となる十分なサンプルを備えたデータ
が使用されることを保証するために古いデータを使用す
ることによって、データ履歴機構が補正することにな
る。また、管理される遠隔システムのうちの1つが故障
した場合は、1つのシステムが故障したことを残りのシ
ステムに具体的に通知する必要なく、そのデータがデー
タ履歴から消される。
【0056】遠隔データ受信プログラム手段(125)
は、Eilert発明に開示されている。この遠隔データ受信
プログラム手段は、システム資源マネージャ(123)
の構成要素であって、それぞれのシステム上で動作し、
遠隔システムから同報されたデータを受け取り(図2
3)、ローカル・システム上で使用するためにそのデー
タを制御ブロックに格納するものである。本発明の遠隔
データ受信プログラムは、遠隔システムによって同報さ
れた資源グループ・プロセッサ消費データをさらに受け
取り、そのデータ(図18)を資源グループ・テーブル
項目(図15)の現行ウィンドウ面(1505)に格納
するように変更されている。受け取ったデータ・レコー
ドは、資源グループ名(1800)と、それぞれの重要
性ごとのプロセッサ消費(1801)と、システムがそ
れぞれの重要性の作業を有するかどうかを示す標識(1
802)とから構成される。適切な資源グループ・テー
ブル項目は、受け取ったデータに関連する資源グループ
名(1800)から判定される。現行ウィンドウ面イン
デックス(1503)は、到着したデータを格納するた
めにウィンドウ配列(121)のうちのどの要素を使用
すべきかを指定する。遠隔プロセッサ資源消費データ
は、MGDPC(126)のキャッピング調整手段(1
28)によって使用される。
【0057】データ・ウィンドウを使用して遠隔パフォ
ーマンス・データを管理することにより、管理されるシ
ステムは独立して動作することができる。1つのMGD
PC間隔中に遠隔システムからのデータが到着しない場
合は、必要であれば、代表となる十分なサンプルを備え
たデータが使用されることを保証するために古いデータ
を使用することによって、データ・ウィンドウ機構が補
正することになる。また、管理される遠隔システムのう
ちの1つが故障した場合は、1つのシステムが故障した
ことを残りのシステムに具体的に通知する必要なく、そ
のデータがデータ・ウィンドウから消されるる。
【0058】改善するレシーバの選択 図3は、パフォーマンス目標を選択してパフォーマンス
の重要性を受け取るためにレシーバ選択手段(141
6)が使用する論理の流れを示す流れ図である。301
では、任意の項目が関連づけられた重要性値を有するか
どうかを判定するためにパフォーマンス目標クラス・テ
ーブルが探索される。パフォーマンス目標を指定する場
合、重要性値は任意選択である。いずれの目標クラスに
ついても重要性値が指定されていない場合は、現行パス
がマルチシステム・パスかまたはローカル・パスかを判
定するために302でMGDPCパスがテストされる。
現行パスがマルチシステム・パスである場合は、最悪
(最高)のマルチシステム・パフォーマンス・インデッ
クスを有する目標クラスが選択される(303)。現行
パスがローカル・パスである場合は、最悪のローカル・
パフォーマンス・インデックスを有する目標クラスが選
択される(304)。
【0059】重要性値が指定されている場合は、考慮す
べき重要性値を、任意のパフォーマンス目標クラスに指
定した最高の重要性値に初期設定する(305)。30
6では、このような目標クラスのいずれかがその目標を
達成していないかどうかを判定するために、重要性を考
慮して目標クラスの設定が検査される。目標不達成の定
義は、実行されるMGDPCパスによって決まる。MG
DPCパスがマルチシステム・パスである場合は、その
マルチシステム・パフォーマンス・インデックスが1よ
り大きければ、目標クラスはその目標を達成していない
と見なされる。MGDPCパスがローカル・パスである
場合は、そのマルチシステムまたはローカルのいずれか
のパフォーマンス・インデックスが1より大きければ、
目標クラスはその目標を達成していないと見なされる。
考慮中の重要性レベルの目標クラスで、その目標を達成
していないものがある場合は、MGDPCパスに基づい
て目標クラスが選択される(307)。すなわち、パス
がマルチシステム・パスである場合は、最悪のマルチシ
ステム・パフォーマンス・インデックスを備えた目標ク
ラスが選択され(308)、パスがローカル・パスであ
る場合は、最悪のローカル・パフォーマンス・インデッ
クスを備えた目標クラスが選択される(309)。
【0060】考慮中の重要性レベルのいずれの目標クラ
スもその目標を達成している場合であって、しかもそれ
より低い別の重要性値が指定されている場合は(31
0)、指定されている次に低い重要性値が考慮の対照と
して設定され(311)、制御は306に戻される。い
ずれの重要性レベルの目標クラスもその目標を達成して
いる場合は、MGDPCパスに基づいて最悪のパフォー
マンス・インデックスを備えた目標クラスを選択するた
めに、制御が302に渡される。
【0061】隘路の検出 図4は、対処すべき資源隘路の選択(1417)に使用
する状態データを示している。それぞれの遅延タイプご
とに、パフォーマンス目標クラス・テーブル項目は、そ
の遅延タイプを検出したサンプル数と、マルチシステム
目標主導パフォーマンス制御プログラムの現行呼出し中
に隘路としてその遅延タイプがすでに選択されているか
どうかを示すフラグとを含む。
【0062】隘路検出手段の論理の流れは図5に示す。
対処すべき隘路の選択は、マルチシステム目標主導パフ
ォーマンス制御プログラムの現行呼出し中にすでに選択
されていない、最大数のサンプル数を有する遅延タイプ
を選択することによって行われる。遅延タイプを選択す
ると、マルチシステム目標主導パフォーマンス制御プロ
グラムのこの呼出し中に隘路検出手段が再呼出しされた
場合にその遅延タイプがスキップされるように、フラグ
が設定される。
【0063】MGDPC(126)の制御調整手段(1
27)の隘路検出手段は、プロセッサ遅延サンプル(5
01)に新しいキャップ遅延サンプルを加え、対処すべ
き次に大きい隘路がプロセッサ・アクセスであるかどう
かを判定するためにキャップ遅延サンプルとプロセッサ
遅延サンプルの合計を使用するように、変更されてい
る。この変更により、ディスパッチ優先順位を上げるこ
とによりプロセッサ遅延とキャップ遅延の両方を調整で
きるようなMGDPCの新しい結果が得られる。
【0064】図5の501では、CPU遅延タイプ・サ
ンプルとキャップ遅延タイプ・サンプルの合計が、まだ
選択されていないすべての遅延タイプのうちの最大数の
遅延サンプルを有するかどうかを判定するために、検査
が行われる。YESの場合は、502でCPU遅延選択
済みフラグが設定され、対処すべき次の隘路としてCP
U遅延が返される。503では、別の遅延タイプ、たと
えば、タイプX遅延タイプが、まだ選択されていないす
べての遅延タイプのうちの最大数の遅延サンプルを有す
るかどうかを判定するために、検査が行われる。YES
の場合は、504でタイプX遅延選択済みフラグが設定
され、対処すべき次の隘路としてタイプX遅延が返され
る。505では、第3の遅延タイプ、たとえば、タイプ
Y遅延タイプが、まだ選択されていないすべての遅延タ
イプのうちの最大数の遅延サンプルを有するかどうかを
判定するために、検査が行われる。YESの場合は、5
06でタイプY遅延選択済みフラグが設定され、対処す
べき次の隘路としてタイプY遅延が返される。当業者
は、上記と同じように隘路を検出するために、サンプリ
ングした各種遅延タイプをいくつでも使用できることが
分かるであろう。
【0065】遅延の修正 この項では、隘路検出手段が選択した遅延を低減するた
めに被制御変数またはパラメータを変更することにより
レシーバのパフォーマンス目標クラス・パフォーマンス
を改善する方法について具体的に説明する。
【0066】一般的修正の流れ 図7は、選択した資源隘路に関連する被制御変数を変更
することによるレシーバ目標クラス・パフォーマンスの
改善を査定するために、修正手段(1418)が必要と
する諸ステップを示している。701では、被制御変数
用として新しい値が選択される。702では、レシーバ
・パフォーマンス目標クラス用として、マルチシステム
およびローカル・パフォーマンス・インデックスの変更
が計算される。この計算の詳細は、個々の資源に固有で
あり、あとで説明する。703では、その変更の結果、
レシーバにとって十分な値になっているかどうかを判定
するために、パフォーマンス・インデックスの改善が検
査される。十分なレシーバ値になっていない場合は、制
御が701に戻され、そこで、レシーバにとってより多
くの恩恵が得られるような値が被制御変数用に選択され
る。
【0067】十分なレシーバ値になっているときは、制
御が704に渡され、そこで制御変数の変更を行うのに
必要な資源のドナーを検出するために、ドナー選択手段
(1423)が呼び出される。705では、提案変更が
正味値を有するかどうかを確認するために検査が行われ
る。その変更が正味値を有する場合は、目標および重要
性に関してレシーバにもたらされる恩恵はドナーに及ぼ
す害より大きくなければならない。提案変更が正味値を
持つ場合は、706で被制御変数が変更される。正味値
がない場合は、選択された資源隘路を修正することがで
きない(707)。
【0068】ドナーの選択 図6は、ドナー選択手段(1423)の論理の流れを示
す流れ図である。ドナー選択手段の目的は、必要な資源
を所有する1組の目標クラスから、レシーバにその資源
を寄贈するのに最も適格な目標クラスを選択することで
ある。601では、任意の項目が関連の重要性値を持っ
ているかどうかを判定するために、パフォーマンス目標
クラス・テーブルが探索される。いずれの目標クラスも
それに関連する重要性値を持たない場合は、任意の目標
クラスが必要な資源を所有しているかどうかをドナー選
択手段が判定する(602)。いずれの目標クラスも必
要な資源を所有していない場合は、適格ドナーは一切存
在しない(603)。このような目標クラスがある場合
は、ドナー選択手段は、MGDPCパスに基づいて、最
良パフォーマンス・インデックスを有する目標クラスを
ドナーとして選択する(604〜607)。現行パスが
マルチシステム・パスである場合は、マルチシステム・
パフォーマンス・インデックスが使用され、そうでない
場合は、ローカル・パフォーマンス・インデックスが使
用される。
【0069】重要性が指定された目標クラスが存在する
場合は、目標を達成する必要資源を所有する目標クラス
が存在するかどうかをドナー選択手段が判定する(60
7)。レシーバ選択手段の場合と同様、MGDPCパス
がマルチシステムである場合は、そのマルチシステム・
パフォーマンス・インデックスが1以下であれば、目標
クラスはその目標を達成するものと見なされる。現行パ
スがローカル・パスである場合は、そのマルチシステム
およびローカルの両方のパフォーマンス・インデックス
が1以下であれば、目標クラスはその目標を達成するも
のと見なされる。必要な資源を所有する目標を達成する
目標クラスが存在する場合は、MGDPCパスに基づい
て、最良のパフォーマンス・インデックスを備えた目標
クラスを選択するために制御が604に渡される。それ
ぞれの指定の目標を達成する目標クラス間を区別する場
合、重要性は使用しない。
【0070】その指定の目標を達成し、しかも必要な資
源を所有している目標クラスが一切存在しない場合は、
ドナー選択手段は、指定の最低重要性値を有し、しかも
必要な資源を所有する目標クラスを検出する(608〜
611)。このような目標クラスが存在する場合は、ド
ナー選択は、MGDPCパスに基づいて、最良のパフォ
ーマンス・インデックスを有する目標クラスを選択する
(613〜615)。いずれの目標クラスも必要な資源
を所有していない場合は、システム内には適格ドナーが
一切存在しない(612)。
【0071】正味値の査定 図8は、レシーバとドナーとの間の企図された資源再割
振りの正味値を判定するために正味値査定手段(142
4)が使用する諸ステップを示している。資源ドナーが
その目標を達成するように見積られ(801)、レシー
バがその目標を達成していない(802)場合は、再割
振りが正味値を持つ(803)。ただし、MGDPCの
マルチシステム・パスでは、そのマルチシステム・パフ
ォーマンス・インデックスが1以下であれば、目標クラ
スは目標を達成していると見なされることに留意された
い。また、MGDPCのローカル・パスでは、そのマル
チシステムとローカル両方のパフォーマンス・インデッ
クスが1以下であれば、目標クラスは目標を達成してい
ると見なされる。
【0072】ドナーがその目標を達成するように見積ら
れ、レシーバがその目標を達成している場合は、アクシ
ョンは正味値を持たない(805)。ドナーとレシーバ
の両方が目標を達成していない場合は、レシーバの方が
(重要性値(108)が示すように)ドナーより重要で
あれば(807)、再割振りが正味値を持ち、ドナーの
方がレシーバより重要であれば(809)、再割振りが
正味値を持たない。810では、レシーバとドナーの両
方が目標を達成しておらず、同じように重要であるか、
または両方ともその目標を達成している。この場合、そ
れによってマルチシステム・パフォーマンス・インデッ
クス(PI)の正味利得が得られれば、再割振りが正味
値を持つ。MGDPCのローカル・パスでは、再割振り
がローカル・パフォーマンス・インデックスの正味利得
も持っていなければならない。以下の条件が両方とも該
当する場合は、資源再割振りがパフォーマンス・インデ
ックスの正味利得を持つ。 1.レシーバについて見積られたパフォーマンス・イン
デックス値の減少(パフォーマンスの改善)の方が、ド
ナーの見積られたパフォーマンス・インデックス値の増
加(パフォーマンスの低下)より大きい。 2.レシーバがドナーより低いパフォーマンス・インデ
ックス値(パフォーマンスの改善)を持つように見積ら
れる場合は、レシーバのパフォーマンス・インデックス
値は、再割振り前より再割振り後の方がドナーのパフォ
ーマンス・インデックス値に近くなるように見積られな
ければならない。
【0073】上記1の場合、レシーバの見積られたパフ
ォーマンス・インデックスの減少とドナーの見積られた
パフォーマンス・インデックスの増加とを比較すると、
レシーバは、そのパフォーマンス・インデックス値の減
少の0.90を上回る部分についてのみ寄与すると認め
られる。同様に、ドナーは、そのパフォーマンス・イン
デックス値の増加の0.90を上回る部分についてのみ
寄与すると認められる。たとえば、レシーバのパフォー
マンス・インデックス値が1.50から0.70に改善
するように見積られた場合、比較に使用するパフォーマ
ンス・インデックスの減少は0.60になるはずであ
る。
【0074】レシーバ値 十分なレシーバ値があるかどうかを検査することは、最
適化の1つである。十分なレシーバ値になるように見積
られている場合のみ、レシーバに役に立つ。レシーバ値
は、最小パフォーマンス・インデックス改善基準か、ま
たは最小遅延サンプル・デルタ基準のいずれかになる。
たとえば、好ましい実施例では、レシーバ値基準は、レ
シーバの現行パフォーマンス・インデックスと1.00
との差の少なくとも10%の改善か、またはレシーバで
検出された最大遅延の遅延サンプルの少なくとも半分に
相当する遅延サンプル・デルタを必要とする。これらの
基準は、非常に小さい改善を拒否するように設計されて
いる。レシーバ値が小さすぎるアクションを拒否する理
由は、限界改善のみをもたらす変更を避けるためであ
る。
【0075】CPU遅延 この項では、レシーバで検出されたCPU遅延(142
0)を低減することによるパフォーマンスの改善につい
て説明する。
【0076】図9は、不公正にドナーのパフォーマンス
に害を及ぼさずにレシーバのパフォーマンスを改善する
ために使用する新しい1組のディスパッチ優先順位を見
つけるための諸ステップを示している。図9〜13は、
修正手段(1418)から正味値査定手段(1424)
に提供されるパフォーマンス・インデックス・デルタの
見積りに関連する諸ステップを示している。
【0077】901では、それぞれの目標クラスごとに
最大需要および待機/使用中の比率が計算され、それぞ
れの優先順位のすべての目標クラスについて蓄積され
る。これらの計算については、本明細書で後述する。こ
れらの値のテーブルが構築されるが、各行はディスパッ
チ優先順位を表し、2つの列は、対応するディスパッチ
優先順位値ですべてのパフォーマンス目標クラスについ
て蓄積された、待機/使用中の比率および最大需要であ
る。このテーブルは、待機/使用中テーブルと呼ばれ、
後述するように新しいディスパッチ優先順について新し
い待機/使用中の値を見積るために使用する。待機/使
用中の比率(CPU遅延サンプルをCPU使用中サンプ
ルで割ったもの)は、コンピュータ・システムのパフォ
ーマンス測定では周知の概念である。最大需要は新しい
概念である。最大需要とは、CPU遅延がない場合に目
標クラスに関連する作業単位が消費できる全プロセッサ
時間の理論上の最大割合(%)である。最大需要の計算
については、本明細書で後述する。
【0078】ステップ902〜909は、上方移動と下
方移動の組合せによって十分なレシーバ値または不十分
な正味値が得られるまで、レシーバのディスパッチ優先
順位を上げた結果(レシーバの上方移動)とドナーのデ
ィスパッチ優先順位を下げた結果(ドナーの下方移動)
を交互に査定するプロセスを示している。1回の移動の
影響を見積るためのステップ903および912は図1
0に示す。また、正味値の検査は図8に示す。いずれか
の正味値検査で不合格になった場合は、移動の組合せで
正味値検査に合格するかどうかを判定するために、レシ
ーバとともに上方移動させるか、またはドナーとともに
下方移動させる2次ドナーおよびレシーバが選択され
る。
【0079】移動の組合せで正味値検査に合格した場合
は、2次レシーバおよびドナーを1次レシーバおよびド
ナーとともに移動させる。2次ドナーおよびレシーバは
ドナー選択手段とレシーバ選択手段では検出されない。
むしろ、2次レシーバは、1)1次レシーバのディスパ
ッチ優先順位より低いディスパッチ優先順位を有し、
2)正味値検査に不合格だった、パフォーマンス目標ク
ラスとして定義されている。同様に、2次ドナーは、
1)1次ドナーのディスパッチ優先順位より高いディス
パッチ優先順位を有し、2)正味値検査に不合格だっ
た、パフォーマンス目標クラスである。
【0080】最大需要の計算 最大需要は次のように計算される。
【0081】最大需要とは、CPU遅延がない場合に目
標クラスが消費できる全プロセッサ時間の理論上の最大
割合(%)である。
【0082】優先順位変更の査定 図10は、ディスパッチ優先順位の変更の影響を見積る
ための諸ステップを示している。1001では、そのデ
ィスパッチ優先順位が変更されるパフォーマンス目標ク
ラスの最大需要が、その「変更前」(現行)優先順位で
の最大需要から引かれ、その「変更後」(提案された新
しい)優先順位での最大需要に加えられる。1002で
は、各クラスごとの達成可能需要割合(%)をグラフか
ら読み取り、次にその達成可能需要割合(%)にシステ
ム内で使用可能な全時間を掛けることにより、ディスパ
ッチ優先順位変更による影響を受けた各クラスが使用す
るように見積られるCPU時間が見積られる。1003
では待機/使用中の新しい比率が見積られ、1004で
はCPU使用中と遅延のサンプル・デルタが計算され、
1005ではディスパッチ優先順位の変更の影響を受け
た各パフォーマンス目標クラスごとにパフォーマンス・
インデックス・デルタが計算される。
【0083】達成可能需要グラフ 図11は、達成可能需要グラフを示している。横座標値
は、任意のディスパッチ優先順位で使用可能な最大需要
をそのディスパッチ優先順位での全最大需要で割った商
である。任意のディスパッチ優先順位で使用可能な最大
需要は、問題のパフォーマンス目標クラスのディスパッ
チ優先順位より上のすべてのディスパッチ優先順位での
累積最大需要を100から引いたものである。任意のデ
ィスパッチ優先順位で使用可能な最大需要は、この計算
ではゼロより小さくなることはない。任意のディスパッ
チ優先順位での最大需要は、そのディスパッチ優先順位
でのすべてのクラスの全最大需要である。
【0084】達成可能需要グラフの縦座標値は、達成可
能需要割合(%)である。達成可能需要割合は、それよ
り高いディスパッチ優先順位のすべての作業の最大需要
と、同一優先順位のすべての作業の最大需要が与えられ
ている場合に、消費するようにあるクラスが見積られて
いるそのクラスの最大需要の割合(%)である。
【0085】使用するCPU時間を見積るため、達成可
能需要グラフから任意のクラスの達成可能需要割合が読
み取られる。この達成可能需要割合を使用して、プロセ
ッサ時間消費を見積る。CPU時間消費は、達成可能最
大需要にそのクラスの最大需要を掛け、全CPU時間を
掛けることによって計算される。
【0086】達成可能需要グラフは、このグラフ用のす
べての値がハード・コード化されているという点によ
り、本発明で使用する他のグラフとは異なっている。他
のすべてのグラフには、実行中のシステムからの実デー
タの所見を使用する。達成可能需要グラフの値は、モデ
リングにより得られたものである。
【0087】CPUの待機/使用中の比率 図12は、前述のように構築した待機/使用中テーブル
を使用して新しい待機/使用中の比率を計算する方法を
示している。新しい遅延サンプル・デルタを計算するに
は、実際の待機/使用中の比率と見積られた待機/使用
中の比率を使用する。
【0088】1201では、関心のあるディスパッチ優
先順位の見積られた累積最大需要より上および下の最も
近い累積最大での待機/使用中の比率を待機/使用中テ
ーブルで見つける。新しい累積最大需要に正確に一致す
るものがテーブルで見つからない場合(1202で検
査)は、上および下の最大需要での待機/使用中の比率
を補間して、使用する新しい待機/使用中の比率を求め
る(1203)。正確に一致するものが見つかった場合
は、その待機/使用中の比率が使用される。
【0089】関心のあるディスパッチ優先順位より上の
100%累積最大需要より大きくなるように見積られて
いる場合(1204)であって、100%累積最大需要
より小さかった場合(1205)は、そのディスパッチ
優先順位で消費されているはずの最大需要と、消費する
ように見積られている最大需要との比率の1/2だけ、
待機/使用中の比率が膨張する(1206)。
【0090】関心のあるディスパッチ優先順位より上の
100%累積最大需要より大きくなるように見積られて
いない場合(1204)であって、この累積最大需要が
現行ディスパッチ優先順位用になるように見積られたも
のより悪い場合(1207)は、その提案されたディス
パッチ優先順位で消費されているはずの最大需要と、消
費するように見積られている最大需要との比率の1/2
だけ、待機/使用中の比率が膨張する(1208)。
【0091】関心のあるディスパッチ優先順位より上の
100%累積最大需要より大きくなるように見積られて
いない場合(1204)であって、この累積最大需要が
以前より悪くなっておらず(1207)、しかも上記の
100%累積最大需要より小さかった場合(1210)
は、その優先順位で消費されるはずの最大需要と、消費
するように見積られている最大需要との比率だけ、待機
/使用中の比率が縮小する(1211)。
【0092】関心のあるディスパッチ優先順位より上の
100%累積最大需要より大きくなるように見積られて
いない場合(1204)であって、この需要が現行ディ
スパッチ優先順位用のものより悪くなっておらず(12
07)、しかも上記の100%累積最大需要より小さく
なかった場合(1210)は、2で割ることによって待
機/使用中の比率が縮小する(1213)。
【0093】すべての膨張ケースでは、膨張した値が次
に低い優先順位での実際の待機/使用中の比率より大き
い場合、待機/使用中の比率は、次に低い優先順位での
待機/使用中の比率に指定変更される。縮小した値が次
に高い優先順位での実際の待機/使用中の比率より小さ
い場合、待機/使用中の比率は、次に高い優先順位での
待機/使用中の比率に指定変更される。
【0094】前述の待機/使用中テーブルから得られた
待機/使用中の比率は、個々のパフォーマンス目標クラ
スごとに次のようにさらに調整される。 待機/使用中比率(調整後)=待機/使用中比率(テー
ブルからの値)×(A/B) ただし、 A=その優先順位でのサービスで重みを付けた平均待機
間隔 B=個々のパフォーマンス目標クラスの平均待機間隔
【0095】CPU使用中のサンプル・デルタ 図13は、CPU使用中のサンプル・デルタを計算する
ための論理の流れを示している。パフォーマンス目標ク
ラスについてCPU時間が蓄積された場合(1301で
検査)、見積られるCPU使用中サンプルは、実際のC
PU使用中サンプルに見積られるCPU時間を掛け、実
際のCPU時間で割ったものに等しくなるように設定さ
れる(1303)。パフォーマンス目標クラスについて
CPU時間が蓄積されていなかった場合、見積られる使
用中サンプルは、見積られるCPU時間をサンプル当た
りのCPU時間で割ったものに等しくなるように設定さ
れる(1302)。使用中サンプル・デルタは、見積ら
れるサンプルから実際のサンプルを引いたものである。
【0096】CPU遅延サンプル・デルタ CPU遅延サンプル・デルタは、次のように計算され
る。
【0097】見積られる遅延サンプル数は、実際に観察
された遅延サンプル数に見積られる待機/使用中の比率
を掛け、実際の待機/使用中の比率で割ったものに等し
くなる。遅延サンプル・デルタは、見積られるサンプル
数から実際のサンプル数を引いたものである。
【0098】CPUパフォーマンス・インデックス・デルタ パフォーマンス・インデックス・デルタは、以下に示す
ようにディスパッチ優先順位の変更について計算され
る。ただし、CPU使用中と遅延のサンプル・デルタは
符号付き数字なので、これらの式はレシーバ用とドナー
用の両方の道筋をたどることに留意されたい。また、上
記で計算したサンプル・デルタはローカル・システム用
であることに留意されたい。
【0099】
【0100】キャップ・ビット操作プログラム キャップ・ビット操作プログラム(130)の動作は、
システム資源マネージャ(123)の周知の時間スライ
ス機能と同様である。所定の長さの時間(この長さはプ
ロセッサ速度による)をいくつかの間隔、好ましい実施
例では64個の間隔に分割する。64個の間隔のそれぞ
れに対応する標識は、その間隔中に資源グループをキャ
ッピングする必要があるかどうかを示す。これらの標識
は、キャップ・スライス・パターン(122)を形成
し、MGDPC(126)のキャッピング調整手段(1
28)によって設定される。キャップ・ビット操作プロ
グラム(130)が呼び出されると、このプログラム
は、どの資源グループをキャッピングすべきかを検査
し、それに応じて作業単位のASCB(104)にキャ
ップ・ビット(105)を設定する。
【0101】資源グループ・データ 図15は、資源グループ内の作業単位をキャッピングす
べき時間量を決定するために使用する資源グループ・テ
ーブル項目データを示している。資源グループ名は11
8に格納されている。この名前を使用して、遠隔システ
ムから送信されたプロセッサ資源消費データを相関さ
せ、ユーザ・パフォーマンス目標クラスを資源グループ
に関連づける。目標クラスが属している資源グループ用
の資源グループ名は、ユーザ・パフォーマンス目標クラ
ス・テーブル項目に格納されている。その資源グループ
(107)用に指定されたプロセッサ消費最大値は11
9に格納されている。資源グループ内のすべての作業単
位が消費する全プロセッサ・サービス単位は、この最大
値を超えてはならない。これは、ローカル・システムと
すべての遠隔システム(100−A、100−B、10
0−C)で実行されるすべての作業単位の合計である。
資源グループ最大値は複数のシステムに及ぶ。資源グル
ープ名とプロセッサ資源消費最大値は入力値である。
【0102】計算に使用するグループ・プロセッサ消費
(120)とキャップ・スライス・データ(122)
は、移動時間ウィンドウにわたって保持される。この移
動時間ウィンドウは最新の60秒として定義されてい
る。この60秒のウィンドウは、6つのウィンドウ面と
呼ばれる10秒ずつの6つの間隔に分割され、各ウィン
ドウごとに6要素の配列として実現される。好ましい実
施例では、3つのデータ・ウィンドウがあり、1つはロ
ーカル・システム上で消費されるプロセッサ・サービス
用(120)であり、2つ目はすべての遠隔システムの
合計で消費されるプロセッサ・サービス用(121)で
あり、3つ目のウィンドウはローカル・システム上のキ
ャップ・スライス用(122)である。
【0103】現行の10秒の間隔用のデータは、現行ウ
ィンドウ面インデックス(1503)でインデックスが
付けられたウィンドウ面配列要素に格納される。それぞ
れのウィンドウ配列は、6つのウィンドウ面配列要素を
有する。この6つの配列要素は順に使用する。6番目の
要素の使用後、次の時間間隔用のデータは最初の要素に
格納され、すでに最初の配列要素に入っていた古いデー
タに置き換わる。計算に使用するデータは、ウィンドウ
のすべてのウィンドウ面のデータ、すなわち、6つの間
隔分のデータの合計である。
【0104】資源グループ用の現行ウィンドウ面インデ
ックス(1503)は、グループ・テーブル項目に格納
される。プロセッサ・サービス単位データ(120)
は、1つのウィンドウ分の時間、好ましい実施例では6
つの10秒間隔にわたって保持される。現行ウィンドウ
面インデックス(1503)は、現行データにどのウィ
ンドウ面を使用すべきかを示す。いくつかの間隔(好ま
しい実施例では6つの10秒間隔)にわたってデータが
保持されることは、本発明の重要な特徴の1つである。
この特徴により、データが平滑になり、管理されるシス
テム間で同期を取る必要がなくなる。このウィンドウ
は、遠隔データが遅れたり順不同になっても特殊な処理
やエラー処理を必要としないように十分な時間をカバー
している。遅れたデータは、到着したときにウィンドウ
・データに追加されるだけである。システムが故障し、
データの到着が停止した場合は、そのシステム用のデー
タが含まれなくなるだけであり、決定での使用が停止さ
れる。このプロセスにより、特殊なケースおよびエラー
処理機構の必要性がなくなり、個々のシステムでの資源
割振りの急激な変化の可能性が低減される。
【0105】前の6つの間隔の間に資源グループについ
て計算されたキャップ・スライスの数(122)は、6
つのウィンドウ面に格納される。キャップ・スライス値
はキャッピング調整手段(128)によって記入され
る。それぞれの重要性レベルでローカル(120)およ
び遠隔(121)で消費されるプロセッサ・サービス単
位の数は、最後の6つの間隔の間、6つのウィンドウ面
に保持される。遠隔システムからのプロセッサ・サービ
ス単位消費データは遠隔データ受信プログラム(12
5)によって記入される。そのウィンドウでの重要性ご
とのローカルおよび全プロセッサ・サービス単位(15
06)と、そのウィンドウでの全プロセッサ・サービス
単位(1507)は、グループ・テーブル項目(11
7)に格納される。これらの値は、キャッピング調整手
段(128)によって計算され、使用される。
【0106】ローカル・システムがそれぞれの重要性レ
ベルの作業を有するかどうかを示す標識(1508)
は、それぞれの重要性レベルの作業を有する遠隔システ
ムの数(1509)とともに、グループ・テーブル項目
(117)に格納される。この標識(1508)は、プ
ロセッサ・サービス単位消費データ(120)ととも
に、データ送信手段(129)によってローカル・シス
テムからすべての遠隔システムに送られる。この標識
は、遠隔データ受信プログラム(125)によって受信
され、格納される。
【0107】グループ内の作業単位をキャッピングすべ
き特定のスライスは、122に格納されたキャップ・ス
ライス・パターンに示される。これらのビットは、キャ
ップ・スライス割当て手段によって設定される。
【0108】キャッピングの調整 本発明のため、MGDPC(126)は、キャッピング
調整という新しい機能を実行するように変更されてい
る。このキャッピング調整手段(128)は、資源消費
をその資源グループについて指定された最大値に制限す
るために、各資源グループに割り当てられた作業単位を
ディスパッチ不能にする(キャッピングする)必要があ
る時間量を決定する。MGDPC(126)のこの新し
いキャッピング調整手段(128)については、図16
に示し、後述する。データ送信手段(129)は、資源
グループごとにプロセッサ資源消費データをさらに送信
するように変更されている。送信される追加データは、
重要性ごとのローカル・プロセッサ・サービス単位消費
(1801)と、ローカル・システムがそれぞれの重要
性レベルの作業を有するかどうかを示す標識(180
2)である。
【0109】それぞれのシステムには、資源グループご
とに、ローカル・システムとすべての遠隔システム用の
重要性レベルごとのプロセッサ・サービス消費が用意さ
れている。各システムは、測定したプロセッサ消費と導
入システム指定の最大プロセッサ消費から、すべてのシ
ステムでどの程度プロセッサ消費を低減して、全プロセ
ッサ消費がその最大値を超えないようにするかを決定す
ることができる。重要性レベルごとのプロセッサ消費デ
ータを使用して、各システムは、重要性レベルを下げて
いき、所与の重要性レベルで消費したプロセッサ・サー
ビスのうち、どの程度を引き続きローカル・システム上
で割り振っておく必要があるかを判定する。所与の重要
性レベルで測定したすべてのプロセッサ・サービス消費
が最大値を下回る場合は、ローカル・システム上でその
重要性レベルで消費したすべてのプロセッサ・サービス
が、ローカル・システム上で許されるプロセッサ・サー
ビスの量に追加される。それより高い重要性レベルで割
り振られたプロセッサ・サービスと結合したときに、そ
の重要性レベルで消費したプロセッサ・サービスのすべ
てが最大値を下回るわけではない場合は、ローカル・シ
ステムでその重要性レベルで消費したプロセッサ・サー
ビスの比例分だけが、ローカル・システムで許される全
プロセッサ・サービスに追加される。このプロセスの結
果、重要性ごとに複数のシステム間で公平なキャッピン
グが行われる。このプロセスについては図16に示す。
【0110】最大量未満のプロセッサ・サービスが消費
される場合は、各システムで実行中の作業の重要性に基
づいて、追加量のプロセッサ・サービスもシステム間に
割り振られる。次に、ローカル・システムで許されるプ
ロセッサ・サービス単位の数が、キャップ・スライスの
数(図16)とキャップ・スライス・パターン(図1
7)に変換される。
【0111】キャッピング調整手段(128)は、各シ
ステムで定期的に(好ましい実施例では10秒おき)動
作して、ローカル・システム上のキャップ・スライスの
数を調整し、条件の変化を補正する。たとえば、1つの
システム内のある資源グループに割り当てられた作業単
位が要求の厳しいサービスを停止した場合、他のシステ
ム上の同じ資源グループに割り当てられた作業単位の方
を多く消費することができる。ただし、ローカル・シス
テム上の各資源グループをどの程度制限するかはそれぞ
れのシステムが独立して決定できることに留意すること
が重要である。中央での調整は不要である。それぞれの
システムは、ローカル・システムでいくつのキャップ・
スライスが必要になるかを判断できるだけの十分な情報
を持っている。
【0112】図16は、資源グループごとに作業単位を
キャッピングすべき時間量を決定するために使用する制
御の流れを示している。1601では、処理すべき別の
資源グループがあるかどうかを判定するために検査が行
われる。別の資源グループがない場合は、機能が完了
し、ウィンドウ面インデックスを次のウィンドウ面に設
定して終了するために制御が1602に移行する。ウィ
ンドウ面インデックスは、現行ウィンドウ面インデック
スに1を加え、新しいウィンドウ面インデックスが6よ
り大きいかどうかを検査することにより、次のウィンド
ウ面に設定される。新しいウィンドウ面インデックスが
6より大きい場合は、新しいウィンドウ面インデックス
が1に設定される。処理すべき別の資源グループがある
場合は、資源グループに現在キャップ・スライスが設定
されているか、または資源グループが指定の最大値を上
回るプロセッサ時間を現在消費しているかを判定するた
めに、1603で検査が行われる。NOの場合は、次の
資源グループを処理するために制御は1601に移行す
る。YESの場合は、初期設定が行われる1604に制
御が移行する。
【0113】初期設定は、資源グループに割り振り可能
な残りのプロセッサ・サービス単位を表す変数RSAを
資源グループ用に指定された最大値に設定することと、
ローカル・システム上で消費可能なプロセッサ・サービ
ス単位を表す変数LSAをゼロに設定することから構成
される。ローカル・プロセッサ上で許されるプロセッサ
・サービス単位は、ローカル・プロセッサとすべての遠
隔プロセッサ上での消費および作業の重要性に基づいて
割り当てられる。1604では、配列変数LSとTSも
初期設定される。LSとTSは、重要性レベルの数に等
しい数の要素を備えた配列である。変数LS(IMP)
は、それぞれの重要性レベルごとに、最新ウィンドウ分
の時間にわたってローカル・システム上でその重要性レ
ベルで消費された全サービスに設定される。これは、ロ
ーカル・プロセッサ・サービス消費ウィンドウの6つの
要素からのその重要性レベルのサービス消費データを加
えることによって行われる。それぞれの重要性レベルで
消費された全サービスである変数TS(IMP)は、同
様に計算される。
【0114】1605では、重要性変数(IMP)が、
プロセッサ・サービス単位データにより重要性ごとにル
ープするために初期設定すべき最高の重要性に設定され
る。1606では、まだ割当て可能なプロセッサ・サー
ビス単位があるかどうかを判定するために検査が行われ
る。すべてのプロセッサ・サービス単位が割り当てられ
ている場合は、ローカル・プロセッサに割り当てられた
プロセッサ・サービス単位の数をキャップ・スライスの
数(130)に変換する1616に制御が移行する。
【0115】指定の最大値を超えずに割り当てられるプ
ロセッサ・サービス単位が残っている場合は、制御が1
607に移行し、そこで、ローカル・システムとすべて
の遠隔システム上で現行重要性レベルIMPで消費した
プロセッサ・サービス単位の合計量TSが割当て対象と
して残っているプロセッサ・サービス単位より少ない可
動かを判定するために検査が行われる。現行重要性レベ
ルですべてのシステム上で消費したプロセッサ・サービ
ス単位の合計が割当て対象として残っているプロセッサ
・サービス単位以下である場合は、制御は1608に移
行し、そこで、現行重要性レベルIMPでローカル・シ
ステム上で消費したプロセッサ・サービス単位の数LS
が許されるローカル・プロセッサ・サービス単位の数L
SAに加えられる。現行重要性レベルで消費したプロセ
ッサ・サービス単位の総数が割当て対象として残ってい
るプロセッサ・サービス単位より多い場合は、制御は1
609に移行し、そこで、許される残りのプロセッサ・
サービス単位の一部がローカル・システムに割り振られ
る。ローカル・システムに割り振られる残りのプロセッ
サ・サービス単位の一部は、ローカル・システム上で現
行重要性レベルで消費したプロセッサ・サービス単位の
数を、ローカル・システムとすべての遠隔システム上で
現行重要性レベルで消費した全プロセッサ・サービス単
位で割ったものである。
【0116】いずれの場合も制御は次に1610に移行
し、そこで、ローカル・システムとすべての遠隔システ
ム上で消費したプロセッサ・サービス単位の総数TS
(IMP)が、割当て対象として残っているプロセッサ
・サービス単位の数RSAから引かれる。次に、161
1では、処理すべき別の重要性があるかどうかを判定す
るために検査が行われる。YESの場合は、制御が16
12に移行し、そこで現行重要性変数IMPが次に低い
重要性に設定され、次に制御が1606に戻り、前述の
ようにさらに割り当てるべきプロセッサ・サービス単位
があるかどうかが検査される。
【0117】すべての重要性値が処理されたと1611
で判定された場合は、制御が1613に移行し、そこ
で、資源グループの消費量がその最大許容プロセッサ・
サービス単位未満であったかどうかを判定するために検
査が行われる。資源グループの消費量がその許容最大プ
ロセッサ・サービス単位未満ではなかった場合は、制御
が1616に移行し、その資源グループ用のキャップ・
スライスを計算する。資源グループの消費量がその最大
プロセッサ・サービス単位未満だった場合は、制御は1
614に移行し、そこで、いずれかのシステム上の資源
グループ内のいずれかの作業の最高重要性レベルの作業
をローカル・システムが有しているかどうかを判定する
ために検査が行われる。資源グループ内の作業の重要性
のうち最高の作業を有するシステムには、追加のプロセ
ッサ・サービス単位が割り当てられる。ローカル・シス
テムが資源グループ内の作業の最高重要性レベルの作業
を有していない場合は、制御が1616に移行し、資源
グループ用のキャップ・スライスを計算する。ローカル
・システムが資源グループ内の作業の最高重要性レベル
の作業を有する場合は、割当て可能な残りのプロセッサ
・サービス単位の一部がローカル・システム上の作業に
割り当てられる。このローカル・システム上の作業に割
り当てられた部分は、1を最高重要性レベルの作業を有
するシステムの数(1509)で割ったものである。
【0118】1616では、以下のステップを使用し
て、ローカル・システム上で許されるプロセッサ・サー
ビス単位の数がキャップ・スライスの数に変換される。 1.許される非キャップ・スライスの数を次のように計
算する。 非キャップ・スライス=LSA*(TSLOW−CSL
OW)/LSEROW ただし、 LSA: 許されるローカル・プロセッサ・サービス単
位 TSLOW: ウィンドウでのスライスの総数 (6*64=384、定数) CSLOW: ウィンドウでのキャップ済みスライスの
数(1502) LSEROW: ウィンドウで消費されたローカル・プ
ロセッサ・サービス単位(1504) 2.計算の結果、非キャップ・スライスが0になる場合
は、これを1に設定する。時間の100%をキャッピン
グしてはならない。 3.全スライス(64)から非キャップ・スライスを引
いた数に等しくなるようにキャップ・スライスを設定す
る。 4.キャップ・スライス数の増加がスライスの総数の半
分を上回る場合は、スライスの総数の半分だけ、キャッ
プ・スライスの数を増加する。 5.キャップ・スライスの数を資源グループ・テーブル
項目(122)に格納する。キャップ・スライスの数
は、現行ウィンドウ面インデックスでインデックスが付
けられたキャップ・スライス配列要素に格納される。
【0119】特定のキャップ・スライスの割当て 図17は、キャップ・ビット操作プログラム手段が問い
合わせするために、各資源グループのキャップ・スライ
スをキャップ・スライス・パターンにわたって比較的均
等に分散するための諸ステップを示している。最大数の
キャップ済みスライスを有する資源グループに特定のス
ライスがまず割り当てられ、その後、次に多い数のキャ
ップ・スライスを必要とする資源グループ、さらにその
次と、キャップ・スライスを有するすべての資源グルー
プが処理されるまで、順に割り当てられる。システム全
体では、特定のスライスを特定の資源グループに割り当
てるときに各スライス中にキャッピングすべき資源グル
ープの数をカウントすることにより、キャップ・スライ
ス・パターンの64個のスライスのそれぞれの間に、同
数の資源グループ±1グループがキャッピングされる。
このカウントは、そのグループに特定のスライスを割り
当てるべきかどうかを判定するためにテストされる。6
4個のスライスすべてが1回ずつ割り当てられるまで、
1つのスライスが2つの資源グループに割り当てられる
ことはない。また、64個のスライスすべてが2回ずつ
割り当てられるまで、1つのスライスが3つのグループ
に割り当てられることはなく、以下同様になる。
【0120】1701では、システム・データが初期設
定される。キャップ・スライス・カウント配列(SC
A)要素はゼロにクリアされる。スライス・カウント配
列とは、複数のカウントからなる配列である。各項目に
は、そのスライス中にキャッピングされるグループの数
が入っている。キャップ・スライス・カウント配列には
64個の項目がある。各項目はその時間の1/64を表
す。
【0121】1702では、最大数のキャップ・スライ
スを有し、まだ処理されていない資源グループが選択さ
れる。処理すべき資源グループがそれ以上存在しない場
合は、制御は1703の終了に移行する。処理すべき別
の資源グループが存在する場合は、制御は1704に移
行する。
【0122】1704では、資源グループ・データが初
期設定される。スライス増分(SI)と、スライス・カ
ウント基準(SCC)と、スライス・カウント配列イン
デックス(SCAI)が初期設定される。(SI−1)
は、資源グループのキャップ・スライスが可能な64個
のキャップ・スライスに比較的均等に分散されるよう
に、資源グループ用の各キャップ・スライス間でスキッ
プ可能なスライスの数である。SIは、64をそのグル
ープのキャップ・スライスの数で割った数に設定され
る。SCCは、スライス・カウント配列の最大値に設定
される。スライス・カウント配列内のすべてのカウント
が同じ値を有する場合は、SCCに1が加えられる。S
CAIは、キャップ・スライス・パターンの最初のスラ
イスから始まるように1に設定される。
【0123】1705では、SCA(SCAI)セルの
カウントがこのグループ用の基準(SCC)と照らし合
わせて検査される。スライスがSCC個のグループに割
り当てられているか、またはこのグループにすでに割り
当てられている場合は、制御は1706に移行し、そこ
でSCAIに1が加えられる。SCAIが65まで増分
されると、これは1にリセットされる(すなわち、SC
AIはモジュロ64である)。スライス・カウント配列
内のすべてのカウントが同じ値を有する場合は、SCC
に1が加えられる。次に制御は1705に戻る。
【0124】スライスがSCC個未満の資源グループに
割り当てられていて、処理中の現行グループには割り当
てられていない場合は、制御は1707に移行し、そこ
で、そのスライスがそのグループに割り当てられ、SC
Aのスライス用の使用カウントに1が加えられる。資源
グループのキャップ・スライス・パターンのSCAIに
対応するビットを設定することにより、スライスが資源
グループに割り当てられる。次に制御は1708に移行
する。
【0125】1708では、現行資源グループに別のス
ライスを割り当てる必要があるかどうかを判定するため
に検査が行われる。そのグループのすべてのキャップ・
スライスについて特定のスライスが割り当てられている
場合は、制御は1702に戻り、別の資源グループの有
無を検査する。そのグループが別の特定のスライスの割
当てを必要とする場合は、制御が1709に移行する。
【0126】1709では、検査すべき次の特定のスラ
イスを設定するため、SCAIにSIが加えられる。S
CAIが64を上回る場合は、SCAIから64が引か
れる。SCAのすべてのカウントが同じ値を有する場合
は、SCCに1が加えられる。次に制御は1705に戻
る。
【0127】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0128】(1)共通プロセッサ消費標準により複数
のデータ処理システム間に分散された複数の作業単位を
含む1つの作業負荷を管理するための装置において、前
記システムのそれぞれが前記プロセッサ消費標準の記憶
表現へのアクセス権を有し、1つまたは複数のシステム
制御パラメータにより割り当てられた作業単位を実行
し、前記装置が前記システムのそれぞれにおいて、 a)前記システム上の作業単位のプロセッサ消費を測定
して、ローカル・プロセッサ消費データを作成する手段
と、 b)前記複数のシステム内の他の少なくとも1つのシス
テムに前記ローカル・プロセッサ消費データを送信する
手段と、 c)前記複数のシステム内の他の少なくとも1つのシス
テムからプロセッサ消費データを受信して、遠隔プロセ
ッサ消費データを作成する手段と、 d)前記ローカルおよび遠隔プロセッサ消費データに応
答し、前記システム制御パラメータのうちの少なくとも
1つを調整し、前記システム上の前記作業単位の前記ロ
ーカル・プロセッサ消費および前記遠隔プロセッサ消費
を変更して前記共通プロセッサ消費標準を達成する手段
とを含むことを特徴とする、装置。 (2)前記プロセッサ消費標準がプロセッサ消費最大値
を含むことを特徴とする、上記(1)に記載の装置。 (3)前記作業単位がグループ単位に編成され、そのそ
れぞれがプロセッサ消費標準を1つずつ有することを特
徴とする、上記(1)に記載の装置。 (4)前記プロセッサ消費最大値が共通する1組のプロ
セッサ消費最大値を含み、前記作業単位がグループ単位
に編成され、そのそれぞれがプロセッサ消費標準を1つ
ずつ有することを特徴とする、上記(1)に記載の装
置。 (5)共通プロセッサ消費標準により複数のデータ処理
システム間に分散された複数の作業単位を含む1つの作
業負荷を管理するための方法において、前記システムの
それぞれが前記プロセッサ消費標準の記憶表現へのアク
セス権を有し、1つまたは複数のシステム制御パラメー
タにより割り当てられた作業単位を実行し、前記方法
が、前記システムのそれぞれにおいて実行される、 a)前記システム上の作業単位のプロセッサ消費を測定
して、ローカル・プロセッサ消費データを作成するステ
ップと、 b)前記複数のシステム内の他の少なくとも1つのシス
テムに前記ローカル・プロセッサ消費データを送信する
ステップと、 c)前記複数のシステム内の他の少なくとも1つのシス
テムからプロセッサ消費データを受信して、遠隔プロセ
ッサ消費データを作成するステップと、 d)前記システム制御パラメータのうちの少なくとも1
つを調整し、前記システム上の前記作業単位の前記遠隔
プロセッサ消費および前記ローカル・プロセッサ消費を
変更して前記共通プロセッサ消費標準を達成するステッ
プとを含むことを特徴とする、方法。 (6)前記プロセッサ消費標準がプロセッサ消費最大値
を含むことを特徴とする、上記(5)に記載の方法。 (7)前記作業単位がグループ単位に編成され、そのそ
れぞれがプロセッサ消費標準を1つずつ有することを特
徴とする、上記(5)に記載の方法。 (8)前記プロセッサ消費最大値が共通する1組のプロ
セッサ消費最大値を含み、前記作業単位がグループ単位
に編成され、そのそれぞれがプロセッサ消費標準を1つ
ずつ有することを特徴とする、上記(5)に記載の方
法。 (9)複数の独立協調動作データ処理システム間で共通
する1組のグループ・プロセッサ消費最大値を有する分
散データ処理システム作業負荷によって消費されたプロ
セッサ資源を管理するための装置において、前記データ
処理システム作業負荷が1つまたは複数のグループに編
成された作業単位を含み、そのそれぞれが前記共通する
1組の最大値からのプロセッサ消費最大値を1つずつ有
し、前記データ処理システムのそれぞれが前記グループ
の記憶表現へのアクセス権を有し、前記装置が、前記シ
ステムのそれぞれにおいて、 a)前記共通する1組の最大値にアクセスし、システム
制御データを作成する作業負荷マネージャ手段と、 b)前記共通する1組の最大値によりシステム資源を管
理するシステム資源マネージャ手段であって、前記シス
テム資源マネージャ手段が、 i)前記システム上の作業単位のプロセッサ消費を測定
して、ローカル・プロセッサ消費データを作成する手段
と、 ii)前記複数のデータ処理システム内の他の少なくとも
1つのシステムにローカル・プロセッサ消費データを送
信するデータ送信手段と、 iii)前記複数のデータ処理システム内の他の少なくと
も1つのシステムから遠隔プロセッサ消費データを受信
する遠隔データ受信プログラム手段と、 iv)前記遠隔プロセッサ消費データと前記ローカル・プ
ロセッサ消費データと前記システム制御データに応答
し、1つまたは複数のシステム制御パラメータを調整し
て、前記グループ内の前記作業単位のプロセッサ消費を
変更させるマルチシステム目標主導パフォーマンス制御
プログラム手段と、 v)前記遠隔プロセッサ消費データおよび前記ローカル
・プロセッサ消費データに応答し、所定の割合の時間の
間、前記作業単位のそれぞれをキャッピングするキャッ
ピング手段とを含む、システム資源マネージャ手段とを
含むことを特徴とする、装置。 (10)前記キャッピング手段が、 a)前記グループのそれぞれをキャッピングする必要が
ある所定の割合の時間を決定する計算手段と、 b)前記グループのそれぞれについて決定された所定の
割合の時間によりそのグループ用のキャップ・スライス
・パターンを作成する手段と、 c)前記キャップ・スライス・パターンに応答し、どの
作業単位をキャッピングすべきかを示す標識を設定する
手段と、 d)前記標識に応答し、前記標識によりディスパッチを
制御する手段とを含むことを特徴とする、上記(9)に
記載の装置。 (11)前記計算手段が、 a)ローカル・システム上で許されるサービス単位を計
算する手段と、 b)前記サービス単位を前記所定の割合の時間に変換す
る手段とを含むことを特徴とする、上記(10)に記載
の装置。 (12)前記プロセッサ消費最大値がプロセッサ・サー
ビス単位を含むことを特徴とする、上記(9)に記載の
装置。 (13)1つまたは複数の個別のパフォーマンス目標タ
イプにより、複数の独立協調動作データ処理システム間
で共通する1組のパフォーマンス目標クラスと共通する
1組のプロセッサ消費最大値グループを有する分散デー
タ処理システム作業負荷によって消費されたプロセッサ
資源を管理するための装置において、前記データ処理シ
ステム作業負荷が少なくとも1つのパフォーマンス目標
クラスと少なくとも1つのプロセッサ消費最大値グルー
プに編成された作業単位を含み、前記クラスのそれぞれ
が前記パフォーマンス目標タイプの1つに該当する前記
共通する1組のパフォーマンス目標からのパフォーマン
ス目標を1つずつ有し、前記グループのそれぞれが前記
共通する1組の最大値からのプロセッサ消費最大値を1
つずつ有し、前記データ処理システムのそれぞれが前記
パフォーマンス目標と前記プロセッサ消費最大値の記憶
表現へのアクセス権を有し、前記装置が、前記システム
のそれぞれにおいて、 a)前記共通する1組のパフォーマンス目標と前記共通
する1組のプロセッサ消費最大値にアクセスし、システ
ム制御データを作成する作業負荷マネージャ手段と、 b)前記共通する1組のパフォーマンス目標と前記共通
する1組のプロセッサ消費最大値によりプロセッサ資源
を管理するシステム資源マネージャ手段であって、前記
システム資源マネージャ手段が、 i)前記作業単位の状態をサンプリングし、サンプル・
データを作成する手段と、 ii)前記システム上の作業単位のプロセッサ消費を測定
して、ローカル・プロセッサ消費データを作成する手段
と、 iii)前記複数のデータ処理システム内の他の少なくと
も1つのシステムに前記ローカル・パフォーマンス・デ
ータとローカル・プロセッサ消費データを送信するデー
タ送信手段と、 iv)前記複数のデータ処理システム内の他の少なくとも
1つのシステムから遠隔パフォーマンス・データと遠隔
プロセッサ消費データを受信する遠隔データ受信プログ
ラム手段と、 v)前記サンプル・データと前記遠隔パフォーマンス・
データと前記ローカル・パフォーマンス・データに応答
し、少なくとも1つのシステム制御パラメータを調整し
て、前記作業単位のパフォーマンスの変更により前記共
通する1組のパフォーマンス目標を達成させるマルチシ
ステム目標主導パフォーマンス制御プログラム手段と、 vi)前記遠隔プロセッサ消費データおよび前記ローカル
・プロセッサ消費データに応答し、前記作業単位のプロ
セッサ消費を変更して前記プロセッサ消費グループ最大
値を達成するキャッピング手段とを含む、システム資源
マネージャ手段とを含むことを特徴とする、装置。 (14)前記キャッピング手段が、 a)前記グループのそれぞれをキャッピングする必要が
ある所定の割合の時間を決定する計算手段と、 b)前記グループのそれぞれについて決定された所定の
割合の時間によりそのグループ用のキャップ・スライス
・パターンを作成する手段と、 c)前記キャップ・スライス・パターンに応答し、どの
作業単位をキャッピングすべきかを示す標識を設定する
手段と、 d)前記標識に応答し、前記標識によりディスパッチを
制御する手段とを含むことを特徴とする、上記(13)
に記載の装置。 (15)前記計算手段が、 a)ローカル・システム上で許されるサービス単位を計
算する手段と、 b)前記サービス単位を前記所定の割合の時間に変換す
る手段とを含むことを特徴とする、上記(14)に記載
の装置。 (16)前記システム制御データが、前記共通する1組
のパフォーマンス目標からの1つのパフォーマンス目標
に相対的重要性を割り当てる少なくとも1つの重要性パ
ラメータをさらに含むことを特徴とする、上記(13)
に記載の装置。 (17)前記プロセッサ消費最大値がプロセッサ・サー
ビス単位を含むことを特徴とする、上記(13)に記載
の装置。 (18)前記マルチシステム目標主導パフォーマンス制
御プログラム手段が、 a)前記複数のデータ処理システム間の前記目標クラス
のそれぞれについてマルチシステム・パフォーマンス・
インデックスを計算するマルチシステム・パフォーマン
ス・インデックス計算手段と、 b)前記目標クラスのそれぞれについてローカル・パフ
ォーマンス・インデックスを計算するローカル・パフォ
ーマンス・インデックス計算手段と、 c)前記計算されたマルチシステム・パフォーマンス・
インデックスと前記計算されたローカル・パフォーマン
ス・インデックスとに応答して、改善されたサービスを
与えるべきレシーバ・クラスを選択するレシーバ選択手
段と、 d)前記サンプル・データに応答して、前記選択された
レシーバ・クラスに影響するシステム資源隘路を識別す
る隘路検出手段と、 e)前記システム・パラメータを調整する修正手段であ
って、前記修正手段が少なくとも1つのパラメータ調整
手段を含み、前記パラメータ調整手段のそれぞれが前記
隘路検出手段による関連システム資源隘路の前記識別に
応答し、前記関連システム資源隘路に関連する特定のシ
ステム制御パラメータを調整する修正手段とを含むこと
を特徴とする、上記(13)に記載の装置。 (19)前記システム資源隘路が前記隘路検出手段によ
ってCPU隘路であると識別され、前記修正手段が、前
記CPU隘路の前記識別に応答してレシーバ・クラス・
ディスパッチ優先順位を調整する手段を含むことを特徴
とする、上記(18)に記載の装置。 (20)前記CPU隘路が、キャップ遅延サンプルとプ
ロセッサ遅延サンプルとによって示されることを特徴と
する、上記(19)に記載の装置。 (21)前記マルチシステム目標主導パフォーマンス制
御プログラム手段が、 a)前記複数のデータ処理システム間の前記目標クラス
のそれぞれについてマルチシステム・パフォーマンス・
インデックスを計算するマルチシステム・パフォーマン
ス・インデックス計算手段と、 b)前記目標クラスのそれぞれについてローカル・パフ
ォーマンス・インデックスを計算するローカル・パフォ
ーマンス・インデックス計算手段と、 c)前記クラス・テーブル手段内の前記少なくとも1つ
の重要性パラメータと、計算されたマルチシステム・パ
フォーマンス・インデックスと、前記計算されたローカ
ル・パフォーマンス・インデックスとに応答して、改善
されたサービスを与えるべきレシーバ・クラスを選択す
るレシーバ選択手段と、 d)前記サンプル・データに応答して、前記選択された
レシーバ・クラスに影響するシステム資源隘路を識別す
る隘路検出手段と、 e)前記システム・パラメータを調整する修正手段であ
って、前記修正手段が少なくとも1つのパラメータ調整
手段を含み、前記パラメータ調整手段のそれぞれが前記
隘路検出手段による関連システム資源隘路の前記識別に
応答し、前記関連システム資源隘路に関連する特定のシ
ステム制御パラメータを調整する修正手段とを含むこと
を特徴とする、上記(16)に記載の装置。 (22)分散データ処理システム作業負荷用のマルチシ
ステム・パフォーマンス・インデックスとマルチシステ
ム・プロセッサ消費とを得るための装置において、ロー
カル・パフォーマンス・データとローカル・プロセッサ
消費データとを得る手段と、マルチシステム・パフォー
マンス・データとマルチシステム・プロセッサ消費デー
タとを得る手段と、前記ローカル・パフォーマンス・デ
ータと前記マルチシステム・パフォーマンス・データか
らマルチシステム・パフォーマンス・インデックスを決
定する手段と、前記ローカル・プロセッサ消費データと
前記マルチシステム・プロセッサ消費データからマルチ
システム・プロセッサ消費を決定する手段とを含むこと
を特徴とする、装置。 (23)1つの受信側システムと1つまたは複数の送信
側システムとを含むコンピュータ・システム複合体にお
いて、前記受信側にあって前記1つまたは複数の送信側
システムから遠隔パフォーマンス・データと遠隔プロセ
ッサ消費データとを受け取るための装置であって、前記
装置が、前記遠隔パフォーマンス・データと前記遠隔グ
ループ・プロセッサ消費データが、前記受信側システム
と同じ組のパフォーマンス目標およびプロセッサ消費最
大値を有する送信側システムからのものであるかどうか
を判定する検証手段と、前記検証手段に応答して、各目
標クラスごとに遠隔パフォーマンス・データ履歴にデー
タを追加し、各グループごとに遠隔グループ・プロセッ
サ消費データ・ウィンドウにデータを追加する手段とを
含むことを特徴とする、装置。 (24)複数の独立協調動作データ処理システム間で共
通する1組のグループ・プロセッサ消費最大値を有する
分散データ処理システム作業負荷によって消費されたプ
ロセッサ資源を管理するための方法において、前記デー
タ処理システム作業負荷が1つまたは複数のグループに
編成された作業単位を含み、そのそれぞれが前記共通す
る1組の最大値からのプロセッサ消費最大値を1つずつ
有し、前記データ処理システムのそれぞれが前記グルー
プの記憶表現へのアクセス権を有し、前記装置が、前記
システムのそれぞれにおいて実行される、 a)前記システムから前記共通する1組の最大値にアク
セスし、システム制御データを作成するステップと、 b)前記共通する1組の最大値により各システム上のシ
ステム資源を管理するステップであって、 i)前記システム上の作業単位のプロセッサ消費を測定
して、ローカル・プロセッサ消費データを作成するステ
ップと、 ii)前記複数のデータ処理システム内の他の少なくとも
1つのシステムに前記ローカル・プロセッサ消費データ
を送信するステップと、 iii)前記複数のデータ処理システム内の他の少なくと
も1つのシステムから遠隔プロセッサ消費データを受信
するステップと、 iv)前記システム上の少なくとも1つのシステム制御パ
ラメータを調整して、前記作業単位のプロセッサ消費を
変更させるステップと、 v)前記遠隔プロセッサ消費データおよび前記ローカル
・プロセッサ消費データに応答し、所定の割合の時間の
間、前記作業単位のそれぞれをキャッピングするステッ
プとにより管理するステップとを含むことを特徴とす
る、方法。 (25)前記キャッピング・ステップが、 a)前記グループのそれぞれをキャッピングする必要が
ある所定の割合の時間を決定するステップと、 b)前記グループのそれぞれについて決定された所定の
割合の時間によりそのグループ用のキャップ・スライス
・パターンを作成するステップと、 c)前記キャップ・スライス・パターンに応答し、どの
作業単位をキャッピングすべきかを示す標識を設定する
ステップと、 d)前記標識に応答し、前記標識によりディスパッチを
制御するステップとを含むことを特徴とする、上記(2
4)に記載の方法。 (26)前記プロセッサ消費最大値がプロセッサ・サー
ビス単位を含むことを特徴とする、上記(24)に記載
の方法。 (27)前記所定の割合の時間を決定するステップが、
ローカル・システム上で許されるサービス単位を計算す
るステップと、前記サービス単位を前記所定の割合の時
間に変換するステップとを含むことを特徴とする、上記
(24)に記載の方法。 (28)1つまたは複数の個別のパフォーマンス目標タ
イプにより、複数の独立協調動作データ処理システム間
で共通する1組のパフォーマンス目標クラスと共通する
1組のグループ・プロセッサ消費最大値を有する分散デ
ータ処理システム作業負荷によって消費されたプロセッ
サ資源を管理するための方法において、前記データ処理
システム作業負荷が1つまたは複数のパフォーマンス目
標クラスと1つまたは複数のグループに編成された作業
単位を含み、前記クラスのそれぞれが前記パフォーマン
ス目標タイプの1つに該当する前記共通する1組のパフ
ォーマンス目標からのパフォーマンス目標を1つずつ有
し、前記グループのそれぞれが前記共通する1組の最大
値からのプロセッサ消費最大値を1つずつ有し、前記デ
ータ処理システムのそれぞれが前記パフォーマンス目標
と前記グループの記憶表現へのアクセス権を有し、前記
方法が、 a)前記システムのそれぞれで前記共通する1組のパフ
ォーマンス目標と前記共通する1組のプロセッサ消費最
大値にアクセスし、システム制御データを作成するステ
ップと、 b)前記共通する1組のパフォーマンス目標クラスと前
記共通する1組の最大値により前記システムのそれぞれ
のプロセッサ資源を管理するステップであって、 i)ローカル・プロセッサ消費データとローカル・パフ
ォーマンス・データを作成するステップと、 ii)前記複数のデータ処理システム内の他の少なくとも
1つのシステムに前記ローカル・パフォーマンス・デー
タと前記ローカル・プロセッサ消費データを送信するス
テップと、 iii)前記複数のデータ処理システム内の他の少なくと
も1つのシステムから遠隔パフォーマンス・データと遠
隔プロセッサ消費データを受信するステップと、 iv)前記作業単位の状態を定期的にサンプリングし、サ
ンプル・データを作成するステップと、 v)前記サンプル・データと前記遠隔パフォーマンス・
データと前記ローカル・パフォーマンス・データに応答
し、少なくとも1つのシステム制御パラメータを調整し
て、前記作業単位のパフォーマンスの変更により前記共
通する1組のパフォーマンス目標を達成させるステップ
と、 vi)前記遠隔プロセッサ消費データおよび前記ローカル
・プロセッサ消費データに応答し、前記作業単位のそれ
ぞれをキャッピングして、前記作業単位のプロセッサ消
費を変更して前記グループ・プロセッサ最大値を達成す
るステップとにより管理するステップとを含むことを特
徴とする、方法。 (29)前記キャッピング・ステップが、 a)前記グループのそれぞれをキャッピングする必要が
ある所定の割合の時間を決定するステップと、 b)前記グループのそれぞれについて決定された所定の
割合の時間によりそのグループ用のキャップ・スライス
・パターンを作成するステップと、 c)前記キャップ・スライス・パターンに応答し、どの
作業単位をキャッピングすべきかを示す標識を設定する
ステップと、 d)前記標識に応答し、前記標識によりディスパッチを
制御するステップとを含むことを特徴とする、上記(2
8)に記載の方法。 (30)前記プロセッサ消費最大値がプロセッサ・サー
ビス単位を含むことを特徴とする、上記(28)に記載
の方法。 (31)前記所定の割合の時間を決定するステップが、
ローカル・システム上で許されるサービス単位を計算す
るステップと、前記サービス単位を前記所定の割合の時
間に変換するステップとを含むことを特徴とする、上記
(28)に記載の方法。 (32)前記システム制御データが、前記共通する1組
のパフォーマンス目標からの1つのパフォーマンス目標
に相対的重要性を割り当てる少なくとも1つの重要性パ
ラメータを含むことを特徴とする、上記(28)に記載
の方法。 (33)前記調整ステップが、 a)前記複数のデータ処理システム間の前記目標クラス
のそれぞれについてマルチシステム・パフォーマンス・
インデックスを計算するステップと、 b)前記目標クラスのそれぞれについてローカル・パフ
ォーマンス・インデックスを計算するステップと、 c)前記クラス・テーブル手段内の少なくとも1つの重
要性パラメータと前記計算されたマルチシステムおよび
ローカル・パフォーマンス・インデックスとに応答し
て、改善されたサービスを与えるべきレシーバ・クラス
を選択するステップであって、前記重要性パラメータの
それぞれが前記共通する1組の目標に置ける相対的重要
性目標を定義するステップと、 d)前記サンプル・データに応答して、前記選択された
レシーバ・クラスに影響するシステム資源隘路を識別す
るステップと、 e)前記システム資源隘路による前記識別に応答して、
前記システム制御データ・パラメータの少なくとも1つ
を調整するステップであって、前記システム制御パラメ
ータの前記少なくとも1つが前記識別されたシステム資
源隘路に関連するステップとを含むことを特徴とする、
上記(32)に記載の方法。 (34)前記システム資源隘路を識別するステップがC
PU隘路を識別し、前記少なくとも1つのシステム制御
パラメータが前記レシーバ・クラスに関連するディスパ
ッチ優先順位パラメータであることを特徴とする、上記
(33)に記載の方法。 (35)前記CPU隘路が、キャップ遅延サンプルとプ
ロセッサ遅延サンプルとによって示されることを特徴と
する、上記(34)に記載の方法。 (36)前記調整ステップが、 a)前記複数のデータ処理システム間の前記目標クラス
のそれぞれについてマルチシステム・パフォーマンス・
インデックスを計算するステップと、 b)前記目標クラスのそれぞれについてローカル・パフ
ォーマンス・インデックスを計算するステップと、 c)前記計算されたマルチシステムおよびローカル・パ
フォーマンス・インデックスに応答して、改善されたサ
ービスが与えられるべきレシーバ・クラスを前記複数の
パフォーマンス目標クラスから選択するステップと、 d)前記サンプル・データに応答して、前記選択された
シーバ・クラスに影響するシステム資源隘路を識別する
ステップと、 e)前記システム資源隘路による前記識別に応答して、
前記システム制御データ・パラメータの少なくとも1つ
を調整するステップであって、前記システム制御パラメ
ータの前記少なくとも1つが前記識別されたシステム資
源隘路に関連するステップとを含むことを特徴とする、
上記(28)に記載の方法。 (37)1つのローカル・システムと1つまたは複数の
遠隔システムとを含むコンピュータ・システム複合体に
おいて、分散データ処理システム作業負荷用のマルチシ
ステム・プロセッサ消費を決定するための装置であっ
て、ローカル・プロセッサ消費データを得る手段と、遠
隔プロセッサ消費データを得る手段と、前記ローカル・
プロセッサ消費データと前記遠隔プロセッサ消費データ
からマルチシステム・プロセッサ消費を決定する手段と
を含むことを特徴とする、装置。 (38)1つのローカル・システムと1つまたは複数の
遠隔システムとを含むコンピュータ・システム複合体に
おいて、分散データ処理システム作業負荷用のマルチシ
ステム・プロセッサ消費を決定するための方法であっ
て、 a)ローカル・プロセッサ消費データを得るステップ
と、 b)遠隔プロセッサ消費データを得るステップと、 c)前記ローカル・プロセッサ消費データと前記遠隔プ
ロセッサ消費データからマルチシステム・プロセッサ消
費を決定するステップとを含むことを特徴とする、方
法。 (39)1つの受信側システムと1つまたは複数の送信
側システムとを含むコンピュータ・システム複合体にお
いて、前記1つまたは複数の送信側システムから遠隔パ
フォーマンス・データと遠隔グループ・プロセッサ消費
データとを受け取るための方法であって、前記方法が、
前記遠隔パフォーマンス・データと前記遠隔グループ・
プロセッサ消費データが、前記受信側システムと同じ組
のパフォーマンス目標およびプロセッサ消費最大値を有
する送信側システムからのものであることを判定するス
テップと、前記受信側システムが前記送信側システムと
同じ組のパフォーマンス目標および消費最大値を有する
場合に、各目標クラスごとに遠隔パフォーマンス・デー
タ履歴にデータを追加し、各グループごとに遠隔グルー
プ・プロセッサ消費データ・ウィンドウにデータを追加
するステップとを含むことを特徴とする、方法。
【図面の簡単な説明】
【図1】3つの相互接続協調動作コンピュータ・システ
ムを有する実施例のシステム構造図であり、本発明に関
して記載するように適応された制御オペレーティング・
システムおよびシステム資源マネージャ構成要素を備え
たローカルおよび遠隔コンピュータ・システムを示す図
である。
【図2】目標主導パフォーマンス制御プログラム構成要
素内の全体的な論理の流れを示す流れ図である。
【図3】レシーバ選択機能の論理の流れを示す流れ図で
ある。
【図4】資源隘路の選択に使用する状態データを示す図
である。
【図5】隘路検出機能の論理の流れを示す流れ図であ
る。
【図6】ドナー選択機能の論理の流れを示す流れ図であ
る。
【図7】修正手段の論理の流れを示す流れ図である。
【図8】変更案用の正味値査定機能の論理の流れを示す
流れ図である。
【図9】ディスパッチの優先順位を上げることによるパ
フォーマンスの改善を査定するための諸ステップを示す
流れ図である。
【図10】ディスパッチの優先順位の変更の影響を投影
するための論理の流れを示す流れ図である。
【図11】達成可能な需要のサンプル・グラフである。
【図12】待機/使用中の新しい比率を計算するための
流れ図である。
【図13】サンプル・デルタを使用してCPU時間を計
算するための流れ図である。
【図14】図1のシステム構造の詳細を示す図である。
【図15】資源グループ内の作業単位をキャッピングす
べき時間量を決定するために使用するデータを示す図で
ある。
【図16】作業単位をキャッピングすべき時間量を決定
するために使用する諸ステップを示す流れ図である。
【図17】特定のスライスをキャップ・スライス・パタ
ーンで割り当てる方法を示す流れ図である。
【図18】遠隔データ受信プログラム手段が受け取るデ
ータを示す図である。
【図19】データ履歴の各部を示す図である。
【図20】遠隔応答時間データ履歴の1行分を示す図で
ある。
【図21】遠隔データ受信プログラムが実行する諸ステ
ップを示す流れ図である。
【図22】マルチシステム・パフォーマンス・インデッ
クスを計算するために実行する諸ステップを示す流れ図
である。
【図23】応答時間タイプのパフォーマンス目標クラス
と実行速度タイプのパフォーマンス目標タイプの両方に
ついて遠隔システムに送られるデータを示す図である。
【符号の説明】
100−A コンピュータ・システム 100−B コンピュータ・システム 100−C コンピュータ・システム 101 オペレーティング・システム 102 ディスパッチャ 103 作業単位 104 ASCB 105 キャップ・ビット優先順位 106 目標 107 プロセッサ消費最大値 109 作業負荷マネージャ 110 クラス・テーブル項目 111 グループ名 112 目標 113 重要性 114 サンプル・データ 115 パフォーマンス・インデックス 116 システム資源制御 117 グループ・テーブル項目 118 グループ名 119 最大値 120 ローカル・データ 121 遠隔データ 122 キャップ・スライス・パターン 123 システム資源マネージャ(SRM) 124 状態サンプラー 125 遠隔データ受信プログラム 126 マルチシステム目標主導パフォーマンス制御プ
ログラム(MGDPC) 127 制御調整 128 キャッピング調整 129 データ送信 130 キャップ・ビット操作プログラム
───────────────────────────────────────────────────── フロントページの続き (72)発明者 バーナード・ロイ・ピアス アメリカ合衆国12601 ニューヨーク州ポ ーキープシー クリーム・ストリート 262

Claims (39)

    【特許請求の範囲】
  1. 【請求項1】共通プロセッサ消費標準により複数のデー
    タ処理システム間に分散された複数の作業単位を含む1
    つの作業負荷を管理するための装置において、前記シス
    テムのそれぞれが前記プロセッサ消費標準の記憶表現へ
    のアクセス権を有し、1つまたは複数のシステム制御パ
    ラメータにより割り当てられた作業単位を実行し、前記
    装置が前記システムのそれぞれにおいて、 a)前記システム上の作業単位のプロセッサ消費を測定
    して、ローカル・プロセッサ消費データを作成する手段
    と、 b)前記複数のシステム内の他の少なくとも1つのシス
    テムに前記ローカル・プロセッサ消費データを送信する
    手段と、 c)前記複数のシステム内の他の少なくとも1つのシス
    テムからプロセッサ消費データを受信して、遠隔プロセ
    ッサ消費データを作成する手段と、 d)前記ローカルおよび遠隔プロセッサ消費データに応
    答し、前記システム制御パラメータのうちの少なくとも
    1つを調整し、前記システム上の前記作業単位の前記ロ
    ーカル・プロセッサ消費および前記遠隔プロセッサ消費
    を変更して前記共通プロセッサ消費標準を達成する手段
    とを含むことを特徴とする、装置。
  2. 【請求項2】前記プロセッサ消費標準がプロセッサ消費
    最大値を含むことを特徴とする、請求項1に記載の装
    置。
  3. 【請求項3】前記作業単位がグループ単位に編成され、
    そのそれぞれがプロセッサ消費標準を1つずつ有するこ
    とを特徴とする、請求項1に記載の装置。
  4. 【請求項4】前記プロセッサ消費最大値が共通する1組
    のプロセッサ消費最大値を含み、前記作業単位がグルー
    プ単位に編成され、そのそれぞれがプロセッサ消費標準
    を1つずつ有することを特徴とする、請求項1に記載の
    装置。
  5. 【請求項5】共通プロセッサ消費標準により複数のデー
    タ処理システム間に分散された複数の作業単位を含む1
    つの作業負荷を管理するための方法において、前記シス
    テムのそれぞれが前記プロセッサ消費標準の記憶表現へ
    のアクセス権を有し、1つまたは複数のシステム制御パ
    ラメータにより割り当てられた作業単位を実行し、前記
    方法が、前記システムのそれぞれにおいて実行される、 a)前記システム上の作業単位のプロセッサ消費を測定
    して、ローカル・プロセッサ消費データを作成するステ
    ップと、 b)前記複数のシステム内の他の少なくとも1つのシス
    テムに前記ローカル・プロセッサ消費データを送信する
    ステップと、 c)前記複数のシステム内の他の少なくとも1つのシス
    テムからプロセッサ消費データを受信して、遠隔プロセ
    ッサ消費データを作成するステップと、 d)前記システム制御パラメータのうちの少なくとも1
    つを調整し、前記システム上の前記作業単位の前記遠隔
    プロセッサ消費および前記ローカル・プロセッサ消費を
    変更して前記共通プロセッサ消費標準を達成するステッ
    プとを含むことを特徴とする、方法。
  6. 【請求項6】前記プロセッサ消費標準がプロセッサ消費
    最大値を含むことを特徴とする、請求項5に記載の方
    法。
  7. 【請求項7】前記作業単位がグループ単位に編成され、
    そのそれぞれがプロセッサ消費標準を1つずつ有するこ
    とを特徴とする、請求項5に記載の方法。
  8. 【請求項8】前記プロセッサ消費最大値が共通する1組
    のプロセッサ消費最大値を含み、前記作業単位がグルー
    プ単位に編成され、そのそれぞれがプロセッサ消費標準
    を1つずつ有することを特徴とする、請求項5に記載の
    方法。
  9. 【請求項9】複数の独立協調動作データ処理システム間
    で共通する1組のグループ・プロセッサ消費最大値を有
    する分散データ処理システム作業負荷によって消費され
    たプロセッサ資源を管理するための装置において、前記
    データ処理システム作業負荷が1つまたは複数のグルー
    プに編成された作業単位を含み、そのそれぞれが前記共
    通する1組の最大値からのプロセッサ消費最大値を1つ
    ずつ有し、前記データ処理システムのそれぞれが前記グ
    ループの記憶表現へのアクセス権を有し、前記装置が、
    前記システムのそれぞれにおいて、 a)前記共通する1組の最大値にアクセスし、システム
    制御データを作成する作業負荷マネージャ手段と、 b)前記共通する1組の最大値によりシステム資源を管
    理するシステム資源マネージャ手段であって、前記シス
    テム資源マネージャ手段が、 i)前記システム上の作業単位のプロセッサ消費を測定
    して、ローカル・プロセッサ消費データを作成する手段
    と、 ii)前記複数のデータ処理システム内の他の少なくとも
    1つのシステムにローカル・プロセッサ消費データを送
    信するデータ送信手段と、 iii)前記複数のデータ処理システム内の他の少なくと
    も1つのシステムから遠隔プロセッサ消費データを受信
    する遠隔データ受信プログラム手段と、 iv)前記遠隔プロセッサ消費データと前記ローカル・プ
    ロセッサ消費データと前記システム制御データに応答
    し、1つまたは複数のシステム制御パラメータを調整し
    て、前記グループ内の前記作業単位のプロセッサ消費を
    変更させるマルチシステム目標主導パフォーマンス制御
    プログラム手段と、 v)前記遠隔プロセッサ消費データおよび前記ローカル
    ・プロセッサ消費データに応答し、所定の割合の時間の
    間、前記作業単位のそれぞれをキャッピングするキャッ
    ピング手段とを含む、システム資源マネージャ手段とを
    含むことを特徴とする、装置。
  10. 【請求項10】前記キャッピング手段が、 a)前記グループのそれぞれをキャッピングする必要が
    ある所定の割合の時間を決定する計算手段と、 b)前記グループのそれぞれについて決定された所定の
    割合の時間によりそのグループ用のキャップ・スライス
    ・パターンを作成する手段と、 c)前記キャップ・スライス・パターンに応答し、どの
    作業単位をキャッピングすべきかを示す標識を設定する
    手段と、 d)前記標識に応答し、前記標識によりディスパッチを
    制御する手段とを含むことを特徴とする、請求項9に記
    載の装置。
  11. 【請求項11】前記計算手段が、 a)ローカル・システム上で許されるサービス単位を計
    算する手段と、 b)前記サービス単位を前記所定の割合の時間に変換す
    る手段とを含むことを特徴とする、請求項10に記載の
    装置。
  12. 【請求項12】前記プロセッサ消費最大値がプロセッサ
    ・サービス単位を含むことを特徴とする、請求項9に記
    載の装置。
  13. 【請求項13】1つまたは複数の個別のパフォーマンス
    目標タイプにより、複数の独立協調動作データ処理シス
    テム間で共通する1組のパフォーマンス目標クラスと共
    通する1組のプロセッサ消費最大値グループを有する分
    散データ処理システム作業負荷によって消費されたプロ
    セッサ資源を管理するための装置において、前記データ
    処理システム作業負荷が少なくとも1つのパフォーマン
    ス目標クラスと少なくとも1つのプロセッサ消費最大値
    グループに編成された作業単位を含み、前記クラスのそ
    れぞれが前記パフォーマンス目標タイプの1つに該当す
    る前記共通する1組のパフォーマンス目標からのパフォ
    ーマンス目標を1つずつ有し、前記グループのそれぞれ
    が前記共通する1組の最大値からのプロセッサ消費最大
    値を1つずつ有し、前記データ処理システムのそれぞれ
    が前記パフォーマンス目標と前記プロセッサ消費最大値
    の記憶表現へのアクセス権を有し、前記装置が、前記シ
    ステムのそれぞれにおいて、 a)前記共通する1組のパフォーマンス目標と前記共通
    する1組のプロセッサ消費最大値にアクセスし、システ
    ム制御データを作成する作業負荷マネージャ手段と、 b)前記共通する1組のパフォーマンス目標と前記共通
    する1組のプロセッサ消費最大値によりプロセッサ資源
    を管理するシステム資源マネージャ手段であって、前記
    システム資源マネージャ手段が、 i)前記作業単位の状態をサンプリングし、サンプル・
    データを作成する手段と、 ii)前記システム上の作業単位のプロセッサ消費を測定
    して、ローカル・プロセッサ消費データを作成する手段
    と、 iii)前記複数のデータ処理システム内の他の少なくと
    も1つのシステムに前記ローカル・パフォーマンス・デ
    ータとローカル・プロセッサ消費データを送信するデー
    タ送信手段と、 iv)前記複数のデータ処理システム内の他の少なくとも
    1つのシステムから遠隔パフォーマンス・データと遠隔
    プロセッサ消費データを受信する遠隔データ受信プログ
    ラム手段と、 v)前記サンプル・データと前記遠隔パフォーマンス・
    データと前記ローカル・パフォーマンス・データに応答
    し、少なくとも1つのシステム制御パラメータを調整し
    て、前記作業単位のパフォーマンスの変更により前記共
    通する1組のパフォーマンス目標を達成させるマルチシ
    ステム目標主導パフォーマンス制御プログラム手段と、 vi)前記遠隔プロセッサ消費データおよび前記ローカル
    ・プロセッサ消費データに応答し、前記作業単位のプロ
    セッサ消費を変更して前記プロセッサ消費グループ最大
    値を達成するキャッピング手段とを含む、システム資源
    マネージャ手段とを含むことを特徴とする、装置。
  14. 【請求項14】前記キャッピング手段が、 a)前記グループのそれぞれをキャッピングする必要が
    ある所定の割合の時間を決定する計算手段と、 b)前記グループのそれぞれについて決定された所定の
    割合の時間によりそのグループ用のキャップ・スライス
    ・パターンを作成する手段と、 c)前記キャップ・スライス・パターンに応答し、どの
    作業単位をキャッピングすべきかを示す標識を設定する
    手段と、 d)前記標識に応答し、前記標識によりディスパッチを
    制御する手段とを含むことを特徴とする、請求項13に
    記載の装置。
  15. 【請求項15】前記計算手段が、 a)ローカル・システム上で許されるサービス単位を計
    算する手段と、 b)前記サービス単位を前記所定の割合の時間に変換す
    る手段とを含むことを特徴とする、請求項14に記載の
    装置。
  16. 【請求項16】前記システム制御データが、前記共通す
    る1組のパフォーマンス目標からの1つのパフォーマン
    ス目標に相対的重要性を割り当てる少なくとも1つの重
    要性パラメータをさらに含むことを特徴とする、請求項
    13に記載の装置。
  17. 【請求項17】前記プロセッサ消費最大値がプロセッサ
    ・サービス単位を含むことを特徴とする、請求項13に
    記載の装置。
  18. 【請求項18】前記マルチシステム目標主導パフォーマ
    ンス制御プログラム手段が、 a)前記複数のデータ処理システム間の前記目標クラス
    のそれぞれについてマルチシステム・パフォーマンス・
    インデックスを計算するマルチシステム・パフォーマン
    ス・インデックス計算手段と、 b)前記目標クラスのそれぞれについてローカル・パフ
    ォーマンス・インデックスを計算するローカル・パフォ
    ーマンス・インデックス計算手段と、 c)前記計算されたマルチシステム・パフォーマンス・
    インデックスと前記計算されたローカル・パフォーマン
    ス・インデックスとに応答して、改善されたサービスを
    与えるべきレシーバ・クラスを選択するレシーバ選択手
    段と、 d)前記サンプル・データに応答して、前記選択された
    レシーバ・クラスに影響するシステム資源隘路を識別す
    る隘路検出手段と、 e)前記システム・パラメータを調整する修正手段であ
    って、前記修正手段が少なくとも1つのパラメータ調整
    手段を含み、前記パラメータ調整手段のそれぞれが前記
    隘路検出手段による関連システム資源隘路の前記識別に
    応答し、前記関連システム資源隘路に関連する特定のシ
    ステム制御パラメータを調整する修正手段とを含むこと
    を特徴とする、請求項13に記載の装置。
  19. 【請求項19】前記システム資源隘路が前記隘路検出手
    段によってCPU隘路であると識別され、前記修正手段
    が、前記CPU隘路の前記識別に応答してレシーバ・ク
    ラス・ディスパッチ優先順位を調整する手段を含むこと
    を特徴とする、請求項18に記載の装置。
  20. 【請求項20】前記CPU隘路が、キャップ遅延サンプ
    ルとプロセッサ遅延サンプルとによって示されることを
    特徴とする、請求項19に記載の装置。
  21. 【請求項21】前記マルチシステム目標主導パフォーマ
    ンス制御プログラム手段が、 a)前記複数のデータ処理システム間の前記目標クラス
    のそれぞれについてマルチシステム・パフォーマンス・
    インデックスを計算するマルチシステム・パフォーマン
    ス・インデックス計算手段と、 b)前記目標クラスのそれぞれについてローカル・パフ
    ォーマンス・インデックスを計算するローカル・パフォ
    ーマンス・インデックス計算手段と、 c)前記クラス・テーブル手段内の前記少なくとも1つ
    の重要性パラメータと、計算されたマルチシステム・パ
    フォーマンス・インデックスと、前記計算されたローカ
    ル・パフォーマンス・インデックスとに応答して、改善
    されたサービスを与えるべきレシーバ・クラスを選択す
    るレシーバ選択手段と、 d)前記サンプル・データに応答して、前記選択された
    レシーバ・クラスに影響するシステム資源隘路を識別す
    る隘路検出手段と、 e)前記システム・パラメータを調整する修正手段であ
    って、前記修正手段が少なくとも1つのパラメータ調整
    手段を含み、前記パラメータ調整手段のそれぞれが前記
    隘路検出手段による関連システム資源隘路の前記識別に
    応答し、前記関連システム資源隘路に関連する特定のシ
    ステム制御パラメータを調整する修正手段とを含むこと
    を特徴とする、請求項16に記載の装置。
  22. 【請求項22】分散データ処理システム作業負荷用のマ
    ルチシステム・パフォーマンス・インデックスとマルチ
    システム・プロセッサ消費とを得るための装置におい
    て、 ローカル・パフォーマンス・データとローカル・プロセ
    ッサ消費データとを得る手段と、 マルチシステム・パフォーマンス・データとマルチシス
    テム・プロセッサ消費データとを得る手段と、 前記ローカル・パフォーマンス・データと前記マルチシ
    ステム・パフォーマンス・データからマルチシステム・
    パフォーマンス・インデックスを決定する手段と、 前記ローカル・プロセッサ消費データと前記マルチシス
    テム・プロセッサ消費データからマルチシステム・プロ
    セッサ消費を決定する手段とを含むことを特徴とする、
    装置。
  23. 【請求項23】1つの受信側システムと1つまたは複数
    の送信側システムとを含むコンピュータ・システム複合
    体において、前記受信側にあって前記1つまたは複数の
    送信側システムから遠隔パフォーマンス・データと遠隔
    プロセッサ消費データとを受け取るための装置であっ
    て、前記装置が、 前記遠隔パフォーマンス・データと前記遠隔グループ・
    プロセッサ消費データが、前記受信側システムと同じ組
    のパフォーマンス目標およびプロセッサ消費最大値を有
    する送信側システムからのものであるかどうかを判定す
    る検証手段と、 前記検証手段に応答して、各目標クラスごとに遠隔パフ
    ォーマンス・データ履歴にデータを追加し、各グループ
    ごとに遠隔グループ・プロセッサ消費データ・ウィンド
    ウにデータを追加する手段とを含むことを特徴とする、
    装置。
  24. 【請求項24】複数の独立協調動作データ処理システム
    間で共通する1組のグループ・プロセッサ消費最大値を
    有する分散データ処理システム作業負荷によって消費さ
    れたプロセッサ資源を管理するための方法において、前
    記データ処理システム作業負荷が1つまたは複数のグル
    ープに編成された作業単位を含み、そのそれぞれが前記
    共通する1組の最大値からのプロセッサ消費最大値を1
    つずつ有し、前記データ処理システムのそれぞれが前記
    グループの記憶表現へのアクセス権を有し、前記装置
    が、前記システムのそれぞれにおいて実行される、 a)前記システムから前記共通する1組の最大値にアク
    セスし、システム制御データを作成するステップと、 b)前記共通する1組の最大値により各システム上のシ
    ステム資源を管理するステップであって、 i)前記システム上の作業単位のプロセッサ消費を測定
    して、ローカル・プロセッサ消費データを作成するステ
    ップと、 ii)前記複数のデータ処理システム内の他の少なくとも
    1つのシステムに前記ローカル・プロセッサ消費データ
    を送信するステップと、 iii)前記複数のデータ処理システム内の他の少なくと
    も1つのシステムから遠隔プロセッサ消費データを受信
    するステップと、 iv)前記システム上の少なくとも1つのシステム制御パ
    ラメータを調整して、前記作業単位のプロセッサ消費を
    変更させるステップと、 v)前記遠隔プロセッサ消費データおよび前記ローカル
    ・プロセッサ消費データに応答し、所定の割合の時間の
    間、前記作業単位のそれぞれをキャッピングするステッ
    プとにより管理するステップとを含むことを特徴とす
    る、方法。
  25. 【請求項25】前記キャッピング・ステップが、 a)前記グループのそれぞれをキャッピングする必要が
    ある所定の割合の時間を決定するステップと、 b)前記グループのそれぞれについて決定された所定の
    割合の時間によりそのグループ用のキャップ・スライス
    ・パターンを作成するステップと、 c)前記キャップ・スライス・パターンに応答し、どの
    作業単位をキャッピングすべきかを示す標識を設定する
    ステップと、 d)前記標識に応答し、前記標識によりディスパッチを
    制御するステップとを含むことを特徴とする、請求項2
    4に記載の方法。
  26. 【請求項26】前記プロセッサ消費最大値がプロセッサ
    ・サービス単位を含むことを特徴とする、請求項24に
    記載の方法。
  27. 【請求項27】前記所定の割合の時間を決定するステッ
    プが、ローカル・システム上で許されるサービス単位を
    計算するステップと、前記サービス単位を前記所定の割
    合の時間に変換するステップとを含むことを特徴とす
    る、請求項24に記載の方法。
  28. 【請求項28】1つまたは複数の個別のパフォーマンス
    目標タイプにより、複数の独立協調動作データ処理シス
    テム間で共通する1組のパフォーマンス目標クラスと共
    通する1組のグループ・プロセッサ消費最大値を有する
    分散データ処理システム作業負荷によって消費されたプ
    ロセッサ資源を管理するための方法において、前記デー
    タ処理システム作業負荷が1つまたは複数のパフォーマ
    ンス目標クラスと1つまたは複数のグループに編成され
    た作業単位を含み、前記クラスのそれぞれが前記パフォ
    ーマンス目標タイプの1つに該当する前記共通する1組
    のパフォーマンス目標からのパフォーマンス目標を1つ
    ずつ有し、前記グループのそれぞれが前記共通する1組
    の最大値からのプロセッサ消費最大値を1つずつ有し、
    前記データ処理システムのそれぞれが前記パフォーマン
    ス目標と前記グループの記憶表現へのアクセス権を有
    し、前記方法が、 a)前記システムのそれぞれで前記共通する1組のパフ
    ォーマンス目標と前記共通する1組のプロセッサ消費最
    大値にアクセスし、システム制御データを作成するステ
    ップと、 b)前記共通する1組のパフォーマンス目標クラスと前
    記共通する1組の最大値により前記システムのそれぞれ
    のプロセッサ資源を管理するステップであって、 i)ローカル・プロセッサ消費データとローカル・パフ
    ォーマンス・データを作成するステップと、 ii)前記複数のデータ処理システム内の他の少なくとも
    1つのシステムに前記ローカル・パフォーマンス・デー
    タと前記ローカル・プロセッサ消費データを送信するス
    テップと、 iii)前記複数のデータ処理システム内の他の少なくと
    も1つのシステムから遠隔パフォーマンス・データと遠
    隔プロセッサ消費データを受信するステップと、 iv)前記作業単位の状態を定期的にサンプリングし、サ
    ンプル・データを作成するステップと、 v)前記サンプル・データと前記遠隔パフォーマンス・
    データと前記ローカル・パフォーマンス・データに応答
    し、少なくとも1つのシステム制御パラメータを調整し
    て、前記作業単位のパフォーマンスの変更により前記共
    通する1組のパフォーマンス目標を達成させるステップ
    と、 vi)前記遠隔プロセッサ消費データおよび前記ローカル
    ・プロセッサ消費データに応答し、前記作業単位のそれ
    ぞれをキャッピングして、前記作業単位のプロセッサ消
    費を変更して前記グループ・プロセッサ最大値を達成す
    るステップとにより管理するステップとを含むことを特
    徴とする、方法。
  29. 【請求項29】前記キャッピング・ステップが、 a)前記グループのそれぞれをキャッピングする必要が
    ある所定の割合の時間を決定するステップと、 b)前記グループのそれぞれについて決定された所定の
    割合の時間によりそのグループ用のキャップ・スライス
    ・パターンを作成するステップと、 c)前記キャップ・スライス・パターンに応答し、どの
    作業単位をキャッピングすべきかを示す標識を設定する
    ステップと、 d)前記標識に応答し、前記標識によりディスパッチを
    制御するステップとを含むことを特徴とする、請求項2
    8に記載の方法。
  30. 【請求項30】前記プロセッサ消費最大値がプロセッサ
    ・サービス単位を含むことを特徴とする、請求項28に
    記載の方法。
  31. 【請求項31】前記所定の割合の時間を決定するステッ
    プが、ローカル・システム上で許されるサービス単位を
    計算するステップと、前記サービス単位を前記所定の割
    合の時間に変換するステップとを含むことを特徴とす
    る、請求項28に記載の方法。
  32. 【請求項32】前記システム制御データが、前記共通す
    る1組のパフォーマンス目標からの1つのパフォーマン
    ス目標に相対的重要性を割り当てる少なくとも1つの重
    要性パラメータを含むことを特徴とする、請求項28に
    記載の方法。
  33. 【請求項33】前記調整ステップが、 a)前記複数のデータ処理システム間の前記目標クラス
    のそれぞれについてマルチシステム・パフォーマンス・
    インデックスを計算するステップと、 b)前記目標クラスのそれぞれについてローカル・パフ
    ォーマンス・インデックスを計算するステップと、 c)前記クラス・テーブル手段内の少なくとも1つの重
    要性パラメータと前記計算されたマルチシステムおよび
    ローカル・パフォーマンス・インデックスとに応答し
    て、改善されたサービスを与えるべきレシーバ・クラス
    を選択するステップであって、前記重要性パラメータの
    それぞれが前記共通する1組の目標に置ける相対的重要
    性目標を定義するステップと、 d)前記サンプル・データに応答して、前記選択された
    レシーバ・クラスに影響するシステム資源隘路を識別す
    るステップと、 e)前記システム資源隘路による前記識別に応答して、
    前記システム制御データ・パラメータの少なくとも1つ
    を調整するステップであって、前記システム制御パラメ
    ータの前記少なくとも1つが前記識別されたシステム資
    源隘路に関連するステップとを含むことを特徴とする、
    請求項32に記載の方法。
  34. 【請求項34】前記システム資源隘路を識別するステッ
    プがCPU隘路を識別し、前記少なくとも1つのシステ
    ム制御パラメータが前記レシーバ・クラスに関連するデ
    ィスパッチ優先順位パラメータであることを特徴とす
    る、請求項33に記載の方法。
  35. 【請求項35】前記CPU隘路が、キャップ遅延サンプ
    ルとプロセッサ遅延サンプルとによって示されることを
    特徴とする、請求項34に記載の方法。
  36. 【請求項36】前記調整ステップが、 a)前記複数のデータ処理システム間の前記目標クラス
    のそれぞれについてマルチシステム・パフォーマンス・
    インデックスを計算するステップと、 b)前記目標クラスのそれぞれについてローカル・パフ
    ォーマンス・インデックスを計算するステップと、 c)前記計算されたマルチシステムおよびローカル・パ
    フォーマンス・インデックスに応答して、改善されたサ
    ービスが与えられるべきレシーバ・クラスを前記複数の
    パフォーマンス目標クラスから選択するステップと、 d)前記サンプル・データに応答して、前記選択された
    レシーバ・クラスに影響するシステム資源隘路を識別す
    るステップと、 e)前記システム資源隘路による前記識別に応答して、
    前記システム制御データ・パラメータの少なくとも1つ
    を調整するステップであって、前記システム制御パラメ
    ータの前記少なくとも1つが前記識別されたシステム資
    源隘路に関連するステップとを含むことを特徴とする、
    請求項28に記載の方法。
  37. 【請求項37】1つのローカル・システムと1つまたは
    複数の遠隔システムとを含むコンピュータ・システム複
    合体において、分散データ処理システム作業負荷用のマ
    ルチシステム・プロセッサ消費を決定するための装置で
    あって、 ローカル・プロセッサ消費データを得る手段と、 遠隔プロセッサ消費データを得る手段と、 前記ローカル・プロセッサ消費データと前記遠隔プロセ
    ッサ消費データからマルチシステム・プロセッサ消費を
    決定する手段とを含むことを特徴とする、装置。
  38. 【請求項38】1つのローカル・システムと1つまたは
    複数の遠隔システムとを含むコンピュータ・システム複
    合体において、分散データ処理システム作業負荷用のマ
    ルチシステム・プロセッサ消費を決定するための方法で
    あって、 a)ローカル・プロセッサ消費データを得るステップ
    と、 b)遠隔プロセッサ消費データを得るステップと、 c)前記ローカル・プロセッサ消費データと前記遠隔プ
    ロセッサ消費データからマルチシステム・プロセッサ消
    費を決定するステップとを含むことを特徴とする、方
    法。
  39. 【請求項39】1つの受信側システムと1つまたは複数
    の送信側システムとを含むコンピュータ・システム複合
    体において、前記1つまたは複数の送信側システムから
    遠隔パフォーマンス・データと遠隔グループ・プロセッ
    サ消費データとを受け取るための方法であって、前記方
    法が、 前記遠隔パフォーマンス・データと前記遠隔グループ・
    プロセッサ消費データが、前記受信側システムと同じ組
    のパフォーマンス目標およびプロセッサ消費最大値を有
    する送信側システムからのものであることを判定するス
    テップと、 前記受信側システムが前記送信側システムと同じ組のパ
    フォーマンス目標および消費最大値を有する場合に、各
    目標クラスごとに遠隔パフォーマンス・データ履歴にデ
    ータを追加し、各グループごとに遠隔グループ・プロセ
    ッサ消費データ・ウィンドウにデータを追加するステッ
    プとを含むことを特徴とする、方法。
JP01247796A 1995-02-03 1996-01-29 プロセッサ資源を管理するための装置および方法 Expired - Fee Related JP3172423B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US38304295A 1995-02-03 1995-02-03
US383042 1995-02-03

Publications (2)

Publication Number Publication Date
JPH08249291A true JPH08249291A (ja) 1996-09-27
JP3172423B2 JP3172423B2 (ja) 2001-06-04

Family

ID=23511462

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01247796A Expired - Fee Related JP3172423B2 (ja) 1995-02-03 1996-01-29 プロセッサ資源を管理するための装置および方法

Country Status (3)

Country Link
US (1) US6442583B1 (ja)
EP (1) EP0725340A3 (ja)
JP (1) JP3172423B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142858A (ja) * 1999-09-28 2001-05-25 Internatl Business Mach Corp <Ibm> コンピュータ環境の中央処理装置を管理する方法、システム、およびプログラム製品

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230183B1 (en) * 1998-03-11 2001-05-08 International Business Machines Corporation Method and apparatus for controlling the number of servers in a multisystem cluster
JP4434408B2 (ja) * 2000-02-02 2010-03-17 富士通株式会社 情報処理装置
US7624356B1 (en) 2000-06-21 2009-11-24 Microsoft Corporation Task-sensitive methods and systems for displaying command sets
US6622177B1 (en) 2000-07-27 2003-09-16 International Business Machines Corporation Dynamic management of addresses to an input/output (I/O) device
US7036123B2 (en) * 2001-04-25 2006-04-25 Sun Microsystems, Inc. System using fair-share scheduling technique to schedule processes within each processor set based on the number of shares assigned to each process group
US7159221B1 (en) * 2002-08-30 2007-01-02 Unisys Corporation Computer OS dispatcher operation with user controllable dedication
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7913159B2 (en) * 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7509646B1 (en) * 2003-09-23 2009-03-24 Unisys Corporation Method of managing workloads in a distributed processing system
US7574708B2 (en) * 2004-03-04 2009-08-11 International Business Machines Corporation Mechanism for enabling the distribution of operating system resources in a multi-node computer system
US7584476B2 (en) * 2004-03-04 2009-09-01 International Business Machines Corporation Mechanism for reducing remote memory accesses to shared data in a multi-nodal computer system
US20050198642A1 (en) * 2004-03-04 2005-09-08 International Business Machines Corporation Mechanism for assigning home nodes to newly created threads
US7784054B2 (en) * 2004-04-14 2010-08-24 Wm Software Inc. Systems and methods for CPU throttling utilizing processes
US7712102B2 (en) * 2004-07-30 2010-05-04 Hewlett-Packard Development Company, L.P. System and method for dynamically configuring a plurality of load balancers in response to the analyzed performance data
US8019636B2 (en) * 2004-09-28 2011-09-13 International Business Machines Corporation Method, system and program product for planning and managing a call center study
US8108871B2 (en) * 2005-01-13 2012-01-31 Hewlett-Packard Development Company, L.P. Controlling computer resource utilization
US9160792B2 (en) * 2005-04-05 2015-10-13 International Business Machines Corporation On-demand global server load balancing system and method of use
US7782870B1 (en) * 2005-04-22 2010-08-24 Oracle America, Inc. Method and apparatus for consolidating available computing resources on different computing devices
US8539075B2 (en) 2006-04-21 2013-09-17 International Business Machines Corporation On-demand global server load balancing system and method of use
US9846846B2 (en) 2006-11-14 2017-12-19 International Business Machines Corporation Method and system for analyzing contact studies
JP4715758B2 (ja) * 2007-01-30 2011-07-06 株式会社日立製作所 仮想計算機システムのプロセッサキャッピング方法
US8522234B2 (en) * 2007-02-05 2013-08-27 Microsoft Corporation Tailoring an operating system to a computer system
US7487506B1 (en) * 2008-01-16 2009-02-03 International Business Machines Corporation Autonomous management of system throughput
US9251037B2 (en) * 2011-11-04 2016-02-02 Hewlett Packard Enterprise Development Lp Providing elastic insight to information technology performance data
US9384055B2 (en) * 2012-04-16 2016-07-05 International Business Machines Corporation Programmatic load-based management of processor population

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IE872626L (en) * 1987-09-29 1988-04-01 Smithkline Beckman Corp Affinity adsorbents for glycopeptide antibiotics.
EP0346039A2 (en) * 1988-06-06 1989-12-13 Demax Software, Inc Dynamic load balancing for multi-user computers
JP2834210B2 (ja) * 1988-09-14 1998-12-09 株式会社日立製作所 リング状ネットワークにおけるメッセージ制御方法
US5031089A (en) * 1988-12-30 1991-07-09 United States Of America As Represented By The Administrator, National Aeronautics And Space Administration Dynamic resource allocation scheme for distributed heterogeneous computer systems
US5210872A (en) * 1991-06-28 1993-05-11 Texas Instruments Inc. Critical task scheduling for real-time systems
US5421011A (en) 1991-12-20 1995-05-30 International Business Machines Corporation Method and system for access and accounting control in a data processing system by using a single resource account for a user or a group of users
US5522070A (en) * 1992-03-19 1996-05-28 Fujitsu Limited Computer resource distributing method and system for distributing a multiplicity of processes to a plurality of computers connected in a network
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
US5550982A (en) * 1993-06-24 1996-08-27 Starlight Networks Video application server
US5619695A (en) * 1994-02-03 1997-04-08 Lockheed Martin Corporation Method and apparatus for scheduling resources
US5467352A (en) * 1994-02-07 1995-11-14 International Business Machines Corporation Method and apparatus for improved throughput in a multi-node communication system with a shared resource
US5446737A (en) * 1994-02-07 1995-08-29 International Business Machines Corporation Method and apparatus for dynamically allocating shared resource access quota
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
US5537542A (en) * 1994-04-04 1996-07-16 International Business Machines Corporation Apparatus and method for managing a server workload according to client performance goals in a client/server data processing system
US5603029A (en) * 1995-06-07 1997-02-11 International Business Machines Corporation System of assigning work requests based on classifying into an eligible class where the criteria is goal oriented and capacity information is available
US5713013A (en) * 1996-01-25 1998-01-27 Apple Computer, Inc. System for establishing and enforcing maximum size of directory by preventing the size of the directory from exceeding the set quota size of the directory
US5819047A (en) * 1996-08-30 1998-10-06 At&T Corp Method for controlling resource usage by network identities
US5778320A (en) * 1996-10-04 1998-07-07 Motorola, Inc. Method for allocating communication resources among groups of communication units
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
US5956734A (en) * 1997-07-11 1999-09-21 International Business Machines Corporation Parallel file system with a quota check utility

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142858A (ja) * 1999-09-28 2001-05-25 Internatl Business Mach Corp <Ibm> コンピュータ環境の中央処理装置を管理する方法、システム、およびプログラム製品

Also Published As

Publication number Publication date
EP0725340A3 (en) 1996-10-02
JP3172423B2 (ja) 2001-06-04
US6442583B1 (en) 2002-08-27
EP0725340A2 (en) 1996-08-07

Similar Documents

Publication Publication Date Title
JPH08249291A (ja) マルチシステム資源キャッピング
US5675739A (en) Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types
JP2667376B2 (ja) クライアント/サーバ・データ処理システム
Yu et al. Stochastic load balancing for virtual resource management in datacenters
US8015289B2 (en) System and method predicting and managing network capacity requirements
CN100397341C (zh) 管理计算环境中的工作负载的方法和系统
JP2720910B2 (ja) データ処理システムの作業負荷を管理するための装置及び方法
US8392927B2 (en) System and method for determining a partition of a consumer&#39;s resource access demands between a plurality of different classes of service
US5283897A (en) Semi-dynamic load balancer for periodically reassigning new transactions of a transaction type from an overload processor to an under-utilized processor based on the predicted load thereof
US5504894A (en) Workload manager for achieving transaction class response time goals in a multiprocessing system
US7756989B2 (en) Method and apparatus for dynamically adjusting resources assigned to plurality of customers, for meeting service level agreements (SLAs) with minimal resources, and allowing common pools of resources to be used across plural customers on a demand basis
US7523454B2 (en) Apparatus and method for routing a transaction to a partitioned server
US7734676B2 (en) Method for controlling the number of servers in a hierarchical resource environment
US7493249B2 (en) Method and system for dynamic performance modeling of computer application services
US20060294238A1 (en) Policy-based hierarchical management of shared resources in a grid environment
US20040143664A1 (en) Method for allocating computer resource
US20050262505A1 (en) Method and apparatus for dynamic memory resource management
US20030065835A1 (en) Processing channel subsystem pending i/o work queues based on priorities
US6742099B1 (en) Method and system for automatically distributing resources in a partitioned computer system
US7844967B2 (en) Method of allocating computing resources
US20060020628A1 (en) Method and system for determining size of a data center
Garg et al. Optimal virtual machine scheduling in virtualized cloud environment using VIKOR method
Glatard et al. Probabilistic and dynamic optimization of job partitioning on a grid infrastructure
JPH10207847A (ja) 分散システムにおける自動負荷分散方式
Folliot et al. Adaptative partitioning and dynamic allocation for large computing systems

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees