JPH0816410A - スケジュール制御装置とその方法 - Google Patents

スケジュール制御装置とその方法

Info

Publication number
JPH0816410A
JPH0816410A JP6148322A JP14832294A JPH0816410A JP H0816410 A JPH0816410 A JP H0816410A JP 6148322 A JP6148322 A JP 6148322A JP 14832294 A JP14832294 A JP 14832294A JP H0816410 A JPH0816410 A JP H0816410A
Authority
JP
Japan
Prior art keywords
job
waiting
execution
priority
processing elements
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
JP6148322A
Other languages
English (en)
Other versions
JP3215264B2 (ja
Inventor
Kazuyo Suematsu
和代 末松
Hajime Miyoshi
甫 三好
Yukihiro Karube
行洋 軽部
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.)
National Aerospace Laboratory of Japan
Fujitsu Ltd
Original Assignee
National Aerospace Laboratory of Japan
Fujitsu Ltd
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 National Aerospace Laboratory of Japan, Fujitsu Ltd filed Critical National Aerospace Laboratory of Japan
Priority to JP14832294A priority Critical patent/JP3215264B2/ja
Publication of JPH0816410A publication Critical patent/JPH0816410A/ja
Application granted granted Critical
Publication of JP3215264B2 publication Critical patent/JP3215264B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 並列処理システムにおいて、任意の数のプロ
セッサ要素を用いたジョブの実行、システム資源要求量
に応じたジョブ優先度の設定、設定された優先度に応じ
た適切なジョブの実行、緊急ジョブの優先処理等を可能
にする。 【構成】 複数のジョブキューにより実行待ちジョブお
よび実行中ジョブを管理し、各ジョブのシステム資源要
求量、待ち時間等に応じて所属キューおよびキュー内優
先度を設定する。所属キューおよびキュー内優先度は動
的に見直され、これらに従ってジョブのスケジューリン
グが行われる。実行中の非優先実行ジョブはスワップア
ウトの対象となり、スワップアウトされたプロセッサ要
素は実行待ちの優先実行ジョブを起動するために割り当
てられる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、並列計算機等の並列処
理システムにおけるスケジュール制御装置とその方法に
関する。
【0002】
【従来の技術】近年、計算機が処理すべきデータ量の増
大に伴い処理を高速化するために、しばしば並列処理能
力を持つ計算機システムが用いられている。特に、膨大
な計算量を必要とする科学技術計算等の分野において
は、このような並列計算機システムの資源をできる限り
有効に利用することが望まれる。
【0003】並列計算機システムは、単一計算機では不
足する処理能力やメモリ量をプロセッサ要素(PE)の
台数で補うことができるため、要求するPE台数が異な
る種々の大きさのジョブがシステムに投入される。従来
の並列計算機では、これらの複数のジョブを処理するた
めに、同時に実行可能なジョブの規模とジョブ数を定義
し、投入されたジョブをその規模によりクラス分けし、
クラス毎に決められたPEを用いて順次処理している。
【0004】図32は、従来の並列計算機システムにお
けるジョブスケジューリング方式を示している。図32
では、システムに設置されている複数のPEは、小規模
ジョブ用2個、中規模ジョブ用1個、大規模ジョブ用1
個の4つのクラスに分割される。到着したジョブはその
規模に応じてクラス分けされ、各クラスに対応する1台
以上のPEにより実行される。
【0005】この方式によれば、実行待ちジョブの中か
ら次に実行すべきジョブを決定し、実行を開始するため
に必要な手続きを取るための、ジョブの起動のアルゴリ
ズムを組み込むだけで比較的簡単にジョブをスケジュー
リングできる。また、クラス毎にジョブをスケジューリ
ングするため、各ジョブの実行順序が明確である。
【0006】また、実行待ちの各クラスのジョブが十分
にある限り、常時指定された本数(クラスの数)のジョ
ブが実行される。したがって、各ジョブがクラス毎に割
り当てられた制限台数のPEを全て使用していれば、未
割り当てのPEは発生しない。
【0007】
【発明が解決しようとする課題】しかしながら、従来の
ジョブスケジューリング方式には以下のような問題点が
ある。
【0008】第1に、使用PE台数が制限台数未満のジ
ョブを実行するクラス、および実行すべきジョブがまだ
到着していないクラスでは未使用のPEが発生するが、
後続のジョブや後に到着するジョブに対するPEの割り
当てを確実に行うためには未使用のPEを他のクラスの
ジョブに割り当てることができない。したがって、実行
中のジョブが終了するまで、あるいはジョブが到着する
まで未使用のPEを休ませることになり、PEの有効利
用が図れない。
【0009】例えば図32の大規模ジョブのクラスに属
するジョブが到着していない場合、このクラスのPEは
全て休止状態となるが、これらに小規模ショブや中規模
ショブを実行させると、次に到着した大規模ジョブを直
ちに実行できない恐れがある。そこで大規模ジョブのク
ラスには他のクラスのジョブを投入せずに、PEを休止
させることになる。
【0010】第2に、クラスという枠でしかジョブを扱
えないため、各クラスのジョブを実行するPEが固定化
され、ジョブスケジュールをシステム資源要求量に応じ
た優先度で柔軟に制御することが不可能である。
【0011】第3に、システムに設置された全てのPE
を同時に使用するような規模のジョブを実行するために
は、一時的に運用方式の異なる時間帯を設けて他のクラ
スの実行を停止する必要があり、時間帯により実行でき
るジョブのクラスが制限されることになる。また、決め
られた運用時間帯内で終了できなかったジョブの処置方
法を決めなければならず、運用方法が複雑となる。
【0012】第4に、運用中のシステム停止やシステム
で利用可能なPE台数の変動が予定されている場合、実
行待ちジョブの中から次に実行すべきジョブを決定する
だけでジョブを起動させる方式では、ジョブの実行中に
PE台数が不足する恐れがある。したがって、システム
停止やPE台数の変更を予定通り行えない。
【0013】これらの問題を克服する方法として、ジョ
ブの使用PE台数を限定せずに任意台数のPEの割り当
てを可能とし、全てのジョブを要求PE台数に応じた優
先度で処理する方法が考えられる。しかし、ジョブの優
先度を固定すると、優先度の高いジョブがある限り優先
度の低いジョブは起動されず、また大規模なジョブの場
合は優先度を高くしても処理できない可能性がある。し
たがって、一般にジョブの起動アルゴリズムだけではジ
ョブ処理時間の統一的管理を行うことは極めて難しい。
【0014】本発明は、このような従来技術の問題点に
鑑みてなされたものであり、並列処理システムの資源を
有効かつ柔軟に活用するスケジュール制御装置とその方
法を提供することを目的とする。
【0015】さらに詳しくは、並列計算機システムにお
いて、任意の数のプロセッサ要素を用いたジョブの実
行、システム資源要求量に応じたジョブ優先度の設定、
設定された優先度に応じた適切なジョブの実行、緊急ジ
ョブの優先処理等を可能にすることを目的とする。
【0016】
【課題を解決するための手段】本発明は、複数の処理要
素が並列に処理を行う並列処理システムにおけるスケジ
ュール制御装置とその方法である。並列処理システムと
して、例えば複数ジョブの同時実行が可能な並列計算機
システムを対象とする。
【0017】図1は、本発明のスケジュール制御装置の
原理図である。本発明のスケジュール制御装置は、スケ
ジュール制御手段1、優先度制御手段2、優先度変更手
段3、割り当て制御手段4、割り当て判定手段5、起動
予定設定手段6、実行中断手段7、実行再開手段8、お
よびプレステージ制御手段9を備える。
【0018】優先度制御手段2は、優先レベルの異なる
複数の実行待ちジョブキューを有し、優先レベルおよび
キュー内優先度に応じて実行待ちジョブキュー内の実行
待ちジョブの起動順位を管理する。このとき、実行待ち
ジョブの所属する実行待ちジョブキューおよびそのキュ
ー内優先度を、実行待ちジョブの要求する処理要素数等
の資源量と実行待ちジョブが発生してからの待ち時間と
実行待ちジョブの実行時間のうち、少なくとも1つを用
いて決定する。また、時間の経過に伴い実行待ちジョブ
の起動順位を動的に見直し、待ち時間が長い実行待ちジ
ョブほど起動順位を早める。
【0019】優先度制御手段2は、さらに優先レベルの
異なる複数の実行中ジョブキューを有し、優先レベルお
よびキュー内優先度に応じて実行中ジョブキュー内の実
行中ジョブの優先順位を管理し、時間の経過に伴い優先
順位を動的に見直す。
【0020】優先度変更手段3は、指定された実行待ち
ジョブの重要度に応じて、その実行待ちジョブの所属す
る実行待ちジョブキューおよびそのキュー内優先度を変
更する。また、指定された実行中ジョブの重要度に応じ
て、その実行中ジョブの所属する実行中ジョブキューお
よびそのキュー内優先度を変更する。
【0021】割り当て制御手段4は、複数の実行待ちジ
ョブキューのうち、所定優先レベル以上の実行待ちジョ
ブキュー内の実行待ちジョブに優先的に処理要素を割り
当てる。このとき、必要があれば実行中断手段7により
中断された実行中のジョブが使用していた処理要素を、
上記所定優先レベル以上の実行待ちジョブキュー内の実
行待ちジョブに割り当てる。また、優先度制御手段2が
管理する起動順位に従って、可能な限り多くの実行待ち
ジョブに未使用の処理要素を割り当てる。
【0022】割り当て判定手段5は、未使用の処理要素
の数が実行待ちジョブキュー内の実行待ちジョブを実行
するために必要な処理要素の数以上か否かを判定する。
また、優先度の高い未実行処理(未実行ジョブ)の開始
時刻までに実行を終了する予定の新規処理に対しては、
処理要素の割り当てが可能と判定し、上記開始時刻まで
に終了しない予定の新規処理に対しては、処理要素の割
り当てが不可能と判定する。使用可能な処理要素の数が
変動することが予定されているときには、変動後の使用
可能な処理要素の数と、未実行処理を実行するために必
要な処理要素の数を基にして、未実行処理への処理要素
の割り当てが可能か否かを判定する。このとき、並列処
理システムにおいて使用中および使用可能である処理要
素をあわせた利用可能な処理要素の数と、並列処理シス
テムにおいて使用中の処理要素の数とを基にして、上記
使用可能な処理要素の数を求める。
【0023】また、割り当て判定手段5は、並列処理シ
ステム内で同時に中断される処理要素の最大数と、1つ
の実行待ちジョブを起動するために中断される処理要素
の最大数と、必要な処理要素数または実行時間のうち少
なくとも1つを用いて指定される規模以下のジョブが使
用中の処理要素の数とを基にして、中断可能処理要素数
を決める。
【0024】起動予定設定手段6は、未実行処理を実行
するために使用可能な処理要素の数が、未実行処理のた
めに必要な処理要素の数以上となる時刻を求めて、上記
開始時刻とし、割り当て判定手段5に伝える。使用可能
な処理要素の数が変動することが予定されているとき
は、変動後の使用可能な処理要素の数が未実行処理のた
めに必要な処理要素の数以上となるように上記開始時刻
を設定する。
【0025】実行中断手段7は、未使用の処理要素の数
が所定優先レベル以上の実行待ちジョブキュー内の実行
待ちジョブを実行するために必要な処理要素の数に満た
ない、かつ、所定優先レベル以上の実行待ちジョブキュ
ー内の実行待ちジョブを起動するために必要な処理要素
の数が、未使用の処理要素の数と中断可能処理要素数の
合計以内であると割り当て判定手段5が判定したとき、
実行中のジョブを中断する。このとき、複数の実行中ジ
ョブキューのうち、所定優先レベルに満たない実行中ジ
ョブキュー内の実行中のジョブを中断する。
【0026】実行再開手段8は、実行中断手段7により
中断された実行中のジョブが、上記所定優先レベル以上
の実行中ジョブキューに属するとき、実行待ちジョブキ
ュー内の実行待ちジョブより優先的に処理要素を割り当
てて、その中断された実行中のジョブを再開する。
【0027】プレステージ制御手段9は、実行待ちジョ
ブの所属する実行待ちジョブキューおよびそのキュー内
優先度とプレステージ容量とに応じて決められる順序に
従って、その実行待ちジョブが使用するデータを予め転
送速度の速い媒体に転送する。
【0028】スケジュール制御手段1は、優先度制御手
段2と割り当て制御手段4を用いて、並列処理システム
におけるジョブの実行のスケジューリングを行う。この
とき、割り当て判定手段5の判定結果を用いて運用予定
に従ったスケジューリングを行う。
【0029】本発明が対象とする並列処理システムは、
例えば図2の並列計算機システム27であり、処理要素
はプロセッサ要素(PE)30−1等に対応する。ま
た、スケジュール制御手段1、割り当て制御手段4、割
り当て判定手段5、起動予定設定手段6、実行中断手段
7、実行再開手段8、およびプレステージ制御手段9
は、それぞれ図7のスケジュール制御プログラム41、
ジョブ起動処理プログラム43、PEの割り当て判定プ
ログラム45、起動予定時刻算出プログラム48、スワ
ップアウト処理プログラム46、スワップイン処理プロ
グラム42、およびプレステージ処理プログラム44を
実行するコントロール・プロセッサ28またはフロント
エンド・プロセッサ22により実現される。さらに、優
先度制御手段2と優先度変更手段3は、キュー情報制御
プログラム47を実行するコントロール・プロセッサ2
8またはフロントエンド・プロセッサ22に相当する。
【0030】
【作用】優先度制御手段2が優先レベルの異なる複数の
実行待ちジョブキューおよび実行中ジョブキューによ
り、実行待ちジョブの起動順位および実行中ジョブの優
先順位を管理する。これによりジョブが統一的に管理さ
れ、ジョブの起動順位や優先順位の動的な見直しが可能
になる。また、優先度変更手段3によるジョブの順位の
変更も容易に行うことができる。
【0031】また、ジョブの起動順位や優先順位をその
要求資源量と実行時間を用いて決定すれば、発生したジ
ョブの規模に応じて順位を指定することができる。ジョ
ブの起動順位や優先順位をその待ち時間を用いて決定す
れば、待ち時間に応じた順位の指定が可能になり、例え
ば待ち時間の長いジョブを優先的に起動させることがで
きる。
【0032】優先度変更手段3により実行待ちジョブお
よび実行中ジョブの所属するジョブキューおよびそのキ
ュー内優先度を変更できるので、システム管理者等によ
り指定されるジョブの重要度や緊急度に応じて、ジョブ
の順位をフレキシブルに変えられる。
【0033】割り当て制御手段4は可能な限り多くの実
行待ちジョブに未使用の処理要素を割り当てるので、処
理要素の有効利用が図られる。ジョブの使用する処理要
素の数を限定しないため、後続ジョブの規模とは無関係
に処理要素を割り当てることができる。また、実行中断
手段7により実行中のジョブを中断してでも、所定優先
レベル以上の実行待ちジョブキュー内の実行待ちジョブ
に必要な数の処理要素を割り当てるので、所定優先レベ
ル以上のジョブは優先的に起動される。
【0034】割り当て判定手段5が未使用の処理要素の
数とジョブの実行に必要な処理要素の数を比較し、その
ジョブに処理要素の割り当てが可能か否かを判定する。
優先度の高い未実行処理の開始時刻までに実行を終了す
る予定の新規処理に対しては、処理要素の割り当てが可
能と判定するので、その新規処理を行うことにより未使
用の処理要素が有効に利用される。使用可能な処理要素
の数が変動する場合には、変動後の使用可能な処理要素
の数と必要な処理要素の数を基にして、未実行処理への
処理要素の割り当てが可能か否かを判定するので、その
未実行処理の起動により処理要素数の変更予定が妨害さ
れることを防ぐことができる。
【0035】並列処理システム内で同時に中断される処
理要素の最大数と1つの実行待ちジョブを起動するため
に中断される処理要素の最大数とを設け、中断可能処理
要素数を制限すれば、頻繁な処理の中断によるシステム
オーバヘッドの増加を防ぐことができる。また、指定規
模以下のジョブが使用中の処理要素の数を中断可能処理
要素数に設定すれば、大規模ジョブが使用中の処理要素
を中断対象から外すことが可能になり、大規模ジョブの
中断によるシステムオーバヘッドの増加および処理要素
の利用率の大幅低下が防がれる。
【0036】起動予定設定手段6は、処理要素数の変動
があった場合でも使用可能な処理要素の数が必要な処理
要素の数以上となるように未実行処理の開始時刻を設定
するので、上記開始時刻に起動された未実行処理がシス
テム停止や処理要素数の削減等の運用予定を妨げること
はない。
【0037】実行中断手段7により所定優先レベルに満
たない実行中ジョブキュー内の実行中のジョブを中断す
れば、実行待ちのジョブを起動する際に不足する処理要
素を補うことができる。また、所定優先レベル以上の実
行中ジョブキュー内の実行中のジョブは中断されない
で、終了するまで優先的に実行される。
【0038】中断された実行中のジョブが、その後の優
先度の見直し等により所定優先レベル以上の実行中ジョ
ブキューに属するようになったとき、実行再開手段8が
実行待ちジョブより優先的に処理要素を割り当てるの
で、その中断されたジョブが早く再開される。
【0039】プレステージ制御手段9により、実行待ち
ジョブの起動順位に応じてデータのプレステージ順位が
決められるので、動的に変化する起動順位に従ったプレ
ステージ処理が可能になる。また、所定のプレステージ
容量に収まるデータについてのみプレステージ順位を決
めればよい。
【0040】スケジュール制御手段1により、優先度制
御手段2が管理するジョブの起動順位および優先順位、
割り当て制御手段4による処理要素の割り当て、および
割り当て判定手段5の判定結果等が並列処理システムに
おけるジョブスケジューリングに反映される。
【0041】
【実施例】以下、図面を参照しながら本発明の実施例に
ついて説明する。図2は、本発明の実施例のスケジュー
ル制御装置を備える情報処理装置の構成図である。図2
の情報処理装置は、フロントエンド・プロセッサ(FE
P)22、並列計算機システム27、および高速システ
ム記憶ユニット(SSU)31を有する。
【0042】並列計算機システム27は、クロスバ・ネ
ットワーク29に接続されたn個のプロセッサ要素(P
E)30−1〜30−nと、これらを制御するコントロ
ール・プロセッサ(CP)28を備える。コントロール
・プロセッサ28は、運用スケジュールテーブル21に
より決められた並列計算機システム27の運用予定にし
たがって、PE30−1〜30−nに自動運転を行わせ
る自動化プログラム23−2と、PE30−1〜30−
nに実行させるジョブのスケジューリングを行うスケジ
ューラ24−2を格納し、これらを実行する。
【0043】自動化プログラム23−2は、PEの電源
のオン・オフ制御やシステム故障時の対処等の処理を行
い、スケジューラ24−2は、管理テーブルを用いたジ
ョブの管理、管理テーブルの更新、ジョブの起動等の処
理を行う。
【0044】フロントエンド・プロセッサ22は、それ
ぞれ自動化プログラム23−2、スケジューラ24−2
と連携して処理を行う自動化プログラム23−1、スケ
ジューラ24−1を格納し、これらを実行することによ
り並列計算機システム27の運用をサポートしている。
スケジューラ24−1は、基本的にはスケジューラ24
−2と同じ機能を持つが、PE30−1〜30−nの台
数は意識しないで処理を行う。
【0045】またフロントエンド・プロセッサ22は、
PE30−1〜30−nが実行する個々のジョブを記述
したユーザプログラム25を格納し、それらのジョブが
処理するデータを格納した磁気ディスク26を備える。
ユーザプログラム25は、フロントエンド・プロセッサ
22によりコンパイルおよびリンクが行われた後に、コ
ントロール・プロセッサ28に送られ、PE30−1等
により実行される。このような構成を採ることにより並
列計算機システム27の負担が軽減され、並列計算機シ
ステム27の運用効率が高められる。
【0046】磁気ディスク26に格納されたデータは、
フロントエンド・プロセッサ22により、対応するジョ
ブを実行する前に予めプレステージされて高速システム
記憶ユニット31に格納される。プレステージを行うこ
とにより、ジョブ実行時のデータ転送に伴う待ち時間を
短縮し、システムの処理能力を高めることができる。
【0047】運用スケジュールテーブル21は、PE3
0−1等の電源をオン・オフする日時やシステム停止
(SYSTEM STOP )の日時などの運用予定を記述したテー
ブルで、システム管理者によりフロントエンド・プロセ
ッサ22およびコントロール・プロセッサ28に入力さ
れる。図2では、例えば4月28日の午前9時にPG1
(Power Control Group 1)とPG2に属するPEの電
源を入れる(オンする)ことが予定されている。PG1
等は、PE30−1〜30−nのうちの1つ以上のPE
から成る電源の制御単位を表す。
【0048】本実施例においては、スケジューラ24−
1、24−2は、以下に説明する動的優先度制御方式、
PE割り当て方式、割り当て可否判定方式、長時間待ち
ジョブの優先割り当て方式、スワップアウト制御方式、
起動予定時刻設定方式、プレステージ制御方式、優先度
変更方式の8つの方式を採用することによりジョブスケ
ジューリングを行い、PEの有効利用を図る。
【0049】図3は、図2の情報処理装置における動的
優先度制御方式を説明する図である。図3の○印は各ジ
ョブキューに繋がれているジョブを表す。ジョブの優先
度は、所属するキューの優先度が高いジョブほど高く、
同一キューのジョブ間ではキュー内優先度の高いジョブ
ほど高い。ジョブの投入時には指定された関数を使用し
て実行待ちジョブ管理キュー内の所属キューおよびキュ
ー内優先度を決定し、その後のスケジュール契機にはジ
ョブの所属キューおよびキュー内優先度を見直して、キ
ュー毎に優先度の高い順にジョブを管理する。
【0050】図3の実行待ちジョブ管理キューおよび実
行中ジョブ管理キューは、それぞれ最優先ジョブキュ
ー、優先ジョブキュー、非優先ジョブキューの3本のキ
ューから成る。到着した優先ジョブは実行待ちジョブ管
理キューの最優先ジョブキューまたは優先ジョブキュー
に繋がれ、優先度の低い一般ジョブは非優先ジョブキュ
ーに繋がれる。実行待ちジョブ管理キューの各ジョブキ
ューの先頭に達したジョブは、その時点での優先度に応
じて例えば優先度のより高いジョブキューの最後尾に繋
がれ、実行が開始されたジョブは、その優先度に応じて
実行中ジョブ管理キューのいずれかのジョブキューに繋
がれる。
【0051】このような優先度制御処理は、図7のキュ
ー情報制御プログラム47により行われる。本実施例で
は、実行待ちジョブ管理キューおよび実行中ジョブ管理
キューの最優先ジョブキュー、優先ジョブキュー、非優
先ジョブキュー内のジョブの優先度PR1、PR2、P
R3を、それぞれ次式(1)、(2)、(3)により設
定する。 PR1=−〔 sqrt (使用PE台数)×ジョブ実行時間(秒)〕×3.0 +待ち時間(秒) ……(1) PR2=−〔 sqrt (使用PE台数)×ジョブ実行時間(秒)〕×3.0 +待ち時間(秒) ……(2) PR3=−〔 sqrt (使用PE台数)×ジョブ実行時間(秒)〕×0.25 +待ち時間(秒) ……(3) (1)、(2)、(3)式において、使用PE台数は該
当するジョブの実行に必要なPE台数であり、ジョブ実
行時間はジョブの開始から終了までに要する時間であ
り、待ち時間はジョブが到着してから待たされた時間で
ある。また、PR1等の値が大きいジョブ程、そのジョ
ブキュー内での優先度が高いものとする。
【0052】図4は、(1)、(2)、(3)式を用い
て、実行待ちジョブ管理キューおよび実行中ジョブ管理
キューに繋がれたジョブの優先度を見直す処理のフロー
チャートである。これらの式が示すように、待ち時間が
長いジョブほど優先度が上がるため、適当な契機に優先
度を見直してジョブを繋ぐキューを変更する必要があ
る。図4の処理もキュー情報制御プログラム47により
行われる。
【0053】図4の処理が開始されると、まずその使用
PE台数とジョブ実行時間から(3)式によりPR3を
計算し(ステップS1)、PR3<0の場合には(ステ
ップS2、YES)、非優先ジョブキューへ繋ぎ(ステ
ップS7)、以後PR3をそのジョブの優先度として付
加する(ステップS6)。
【0054】PR3≧0の場合には(ステップS2、N
O)、さらに(2)式によりPR2を計算し(ステップ
S3)、PR2<0であれば(ステップS4、YE
S)、優先ジョブキューへ繋ぐ(ステップS8)。そし
てPR2をそのジョブの優先度として付加する(ステッ
プS6)。
【0055】ステップS4でPR2≧0の場合には(ス
テップS4、NO)、最優先ジョブキューへ繋ぎ(ステ
ップS5)、(1)式よりPR1を計算して、以後PR
1をそのジョブの優先度として付加する(ステップS
6)。
【0056】(1)、(2)、(3)式によりジョブの
優先度を決めると、使用するPE台数が少ないジョブ
程、また、実行時間の短いジョブ程優先される。これら
の式の右辺第1項で使用PE台数の平方根を取っている
のは、使用PE台数の1次の項を用いた場合よりも大規
模ジョブの優先度を高くするためである。もちろん、こ
こで平方根を取る代わりに1次の項を用いてもよい。
【0057】また、右辺第2項の係数を1としている
が、待ち時間に使用PE台数やジョブ実行時間の関数に
より決定した係数を掛けることにより、使用PE台数が
少ないジョブや実行時間の短いジョブの待ち時間に対す
る優先度の変化を大きく設定することもできる。
【0058】さらに、(1)、(2)、(3)式および
図4の優先度見直し処理のアルゴリズムは、本発明にお
ける動的優先度制御の一例に過ぎず、他の関数やアルゴ
リズムによりジョブの優先度を見直す構成も可能であ
る。ジョブの優先度を決める関数は、システム管理者に
より任意に決められる。
【0059】図5は、より一般的な実行待ちジョブ管理
キューおよび実行中ジョブ管理キューを示している。図
5のジョブ管理キューは、キュー優先度の高い順にキュ
ー1からキューNまでのN本のキューより成る。キュー
の本数N、およびジョブの所属キューとキュー内優先度
を決定するための関数は、図3の場合と同様にして予め
定義される。各○印内の数字は、各ジョブのシステム内
の相対優先順位を表しており、キュー1の先頭ジョブか
ら順に優先度が高くなっていることがわかる。
【0060】本実施例のPE割り当て方式では、並列計
算機システム27に割り当て可能な空きPEがある場合
には、システム内の優先度の高いジョブから順に要求さ
れる台数のPEの割り当てが可能か否かを判定し、可能
と判定した場合にはそのジョブを起動するために必要な
処理を行う。ここで、PEの割り当てが不可能なジョブ
があっても、割り当て可能な空きPEがある限り、後続
のすべてのジョブに対し同様の割り当て処理を行うこと
により、PEの有効利用を図る。
【0061】PE割り当て方式で用いる割り当て可否判
定方式では、システムの停止や利用可能PE台数の変動
等が予定されている場合には、ジョブ開始時点だけでな
くジョブ終了に至るまでの間要求されたPEの割り当て
が可能か否かを判定する。
【0062】本実施例の動的優先度制御方式では、長時
間待たされたジョブはより優先度の高いキューに繋がれ
ることから、一定の優先度のキューに達したジョブに対
して優先的にPEを割り当てる方式を採用する。これが
長時間待ちジョブの優先割り当て方式である。
【0063】図6は、PEの割り当て優先度を説明する
図である。図6の実行待ちジョブ管理キュー、実行中ジ
ョブ管理キューは、それぞれキュー1からキューNまで
のN本のキューより成り、キューn1が予め優先実行下
限キューに指定されている。優先実行下限キュー以上の
優先度のキューに達したジョブは優先実行ジョブと呼ば
れ、優先実行下限キューに達していないジョブは非優先
実行ジョブと呼ばれる。本実施例では、実行中の優先実
行ジョブ、実行待ちの優先実行ジョブ、実行中の非優先
実行ジョブ、実行待ちの非優先実行ジョブの順に、PE
を優先的に割り当てる。
【0064】また、実行中の優先実行ジョブは最も優先
度が高いため、スワップアウトの対象とはしない。ここ
で、スワップアウトとは、実行中のジョブが使用してい
るPEの一部または全部を奪って、他のジョブに割り当
てることを意味する。1台でもPEをスワップアウトさ
れたジョブの処理は中断され、その後スワップインが行
われたときに再開される。スワップインとは、スワップ
アウトされていたジョブに再び必要な台数のPEが割り
当てられることを意味する。
【0065】図6では、実行中ジョブ管理キューのキュ
ー1からキューn1までのジョブがスワップアウト対象
外ジョブである。これに対して、図3では最優先ジョブ
キューが優先実行下限キューに指定されており、最優先
ジョブキューに属するジョブのみがスワップアウト対象
外ジョブとなっている。実行中ジョブ管理キューの非優
先実行ジョブはスワップアウトの対象になるので、スワ
ップアウト対象ジョブとも呼ばれる。
【0066】実行待ちジョブ管理キューの優先実行ジョ
ブのうち、最優先キューであるキュー1の先頭ジョブは
起動優先ジョブと定義し、その起動時には必要があれば
実行中の非優先実行ジョブのスワップアウトを可能とす
る。それでも起動できない場合には起動優先ジョブを最
短時間で起動させるために、起動を遅らせる可能性のあ
る他の実行待ちジョブの起動を全て抑止する。
【0067】スワップアウトの実行はデータ転送および
データの退避・復元のためのオーバヘッドを伴うため、
スワップアウトが頻繁に行われるとシステム効率の低下
要因となる。また、使用PEのうち1台でもスワップア
ウトされたジョブはその分ジョブ終了時刻が遅れること
になる。ジョブの使用PEのうち、スワップアウトされ
なかったPEが処理を続行したとしても、ジョブ終了時
刻を早めることにはならない。一般に並列計算機システ
ムでは、1つのジョブを処理する各PEの処理時間がほ
ぼ同じになるように予め調整しているため、1台のPE
の処理が遅れると、その終了時刻がジョブの終了時刻と
なるからである。したがって、システム効率の低下の度
合いはスワップアウトジョブの規模に比例する。
【0068】本実施例のスワップアウト制御方式では、
スワップアウト可能なPE台数とスワップアウト可能な
ジョブの規模に一定の制限を設け、その範囲内でスワッ
プアウトを実行する。これにより、スワップアウトに起
因するシステム効率の低下を回避させる。
【0069】ところで、空きPE台数が起動優先ジョブ
の要求PE台数に満たない場合、他のジョブの起動をす
べて抑止すれば最短時間で起動が可能になる。この場
合、空きPE台数が起動優先ジョブの要求PE台数に達
するまでの間休止しているPEが生じるので、PEの使
用効率が大幅に低下する恐れがある。しかし、起動優先
ジョブの起動予定時刻までに実行の終了するジョブを起
動しても、起動優先ジョブの起動の妨げとはならない。
【0070】そこで、本実施例の起動予定時刻設定方式
では、起動優先ジョブの起動が不可能な場合には、その
起動予定時刻までの時間を起動ジョブの最大実行時間と
して設定し、最大実行時間内に終了するジョブを起動さ
せることにする。つまり、起動優先ジョブの起動予定時
刻までの時間が、起動優先ジョブ以外のジョブの起動開
始条件となる。これにより、起動優先ジョブの優先実行
に起因するシステム使用効率の低下を回避させる。
【0071】図2に示されるプレステージ機能によっ
て、実行待ちジョブの使用データを、磁気ディスク26
のような保存媒体より転送速度の速いSSU31のよう
な媒体に転送しておけば、データの入力待ちによるジョ
ブ実行開始の遅れを最短にすることができる。しかし、
プレステージ容量の極度の増大はシステムオーバヘッド
およびジョブの入出力時間の増大につながる可能性があ
る。
【0072】そこで、本実施例のプレステージ制御方式
では、ジョブの優先度からその時点でのプレステージ優
先度を決定し、プレステージ優先度の高いジョブから順
に必要なデータを所定のプレステージ容量の範囲内でプ
レステージする。
【0073】また、本実施例の優先度変更方式では、予
めシステム管理者により登録されている特定利用者のジ
ョブ投入時の緊急度の指定や、運用者用コマンド等によ
るジョブ投入後のキュー変更の指定を行い、キュー情報
制御プログラム47により緊急度の高いジョブの優先度
を上げてこれを優先的に処理する。図7は、本実施例の
スケジューラ24−1、24−2のプログラム構成を示
している。図7において、スケジュール制御プログラム
41はジョブスケジューリングの全体的な制御を行い、
スワップイン処理プログラム42、ジョブ起動処理プロ
グラム43、プレステージ処理プログラム44、および
キュー情報制御プログラム47を必要に応じて呼び出
す。スワップイン処理プログラム42はスワップインに
必要な処理を行う。
【0074】PEの割り当て判定プログラム45は、ス
ワップイン処理プログラム42およびジョブ起動処理プ
ログラム43により呼び出され、スワップアウト処理プ
ログラム46、起動予定時刻算出プログラム48、およ
び運用予定情報収集プログラム50を必要に応じて呼び
出す。PEの情報収集プログラム49は、スワップイン
処理プログラム42およびジョブ起動処理プログラム4
3により呼び出される。また、プレステージ処理プログ
ラム44は、キュー情報制御プログラム47を必要に応
じて呼び出す。これらの各プログラムが行う処理につい
ては、図13から図18に示すフローチャートを参照し
ながら後に詳しく説明する。
【0075】図8から図12までは、本実施例で用いる
各種管理テーブルのデータ構造を示す図である。図8か
ら図12までの各テーブルは、コントロール・プロセッ
サ28あるいはフロントエンド・プロセッサ22内の不
図示のメモリ等に格納される。
【0076】図8は、各々のジョブ毎に設けられるジョ
ブ情報テーブルの一例を示している。図8のジョブ情報
テーブルには、ジョブの名称、その受付時刻、要求PE
台数、要求ジョブ時間、スワップイン時刻、実行開始時
刻、スワップアウトPE台数等の管理情報が格納され
る。受付時刻とは、発生したジョブが到着して実行待ち
ジョブ管理キューに加えられた時刻であり、スワップイ
ン時刻とは、そのジョブに対してスワップインが行われ
た時刻であり、実行開始時刻とは、そのジョブの実行が
開始された時刻である。要求PE台数、要求ジョブ時間
は、それぞれそのジョブが要求している使用PE台数、
実行時間であり、優先度の算定に用いられる。スワップ
アウトPE台数は、そのジョブからスワップアウトされ
たPEの数である。
【0077】図9は、ジョブ終了予定時刻管理テーブル
の一例を示している。図9のジョブ終了予定時刻管理テ
ーブルには、各ジョブのジョブ情報テーブルの格納位置
を指すポインタjj と、そのジョブの終了予定時刻と一
つ前に終了するジョブの終了予定時刻との差jtj が組
にして格納される。ただし、jt1 はj1 に対応するジ
ョブの終了予定時刻と現在時刻との差である。ここで、
各ジョブの終了予定時刻は現在時刻を0として計算され
る。
【0078】図10は、実行待ちジョブ管理テーブルお
よび実行中ジョブ管理テーブルの一例を示している。図
10の実行待ちジョブ管理テーブル、または実行中ジョ
ブ管理テーブルには、各ジョブのジョブ情報テーブルの
格納位置を指すポインタjkと、そのジョブの優先度と
一つ前のジョブの優先度との差pk が組にして格納され
る。ただし、p1 はj1 に対応するジョブの優先度であ
る。ここで、各ジョブの優先度は、例えば(1)、
(2)、(3)式により計算される。
【0079】図11は、運用予定管理テーブルの一例を
示している。図11の運用予定管理テーブルには、シス
テム全体の利用可能PE台数の変化量ΔPEm と、その
変化が起こる時刻と一つ前の変化時刻との差stm が組
にして格納される。ただし、st1 はΔPE1 の変化が
起こる時刻と現在時刻との差である。
【0080】図12は、プレステージジョブ数がn個に
固定されている場合のプレステージ中ジョブ情報テーブ
ルの一例を示している。図12のプレステージ中ジョブ
情報テーブルには、現在、その使用予定のデータがSS
U31にプレステージされているジョブのジョブ情報テ
ーブルの格納位置を指すポインタj1 〜jn が格納され
る。
【0081】図9、11において、一つ前の事象との発
生時刻の差を用いているのは、時間の経過とともに現在
時刻を起点とした事象の発生時刻はだんだん小さくなる
が、一つ前の事象の発生時刻との差は変化しないためで
ある。これにより、時間が経過しても時刻に関する格納
データを全て更新する必要がなくなる。例えば図9のジ
ョブ終了予定時刻管理テーブルの場合、先頭のjt1
みから経過した時間を減算すればよく、他の時間jt2
等は更新しなくてもよい。図10の実行待ちジョブ管理
テーブルおよび実行中ジョブ管理テーブルにおいても、
同様の理由により一つ前のジョブの優先度との差を用い
ている。ジョブの優先度は、待ち時間の項があるため時
間の経過分だけ一様に大きくなるが、この経過分は2つ
のジョブの優先度の差を取ればキャンセルされる。
【0082】図7の各プログラムによる処理は、図9か
ら図12の管理テーブルを用いて行われる。図13は、
スケジュール制御プログラム41によるスケジュール制
御処理のフローチャートである。ジョブのスケジューリ
ングは、ジョブの到着、ジョブの実行終了、ジョブのキ
ャンセル、ジョブ優先度の変更等の事象の発生をスケジ
ュール契機として行う必要があるため、これらの各事象
の発生時にスケジュール制御プログラム41が呼び出さ
れる。
【0083】ジョブの所属キューやキュー内優先度はジ
ョブの待ち時間により変化するため、処理が開始される
と対象となるジョブの起動処理に先立ちキュー情報制御
プログラム47を呼び出して、実行待ちジョブ管理キュ
ーおよび実行中ジョブ管理キューに登録されているジョ
ブの所属キューおよびキュー内優先度を見直す。そし
て、必要に応じてそれらのジョブ管理キューを更新する
(ステップS11)。
【0084】次に発生事象が何かを判定し(ステップS
12)、その結果に対応した処理を行う。ジョブ到着事
象の場合には(ステップS12、A)、一般ジョブ、緊
急ジョブ毎に指定されるジョブ優先度決定関数に従っ
て、到着ジョブの所属キューとそのキュー内優先度を決
定し、そのジョブを実行待ちジョブ管理キューに繋ぐ
(ステップS13)。
【0085】実行中ジョブの処理終了事象の場合には
(ステップS12、B)、終了したジョブの情報を実行
中ジョブ管理キューから削除する(ステップS14)。
ジョブのキャンセル事象の場合には(ステップS12、
C)、対象ジョブのキャンセル処理を行った後に(ステ
ップS15)、実行待ちジョブであれば実行待ちジョブ
管理キューから、実行中ジョブであれば実行中ジョブ管
理キューから削除する(ステップS16)。ジョブ優先
度の変更事象であれば(ステップS12、D)、対象ジ
ョブの管理キューまたはキュー内順位を変更する(ステ
ップS17)。
【0086】こうして準備が整うと、まずスワップイン
処理プログラム42を呼び出して、スワップアウト対象
外ジョブに指定されているジョブのスワップイン処理を
行う(ステップS18)。この処理は、非優先実行ジョ
ブとして実行中に一旦スワップアウトされ、そのまま優
先実行下限キューに到着してスワップアウト対象外ジョ
ブとなったジョブのために行われる。次に、ジョブ起動
処理プログラム43を呼び出し、実行待ちジョブ管理キ
ューの優先実行ジョブの起動処理を行う(ステップS1
9)。
【0087】次に再びスワップイン処理プログラム42
によりスワップアウト対象ジョブ、すなわち実行中ジョ
ブ管理キューの非優先実行ジョブのスワップイン処理を
行い(ステップS20)、ジョブ起動処理プログラム4
3により実行待ちジョブ管理キューの非優先実行ジョブ
の起動処理を行う(ステップS21)。
【0088】そして、プレステージ処理プログラム44
を呼び出し、プレステージの見直し処理を行う(ステッ
プS22)。プレステージの見直し処理では、まず実行
待ちジョブのうち優先順位のより高いジョブのデータか
ら順に、可能な範囲でプレステージすべきデータを決定
する。次に、決定されたデータを現在プレステージされ
ているデータと比較し、必要に応じてプレステージされ
ているデータを取消したり、新しいデータのプレステー
ジ処理を行う。ステップS11の処理でジョブの優先順
位が入れ替われば、プレステージされたデータの順序も
同様に入れ替える必要があるからである。一般にジョブ
によってプレステージされるべきデータの大きさは異な
るため、SSU31に格納できるだけのデータを順にプ
レステージする。
【0089】ステップS18からS21までの処理の順
序は、本実施例によりPEを割り当てられるジョブの優
先順位に対応している。次に図14から図18までを参
照しながら、図13のステップS18〜S21の各処理
の手順を説明する。
【0090】図14は、スワップイン処理プログラム4
2による図13のステップS18、S20のスワップイ
ン処理のフローチャートである。図14において処理が
開始されると、まず指定された属性を持つジョブキュー
において、スワップアウトされているジョブのうち最も
優先度の高いものを対象ジョブ(target)に指定する
(ステップS31)。例えばステップS18の場合は実
行中の優先実行ジョブについて、ステップS20の場合
は実行中の非優先実行ジョブについて、ステップS31
の処理を行う。
【0091】次にPEの情報収集プログラム49を呼び
出し、並列計算機システム27の各PEの状態を問い合
わせる(ステップS32)。PEの状態とは、その電源
がオンかオフか、電源がオンの場合にはさらにそれが他
のジョブに割り当て中か否か等、そのPEを対象ジョブ
に割り当て可能かどうかを意味する。ここで割り当て可
能なPEの台数を調べ(ステップS33)、割り当て可
能な空きPEがあれば、対象ジョブからスワップアウト
された台数のPEの割り当て(スワップイン)が可能か
否かを判定する(ステップS34)。スワップアウトさ
れたPEの台数は、対象ジョブのジョブ情報テーブルに
格納されている。
【0092】ステップS34でPEの割り当てが可能な
場合には、空きPEを対象ジョブに割り当て、スワップ
イン処理を行う(ステップS35)。スワップイン処理
を行った場合には、再度PEの状態を問い合わせ(ステ
ップS36)、優先順位の高いジョブから順に次の対象
ジョブに指定して(ステップS37)、ステップS33
以降の処理を繰り返す。そして、指定された属性を持つ
ジョブキュー内に次の該当ジョブがなくなると、処理を
終了する。
【0093】ステップS33で割り当て可能なPEがな
い場合はスワップイン処理を終了し、ステップS34で
対象ジョブのスワップインができない場合はステップS
37以降の処理を行う。
【0094】図15は、ジョブ起動処理プログラム43
による図13のステップS19、S21のジョブの起動
処理のフローチャートである。図15において処理が開
始されると、まず指定された属性の実行待ち状態のジョ
ブキューにおいて最も優先度の高いものを対象ジョブ
(target)に指定する(ステップS41)。例えばステ
ップS19の場合は実行待ちの優先実行ジョブについ
て、ステップS21の場合は実行待ちの非優先実行ジョ
ブについて、ステップS41の処理を行う。
【0095】次にPEの情報収集プログラム49を呼び
出し、スワップイン処理の場合と同様に並列計算機シス
テム27の各PEの状態を問い合わせる(ステップS4
2)。そして割り当て可能なPEの台数を調べ(ステッ
プS43)、割り当て可能な空きPEがあれば、PEの
割り当て判定プログラム45を呼び出し、対象ジョブに
対してPEの割り当てが可能か否かを判定する(ステッ
プS44)。
【0096】ステップS44でPEの割り当てが可能な
場合には、空きPEを対象ジョブに割り当てその起動処
理を行い(ステップS45)、対象ジョブを実行待ちジ
ョブ管理キューから実行中ジョブ管理キューへ移動させ
る(ステップS46)。そして、再度PEの状態を問い
合わせ(ステップS47)、優先順位の高いジョブから
順に次の対象ジョブに指定して(ステップS48)、ス
テップS43以降の処理を繰り返す。指定された属性を
持つジョブキュー内に次の該当ジョブがなくなると、処
理を終了する。
【0097】ステップS43で割り当て可能なPEがな
い場合はジョブの起動処理を終了し、ステップS44で
対象ジョブに必要数のPEを割り当てられない場合はス
テップS48以降の処理を行う。
【0098】図16は、図15のステップS44で起動
優先ジョブへのPEの割り当ての可否を判定する処理の
フローチャートである。図16の判定処理は、PEの割
り当て判定プログラム45により行われる。起動優先ジ
ョブの場合には、次の2つの条件のうちいずれかを満た
した時に起動可能と判定する。
【0099】条件1:要求PE台数が空きPE台数以下
であり、ジョブの実行が運用予定の実行を妨害しない。
条件2:要求PE台数が空きPE台数+スワップアウト
可能PE台数以下であり、ジョブの実行が運用予定の実
行を妨害しない。
【0100】尚、条件2のスワップアウト可能PE台数
は、判定時点でスワップアウト可能なPE台数であり、
次のa)〜c)のうちの最小値である。 a)システム全体のスワップアウト可能な最大PE台数
−現在スワップアウト中の全PE台数 b)1つのジョブの起動時に許される最大スワップアウ
トPE台数 c)スワップアウト対象ジョブのうち、指定される規模
以下のジョブが使用中のPE台数 システム全体のスワップアウト可能な最大PE台数、お
よび1つのジョブの起動時に許される最大スワップアウ
トPE台数は、予めシステム管理者により決められる。
このようにスワップイン可能PE台数を制限しておけ
ば、スワップアウトの頻発によるシステム運用効率の低
下を効果的に防ぐことができる。条件2を満たした場合
には、空きPEだけでは不足するPEの台数をスワップ
アウトにより割り当て可能となるPEで補う。
【0101】図16において処理が開始されると、ジョ
ブの実行が利用可能PE台数の増減等の運用予定を妨害
するか否かを判定するために、予め運用予定の問い合わ
せを行う(ステップS51)。そして、その時点でのシ
ステム全体の空きPE台数をfree、起動優先ジョブの要
求PE台数をRPE、起動優先ジョブの予定実行時間
(要求ジョブ時間)をTIME、スワップアウト可能P
E台数をSMAX、非起動優先ジョブの起動時に許され
る最大実行時間をmaxtime とおく(ステップS52)。
システム全体の空きPE台数は、図15のステップS4
3の割り当て可能PE台数に等しい。起動優先ジョブの
要求PE台数と予定実行時間(要求ジョブ時間)は、そ
のジョブ情報テーブルに格納されている。非起動優先ジ
ョブは、実行待ちジョブのうちの起動優先ジョブ以外の
ジョブのことで、起動優先ジョブが起動不可と判定され
た時に起動の対象となる。
【0102】次にfreeとRPEの値を比較し(ステップ
S53)、freeがRPE以上の時は(ステップS53、
YES)、運用予定情報収集プログラム50を呼び出し
て、起動優先ジョブの起動が運用予定を妨げるかどうか
を調べる(ステップS54)。具体的には、現時点で起
動優先ジョブを起動した場合に、その実行終了時刻まで
にシステム全体で利用可能なPE台数が削減される予定
があるか否かを調べる。例えばあるグループのPEの電
源をオフにする等の利用可能PE台数の削減が予定され
ているのに、それまでに終了しないジョブを起動する
と、PEの削減が予定通り行えなくなり、システムの運
用予定を妨害することになる。
【0103】このとき運用予定情報収集プログラム50
は、図11の運用予定管理テーブルから利用可能PE台
数の変更が発生する時刻に関する情報(stm 等)と、
その変更台数の情報(ΔPEm 等)を収集する。図11
の運用予定管理テーブルにおいて、ΔPEm 等が正の場
合は利用可能PE台数の増加数を表し、負の場合は利用
可能PE台数の削減数を表す。
【0104】運用予定が妨害されないことが分かると、
起動優先ジョブにPEの割り当てが可能である(起動可
能)と判定し、maxtime を無限大に設定して(ステップ
S56)、処理を終了する。maxtime が無限大というこ
とは、次に起動される非起動優先ジョブの実行時間に制
限が課されないということである。
【0105】ステップS54で運用予定が妨害されるこ
とが分かると、起動予定時刻算出プログラム48を呼び
出し、運用予定を妨害せずに起動優先ジョブを起動でき
る起動予定時刻(現在時刻から起動予定時刻までの時
間)を算出して、それをstartとおく(ステップS5
7)。起動予定時刻を求める時には、他の全てのジョブ
の起動を抑止して計算する。そして、起動優先ジョブに
PEの割り当てが不可能である(起動不可)と判定し、
start の値をmaxtime に設定して(ステップS58)、
処理を終了する。
【0106】一方、ステップS53でfreeがRPEに満
たない場合は(ステップS53、NO)、sout=RPE
−freeとおき(ステップS59)、soutとSMAXの値
を比較する(ステップS60)。soutがSMAX以下で
あれば(ステップS60、YES)、ステップS54と
同様に運用予定情報収集プログラム50を呼び出して、
起動優先ジョブの起動が運用予定を妨げるかどうかを調
べる(ステップS61)。
【0107】運用予定が妨害されなければ、スワップア
ウト処理プログラム46を呼び出して、soutの数のPE
を実行中の非優先実行ジョブからスワップアウトする
(ステップS62)。そして、起動優先ジョブにPEの
割り当てが可能である(起動可能)と判定し、maxtime
を無限大に設定して(ステップS63)、処理を終了す
る。
【0108】ステップS60でsoutがSMAXを越える
時、およびステップS61で運用予定が妨害される場合
は、ステップS57以降の処理を行う。ステップS57
で算出されステップS58で設定されるmaxtime は、起
動優先ジョブが起動されないと考えられる時間であり、
換言すれば、起動優先ジョブの起動を阻害しないで他の
ジョブに許される最大ジョブ時間である。この値を非起
動優先ジョブを起動する条件として用い、起動優先ジョ
ブの起動に伴うPE利用率の低下を軽減する。
【0109】図17は、図15のステップS44で非起
動優先ジョブへのPEの割り当ての可否を判定する処理
のフローチャートである。図17の判定処理は、起動優
先ジョブを除く全ての実行待ちジョブの起動時に、PE
の割り当て判定プログラム45により行われる。非起動
優先ジョブの場合には、次の3つの条件をすべて満たし
た場合に起動可能と判定する。
【0110】条件3:要求PE台数がシステム全体の空
きPE台数以下である。 条件4:ジョブの実行時間が非起動優先ジョブの起動条
件となる最大実行時間以下である。
【0111】条件5:ジョブの実行が運用予定の実行を
妨害しない。本実施例では、起動優先ジョブの起動時に
限ってスワップアウトを許す構成を採用しているので、
非起動優先ジョブの場合には、条件2のようなスワップ
アウト可能PE台数を計算に入れた起動条件が課されな
い。非起動優先ジョブのためのスワップアウトを抑止す
ることにより、スワップアウトに起因する効率の低下を
抑えている。
【0112】図17において処理が開始されると、ジョ
ブの実行が運用予定を妨害するか否かを判定するため
に、予め運用予定の問い合わせを行う(ステップS7
1)。そして、その時点でのシステム全体の空きPE台
数をfree、非起動優先ジョブの要求PE台数をRPE、
非起動優先ジョブの予定実行時間をTIME、非起動優
先ジョブの起動時に許される最大実行時間をmaxtime と
おく(ステップS72)。
【0113】起動優先ジョブについて図16の処理が行
われた後に、次に優先度の高い非起動優先ジョブについ
て図17の処理が行われた場合は、maxtime は図16の
ステップS56、S58、S63のいずれかで既に設定
されている。それ以外の場合は、起動された非起動優先
ジョブの予定実行時間をmaxtime から減じてmaxtimeを
更新する。ただし、maxtime が無限大に設定されていた
場合は、非起動優先ジョブの予定実行時間を減じてもそ
の設定は変わらない。
【0114】次にfreeとRPEの値を比較し(ステップ
S73)、freeがRPE以上の時は(ステップS73、
YES)、続いてmaxtime とTIMEの値を比較する
(ステップS74)。maxtime がTIME以上であれば
(ステップS74、YES)、図16のステップS54
と同様に運用予定情報収集プログラム50を呼び出し
て、起動優先ジョブの起動が運用予定を妨げるかどうか
を調べる(ステップS75)。
【0115】運用予定が妨害されなければ、非起動優先
ジョブにPEの割り当てが可能である(起動可能)と判
定し(ステップS76)、処理を終了する。運用予定が
妨害される場合には、非起動優先ジョブにPEの割り当
てが不可能である(起動不可)と判定し(ステップS7
7)、処理を終了する。
【0116】ステップS73でfreeがRPEに満たない
時、およびステップS74でmaxtime がTIMEに満た
ない時は、ステップS77の処理を行う。図18は、図
16のステップS57で起動予定時刻算出プログラム4
8により行われる起動予定時刻算出処理のフローチャー
トである。図18のステップS82からS88までの処
理は、仮に設定された起動予定時刻において起動ジョブ
の要求PE台数が空きPE台数以下かどうかを確認する
空き確認処理である。また、ステップS91からS99
までの処理は、仮に設定された起動予定時刻にジョブを
起動したと想定する場合の、ジョブ終了予定時刻に至る
まで、つまり起動ジョブの実行中と想定される間におけ
る空き確認処理である。これらの2つの空き確認処理に
おいて、常に要求PE台数が空きPE台数以下となった
時、設定された仮の起動予定時刻を処理結果のstart と
して出力する。
【0117】図18において処理が開始されると、運用
予定管理テーブルから次の運用変更までの時間を読み出
してstime とおき、ジョブ終了予定時刻管理テーブルか
ら次のジョブ終了予定までの時間を読み出してjtime と
おく(ステップS81)。また、現在の空きPE台数を
free、起動優先ジョブの要求PE台数をRPE、現在時
刻を0とした起動予定時刻をstart とおく(ステップS
81)。start は最初は0に設定される。
【0118】次にstime とjtime の値を比較し(ステッ
プS82)、stime がjtime より小さい時は(ステップ
S82、YES)、start にstime を加算し、jtime か
らstime を減算する(ステップS83)。そして、時刻
start に予定されている利用可能PE台数の変化ΔPE
を運用予定管理テーブルから読み出してfreeに加算し
(ステップS84)、運用予定管理テーブル中の次の運
用変更までの時間をstime とする(ステップS85)。
ステップS84で、運用変更の内容がシステムの縮退や
停止である場合にはΔPE<0であり、システムの拡張
である場合にはΔPE>0である。そして、RPEがfr
eeより大きい間はステップS82以降の処理を繰り返
す。
【0119】ステップS82でstime がjtime 以上の時
は(ステップS82、NO)、start にjtime を加算
し、stime からjtime を減算する(ステップS86)。
そして、時刻start に終了する予定のジョブの使用PE
台数αを、ジョブ終了予定時刻管理テーブルからポイン
タにより指されるジョブ情報テーブルから読み出してfr
eeに加算し(ステップS87)、ジョブ終了予定時刻管
理テーブル中の次のジョブ終了予定までの時間をjtime
とする(ステップS88)。そして、RPEがfreeより
大きい間はステップS82以降の処理を繰り返す。
【0120】RPEがfree以下になると、次に運用予定
管理テーブルを参照して、時刻start 以降に利用可能P
E台数が変動するか否かを調べる(ステップS89)。
利用可能PE台数の変動がない場合は(ステップS8
9、type1)、start を起動優先ジョブの起動予定時刻
として(ステップS90)、処理を終了する。この場合
には、ジョブの起動後に利用可能PE台数が削減される
恐れがないため、ステップS91以降のジョブの実行中
における空き確認処理を行う必要がない。
【0121】ステップS89で利用可能PE台数の変動
がある場合は(ステップS89、type2)、起動優先ジ
ョブの実行時間をジョブ情報テーブルから読み出してel
apsとおき(ステップS91)、stime とjtime の値を
比較する(ステップS92)。stime がjtime より小さ
い時は(ステップS92、YES)、続いてelaps とst
ime の値を比較し(ステップS93)、elaps がstime
以下であれば(ステップS93、NO)、start を起動
優先ジョブの起動予定時刻として(ステップS90)、
処理を終了する。
【0122】ステップS93でelaps がstime より大き
い時は(ステップS93、YES)、時刻start から時
間stime 後に予定されている利用可能PE台数の変化Δ
PEを運用予定管理テーブルから読み出してfreeに加算
し(ステップS94)、運用予定管理テーブル中の次の
運用変更までの時間をstime に加算する(ステップS9
5)。そして、RPEとfreeの値を比較し(ステップS
99)、RPEがfree以下であれば(ステップS99、
YES)、ステップS92以降の処理を繰り返す。
【0123】ステップS92でstime がjtime 以上の時
は(ステップS92、NO)、続いてelaps とjtime の
値を比較し(ステップS96)、elaps がjtime 以下で
あれば(ステップS96、NO)、start を起動優先ジ
ョブの起動予定時刻として(ステップS90)、処理を
終了する。
【0124】ステップS96でelaps がjtime より大き
い時は(ステップS96、YES)、時刻start から時
間jtime 後に終了する予定のジョブの使用PE台数α
を、ジョブ終了予定時刻管理テーブルからポインタによ
り指されるジョブ情報テーブルから読み出してfreeに加
算し(ステップS97)、ジョブ終了予定時刻管理テー
ブル中の次のジョブ終了予定までの時間をjtime に加算
する(ステップS98)。そして、RPEとfreeの値を
比較し(ステップS99)、RPEがfree以下であれば
(ステップS99、YES)、ステップS92以降の処
理を繰り返す。
【0125】ステップS99でRPEがfreeより大きい
時は(ステップS99、NO)、起動されたジョブの実
行中に利用可能PE台数が削減される予定があるので、
start を設定し直すためにステップS82以降の処理を
繰り返す。したがって、利用可能PE台数の変動が予定
されている場合は、ステップS93でstime がelaps以
上になるか(ステップS93、NO)、またはステップ
S96でjtime がelaps 以上になった時に(ステップS
96、NO)、起動予定時刻が決定される。
【0126】尚、本実施例では運用目的等を考慮し、経
過時間、使用PEのCPU時間の最大値、使用PEの平
均CPU時間、および使用PEの総CPU時間のいずれ
かをジョブ実行時間として処理を行う。
【0127】次に図19から図26に示される具体例を
用いて、起動予定時刻算出処理をさらに詳しく説明す
る。図19は、利用可能なPE台数が変動しない場合の
起動優先ジョブの起動予定時刻の算出例を説明する図で
ある。新たにジョブを起動しない場合には、空きPE台
数freeは実行中ジョブの終了に伴い増加する。現在時刻
をt0=0、現在の空きPE台数をf0、i番目に終了
するジョブの終了時刻をti、その使用PE台数(図1
8のα)をPEi(i=1,2,3,4,5)とする
と、時刻tiにおける空きPE台数fiは、fi=f0
+PE1+PE2+・・・ +PEiとなる(ステップS8
7)。したがって、起動優先ジョブの要求PE台数RP
Eがf1<RPE≦f2の関係を満たしたとすると、他
の全てのジョブの起動を抑止した場合の起動優先ジョブ
の起動予定時刻は時刻t2となる(ステップS90)。
【0128】図19の場合のジョブ終了予定時刻管理テ
ーブルは図22に示されている。図22のジョブ終了予
定時刻管理テーブルには、前事象との発生時刻の差とし
て、t1、t2−t1、t3−t2、t4−t3、t5
−t4が順に格納されている。またそれらに対応して、
それぞれのジョブのジョブ情報テーブルの先頭アドレス
を指すポインタが格納されている。ステップS87で加
算される使用PE台数PEiとしては、ジョブ終了予定
時刻管理テーブルの各ポインタを用いて検索される各ジ
ョブ情報テーブル内の要求PE台数を用いる。
【0129】図20は、利用可能なPE台数が変動する
場合の起動優先ジョブの起動予定時刻の算出例を説明す
る図である。新たにジョブを起動しない場合には、空き
PE台数freeは実行中ジョブの終了と利用可能PE台数
の変動により変化する。現在時刻をt0=0、現在の空
きPE台数をf0、i番目の空きPE台数の変化事象の
発生時刻をti、そのPE台数の変化(図18のΔPE
またはα)をPEi(i=1,2,3,4,5,6,
7,8)とすると、時刻tiにおける空きPE台数fi
は、fi=f0+PE1+PE2+・・・ +PEiとなる
(ステップS84、S87、S94、S97)。ただ
し、PE1<0、PE4<0である。また、起動優先ジ
ョブの要求PE台数RPEはf1<RPE<f0の関係
を満たしており、起動優先ジョブの実行時間elaps は時
間t1より長い。
【0130】このときは、start =0のままでRPE<
f0=freeが成り立つので、ステップS82からS88
までの処理を行わずに直ちにステップS89へ進む。と
ころが、時刻t0=0で起動優先ジョブを起動した場合
には、時刻t1での利用可能PE台数の削減は行えない
ことになる(ステップS93、YES、ステップS9
9、NO)。したがって、システムの停止や利用PE台
数の部分的削減を運用予定通りに行うためには、ジョブ
実行中の空きPE台数fiが常にRPE以上になるよう
に、start を設定し直さなければならない。そこでステ
ップS82以降の処理を繰り返し、最終的に時刻t6を
起動予定時刻に設定して(ステップS90)処理を終了
する。時刻t6にジョブを起動すれば、その実行中であ
る時刻t7においても空きPE台数f7がRPEより大
きいので(ステップS99、YES)、運用予定が妨害
されることはない。
【0131】図21は、利用可能なPE台数が変動する
場合の起動予定時刻の他の算出例を説明する図である。
図21の起動優先ジョブの要求PE台数RPEは10、
ジョブ実行時間elaps は180である。現在時刻を0と
すると、空きPE台数freeが14となる時刻50におい
て起動優先ジョブの起動が可能になるが、この場合終了
予定の時刻230より前に、時刻180でPE台数が削
減されてfreeが8になるため、時刻50で起動優先ジョ
ブを起動することはできない。図21の場合には、実行
中にPE台数が削減されないように、時刻280が起動
予定時刻に指定される。
【0132】図23は、図21の時刻0におけるジョブ
終了予定時刻管理テーブルとジョブ情報テーブルのデー
タの関係を示している。ジョブ終了予定時刻管理テーブ
ルには、i番目のジョブの終了予定時刻とその一つ前の
ジョブの終了予定時刻との差jt(i)が終了予定順に
格納されており、i番目のジョブのジョブ情報テーブル
には他のデータとともにその使用PE台数jp(i)が
格納されている。ただし、jt(1)=20は時刻0か
ら1番目のジョブの終了予定時刻までの時間であり、1
番目のジョブの終了予定時刻に等しい。jt(9)は無
限大で、実行中のジョブがないことを表す。
【0133】図24は、図21の時刻0における運用予
定管理テーブルを示している。図24の運用予定管理テ
ーブルには、i番目の利用可能PE台数の変更時刻とそ
の一つ前の利用可能PE台数の変更時刻との差st
(i)が格納されており、それに対応してi番目の利用
可能PE台数の変化sp(i)が格納されている。ただ
し、st(1)=180は時刻0から1番目の変更時刻
までの時間であり、1番目の変更時刻に等しい。sp
(1)=−20、sp(2)=−30はともに負であ
り、利用可能PE台数が削減されることを示している。
sp(3)は無限大で、以後の利用可能PE台数の変動
がないことを表す。
【0134】図25および図26は、図21の時刻0に
おける図18の起動予定時刻算出処理の過程で、変数R
PE、elaps 、start 、free、stime 、jtime が変化す
る様子を示している。以下、図18のフローに従って起
動予定時刻算出処理を説明する。
【0135】処理が開始されると、図25に示すよう
に、まずRPE=10、start =0、free=4、stime
=st(1)=180、jtime =jt(1)=20とお
く(ステップS81)。ここで、RPE>free、stime
>jtime なので(ステップS82、NO)、start =st
art +jtime =20、stime =stime −jtime =160
となり(ステップS86)、free=free+jp(1)=
8となる(ステップS87)。次にjtime =jt(2)
=30とおき(ステップS88)、RPE>freeなので
ステップS82に戻る。
【0136】次にstime >jtime なので(ステップS8
2、NO)、start =start +jtime =50、stime =
stime −jtime =130となり(ステップS86)、fr
ee=free+jp(2)=14となる(ステップS8
7)。次にjtime =jt(3)=50とおき(ステップ
S88)、RPE<freeなのでステップS89に進む。
【0137】ここで、利用可能PE台数の変動が予定さ
れているので(ステップS89、type2)、elaps =1
80とおく(ステップS91)。次に、stime >jtime
、elaps >jtime なので(ステップS92、NO、ス
テップS96、YES)、free=free+jp(3)=1
8となり(ステップS97)、jtime =jtime +jt
(4)=80となる(ステップS98)。そして、RP
E<freeなので(ステップS99、YES)、ステップ
S92に戻る。
【0138】ここで、再びstime >jtime 、elaps >jt
ime なので(ステップS92、NO、ステップS96、
YES)、free=free+jp(4)=22となり(ステ
ップS97)、jtime =jtime +jt(5)=100と
なる(ステップS98)。そして、RPE<freeなので
(ステップS99、YES)、ステップS92に戻る。
【0139】ここで、さらに再びstime >jtime 、elap
s >jtime なので(ステップS92、NO、ステップS
96、YES)、free=free+jp(5)=28となり
(ステップS97)、jtime =jtime +jt(6)=2
30となる(ステップS98)。そして、RPE<free
なので(ステップS99、YES)、ステップS92に
戻る。
【0140】ここで、stime <jtime となるので(ステ
ップS92、YES)、ステップS93に進み、elaps
>stime なので(ステップS93、YES)、free=fr
ee+sp(1)=8となり(ステップS94)、stime
=stime +st(2)=1930となる(ステップS9
5)。ステップS94でfreeが大幅に減少してRPE>
freeとなったので(ステップS99、NO)、start を
設定し直すためにステップS82に戻る。図26に示す
ように、次にstime >jtime なので(ステップS82、
NO)、start =start +jtime =280、stime =st
ime −jtime =1700となり(ステップS86)、fr
ee=free+jp(6)=12となる(ステップS8
7)。次にjtime =jt(7)=90とおき(ステップ
S88)、RPE<freeなのでステップS89に進む。
【0141】ここで、利用可能PE台数の変動が予定さ
れているので(ステップS89、type2)、elaps =1
80とおく(ステップS91)。次に、stime >jtime
、elaps >jtime なので(ステップS92、NO、ス
テップS96、YES)、free=free+jp(7)=2
0となり(ステップS97)、jtime =jtime +jt
(8)=130となる(ステップS98)。そして、R
PE<freeなので(ステップS99、YES)、ステッ
プS92に戻る。
【0142】ここで、stime >jtime 、elaps >jtime
なので(ステップS92、NO、ステップS96、YE
S)、free=free+jp(8)=30となり(ステップ
S97)、jtime =jtime +jt(9)=∞(無限大)
となる(ステップS98)。そして、RPE<freeなの
で(ステップS99、YES)、ステップS92に戻
る。
【0143】次にstime <jtime となったので(ステッ
プS92、YES)、ステップS93に進み、elaps <
stime なので(ステップS93、NO)、起動予定時刻
をstart =280に設定し(ステップS90)、処理を
終了する。
【0144】次に、本発明のスケジュール制御装置を用
いて計算流体力学(CFD)における科学技術計算を行
った場合のシミュレーション実験の結果を、図27から
図31までを参照しながら説明する。ここでは、流体と
して特に空気を扱う計算空気力学におけるシミュレーシ
ョンを行った。
【0145】計算空気力学で処理に使用するCFDプロ
グラムでは、一般に格子点毎に計算項目や必要なデータ
が決まっているため、使用するメモリ量やCPU時間は
格子点の数に依存する。
【0146】シミュレーションで用いたCFDプログラ
ムでは、格子点10万点当たりの計算に3600秒程度
のCPU時間を必要とし、1格子点当たりのデータ量が
200MB(メガバイト)から400MBの範囲のジョ
ブが多い。また、処理の並列化に伴うメモリオーバヘッ
ド率は1.2から2.0の程度である。ここで、並列化
に伴うメモリオーバヘッド率とは、並列化していないプ
ログラムが使用するメモリ量(基本メモリ量)に対する
並列化したプログラムが使用するメモリ量(実メモリ
量)の割合を意味する。CFDプログラムのこれらの特
徴を考慮し、ジョブの基本メモリ量、1格子点当たりの
データ量、メモリオーバヘッド率によりジョブのワーク
ロードを定義した。
【0147】図27は、ジョブの発生に用いた基本メモ
リ量の確率密度分布を示している。基本メモリ量xに対
する確率密度p(x)として、シミュレーションでは8
0MB〜30000MBの範囲におけるTYPE1〜3
の3種類のβ分布(ベータ分布)を用いた。タイプ(T
YPE)1、2、3のβ分布の平均基本メモリ量は、そ
れぞれ1840MB、2800MB、6064MBであ
る。
【0148】図28は、ジョブの発生に用いた1格子点
当たりのデータ量の確率密度分布を示している。1格子
点当たりのデータ量yに対する確率密度p(y)とし
て、シミュレーションでは200MB〜400MBの範
囲におけるTYPE1および2の2種類のβ分布を用い
た。タイプ1、2のβ分布の1格子点当たりのデータ量
の平均値は、それぞれ333.3MB、266.6MB
である。
【0149】図29は、ジョブの発生に用いたメモリオ
ーバヘッド率の確率密度分布を示している。メモリオー
バヘッド率zに対する確率密度p(z)として、シミュ
レーションでは1.2〜2.0の範囲におけるタイプ1
および2の2種類のβ分布を用いた。タイプ1、2のβ
分布のメモリオーバヘッド率の平均値は、それぞれ1.
734、1.466である。
【0150】並列処理によりジョブが必要とする実メモ
リ量は基本メモリ量にメモリオーバヘッド率を乗算する
ことにより得られ、実メモリ量を1PE当たりのメモリ
量(主記憶量)で割ればジョブの要求PE台数が決めら
れる。シミュレーションでは、基本メモリ量の上限を3
0GB(ギガバイト)、1PE当たりの主記憶量を25
0MB、システム全体のPE総数を140とした。30
GBの基本メモリ量は120台のPEによるジョブに相
当するが、メモリオーバヘッド率を乗じると実メモリ量
はさらに大きくなり、その要求PE台数が140を越え
ることもあり得る。しかし、図27が示すように、基本
メモリ量が30GBのジョブが発生する確率はかなり小
さい。
【0151】ジョブの基本メモリ量を1格子点当たりの
データ量で割ればジョブの計算格子点数が得られ、これ
に計算格子点10万点当たり3600秒のCPU時間を
乗算して得られる時間を、そのジョブが要求するCPU
時間とした。
【0152】また、システム全体の処理能力に対する入
力負荷の割合を負荷率と定義した。例えば負荷率が1.
0のときは入力負荷が処理能力と同等であることを意味
するが、必ずしも実行待ちのジョブがないことを意味す
るわけではない。処理能力を100%生かせずに、空き
PEが発生するようなスケジューリングが行われると、
実行待ちのジョブが増えていくことになる。
【0153】そして、デバッグジョブが発生する割合は
デバッグジョブ発生率と定義した。ここでデバッグジョ
ブとは、プログラムが正常に動くことを確認するため
に、実際の実行時間の5%程度の間だけそのプログラム
を実行させるようなジョブを指す。デバッグジョブの使
用メモリ量は、プログラムを100%実行させるジョブ
の場合と変わらないので、その要求PE台数も変わらな
い。しかし、実行時間が短いのでその要求CPU時間は
短くなる。
【0154】図30および図31は、CFDプログラム
によるシミュレーション結果を示している。図30およ
び図31において、1/1/1等はジョブの発生に用い
た確率密度分布の種類を表し、基本メモリ量のタイプ/
1格子点当たりのデータ量のタイプ/メモリオーバヘッ
ド率のタイプを意味する。例えば基本メモリ量の確率密
度分布がタイプ3、1格子点当たりのデータ量の確率密
度分布がタイプ2、メモリオーバヘッド率の確率密度分
布がタイプ1であるようなジョブを発生させた場合は、
3/2/1と表記される。3/*/*は、3/1/1、
3/1/2、3/2/1、3/2/2の分布を用いた結
果の平均をとることを意味する。1/*/*、2/*/
*についても同様である。
【0155】図30は、負荷率を変えたときのシステム
全体の平均使用PE台数の変化を示す図である。一般に
は、負荷率が高くなるにつれて実行待ちの優先実行ジョ
ブが多くなり、起動優先ジョブを処理しても次のジョブ
が起動優先ジョブとなるため、起動優先ジョブが常にあ
る状態が続く。その結果、起動優先ジョブの起動のため
に他のジョブの起動を抑止したり、スワップアウトを行
ったりすることが多くなる。したがってシステムの利用
効率が低下し、PEの平均使用台数が減少する傾向にあ
る。しかしながら、本発明のスケジュール制御装置によ
るシミュレーションでは、図30が示すように、負荷率
が1以上になってもPEの平均使用台数はほとんど減少
せず、PEが有効に利用されていることが分かる。
【0156】また、発生したジョブが大規模ジョブであ
るほど、すなわち要求PE台数や要求CPU時間が大き
なジョブであるほど起動されにくく、システム効率の低
下の度合いは大きくなる。例えばジョブの要求PEが常
に1台の場合は直ちに起動され、空きPEはなくなる
が、要求PE台数が増加するにつれて起動時刻が遅れる
可能性が高くなるため、空きPEが増加する。また、起
動優先ジョブの起動のための他のジョブの起動抑止、ス
ワップアウトによるシステム効率の低下の度合いは、ジ
ョブの規模に比例して大きくなる。
【0157】例えば1/1/1の場合はジョブの規模は
比較的小さく、負荷率が1以上のときの平均使用PE台
数はシステムの総PE台数である140に近い。これに
対して、3/2/2の場合はジョブの規模が比較的大き
く、負荷率が1以上になっても平均使用PE台数は13
0に満たない。1/1/1の場合はデバッグジョブ発生
率を0.8として、ジョブの平均CPU時間をさらに短
くしており、これがシステム効率の向上につながってい
る。3/2/2の場合はデバッグジョブ発生率が0であ
り、発生したジョブは全て実際に必要な実行時間の間P
Eを使用するので、デバッグジョブが発生する場合より
ジョブの平均CPU時間は長くなる。
【0158】図31は、本発明のスケジュール制御装置
における起動予定時刻設定方式の効果を示す図である。
図31(a)、(b)は、それぞれ負荷率を1.0、
2.0としてシミュレーションを行った場合のシステム
全体の平均使用PE台数を示している。「設定なし」
は、本発明のスケジューリング方式のうち起動予定時刻
設定方式を採用しなかった場合、すなわち、起動優先ジ
ョブが起動されるまで他の全てのジョブの起動を抑止し
た場合の結果である。「設定あり」は、起動予定時刻設
定方式を採用して、起動優先ジョブの起動予定時刻まで
に終わる他のジョブの起動を許した場合の結果である。
【0159】図31(a)および(b)の1/*/*、
2/*/*、3/*/*のそれぞれの場合において、
「設定なし」の結果より「設定あり」の結果の方がPE
の平均使用台数が大きくなることが分かる。これらの結
果は、並列計算機システムのジョブスケジューリングに
おける本発明の起動予定時刻設定方式の顕著な効果を示
している。
【0160】本実施例では、実行待ちの優先実行ジョブ
のうち、最も優先度の高い起動優先ジョブの起動時に限
ってスワップアウトを許しているが、本発明はこの構成
に限られず、非起動優先ジョブであっても実行待ちの優
先実行ジョブであれば、全てその起動時にスワップアウ
トを許す構成とすることも可能である。具体的には、起
動優先ジョブの起動予定時刻が設定されたとき、条件
3、4、5を満たした場合だけでなく条件2、4を満た
した場合にも、次に優先度の高い優先実行ジョブを起動
させるようにすればよい。
【0161】
【発明の効果】本発明によれば、システム内に設置され
たPE台数の範囲内で、任意台数のPEによるジョブの
実行が可能である。各ジョブが使用するPEを予め限定
せずに柔軟に割り当てるので、従来のように後続ジョブ
に割り当てるPEを確保するために、PEを休止させる
ことがない。また、利用可能な空きPEがあれば、全て
の実行待ちジョブに対し起動可能か否かを調べるため、
PEの利用率が向上する。
【0162】ジョブの所属キューやキュー内ジョブ優先
度はシステム資源要求量の関数の形で自由に定義できる
ため、到着順処理、特定規模のジョブの優先処理だけで
なく、システム資源要求量に応じた柔軟な優先度の設定
が可能である。
【0163】ジョブはその待ち時間に応じて優先度を上
げることができるため、要求PE台数の多いジョブであ
っても一定時間内で実行されることが期待できる。ジョ
ブの実行時間や終了時刻をテーブルに格納し、次のジョ
ブの起動時に参照することにより、時間に関する情報が
統一的に管理される。特に、優先実行ジョブの起動予定
時刻を設定し、その時刻までに終了する予定の他のジョ
ブを先に起動することにより、システム資源利用率の大
幅な低下が防止される。
【0164】スワップアウトジョブを決定する場合、大
規模ジョブをスワップアウトの対象から外し、スワップ
アウトPEの総数を制限することにより、スワップアウ
トに起因するシステムオーバヘッドの増加とPE利用率
の低下が軽減される。
【0165】また、システム停止等の運用予定を考慮し
たPEの割り当てを行うことにより、システム運用スケ
ジュールを予定通りに遂行することが可能となる。さら
に、システム管理者によるジョブの所属キューやキュー
内優先度の変更により、ジョブの緊急度および重要度を
反映した優先処理が可能となる。
【図面の簡単な説明】
【図1】本発明の原理図である。
【図2】本発明の実施例の構成図である。
【図3】実施例における動的優先度制御方式を示す図で
ある。
【図4】実施例における優先度見直し処理のフローチャ
ートである。
【図5】実施例におけるジョブ管理キューを示す図であ
る。
【図6】実施例におけるプロセッサ要素の割り当て優先
度を示す図である。
【図7】実施例におけるプログラム構成を示す図であ
る。
【図8】実施例におけるジョブ情報テーブルのデータ構
造を示す図である。
【図9】実施例におけるジョブ終了予定時刻管理テーブ
ルのデータ構造を示す図である。
【図10】実施例における実行待ちジョブ管理テーブル
および実行中ジョブ管理テーブルのデータ構造を示す図
である。
【図11】実施例における運用予定管理テーブルのデー
タ構造を示す図である。
【図12】実施例におけるプレステージ中ジョブ情報テ
ーブルのデータ構造を示す図である。
【図13】実施例によるスケジュール制御のフローチャ
ートである。
【図14】実施例によるスワップイン処理のフローチャ
ートである。
【図15】実施例によるジョブの起動処理のフローチャ
ートである。
【図16】実施例によるプロセッサ要素の割り当て可否
判定処理のフローチャート(その1)である。
【図17】実施例によるプロセッサ要素の割り当て可否
判定処理のフローチャート(その2)である。
【図18】実施例による起動予定時刻算出処理のフロー
チャートである。
【図19】実施例における起動予定時刻の算出例を示す
図(その1)である。
【図20】実施例における起動予定時刻の算出例を示す
図(その2)である。
【図21】実施例における起動予定時刻の算出例を示す
図(その3)である。
【図22】実施例におけるジョブ終了予定時刻管理テー
ブルの一例を示す図である。
【図23】実施例におけるジョブ終了予定時刻管理テー
ブルとジョブ情報テーブルのデータの対応関係を示す図
である。
【図24】実施例における運用予定管理テーブルの一例
を示す図である。
【図25】実施例による起動予定時刻算出処理における
変数値の変化を示す図(その1)である。
【図26】実施例による起動予定時刻算出処理における
変数値の変化を示す図(その2)である。
【図27】シミュレーションに用いた基本メモリ量の分
布を示す図である。
【図28】シミュレーションに用いた格子点当たりのデ
ータ量の分布を示す図である。
【図29】シミュレーションに用いたメモリオーバヘッ
ド率の分布を示す図である。
【図30】負荷率シミュレーションの結果を示す図であ
る。
【図31】起動予定時刻設定の効果を示す図である。
【図32】従来のジョブスケジュール方式を示す図であ
る。
【符号の説明】
1 スケジュール制御手段 2 優先度制御手段 3 優先度変更手段 4 割り当て制御手段 5 割り当て判定手段 6 起動予定設定手段 7 実行中断手段 8 実行再開手段 9 プレステージ制御手段 21 運用スケジュールテーブル 22 フロントエンド・プロセッサ 23−1、23−2 自動化プログラム 24−1、24−2 スケジューラ 25 ユーザプログラム 26 磁気ディスク 27 並列計算機システム 28 コントロール・プロセッサ 29 クロスバ・ネットワーク 30−1〜30−n プロセッサ要素 31 高速システム記憶ユニット 41 スケジュール制御プログラム 42 スワップイン処理プログラム 43 ジョブ起動処理プログラム 44 プレステージ処理プログラム 45 プロセッサ要素の割り当て判定プログラム 46 スワップアウト処理プログラム 47 キュー情報制御プログラム 48 起動予定時刻算出プログラム 49 プロセッサ要素の情報収集プログラム 50 運用予定情報収集プログラム

Claims (28)

    【特許請求の範囲】
  1. 【請求項1】 複数の処理要素が並列に処理を行う並列
    処理システムにおいて、 優先レベルの異なる複数の実行待ちジョブキューを有
    し、該優先レベルおよびキュー内優先度に応じて該実行
    待ちジョブキュー内の実行待ちジョブの起動順位を管理
    する優先度制御手段(2)と、 前記複数の実行待ちジョブキューのうち、所定優先レベ
    ル以上の前記実行待ちジョブキュー内の実行待ちジョブ
    に優先的に前記処理要素を割り当てる割り当て制御手段
    (4)と、 前記優先度制御手段(2)と割り当て制御手段(4)を
    用いて、前記並列処理システムにおけるジョブの実行の
    スケジューリングを行うスケジュール制御手段(1)
    と、 を備えることを特徴とするスケジュール制御装置。
  2. 【請求項2】 前記割り当て制御手段(4)は、前記起
    動順位に従って可能な限り多くの前記実行待ちジョブに
    未使用の前記処理要素を割り当てることを特徴とする請
    求項1記載のスケジュール制御装置。
  3. 【請求項3】 指定された前記実行待ちジョブの重要度
    に応じて、該実行待ちジョブの所属する実行待ちジョブ
    キューおよびそのキュー内優先度を変更する優先度変更
    手段(3)をさらに備えることを特徴とする請求項1記
    載のスケジュール制御装置。
  4. 【請求項4】 前記実行待ちジョブの所属する前記実行
    待ちジョブキューおよびそのキュー内優先度とプレステ
    ージ容量とに応じて決められる順序に従って、該実行待
    ちジョブが使用するデータを予め転送速度の速い媒体に
    転送するプレステージ制御手段(9)をさらに備えるこ
    とを特徴とする請求項1記載のスケジュール制御装置。
  5. 【請求項5】 前記優先度制御手段(2)は、前記実行
    待ちジョブの所属する実行待ちジョブキューおよびその
    キュー内優先度を、該実行待ちジョブの要求する資源量
    と該実行待ちジョブが発生してからの待ち時間と該実行
    待ちジョブの実行時間のうち、少なくとも1つを用いて
    決定することを特徴とする請求項1記載のスケジュール
    制御装置。
  6. 【請求項6】 前記実行待ちジョブの要求する資源量
    は、該実行待ちジョブを実行するために必要な処理要素
    の数であることを特徴とする請求項5記載のスケジュー
    ル制御装置。
  7. 【請求項7】 前記優先度制御手段(2)は、時間の経
    過に伴い前記実行待ちジョブの起動順位を動的に見直
    し、前記待ち時間が長い実行待ちジョブほど前記起動順
    位を早めることを特徴とする請求項5記載のスケジュー
    ル制御装置。
  8. 【請求項8】 未使用の前記処理要素の数が前記実行待
    ちジョブキュー内の実行待ちジョブを実行するために必
    要な前記処理要素の数以上か否かを判定する割り当て判
    定手段(5)と、 前記割り当て判定手段(5)が、前記未使用の処理要素
    の数は前記所定優先レベル以上の実行待ちジョブキュー
    内の実行待ちジョブを実行するために必要な処理要素の
    数に満たないと判定したとき、実行中のジョブを中断す
    る実行中断手段(7)とをさらに備え、 前記割り当て制御手段(4)は、中断された前記実行中
    のジョブが使用していた前記処理要素を、前記所定優先
    レベル以上の実行待ちジョブキュー内の実行待ちジョブ
    に割り当てることを特徴とする請求項1記載のスケジュ
    ール制御装置。
  9. 【請求項9】 前記割り当て判定手段(5)が、前記所
    定優先レベル以上の実行待ちジョブキュー内の実行待ち
    ジョブを起動するために必要な前記処理要素の数が、前
    記未使用の処理要素の数と中断可能処理要素数の合計以
    内であると判定したとき、前記実行中断手段(7)は前
    記実行中のジョブを中断することを特徴とする請求項8
    記載のスケジュール制御装置。
  10. 【請求項10】 前記割り当て判定手段(5)は、前記
    並列処理システム内で同時に中断される処理要素の最大
    数と、1つの実行待ちジョブを起動するために中断され
    る処理要素の最大数と、必要な処理要素数または実行時
    間のうち少なくとも1つを用いて指定される規模以下の
    ジョブが使用中の処理要素の数とを基にして、前記中断
    可能処理要素数を決めることを特徴とする請求項9記載
    のスケジュール制御装置。
  11. 【請求項11】 前記優先度制御手段(2)は、優先レ
    ベルの異なる複数の実行中ジョブキューを有し、該優先
    レベルおよびキュー内優先度に応じて該実行中ジョブキ
    ュー内の実行中ジョブの優先順位を管理し、時間の経過
    に伴い該優先順位を動的に見直すことを特徴とする請求
    項1記載のスケジュール制御装置。
  12. 【請求項12】 指定された前記実行中ジョブの重要度
    に応じて、該実行中ジョブの所属する実行中ジョブキュ
    ーおよびそのキュー内優先度を変更する優先度変更手段
    (3)をさらに備えることを特徴とする請求項11記載
    のスケジュール制御装置。
  13. 【請求項13】 未使用の前記処理要素の数が前記実行
    待ちジョブキュー内の実行待ちジョブを実行するために
    必要な前記処理要素の数以上か否かを判定する割り当て
    判定手段(5)と、 前記割り当て判定手段(5)が、前記未使用の処理要素
    の数は前記所定優先レベル以上の実行待ちジョブキュー
    内の実行待ちジョブを実行するために必要な処理要素の
    数に満たないと判定したとき、前記複数の実行中ジョブ
    キューのうち、所定優先レベルに満たない前記実行中ジ
    ョブキュー内の実行中のジョブを中断する実行中断手段
    (7)とをさらに備え、 前記割り当て制御手段(4)は、中断された前記実行中
    のジョブが使用していた前記処理要素を、前記所定優先
    レベル以上の実行待ちジョブキュー内の実行待ちジョブ
    に割り当てることを特徴とする請求項11記載のスケジ
    ュール制御装置。
  14. 【請求項14】 中断された前記実行中のジョブが、前
    記所定優先レベル以上の前記実行中ジョブキューに属す
    るとき、前記実行待ちジョブキュー内の実行待ちジョブ
    より優先的に前記処理要素を割り当てて、中断された該
    実行中のジョブを再開する実行再開手段(8)をさらに
    備えることを特徴とする請求項13記載のスケジュール
    制御装置。
  15. 【請求項15】 複数の処理要素が並列に処理を行う並
    列処理システムにおいて、 優先度の高い未実行処理の開始時刻までに実行を終了す
    る予定の新規処理に対しては、前記処理要素の割り当て
    が可能と判定し、該開始時刻までに終了しない予定の新
    規処理に対しては、前記処理要素の割り当てが不可能と
    判定する割り当て判定手段(5)と、 前記割り当て判定手段(5)の判定結果を用いて、前記
    並列処理システムにおける処理の実行のスケジューリン
    グを行うスケジュール制御手段(1)と、 を備えることを特徴とするスケジュール制御装置。
  16. 【請求項16】 前記未実行処理を実行するために使用
    可能な前記処理要素の数が、前記未実行処理のために必
    要な処理要素の数以上となる時刻を求めて、前記開始時
    刻とする起動予定設定手段(6)をさらに備えることを
    特徴とする請求項17記載のスケジュール制御装置。
  17. 【請求項17】 前記使用可能な処理要素の数が変動す
    ることが予定されているとき、前記起動予定設定手段
    (6)は、変動後の使用可能な前記処理要素の数が前記
    未実行処理のために必要な処理要素の数以上となるよう
    に前記開始時刻を設定することを特徴とする請求項16
    記載のスケジュール制御装置。
  18. 【請求項18】 前記使用可能な処理要素の数は、前記
    並列処理システム全体の停止または前記並列処理システ
    ムにおける一部の前記処理要素の停止により変動するこ
    とを特徴とする請求項17記載のスケジュール制御装
    置。
  19. 【請求項19】 複数の処理要素が並列に処理を行う並
    列処理システムにおいて、 使用可能な前記処理要素の数が変動することが予定され
    ているとき、変動後の前記使用可能な処理要素の数と、
    未実行処理を実行するために必要な前記処理要素の数を
    基にして、該未実行処理への前記処理要素の割り当てが
    可能か否かを判定する割り当て判定手段(5)と、 前記割り当て判定手段(5)の判定結果を用いて、前記
    並列処理システムにおける処理の実行のスケジューリン
    グを、運用予定に従って行うスケジュール制御手段
    (1)と、 を備えることを特徴とするスケジュール制御装置。
  20. 【請求項20】 前記割り当て判定手段(5)は、前記
    並列処理システムにおいて使用中および使用可能である
    前記処理要素を含めた利用可能な前記処理要素の数と、
    前記並列処理システムにおいて使用中の前記処理要素の
    数とを基にして、前記使用可能な処理要素の数を求める
    ことを特徴とする請求項19記載のスケジュール制御装
    置。
  21. 【請求項21】 複数の処理要素により並列に処理され
    るジョブのスケジューリングにおいて、 発生した実行待ちジョブの起動順位を優先レベルの異な
    る複数の実行待ちジョブキューおよびキュー内優先度に
    より管理し、 時間の経過とともに前記実行待ちジョブの属する前記実
    行待ちジョブキューおよびそのキュー内優先度を見直し
    て、発生してからの待ち時間が長いジョブほど前記起動
    順位を高く設定し、 前記起動順位に従って起動された実行中ジョブの優先順
    位を優先レベルの異なる複数の実行中ジョブキューおよ
    びキュー内優先度により管理し、 所定優先レベル以上の前記実行中ジョブキュー内の実行
    中ジョブ、所定優先レベル以上の前記実行待ちジョブキ
    ュー内の実行待ちジョブ、所定優先レベルに満たない前
    記実行中ジョブキュー内の実行中ジョブ、所定優先レベ
    ルに満たない前記実行待ちジョブキュー内の実行待ちジ
    ョブの順に優先的に前記処理要素を割り当てることを特
    徴とするスケジュール制御方法。
  22. 【請求項22】 前記実行待ちジョブの所属する前記実
    行待ちジョブキューおよびそのキュー内優先度とプレス
    テージ容量とに応じてプレステージ順位を決定し、 前記プレステージ順位に従って、該実行待ちジョブが使
    用するデータを予め転送速度の速い媒体に転送すること
    を特徴とする請求項21記載のスケジュール制御方法。
  23. 【請求項23】 複数の処理要素により並列に処理され
    るジョブのスケジューリングにおいて、 前記処理要素の運用予定を問い合わせ、 使用可能な前記処理要素の数が実行待ちジョブを実行す
    るために必要な前記処理要素の数以上であり、かつ、前
    記運用予定が妨げられない場合に、前記実行待ちジョブ
    を直ちに起動し、 前記実行待ちジョブの起動により前記運用予定が妨げら
    れる場合は、前記実行待ちジョブを直ちに起動せずに、
    前記運用予定が妨げられないような起動予定時刻を設定
    し、該起動予定時刻までに終了する予定の他の実行待ち
    ジョブを起動することを特徴とするスケジュール制御方
    法。
  24. 【請求項24】 複数の処理要素により並列に処理され
    るジョブのスケジューリングにおいて、 前記処理要素の運用予定を問い合わせ、 使用可能な前記処理要素の数が実行待ちジョブを実行す
    るために必要な前記処理要素の数に満たないとき、前記
    必要な処理要素の数と前記使用可能な処理要素の数の差
    が中断可能処理要素数以下であるか否かを調べ、 前記処理要素の数の差が中断可能処理要素数以下であ
    り、かつ、前記運用予定が妨げられない場合に、前記処
    理要素の数の差に相当する使用中の前記処理要素の処理
    を中断し、 中断された前記処理要素を前記実行待ちジョブに割り当
    てて、前記実行待ちジョブを起動し、 前記実行待ちジョブの起動により前記運用予定が妨げら
    れる場合は、前記使用中の処理要素の処理を中断せず
    に、前記運用予定が妨げられないような起動予定時刻を
    設定し、該起動予定時刻までに終了する予定の他の実行
    待ちジョブを起動することを特徴とするスケジュール制
    御方法。
  25. 【請求項25】 前記実行待ちジョブの仮の起動時刻を
    設定し、 前記仮の起動時刻から前記実行待ちジョブの実行時間以
    内の間において予定されている全体で利用可能な前記処
    理要素の数の変化を調べ、 前記処理要素の数の変化により変更される使用可能な前
    記処理要素の数を求め、 変更された前記使用可能な処理要素の数が前記実行待ち
    ジョブを実行するために必要な前記処理要素の数以上の
    場合に、前記仮の起動時刻を前記起動予定時刻として設
    定し、 変更された前記使用可能な処理要素の数が前記実行待ち
    ジョブを実行するために必要な前記処理要素の数に満た
    ない場合は、前記仮の起動時刻を設定し直して前記利用
    可能な前記処理要素の数の変化を調べる処理以降を繰り
    返し、 前記起動予定時刻から前記実行待ちジョブの実行時間以
    内の間において、常に前記使用可能な処理要素の数が前
    記実行待ちジョブを実行するために必要な前記処理要素
    の数以上となるように、前記起動予定時刻を設定するこ
    とを特徴とする請求項23または24記載のスケジュー
    ル制御方法。
  26. 【請求項26】 前記実行待ちジョブの起動順位を優先
    レベルの異なる複数の実行待ちジョブキューおよびキュ
    ー内優先度により管理し、 時間の経過とともに前記実行待ちジョブの属する前記実
    行待ちジョブキューおよびそのキュー内優先度を見直し
    て、発生してからの待ち時間が長いジョブほど前記起動
    順位を高く設定し、 前記起動順位に従って起動された実行中ジョブの優先順
    位を優先レベルの異なる複数の実行中ジョブキューおよ
    びキュー内優先度により管理し、 所定優先レベル以上の前記実行中ジョブキュー内の実行
    中ジョブ、所定優先レベル以上の前記実行待ちジョブキ
    ュー内の実行待ちジョブ、所定優先レベルに満たない前
    記実行中ジョブキュー内の実行中ジョブ、所定優先レベ
    ルに満たない前記実行待ちジョブキュー内の実行待ちジ
    ョブの順に優先的に前記処理要素を割り当てることを特
    徴とする請求項25記載のスケジュール制御方法。
  27. 【請求項27】 指定された前記実行待ちジョブまたは
    実行中ジョブの重要度に応じて、該実行待ちジョブの所
    属する実行待ちジョブキューおよびそのキュー内優先
    度、または該実行中ジョブの所属する実行中ジョブキュ
    ーおよびそのキュー内優先度を変更することを特徴とす
    る請求項26記載のスケジュール制御方法。
  28. 【請求項28】 前記実行待ちジョブの所属する実行待
    ちジョブキューおよびそのキュー内優先度とプレステー
    ジ容量とに応じて決められる順序に従って、該実行待ち
    ジョブが使用するデータを予め転送速度の速い媒体に転
    送することを特徴とする請求項26記載のスケジュール
    制御方法。
JP14832294A 1994-06-29 1994-06-29 スケジュール制御装置とその方法 Expired - Lifetime JP3215264B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14832294A JP3215264B2 (ja) 1994-06-29 1994-06-29 スケジュール制御装置とその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14832294A JP3215264B2 (ja) 1994-06-29 1994-06-29 スケジュール制御装置とその方法

Publications (2)

Publication Number Publication Date
JPH0816410A true JPH0816410A (ja) 1996-01-19
JP3215264B2 JP3215264B2 (ja) 2001-10-02

Family

ID=15450199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14832294A Expired - Lifetime JP3215264B2 (ja) 1994-06-29 1994-06-29 スケジュール制御装置とその方法

Country Status (1)

Country Link
JP (1) JP3215264B2 (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1015836A (ja) * 1996-07-05 1998-01-20 Seiko Epson Corp ロボット用コントローラ及びその制御方法
JP2007044825A (ja) * 2005-08-10 2007-02-22 Toshiba Corp 行動管理装置、行動管理方法および行動管理プログラム
JP2007172030A (ja) * 2005-12-19 2007-07-05 Nec Electronics Corp 割り込み制御装置及び割り込み制御方法
JP2009075956A (ja) * 2007-09-21 2009-04-09 Fujitsu Ltd ジョブ管理方法、ジョブ管理装置およびジョブ管理プログラム
WO2010082244A1 (ja) * 2009-01-16 2010-07-22 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
JP2011097174A (ja) * 2009-10-27 2011-05-12 Honda Motor Co Ltd サービス処理ステム及びサービス処理方法
US8407709B2 (en) 2005-04-28 2013-03-26 Fujitsu Limited Method and apparatus for batch scheduling, and computer product
JP2013175060A (ja) * 2012-02-24 2013-09-05 Ricoh Co Ltd 情報処理装置、ファイル処理方法、プログラム
CN104052926A (zh) * 2013-03-14 2014-09-17 Juki株式会社 图像处理装置以及图像处理方法
JP2015535975A (ja) * 2012-09-12 2015-12-17 セールスフォース ドット コム インコーポレイティッド オンデマンドサービス環境におけるメッセージキューのためのオークションに基づくリソース共有
US10171574B2 (en) 2014-10-16 2019-01-01 Fujitsu Limited Computer system, processing method, and computer-readable recording medium having job processing program
JP2020197886A (ja) * 2019-06-03 2020-12-10 日立オートモティブシステムズ株式会社 制御装置および制御方法
WO2021101012A1 (ko) * 2019-11-19 2021-05-27 주식회사 엘지에너지솔루션 배터리 관리 시스템 및 그 제어방법
US11036549B2 (en) 2017-06-29 2021-06-15 Fujitsu Limited Parallel processing apparatus, and method of maintaining parallel processing apparatus
CN113795998A (zh) * 2019-06-18 2021-12-14 株式会社Lg新能源 电池管理系统和电池管理方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014054079A1 (en) 2012-10-05 2014-04-10 Hitachi, Ltd. Job management system and job control method
CN108462654B (zh) * 2016-12-12 2021-12-24 中国航空工业集团公司西安航空计算技术研究所 增强型gjb289a总线通信管理和调度方法
KR102031853B1 (ko) * 2018-07-18 2019-10-15 국방과학연구소 다중 중요도 시스템 위한 작업별 중요도 모드 전환 방법

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1015836A (ja) * 1996-07-05 1998-01-20 Seiko Epson Corp ロボット用コントローラ及びその制御方法
US8407709B2 (en) 2005-04-28 2013-03-26 Fujitsu Limited Method and apparatus for batch scheduling, and computer product
JP2007044825A (ja) * 2005-08-10 2007-02-22 Toshiba Corp 行動管理装置、行動管理方法および行動管理プログラム
JP2007172030A (ja) * 2005-12-19 2007-07-05 Nec Electronics Corp 割り込み制御装置及び割り込み制御方法
JP2009075956A (ja) * 2007-09-21 2009-04-09 Fujitsu Ltd ジョブ管理方法、ジョブ管理装置およびジョブ管理プログラム
WO2010082244A1 (ja) * 2009-01-16 2010-07-22 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
JP2010165259A (ja) * 2009-01-16 2010-07-29 Sony Computer Entertainment Inc 情報処理装置および情報処理方法
US8793695B2 (en) 2009-01-16 2014-07-29 Sony Corporation Information processing device and information processing method
JP2011097174A (ja) * 2009-10-27 2011-05-12 Honda Motor Co Ltd サービス処理ステム及びサービス処理方法
JP2013175060A (ja) * 2012-02-24 2013-09-05 Ricoh Co Ltd 情報処理装置、ファイル処理方法、プログラム
JP2019040613A (ja) * 2012-09-12 2019-03-14 セールスフォース ドット コム インコーポレイティッド オークションに基づきリソース共有するデータベースシステム及び方法
JP2015535975A (ja) * 2012-09-12 2015-12-17 セールスフォース ドット コム インコーポレイティッド オンデマンドサービス環境におけるメッセージキューのためのオークションに基づくリソース共有
JP2014178801A (ja) * 2013-03-14 2014-09-25 Juki Corp 画像処理装置及び画像処理方法
CN104052926B (zh) * 2013-03-14 2018-12-11 Juki株式会社 图像处理装置以及图像处理方法
CN104052926A (zh) * 2013-03-14 2014-09-17 Juki株式会社 图像处理装置以及图像处理方法
US10171574B2 (en) 2014-10-16 2019-01-01 Fujitsu Limited Computer system, processing method, and computer-readable recording medium having job processing program
US11036549B2 (en) 2017-06-29 2021-06-15 Fujitsu Limited Parallel processing apparatus, and method of maintaining parallel processing apparatus
JP2020197886A (ja) * 2019-06-03 2020-12-10 日立オートモティブシステムズ株式会社 制御装置および制御方法
CN113795998A (zh) * 2019-06-18 2021-12-14 株式会社Lg新能源 电池管理系统和电池管理方法
CN113795998B (zh) * 2019-06-18 2024-03-29 株式会社Lg新能源 电池管理系统和电池管理方法
WO2021101012A1 (ko) * 2019-11-19 2021-05-27 주식회사 엘지에너지솔루션 배터리 관리 시스템 및 그 제어방법
JP2022532516A (ja) * 2019-11-19 2022-07-15 エルジー エナジー ソリューション リミテッド バッテリ管理システムおよびその制御方法

Also Published As

Publication number Publication date
JP3215264B2 (ja) 2001-10-02

Similar Documents

Publication Publication Date Title
JP3215264B2 (ja) スケジュール制御装置とその方法
US7958508B2 (en) Method of power-aware job management and computer system
JP5684629B2 (ja) ジョブ管理システム及びジョブ管理方法
US7650601B2 (en) Operating system kernel-assisted, self-balanced, access-protected library framework in a run-to-completion multi-processor environment
US7739685B2 (en) Decoupling a central processing unit from its tasks
CN101727357B (zh) 用于分配计算中心中资源的方法和装置
US8458712B2 (en) System and method for multi-level preemption scheduling in high performance processing
CN109564528B (zh) 分布式计算中计算资源分配的系统和方法
JPH07141305A (ja) 並列計算機の実行制御方法
WO2011148563A1 (ja) 情報処理システム
EP2562644B1 (en) Systems and methods for bounding processing times on multiple processing units
CN113672391B (zh) 一种基于Kubernetes的并行计算任务调度方法与系统
JP4912927B2 (ja) タスク割当装置、及びタスク割当方法
CN112799837A (zh) 一种容器动态平衡调度方法
CN116010064A (zh) Dag作业调度和集群管理的方法、系统及装置
CN111597044A (zh) 任务调度方法、装置、存储介质及电子设备
CN116610422A (zh) 一种任务调度方法、装置和系统
JP2015148909A (ja) 並列計算機システム、並列計算機システムの制御方法及び管理ノードの制御プログラム
CN115858169A (zh) 一种作业资源分配方法、装置、电子设备及存储介质
CN115629854A (zh) 分布式任务调度方法、系统、电子设备和存储介质
CA2316643C (en) Fair assignment of processing resources to queued requests
JPH0850551A (ja) リアルタイムアプリケーションタスクスケジューリング及び処理システム
JP5867215B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
EP1630671A1 (en) Framework for pluggable schedulers
US20230418667A1 (en) Computing device for handling tasks in a multi-core processor, and method for operating computing device

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010717

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080727

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090727

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100727

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100727

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110727

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110727

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120727

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120727

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130727

Year of fee payment: 12

EXPY Cancellation because of completion of term