JP2004538561A - 処理の実行を制御するスケジューリング方法およびシステム - Google Patents
処理の実行を制御するスケジューリング方法およびシステム Download PDFInfo
- Publication number
- JP2004538561A JP2004538561A JP2003511044A JP2003511044A JP2004538561A JP 2004538561 A JP2004538561 A JP 2004538561A JP 2003511044 A JP2003511044 A JP 2003511044A JP 2003511044 A JP2003511044 A JP 2003511044A JP 2004538561 A JP2004538561 A JP 2004538561A
- Authority
- JP
- Japan
- Prior art keywords
- multiplier
- duration
- job
- expected duration
- level
- 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
Links
- 238000000034 method Methods 0.000 title claims description 60
- 238000012545 processing Methods 0.000 title claims description 6
- 230000002159 abnormal effect Effects 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 15
- 230000003247 decreasing effect Effects 0.000 claims description 5
- 238000012886 linear function Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 18
- 230000000875 corresponding effect Effects 0.000 description 9
- 230000003936 working memory Effects 0.000 description 6
- 230000001276 controlling effect Effects 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Quality & Reliability (AREA)
- Manufacturing & Machinery (AREA)
- Debugging And Monitoring (AREA)
- Programmable Controllers (AREA)
- General Factory Administration (AREA)
- Multi-Process Working Machines And Systems (AREA)
- Selective Calling Equipment (AREA)
Abstract
【解決手段】オペレータが、持続時間が短いジョブの上位レベルと持続時間が長いジョブの下位レベルからなる、乗数の2つの極限値を入力する。次いで、アルゴリズムによって、どのジョブに対しても適切な乗数を計算し、推定持続時間が短い場合は上位レベルに一層の重み付けをするが、乗数は次第にレベルを変動させ、推定持続時間が長い場合は下位レベルにより重要性が与えられる。
Description
【0001】
本発明は、処理の実行を制御するスケジューリング方法およびシステムに関する。
【背景技術】
【0002】
スケジューリング方法は、たとえばバッチ処理における一連のジョブを管理するいくつかのアプリケーションにおいて一般に使用される。通常、スケジューリングにはプランの構築が含まれ、このプランは、ジョブの実行を依頼し制御するのに使用される、指定された順序で構成されるジョブの流れからなる。プランの構築には、各ジョブの期待持続時間の予測が必要である。たとえば、推定持続時間は、以前実行されたジョブの完了したインスタンスの測定持続時間の平均に設定される。
【0003】
ジョブが推定持続時間よりはるかに長く実行されると、ジョブの実行を制御する作業負荷スケジューラが、対応する異常状態を検出する。この状況では、オペレータに警告を行うことが望ましい。オペレータは、たとえば実行時間が長いジョブをキャンセルして介入を行う必要があるかどうか決定する。あるいは、スケジューラは、(限界であると分類された場合)追加のシステム資源をジョブに与えるために作業負荷マネージャを呼び出す。
【0004】
一般的な手法は、推定持続時間に乗算する因子を指定することである。その結果得られる数によって、ジョブの現時点での持続時間に対する閾値が与えられる。現時点での持続時間が閾値を超えると、ジョブは実行時間が長いとみなされてそれに対応する動作が行われる。
【0005】
当分野において公知の解決方法の欠点は、検出機構が不十分でありほとんど価値がないことである。その結果、作業負荷スケジューラは、不正に動作することがある。
【0006】
具体的には、閾値が低すぎる場合、本当の異常状態が起こっていない場合でも、間違った警告が起こり、またはシステム資源が見境なく使用される。反対に、閾値が高すぎる場合、実行時間が長いジョブは、非常に長い時間が経過した後でないと検出されない。
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明の目的は、上述の欠点を軽減する技術を提供することである。
【課題を解決するための手段】
【0008】
本発明によれば、処理の実行を制御するスケジューリング方法が提供され、この方法は、処理の期待持続時間を推定するステップと、期待持続時間に乗数を掛けて閾値を決定するステップと、処理を実行するステップと、処理の実際の持続時間が閾値を超えたときに異常状態を検出するステップとを含み、乗数は期待持続時間の減少関数として決定される。
【0009】
また、本発明によれば、こうした方法を実施するコンピュータ・プログラム、こうしたプログラムを格納するプログラム製品、および対応するシステムが提供される。
【0010】
本発明による解決方法のさらなる特徴および利点は、本発明を限定するものではない、添付の図面を参照して以下で説明する本発明の好ましい実施形態によって明らかになるであろう。
【発明を実施するための最良の形態】
【0011】
図1を具体的に参照すると、データ処理システム100、たとえばメインフレームを示してある。システム100はいくつかのユニットを含み、そのユニットはシステム・バス(SYS_BUS)105に並列に接続される。具体的には、複数のマイクロプロセッサ(μP)110が、システム100の動作を制御する。マイクロプロセッサ110は、一般に交互配置モジュールを有するDRAMで形成される共用ワーキング・メモリ115にアクセスする。読出し専用メモリ(ROM)120は、システム100を起動する基本プログラムを格納する。
【0012】
様々な周辺ユニットが、ローカル・バス(LOC_BUS)125の周囲にクラスタ化される。より詳細には、大容量記憶装置がハード・ディスク130から構成され、システム100は、たとえばキーボードおよびCD−ROM140用ドライバから構成される入力ユニット(IN)135と、たとえばモニタおよびプリンタから構成される出力ユニット(OUT)145とをさらに含む。ブリッジ・ユニット(BRIDGE)150は、システム・バス105をローカル・バス125とインターフェースさせる。
【0013】
各マイクロプロセッサ110およびブリッジ・ユニット150は、情報を伝送するためにシステム・バス105へのアクセスを要求する主エージェントとして動作することができる。システム・バス105への相互排他を伴うアクセスの認可は、アービタ(ARB)155によって管理される。
【0014】
システムが異なる構造を有する(たとえば単一バスを有する)場合、ミニコンピュータまたはワークステーションのネットワークから構成される場合、異なるユニット(たとえば磁気テープ用ドライバ)を含む場合なども、同様に考慮される。
【0015】
ここで図2を検討すると、動作中のシステムのワーキング・メモリ115の部分的な内容を示してある。情報(プログラムおよびデータ)は通常、ハード・ディスク上に格納され、プログラムがオペレーティング・システムおよび他のアプリケーション・プログラム(図示せず)と共に実行されているときにワーキング・メモリに(少なくとも部分的に)ロードされる。プログラムは、最初にCD−ROMからハード・ディスク上にインストールされる。
【0016】
ワーキング・メモリ115は、オペレータとの情報交換に使用される入出力インターフェース(I/O)205を含む。入出力インターフェース205は、バッチ・コントローラ(BATCH)210と通信する。バッチ・コントローラ210は、(通常、夜間またはシステムがアイドル状態であれば常に)一連の非対話式ジョブの実行を管理する。バッチ処理は、長時間にわたってシステムまたは周辺装置を必要とする動作には特に有益である。
【0017】
バッチ・コントローラ210は、企業のプロダクション作業負荷の記述を格納するデータベース215にアクセスする。作業負荷データベース215は、システム上で実行すべきバッチの各ジョブごとの(それぞれの識別子コードを介してアクセスされる)記録を含む。記録は、ジョブの動作を記述するフィールド(JOB)、実行の予定時間(時間、日付、週、月)、および他のジョブとのあらゆる依存関係によって構成される。実際、システムが時分割技術によって複数のジョブを並列に実行することができても、いくつかのジョブは順序の制約を示すことが多い。たとえば、あるジョブによって使用されるべき資源(ファイルなど)が別のジョブによってアクセスされている場合、そのジョブの実行は、他方のジョブの実行が完了するまでは開始しないことが必要である。記録は、ジョブの推定持続時間を示すフィールド(ED)をさらに含む。
【0018】
実行すべきジョブの記述およびその推定持続時間はバッチ・コントローラ210に提供され、次いでプラン・ビルダ(BUILDER)220に伝送される。ビルダ220は、指定された期間に所定の順序でジョブの実行の流れを制御するスケジューリング・プランを作成する。プランは、(たとえばシステム負荷を調整し、またはピーク性能を最適化する)予め設定されたスケジューリング戦略によって構築される。プランは、バッチ・コントローラ210を介して、プラン実行装置(EXEC)225に供給される。プラン実行装置225は、プロダクション環境(RUN)230内でバッチを実行依頼し、それに応じてジョブの実行を制御する。
【0019】
バッチ・コントローラ210は、構成リポジトリ(CONFIG)235へのパラメータ入力をさらに管理する。リポジトリ235に格納された構成パラメータは、論理ユニット(LOGIC)240に供給される。論理ユニット240はさらに、バッチ・コントローラ210から現在の各ジョブの推定持続時間EDを受け取る。論理ユニット240は、以下で説明するように、現在のジョブに対する乗数(MF)を計算する。乗数MFおよび推定持続時間EDは、乗算ブロック250に入力される。乗算ブロック250は、現在のジョブに対応する閾値(TH)を計算し、この値は比較ブロック(COMP)255に供給される。比較ブロック255はさらに、ジョブの現時点での持続時間(CD)を受け取る。現時点での持続時間CDは、プラン実行装置225によって、(システム・クロックによって提供される)現在の時間からジョブの実際の開始時間を減算して測定される。比較ブロック255は、予想より長く実行されているジョブから生じるどの異常状態も検出し、それに応じてプラン実行装置225に通知を行う。異常状態はさらに、バッチ・コントローラ210および入出力インターフェース205を介してオペレータに報告される。
【0020】
ジョブがその実行を(すべての動作が完了した、異常状態に応答してオペレータによってキャンセルされた、またはエラーが起きたために)終了すると、フィードバック情報がプラン実行装置225からバッチ・コントローラ210に、次いで入出力インターフェース205に返される。フィードバック情報は、ジョブの実際の開始時間、ジョブの実際の終了時間、動作の結果を指定する戻りコードなどを含む。プラン実行装置225はまた、実際の終了時間から実際の開始時間を減算することによって、ジョブの実際の持続時間(AD)を測定する。
【0021】
実際の持続時間ADは、推定モジュール(EST)235に供給され、推定モジュール235は、実際の持続時間ADを使用して、ジョブが今後どれだけ長く実行されるべきか予測する。各実行の実際の持続時間ADに重み付けをしてジョブの持続時間の継続的に変化する平均をとるアルゴリズムが適用される。具体的には、ジョブの実行回数に従って減少する値を有する因子を実際の持続時間ADに乗算し、その結果を用いて現時点での推定持続時間を見直す。見直された推定持続時間EDはバッチ・コントローラ210に提供され、次いで作業負荷データベース215の対応する記録に格納される。
【0022】
(上で説明した様々なモジュールからなる)スケジューリング・プログラム全体およびデータが異なるやり方で構成される場合、たとえば作業負荷データベースおよび構成リポジトリが単一のインベントリから構成される場合または等価なメモリ構造で置き換えられる場合、異なる機能が提供される場合、推定持続時間が異なる方法(たとえばジョブの完了した各インスタンスの実際の持続時間を累算してその実際の実行平均を計算する)で予想される場合も、同様に考慮される。
【0023】
ここで図3を参照すると、(システム上で実行中の)スケジューリング・プログラムは、ブロック303で始まる方法300を実施する。次いで、方法はブロック306に移り、ここで一連の可能な選択肢を有するメニューがシステムのモニタに表示される。この方法は、選択された選択肢に対応する動作を実行する。具体的には、構成パラメータを編集する機能をオペレータが選択した場合、ブロック309〜333が実行され、これに対して、ジョブを依頼する機能をオペレータが選択した場合、ブロック336〜366が実行される。それ以外に、オペレータが終了選択肢を選択した場合、方法は最終ブロック367で終わる。
【0024】
ここでブロック309(編集機能)を検討すると、方法は、どのようにして乗数MFが定義されるかを検査する。乗数MFが推定持続時間EDの一次関数として計算される場合、方法はブロック312に移る。オペレータは、持続時間が短いジョブに関連づけられた乗数の上位レベルULを入力する。ブロック315に進むと、オペレータは、持続時間が長いジョブに関連づけられた乗数の下位レベルLL(ただしLL<UL)を入力する。方法は、ブロック318に進み、ここでオペレータは乗数に対するブレーク限度(break limit)BLを入力する。ブレーク限度BLは、乗数がどれだけ速く上位レベルULと下位レベルLLの間で変動するか定義し、さらに、乗数を安定させるためのキャップ(cap)としても使用される。方法は次いで、ブロック306に戻って新しいコマンドを待つ。
【0025】
ブロック309を再度参照すると、乗数MFが推定持続時間EDの双曲線関数として計算される場合、方法は試験ブロック321に移る。オペレータが(双曲線の凹みを更新するための)基準係数Aの定義を望む場合、方法はブロック324に移り、ここでオペレータは基準係数Aを入力する。定義を望まない場合、基準係数はブロック327で定数値1に設定される。いずれの場合も、オペレータはブロック330でパラメータBを入力し、さらにブロック333でパラメータCを入力する。パラメータBとCの間の比率により、持続時間が短いジョブに対する乗数の上位レベルが定義される。次いで、方法はブロック306に戻る。
【0026】
ここでブロック336(実行依頼機能)を参照すると、現在のジョブの推定持続時間EDが論理ユニットに提供される。論理ユニットは、ブロック339で乗数MFがどのようにして定義されるか検査する。乗数MFが推定持続時間EDの一次関数として計算される場合、方法は試験ブロック342に移る。推定持続時間EDがブレーク限度BLより大きい場合、ブロック348で乗数MFは下位レベルLLに設定される(MF=LL)。逆の場合、乗数MFは、期待持続時間ED=0に対する上位レベルULと期待持続時間ED=BLに対する下位レベルLLとの間の一次補間として以下の式で計算される。
【0027】
【数1】
【0028】
いずれの場合も、方法は次いで、(以下で説明する)ブロック351に進む。
【0029】
たとえば、オペレータが上位レベルULに対して値3(すなわち、非常に持続時間が短いジョブは、推定持続時間より3倍長く実行されたとき遅延したことになる)を、下位レベルLLに対して値0.1(すなわち、非常に持続時間が長いジョブは、推定持続時間を10%超えて実行されたとき遅延したことになる)を選択すると決定したとする。さらに、乗数MFは、24時間(BL=1440分)を超えるどの推定持続時間に対しても0.1で安定するべきである。この場合、1分のジョブは、2.997986分実行された場合遅延したとみなされる(すなわち、アルゴリズムは上位レベルULに多くの重み付けをする)。24時間のジョブは、1584分(1440+10%)実行された場合遅延したとみなされる。いくつかの中間例によって、乗数MFが推定持続時間EDとともにどのようにして変化するか説明される。
【0030】
【表1】
【0031】
乗数MFが推定持続時間EDとともにどのように変化するか図示する対応する曲線を、図4に実線で示す。
【0032】
別の例では、オペレータは、ブレーク限度BL=240分(4時間)と設定する。この場合、乗数MFは次第に減少し、次いで4時間以上で定数0.1で安定する。
【0033】
【表2】
【0034】
対応する曲線を、図4に破線で示す。
【0035】
再度ブロック339を参照すると、乗数MFが推定持続時間EDの双曲線関数として計算される場合、方法はブロック354に移り、ここで乗数MFは以下の公式によって定義される。
【0036】
【数2】
【0037】
方法は次いで、ブロック351に進む。
【0038】
たとえば、A=1、B=500およびC=100を用いると、12時間の期間に渡って以下の値が得られる。
【0039】
【表3】
【0040】
乗数MFが推定持続時間EDとともにどのように変化するかを図示する対応する曲線を、図5に示す。
【0041】
ここでブロック351を検討すると、閾値THは、推定持続時間EDを因子MFで乗算して、すなわちTH=MF・EDで計算される。ジョブは、ブロック357で依頼され、方法は次いで、ブロック360でジョブの実行が終了したか検証する。終了した場合、方法はブロック306に戻って新しいコマンドを待つ。終了していない場合、試験ブロック363に入る。ジョブの現時点での持続時間CDが閾値THを超えている場合、ブロック366で異常状態が検出され、それに応じてオペレータに通知が行われる。方法は次いで、ブロック306に戻る。閾値を超えていない場合、方法はブロック360に戻って上記の動作を繰り返す。
【0042】
たとえばエラー・ルーチン、動作レベルで乗数を上書きする例外処理機能、ジョブを追跡する監視機能などを有する等価な方法をプログラムが実行する場合も、同様に考慮される。あるいは、こうした方法は、分散コンピュータ・ネットワークにおけるシステム資源の制御や、異なるアプリケーションにおける他のどのような処理にも使用される。
【0043】
より全般的には、本発明は、処理の実行を制御するスケジューリング方法を提供する。この方法は処理の期待持続時間を推定し、次いで期待持続時間に乗数を与えることによって閾値が決定される。処理が実行されて処理の実際の持続時間が閾値を超えると異常状態が検出される。本発明の方法では、乗数は期待持続時間の減少関数として決定される。
【0044】
この考案した解決方法により、実行時間が長いどのジョブも非常に正確に検出される。これにより、作業負荷スケジューラの動作が改善される。その結果、作業負荷スケジューラが発するどの警告も、予想されたよりもはるかに長く実行されているジョブによる本当の異常状態を常に示す。システム資源を、推定持続時間より実際に長く実行されている限界のジョブに対して作業負荷マネージャが適正に使用することもできる。
【0045】
実際、本発明の発明者は、持続時間がかなり異なるジョブから各バッチが構成される通常のシナリオでは、予め設定された乗数値が許容されないことに気づいた。
【0046】
たとえば、ある程度の時間が経過した後で持続時間が長いジョブの異常状態を検出するためには、小さい乗数が望ましい。ただし、この場合持続時間が短いジョブの(仮定される)異常状態は、ジョブがわずか数秒間オーバーランした(より短いジョブに比較的多く影響を与える軽微な摂動によって引き起こされることが非常に多い)後で検出する可能性がある。
【0047】
一方、大きい乗数により、持続時間が短いジョブに受け入れられる閾値が得られる。残念ながら、この場合持続時間が長いジョブの異常状態は何時間も経過した後でないと検出されない。
【0048】
それとは反対に、本発明の解決方法では、実行時間が長いジョブを検出する方法を使用し、この方法は、持続時間が短いジョブの固有の非持久性を考慮しながら、持続時間が長いジョブのどの異常状態も長い時間が経過する前に検出することを可能にする。
【0049】
上述した本発明の好ましい実施形態により、さらに利点が提供される。たとえば、乗数は、(少なくとも一定の範囲の値で)期待持続時間の一次関数として非常に簡単なやり方で計算される。
【0050】
好ましくは、この関数は、下位レベルLL、上位レベルULおよびブレーク限度BLによって定義される。乗数MFに対して望む最高値および最低値を符号化するオペレータにとってパラメータは非常に重要なので、このアルゴリズムは有用である。このようにして、アルゴリズムは、どのジョブに対しても適切な乗数MFを計算し、推定持続時間EDが小さいときには上位レベルULにさらに重み付けをするが、乗数は次第にレベルを変動させ、推定持続時間EDが長くなると下位レベルLLにより重要性が与えられる。
【0051】
さらに、乗数MFは、ブレーク限度BL以上になると、下位レベルLLによって定義された定数で安定する。こうすることにより、乗数MFは上位レベルULから下位レベルLLに次第に減少するとともに、持続時間が非常に長いジョブに許容されるレベルに維持されることが可能になる。
【0052】
あるいは、乗数MFは、推定持続時間EDの双曲線関数として計算される。このようにして、(係数がオペレータにとってあまり重要ではなく、どれが最適の値であるか理解することがより難しい場合でも)乗数MFの曲線は所望の形に操作することができる。
【0053】
好ましくは、双曲線の曲率はさらに、オペレータによって定義することができ、そうすることによって本解決方法をさらに柔軟にすることができる。
【0054】
閾値が違うやり方で定義される場合、異なるパラメータが考察される場合なども同様に考慮される。あるいは、一次関数においてブレーク限度を使用せず、乗数が別の関数、たとえば対数関数、指数関数、より一般的には推定持続時間のどのような減少関数などでも計算される。さらに、本発明による解決方法により、この解決方法自体が、予め設定されたテーブルでも、上述の論理を提供する他のどの方法でも乗数を決定するよう実装されるようになる。
【0055】
有利には、本発明による解決方法は、CD−ROM上で提供されるコンピュータ・プログラム(ソフトウェア)で実装される。
【0056】
あるいは、こうしたプログラムは、フロッピー(R)・ディスクまたはテープで提供され、ハード・ディスクに予め搭載され、または他のどのコンピュータ可読媒体にも格納され、ネットワーク(通常はインターネット)を介してシステムに送られ、同報通信され、より一般的にはコンピュータのワーキング・メモリに直接搭載可能な他のどのような形でも提供される。さらに、本発明による方法により、この方法自体が、たとえば半導体材料のチップに集積されたハードウェア構造でも実行されるようになる。
【図面の簡単な説明】
【0057】
【図1】本発明のスケジューリング方法を使用することができるデータ処理システムを示す基本ブロック図である。
【図2】本システムのワーキング・メモリの部分的な内容を示す図である。
【図3】本システムで実装されるスケジューリング方法を示すフロー図である。
【図4】関数の乗数/推定持続時間の異なる曲線を示す図である。
【図5】関数の乗数/推定持続時間の異なる曲線を示す図である。
Claims (10)
- 処理の実行を制御するスケジューリング方法であって、
処理の期待持続時間を推定するステップと、
前記期待持続時間に乗数を与えて閾値を決定するステップと、
前記処理を実行するステップと、
前記処理の実際の持続時間が前記閾値を超えたときに異常状態を検出するステップとを含み、
前記期待持続時間の減少関数として前記乗数を決定するステップを特徴とする方法。 - 前記乗数を決定するステップが、前記乗数を少なくともある範囲の値で前記期待持続時間の一次関数として計算することを含む、請求項1に記載の方法。
- 前記乗数を計算するステップが、
前記乗数の第1のレベルを設定すること、
前記第2のレベルが前記第1のレベルより低くなるように、前記乗数の第2のレベルを設定すること、
前記期待持続時間のブレーク限度を設定すること、
ゼロに等しい前記期待持続時間に対する前記第1のレベルと前記ブレーク限度に等しい前記期待持続時間に対する前記第2のレベルとの間で前記乗数を一次補間することを含む、請求項2に記載の方法。 - 前記乗数を計算するステップが、前記ブレーク限度より大きい前記期待持続時間の任意の値に対して前記第2のレベルに前記乗数を設定することをさらに含む、請求項3に記載の方法。
- 前記乗数を決定するステップが、前記期待持続時間の双曲線関数として前記乗数を計算することを含む、請求項1に記載の方法。
- 前記乗数を計算するステップが、
第1のパラメータを設定すること、
第2のパラメータを設定すること、
第3のパラメータを設定すること、
前記期待持続時間と前記第3のパラメータとの積と、前記第2のパラメータとの合計で前記第1のパラメータを割ることによって前記乗数を計算することを含む、請求項5に記載の方法。 - 前記第3のパラメータが、予め設定された1に等しい定数である、請求項6に記載の方法。
- 請求項1ないし7のいずれかに記載の方法を実施するよう適合されたプログラム・コード手段を含み、コンピュータ上で実行されるコンピュータ・プログラム。
- 請求項8に記載のプログラムが格納されるコンピュータ可読媒体を備えるプログラム製品。
- 処理の実行を制御するスケジューリング・システム(100)であって、処理の期待持続時間を推定する手段(235)と、前記期待持続時間に乗数を与えて閾値を決定する手段(250)と、前記処理を実行する手段(225)と、前記処理の実際の持続時間が前記閾値を超えたときに異常状態を検出する手段(255)とを含み、前記乗数を前記期待持続時間の減少関数として決定する手段(235、240)をさらに含むシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0115952.4A GB0115952D0 (en) | 2001-06-29 | 2001-06-29 | A scheduling method and system for controlling execution of processes |
PCT/EP2002/004290 WO2003005136A2 (en) | 2001-06-29 | 2002-03-21 | A scheduling method and system for controlling execution of processes |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004538561A true JP2004538561A (ja) | 2004-12-24 |
JP3828112B2 JP3828112B2 (ja) | 2006-10-04 |
Family
ID=9917628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003511044A Expired - Fee Related JP3828112B2 (ja) | 2001-06-29 | 2002-03-21 | 処理の実行を制御するスケジューリング方法およびシステム |
Country Status (8)
Country | Link |
---|---|
US (1) | US7512946B2 (ja) |
EP (1) | EP1399785B1 (ja) |
JP (1) | JP3828112B2 (ja) |
AT (1) | ATE372535T1 (ja) |
AU (1) | AU2002308150A1 (ja) |
DE (1) | DE60222259T2 (ja) |
GB (1) | GB0115952D0 (ja) |
WO (1) | WO2003005136A2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8041796B2 (en) * | 2002-05-02 | 2011-10-18 | Hewlett-Packard Development Company, L.P. | Process duration control |
US7441244B2 (en) * | 2003-12-10 | 2008-10-21 | International Business Machines Corporation | Workload scheduler with cumulative weighting indexes |
US7509336B2 (en) * | 2004-12-17 | 2009-03-24 | International Business Machines Corporation | Workload periodcity analyzer for autonomic database components |
EP1715421B1 (en) * | 2005-04-21 | 2008-10-01 | International Business Machines Corporation | Workload scheduling method and system with improved planned job duration updating scheme |
DE602006002915D1 (de) * | 2005-04-21 | 2008-11-13 | Ibm | Verfahren und System zur Arbeitslastplanung mit verbessertem Schema zur Aktualisierung der Dauer einer geplanten Arbeit |
DE102005048037A1 (de) * | 2005-10-07 | 2007-04-12 | Robert Bosch Gmbh | Verfahren zur Steuerung/Regelung wenigstens einer Task |
US8843221B2 (en) * | 2009-12-09 | 2014-09-23 | Comau Spa | Automation management system and method |
US9307048B2 (en) * | 2010-12-28 | 2016-04-05 | Microsoft Technology Licensing, Llc | System and method for proactive task scheduling of a copy of outlier task in a computing environment |
US9262216B2 (en) | 2012-02-14 | 2016-02-16 | Microsoft Technologies Licensing, LLC | Computing cluster with latency control |
CN105446801A (zh) * | 2014-06-23 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 分布式系统中的任务处理方法和装置 |
RS56492B1 (sr) | 2014-10-23 | 2018-01-31 | Comau Spa | Sistem za nadzor i upravljanje industrijskim postrojenjem |
US11573831B2 (en) * | 2017-06-20 | 2023-02-07 | International Business Machines Corporation | Optimizing resource usage in distributed computing environments by dynamically adjusting resource unit size |
IT201800005091A1 (it) | 2018-05-04 | 2019-11-04 | "Procedimento per monitorare lo stato di funzionamento di una stazione di lavorazione, relativo sistema di monitoraggio e prodotto informatico" | |
US10678590B1 (en) * | 2019-12-02 | 2020-06-09 | Capital One Services, Llc | Batch process monitoring and alerting based on selection of buffer times |
CN111413897B (zh) * | 2020-03-18 | 2021-05-14 | 四川中微芯成科技有限公司 | 一种安全的任意切换芯片工作模式的方法和芯片 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4952927A (en) * | 1987-08-05 | 1990-08-28 | Motorola, Inc. | Paging receiver with dynamically allocated display rate |
EP0559348A3 (en) * | 1992-03-02 | 1993-11-03 | AT&T Corp. | Rate control loop processor for perceptual encoder/decoder |
US5471564A (en) | 1992-07-10 | 1995-11-28 | Microsoft Corporation | System and method for dynamic printer timeout |
JP2826442B2 (ja) | 1993-06-18 | 1998-11-18 | 株式会社エフ・エフ・シー | 処理走行時間監視方法 |
JPH09244923A (ja) | 1996-03-11 | 1997-09-19 | Hitachi Ltd | ウォッチドッグタイマを用いた異常監視装置 |
JP2000132428A (ja) | 1998-10-21 | 2000-05-12 | Toshiba Corp | コンピュータシステム、コンピュータシステムのアプリケーション監視方法、及びプログラム記録媒体 |
US6618742B1 (en) * | 2000-01-10 | 2003-09-09 | Imagex.Com, Inc. | Method for job impact learning |
GB2376542B (en) * | 2001-06-15 | 2005-06-29 | Ibm | A method and system for scheduling execution of activities |
-
2001
- 2001-06-29 GB GBGB0115952.4A patent/GB0115952D0/en not_active Ceased
-
2002
- 2002-03-21 AT AT02782433T patent/ATE372535T1/de not_active IP Right Cessation
- 2002-03-21 US US10/481,483 patent/US7512946B2/en not_active Expired - Fee Related
- 2002-03-21 JP JP2003511044A patent/JP3828112B2/ja not_active Expired - Fee Related
- 2002-03-21 AU AU2002308150A patent/AU2002308150A1/en not_active Abandoned
- 2002-03-21 WO PCT/EP2002/004290 patent/WO2003005136A2/en active IP Right Grant
- 2002-03-21 DE DE60222259T patent/DE60222259T2/de not_active Expired - Lifetime
- 2002-03-21 EP EP02782433A patent/EP1399785B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US7512946B2 (en) | 2009-03-31 |
EP1399785B1 (en) | 2007-09-05 |
DE60222259T2 (de) | 2008-05-29 |
WO2003005136A2 (en) | 2003-01-16 |
ATE372535T1 (de) | 2007-09-15 |
EP1399785A2 (en) | 2004-03-24 |
US20050192750A1 (en) | 2005-09-01 |
GB0115952D0 (en) | 2001-08-22 |
JP3828112B2 (ja) | 2006-10-04 |
AU2002308150A1 (en) | 2003-01-21 |
DE60222259D1 (de) | 2007-10-18 |
WO2003005136A3 (en) | 2003-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111176419B (zh) | 估计在分布式计算机系统的多个节点上运行的作业的功率性能的方法和装置 | |
JP3828112B2 (ja) | 処理の実行を制御するスケジューリング方法およびシステム | |
US8510741B2 (en) | Computing the processor desires of jobs in an adaptively parallel scheduling environment | |
Kang et al. | Managing deadline miss ratio and sensor data freshness in real-time databases | |
US7302450B2 (en) | Workload scheduler with resource optimization factoring | |
JP5068099B2 (ja) | 個々のユーザの資源使用量およびその使用量の追跡に基づいた公平な共用分のスケジューリングを行う方法およびシステム | |
WO2017045553A1 (zh) | 一种任务分配方法和系统 | |
US20080162965A1 (en) | Managing performance of a processor in a data processing image | |
US7941332B2 (en) | Apparatus, system, and method for modeling, projecting, and optimizing an enterprise application system | |
US20040143664A1 (en) | Method for allocating computer resource | |
US20060288348A1 (en) | Virtual computer systems and computer virtualization programs | |
WO2005106623A1 (ja) | Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体 | |
US20040123297A1 (en) | Performance level setting of a data processing system | |
US20070266385A1 (en) | Performance level setting in a data processing system | |
US20080148273A1 (en) | Dynamic voltage scaling scheduling mechanism for sporadic, hard real-time tasks with resource sharing | |
EP3935503B1 (en) | Capacity management in a cloud computing system using virtual machine series modeling | |
US8677375B2 (en) | Selecting executing requests to preempt | |
JP2003256222A (ja) | 分散処理システム、ジョブ分散処理方法およびプログラム | |
US20220291959A1 (en) | Activity scheduling method, system, terminal and storage medium based on high response ratio | |
Matani et al. | A fault-tolerant workflow scheduling algorithm for grid with near-optimal redundancy | |
RU2008149050A (ru) | Аппаратно-реализуемый способ планирования зданий (варианты), система планирования зданий и машиночитаемый носитель | |
Kang et al. | Differentiated real-time data services for e-commerce applications | |
JP2000056989A (ja) | タスク設計方法 | |
KR100547625B1 (ko) | 그리드 정보서비스를 위한 지능형 모니터링 시스템 및 방법 | |
CN111475261A (zh) | 一种云平台弹性度量方法、系统和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060307 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060531 |
|
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: 20060627 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060705 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100714 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120714 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130714 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |