JPH09160890A - マルチプロセッサシステム - Google Patents

マルチプロセッサシステム

Info

Publication number
JPH09160890A
JPH09160890A JP25446196A JP25446196A JPH09160890A JP H09160890 A JPH09160890 A JP H09160890A JP 25446196 A JP25446196 A JP 25446196A JP 25446196 A JP25446196 A JP 25446196A JP H09160890 A JPH09160890 A JP H09160890A
Authority
JP
Japan
Prior art keywords
task
time
processing element
processing
expected end
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.)
Pending
Application number
JP25446196A
Other languages
English (en)
Inventor
Akiyoshi Wakaya
彰良 若谷
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP25446196A priority Critical patent/JPH09160890A/ja
Publication of JPH09160890A publication Critical patent/JPH09160890A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 記憶資源を含むプロセシングエレメントを複
数接続したマルチプロセッサシステムにおいて、ファイ
ルのアクセスに要する時間を考慮したタスク割り当て方
式を提供する。 【解決手段】 新たなタスクが生成された場合に、各々
のプロセシングエレメントから、既に割り当てられてい
るタスクの処理の予想終了時間(Ti)を通信によって
収集し、生成されたタスクの各プロセシングエレメント
に含まれる記憶資源へのアクセスの頻度(Fi)と、ネ
ットワークを介して他のプロセシングエレメントに含ま
れる記憶資源にアクセスする場合に要する時間(Ar)
と、ネットワークを介さずにプロセシングエレメント内
で記憶資源にアクセスする場合に要する時間(Al)と
から、O(i)=Ti+Fi*(Al−Ar)を計算
し、n個のプロセシングエレメント(i=1〜n)の中
でO(i)が最小となるプロセシングエレメントに当該
タスクを送信し、実行させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディスクを含むプ
ロセシングエレメントがネットワークを介して接続され
たマルチプロセッサシステムに関するものである。
【0002】
【従来の技術】マルチプロセッサシステムにおいて、生
成されたタスクの負荷が、各プロセッサに均等に分散さ
れるようにスケジューリングすることは性能向上におい
て重要な技術である。特に実行時に負荷分散を実行する
動的負荷分散はコンパイル時にタスクの挙動が確定しな
いようなアプリケーションには効果がある。
【0003】”並列処理マシン”(オーム社、富田真治
他)のページ154に示されている動的負荷分散方式に
ついて説明する。動的負荷分散方式としては、主に5つ
ある。 1)乱数方式:新たに生成されたタスクを各プロセシン
グエレメントにランダムに割り当てる。
【0004】2)巡回方式:新たに生成されたタスクを
定まった順に割り当てる。 3)拡散方式:負荷の重いプロセッサ上のタスクを、他
のプロセッサへ実行時に移動する。 4)しきい値方式:各プロセッサが負荷分散のしきい値
を持ち、自分のしきい値を越えた時はしきい値を越えて
いない他のプロセッサへタスクを割り当てる。
【0005】5)最小負荷方式:最小負荷を持つプロセ
ッサを検出し、そのプロセッサにタスクを割り当てる。 上記の中で、大域的な情報に基づく最小負荷方式は効率
的な負荷分散が期待できる。しかし、生成されたタスク
の持つ性質、特に分散されたファイルへのアクセス頻度
の高いタスクは上記の方法では、効果的に負荷分散がで
きない。
【0006】この様子を図を用いて示す。2つのプロセ
シングエレメントからなるマルチプロセッサシステムに
おいて、図9に示したように、プロセシングエレメント
1(PE1)に、終了までに3単位時間必要なタスクがすで
に割り当てられており、プロセシングエレメント2(PE
2)に、終了までに4単位時間必要なタスクが割り当てら
れているものとする。ここでは、OSがスケジューリン
グする際に利用する一定の時間間隔を単位時間とする。
具体的には、例えばCPUの100クロック分の時間
や、インタープリターの場合であれば、所定のサイクル
数を1単位時間と考えることが可能である。この例で前
記の最小負荷方式に従うと、プロセシングエレメント(P
E1又はPE2)で、新しく生成されたタスクは負荷が最小で
あるPE1に割り当てられることになる。なぜなら、PE1の
負荷が3単位時間であり、PE2の負荷が4単位時間であ
るからである。
【0007】
【発明が解決しようとする課題】しかしながら、上記の
ような、従来の負荷分散方式を用いたマルチプロセッサ
システムでは、分散されたファイルへのアクセス頻度に
よっては、タスクの最適な割り当てができず、全体の処
理時間の低下を招く場合があるという問題点を有してい
た。
【0008】以下に、タスクの生成例を用いて従来技術
の問題点を説明する。図9で示した如く、プロセシング
エレメントPE1上に終了までに3単位時間が必要なタス
クが割り当てられており、プロセシングエレメントPE2
上には、終了までに4単位時間が必要なタスクが割り当
てられているものとする(図10(a)(b))。ここ
で、プロセシングエレメントPE1上でタスクが発生し、
そのタスクはCPU上での予想処理時間が3単位時間
(図10(c))で、PE2上に存在するファイルにアク
セスするものとする。
【0009】ここで、それぞれのプロセシングエレメン
トは、ネットワークを経由して他のプロセシングエレメ
ント上に存在するディスクにアクセスするには3単位時
間を要し(図10(d))、自分のディスク上に存在す
るファイルにアクセスするには1単位時間を要する(図
10(e))ものとする。そうした場合、図10に示す
ように、PE1に割り当てる場合の予想処理総時間は6
(=3+3)単位時間となり(図10(f))、一方、
PE2に割り当てる場合の予想処理総時間は4(=3+
1)単位時間になる(図10(g))。したがって、PE
1に割り当てられた場合のPE1上の全タスクの終了時間は
9(=6+3)単位時間であるのに対し、PE2の場合は
8(=4+4)単位時間である。
【0010】したがって、PE2に割り当てる方が効率は
良く、これは従来の最小負荷方式の割り当てによる結果
とは反するものである。本発明は、上記問題点を解決す
るために、分散されたファイルにアクセスする場合でも
タスクの最適な割り当てができるマルチプロセッサシス
テムを提供することを目的とする。
【0011】
【課題を解決するための手段】上記の問題点を解決する
目的で、本発明のマルチプロセッサシステムは、プロセ
ッサと記憶資源とを含むプロセシングエレメントをネッ
トワークを介して複数接続したマルチプロセッサシステ
ムであって、各プロセッサは、各プロセシングエレメン
トに含まれる記憶資源にアクセスする頻度に関する情報
を含むタスクを生成するタスク生成手段と、他の各プロ
セシングエレメントから、当該プロセシングエレメント
に割り当てられているタスクが全て終了すると予想され
る時間である予想終了時間を収集する予想終了時間収集
手段と、プロセッサが、ネットワークを介さずに当該プ
ロセシングエレメントに含まれる記憶資源にアクセスす
るのに要する時間と、ネットワークを介して、他のプロ
セシングエレメントに含まれる記憶資源にアクセスする
のに要する時間とを保持するアクセス時間保持手段と、
予想終了時間と、前記頻度に関する情報と、前記アクセ
スに要する時間とから、生成されたタスクを割り当てる
べきプロセシングエレメントを決定するプロセシングエ
レメント決定手段とを備える。
【0012】また、前記プロセシングエレメント決定手
段は、n個のプロセシングエレメントが接続されたマル
チプロセッサシステムにおいて、i番目(i=1〜n)
のプロセシングエレメントに存在する記憶資源にアクセ
スする回数をFi、各プロセシングエレメントから収集
された予想終了時間をTi、ネットワークを介して記憶
資源にアクセスする場合に一回のアクセスに要する時間
をAr、ネットワークを介さずに前記プロセシングエレ
メント内で記憶資源にアクセスする場合に一回のアクセ
スに要する時間をAlとした場合に、i(i=1〜n)
番目のプロセシングエレメントについて O(i)=Ti+Fi*(Al−Ar) を算出し、前記O(i)が最小となるプロセシングエレ
メントを、生成されたタスクを転送するべきプロセシン
グエレメントとして決定することもできる。
【0013】また、前記タスク生成手段は、さらに、当
該タスクの処理が終了するまでに必要な時間であると予
想される平均処理時間を含むタスクを生成し、各プロセ
ッサはさらに、当該プロセッサに割り当てられている一
つ又は複数のタスクについて、各タスクに含まれる当該
タスクの平均処理時間を表す情報から、前記予想終了時
間を求める処理時間管理手段を備えることもできる。
【0014】また、前記予想終了時間収集手段はさら
に、他のプロセシングエレメントに対して、予想終了時
間の送信を要求する予想終了時間要求手段と、他のプロ
セシングエレメントから、送信されてきた予想終了時間
を受信する予想終了時間受信手段とを備える。また、各
プロセッサはさらに、他のプロセシングエレメントから
の、予想終了時間の送信要求を受信する予想終了時間要
求受信手段と、他のプロセシングエレメントからの送信
要求に対して、他のプロセシングエレメントに対して、
予想終了時間を送信する予想終了時間送信手段とを備え
ることもできる。
【0015】また、本発明に係るプロセッサは、プロセ
ッサと記憶資源とを含むプロセシングエレメントをネッ
トワークを介して複数接続したマルチプロセッサシステ
ムにおけるプロセッサであって、各プロセシングエレメ
ントに含まれる記憶資源にアクセスする頻度に関する情
報を含むタスクを生成するタスク生成手段と、他の各プ
ロセシングエレメントから、当該プロセシングエレメン
トに割り当てられているタスクが全て終了すると予想さ
れる時間である予想終了時間を収集する予想終了時間収
集手段と、当該プロセッサが、ネットワークを介さずに
当該プロセシングエレメントに含まれる記憶資源にアク
セスするのに要する時間と、ネットワークを介して、他
のプロセシングエレメントに含まれる記憶資源にアクセ
スするのに要する時間とを保持するアクセス時間保持手
段と、予想終了時間と、前記頻度に関する情報と、前記
アクセスに要する時間とから、生成されたタスクを割り
当てるべきプロセシングエレメントを決定するプロセシ
ングエレメント決定手段とを備える。
【0016】
【発明の実施の形態】本発明は、タスク割り当て時にフ
ァイルアクセスに要する時間も考慮したマルチプロセッ
サシステムを提供できる。以下、本発明の一実施の形態
のマルチプロセッサシステムについて、図面を参照しな
がら説明する。
【0017】図1は本発明のマルチプロセッサシステム
の構成を示すブロック図である。同図において、11は
タスクの実行及びOSの実行を行なうプロセッサであ
り、メモリ12及びディスク13とともに、プロセシン
グエレメントPE11を構成する。その他のプロセシング
エレメントPE22、プロセシングエレメントPEn3も同様
の構成を有しており、n個のプロセシングエレメントが
ネットワーク4を介して接続されている。
【0018】プロセッサ11はOSの実行により、以下
に説明する機能を実現している。即ち、プロセッサ11
は、タスク生成部111、処理時間管理部112、処理
時間通信部113、処理時間算出部114、タスク通信
部115を有する。タスク生成部111は、後述するよ
うな構造を有するタスクを生成する。処理時間管理部1
12は、プロセッサ11上で実行されているタスクの処
理時間を管理しており、処理時間通信部113を介して
送られる他のプロセッサからの要求に応じて、プロセッ
サ11で実行されているタスクの予想終了時間を応答す
る。
【0019】処理時間通信部113は、タスクが生成さ
れた際に、他のプロセシングエレメントに対して、他の
プロセッサ上で実行されている全てのタスクの予想終了
時間の送信を要求する他、他のプロセシングエレメント
からの要求に応じて当該プロセッサ上で実行されている
全てのタスクの予想終了時間を送信する。処理時間算出
部114は、処理時間通信部113を介して得た他のプ
ロセッサの予想終了時間と、処理時間管理部112から
得た当該プロセッサの予想終了時間と、タスク生成部1
11で生成されたタスクとから各々のプロセッサで負担
している全てのタスクのオーバーヘッドを算出し、生成
されたタスクをどのプロセッサで実行させるのが最も効
率が良いかを判定する。
【0020】タスク通信部115は、処理時間算出部1
14で判定されたプロセッサに対して生成されたタスク
を送信する他、他のプロセッサからタスクが送信されて
きた場合には当該タスクを受信する。なお、受信したタ
スクはプロセッサ11上で実行キューに格納され、多重
実行される。図2は本発明のマルチプロセッサシステム
の各プロセッサ上で実行されるタスクの構成を示す図で
ある。同図に示されるように、各々のタスク20はタス
クの内容を示したタスクテキスト部25以外に、個々の
タスクの情報を示す部分を有する。即ち、そのタスクが
プロセッサ上で実行される時の処理時間の平均を示す平
均処理時間Ex21と、そのタスク内でアクセスされる
ファイルがどのプロセシングエレメントに属するディス
クに格納されているかを示す、ファイルアクセス頻度2
2、23、24である。
【0021】ここで、平均処理時間Ex21の算出方法
としては、特開平4−320536号公報に開示されて
いる方法が使用できる。即ち、ソースプログラムをコン
パイルしてできた機械語またはアセンブラのリストから
タスク内の実行フローを予測し、そのフローを実行する
ための実行命令サイクル数を平均処理時間とする。ま
た、ファイルアクセス頻度の算出方法としては、上記平
均処理時間の見積もりと同様にタスク内の実行フローを
予測し、そのフロー内に出現するファイルアクセス命令
の数を数え、そのファイルの存在するディスクの位置か
らファイルアクセス頻度を見積もる。ファイルアクセス
頻度は、具体的には、各プロセシングエレメント上に存
在するディスクにアクセスする回数の形で保持される。
即ち図2の例において、PE1上のファイルへのアクセス
頻度F1(22)には、当該タスクがプロセシングエレ
メントPE1上のディスクにアクセスする回数が保持され
る。ファイルアクセス頻度F2(23)、ファイルアク
セス頻度Fn(24)についても同様である。
【0022】なお、本実施例では、平均処理時間及びフ
ァイルアクセス頻度の情報はコンパイル時に必要な情報
を参照して静的にタスク中に記述するようにしたが、こ
れらの情報はタスク生成時に必要な情報を参照して生成
するようにしたり、タスク実行時に動的に更新するよう
にすることも可能である。各プロセッサ上では、複数の
タスクとそのタスクの実行を管理するOSが実行されて
いる。OSは、タスクの生成・配置/消滅及び実行のス
ケジューリングを行なう。さらにOSはネットワーク4
で接続された他のプロセシングエレメントと通信を行な
い、各プロセッサ上で実行されている全タスクの予想終
了時間を管理する。つまり、図3に示すように、time=1
でプロセシングエレメントPE1には3単位時間分のタス
クが配置されているが、time=2においては、1単位時間
分の処理が終了するので、予想終了時間は2単位時間と
なる。さらに、time=3で2単位時間のタスクが新たに割
り当てられたので、予想終了時間は3単位時間となる。
これらの予想終了時間は、プロセシングエレメントPE1
1上の処理時間管理部112において逐次管理されてい
る。プロセシングエレメントPE2上のタスクについても
同様にプロセシングエレメントPE2上の処理時間管理部
で管理されている。同図の例では、プロセシングエレメ
ントPE2上では新しいタスクは発生していないため、tim
e=1における予想終了時間は4単位時間であったのが、t
ime=3においては、予想終了時間が2単位時間となって
いる。
【0023】さらにOSはタスクを生成する場合に、ネ
ットワークに接続されている他のプロセシングエレメン
トと通信し、現在のそれぞれプロセッサ上の全タスクの
予想終了時間を収集する。具体的には、処理時間通信部
113が、他のプロセッサに対してタスクの予想終了時
間の送信を要求し、他のプロセッサの処理時間通信部が
要求に応えて処理時間管理部が管理している予想終了時
間を送信する。
【0024】ここで、収集された各々のプロセッサごと
の全タスクの予想終了時間をTi(i=1〜n)とす
る。また、ファイルアクセス頻度の各プロセシングエレ
メントごとの値をFi(i=1〜n)とする。これは、
図2に示したタスクの構造において、それぞれのタスク
がプロセシングエレメントごとの値をファイルアクセス
頻度F1〜Fnとして保持しているものである。さら
に、ネットワーク4を介してディスクへアクセスする場
合に要する時間をArとし、ネットワーク4を介さずに
前記プロセシングエレメント内でディスクにアクセスす
る場合に要する時間をAlとする。この時、処理時間算
出部114が、O(i)=Ti+Fi*(Al−Ar)
・・・(1)を計算し、i=1〜nの中でO(i)が
最小となるプロセシングエレメントを見つけ、このプロ
セシングエレメントに新たに生成されたタスクを配置す
る。具体的には、タスク通信部115が、当該タスクを
決定されたプロセシングエレメントに対して送信する。
【0025】これは、次の式に基づき最適な配置となっ
ている。すなわち、生成されたタスクがプロセシングエ
レメントiに配置された時に、そのタスクの処理総時間
E(i)は、タスクに保持されている平均処理時間Ex
を用いて、 E(i)=Ex+Ar*F1+Ar*F2+..Al*Fi..+Ar*Fn =Ex+Ar*ΣFi−(Ar*Fi+Al*Fi) ・・・(2) となる。これと現在の全タスクの予想終了時間Tiが配
置後の予想終了時間となる。すなわち、 E(i)+Ti=Ti+(Al−Ar)*Fi +Ex+Ar*F1+..Ar*Fi..+Ar*Fn =Ti+(Al−Ar)*Fi+Ar*ΣFi ・・・(3) 本実施の形態ではネットワーク4を介してディスクへア
クセスする場合に要する時間Arについて、アクセスす
るディスクごとの差を考慮せず、全ての場合の平均を考
えて定数としているので、上式におけるAr*ΣFiの
値はiの値によらず一定である。したがって、上記式
(1)におけるO(i)の値だけを計算して、その最小
値をみつけることは、ファイルアクセスも考慮した負荷
の最小値を見つけることと同値である。
【0026】ここで、本発明のタスク割り当て方式につ
いて、従来の方法と比較した長所について説明する。ま
ず、タスクにファイルアクセスが全くない場合は、従来
の方式と本発明の方式とは全く同じ割り当てとなる。即
ち、上記式(1)の第2項が無意味となるので、結局T
iが最小であるプロセシングエレメントにタスクが割り
当てられることになり、これは従来の最小負荷方式と同
じ割り当てとなる。
【0027】次に、タスクにファイルアクセスがある
が、ファイルのアクセスに要する時間がローカル/リモ
ートの何れも同じである場合については、上記式(1)
におけるArとAlが同一となるため、やはり、上記式
(1)の第2項が無意味となり、従来の最小負荷方式と
同じ割り当てとなる。また、タスクにファイルアクセス
があり、ファイルアクセスに要する時間がローカル/リ
モートで異なる場合には、上記式(1)の第2項が意味
を持つ。即ち、従来の最小負荷方式ではファイルアクセ
スを考慮しておらず、プロセッサの負荷のみに注目して
いるため、ファイルのアクセスに要する時間がローカル
/リモートでの差が大きくなるに従い、最小負荷方式で
の予測が実際の実行時間と乖離していくのに対し、本発
明の方式を用いれば十分実際の実行時間に沿った予測と
なる。
【0028】次に本発明のマルチプロセッサシステムの
処理内容について、タスクを生成したプロセッサと他の
プロセッサに分けて説明する。図4は、タスクを生成し
たプロセッサの処理内容を示すフロ−チャ−トである。
タスク生成部111により新しいタスクが生成されると
(S401)、他のプロセッサに対して、処理時間通信
部113が他のプロセッサのタスクの予想終了時間を送
信するように要求を行う(S402)。その後、他のプ
ロセッサから受け取ったタスクの予想終了時間と、処理
時間管理部112において管理されているプロセッサ1
1上のタスクの予想終了時間と、生成されたタスクに含
まれる情報から、処理時間算出部114がオーバーヘッ
ドの算出を行う(S403)。算出された結果から、上
記式(1)におけるO(i)が最小となるプロセシング
エレメントを決定し(S404)、決定されたプロセシ
ングエレメントがタスクを生成したプロセシングエレメ
ントと同一であった場合(S405:Yes)には、当
該プロセシングエレメントにおいてタスクを実行すべ
く、生成されたタスクを実行キューに格納し、実行を行
う(S406)。
【0029】さらに、生成されたタスクに含まれる平均
処理時間Exを用いて処理時間管理部112により管理
されている予想終了時間を変更する(S407)。一
方、タスクを実行すべきプロセシングエレメントと、タ
スクを生成したプロセシングエレメントが同一でなかっ
た場合(S405:No)には、他のプロセシングエレ
メントにタスクを転送する必要があるため、タスク通信
部115によるタスクの転送が行われる(S408)。
【0030】次に、タスクを生成したプロセシングエレ
メント以外のプロセシングエレメントの処理内容につい
て説明する。図5は、他のプロセシングエレメントの処
理内容を示すフロ−チャ−トである。他のプロセシング
エレメントは、タスクを生成したプロセシングエレメン
トからの要求を受信して(S501)、動作を開始す
る。即ち、予想終了時間の送信の要求を受けて、当該他
のプロセッサの処理時間管理部において管理されている
予想終了時間を応答する(S502)。その後、当該プ
ロセッサが、生成されたタスクを実行すべきプロセッサ
として決定された場合であれば(S503:Yes)、
当該転送されてきたタスクを実行キューに格納して、実
行を行う(S504)。さらに、処理時間管理部におい
て管理されている予想終了時間を変更する(S50
5)。
【0031】以上に説明したような構成を有する、本実
施の形態のマルチプロセッサシステムについて、以下、
具体的な動作を説明する。プロセシングエレメントが二
つの場合について、以上の動作を説明する。図6はプロ
セシングエレメントが二つの場合のマルチプロセッサシ
ステムの構成図である。この時PE1で図7に示すような
構造を有するタスクが発生した場合について説明する。
即ち、平均処理時間は3単位時間で、PE2上のディスク
へのファイルアクセスが1回ある。従来例の場合と同様
に、各プロセシングエレメントは、自分のディスク上の
ファイルにアクセスするには1単位時間でおこなわれ、
ネットワークを経由して他のプロセシングエレメント上
のディスクにアクセスする場合は3単位時間かかるとす
る。
【0032】この具体例におけるOSの動作のフローを
図8に示す。まず、PE1のOSはタスクを生成し(S8
1)、他のプロセシングエレメント(この例ではPE2の
み)に現在の予想終了時間を問い合わせる(S82)。
PE2のOSは4単位時間であることをPE1のOSに通知し
(S83)、PE1のOSはそれぞれのiに対してオーバ
ーヘッドO(i)を計算する(S84)。最小のO
(i)はi=2で達成される事が分かるので、タスクを
PE2に転送する(S85)。PE2のOSは転送されてきた
タスクをスケジューリング対象とし(S86)、予想終
了時間を変更する(S87)。
【0033】以上の動作を行なう事により、従来の最小
負荷方式では正しく配置されなかったタスクが、効率良
く配置される事になる。なお、本実施の形態では、プロ
セシングエレメントが二つの場合について具体例をあげ
て説明したが、プロセシングエレメントの数に上限はな
い。即ち、図8の動作フロ−において、PE1のOSの動
作の部分(S80、S81、S83、S84)を、「タ
スクを生成するOSの動作」とし、PE2のOSの動作の
うちS42を、「その他のOSの動作」とし、S45及
びS46を、「タスクを実行すべく決定されたプロセシ
ングエレメントのOSの動作」すれば、プロセシングエ
レメントが増加した場合でも適用することが可能であ
る。
【0034】
【発明の効果】以上の説明から明らかなように、本発明
に係るマルチプロセッサシステムは、プロセッサと記憶
資源とを含むプロセシングエレメントをネットワークを
介して複数接続したマルチプロセッサシステムであっ
て、各プロセッサは、各プロセシングエレメントに含ま
れる記憶資源にアクセスする頻度に関する情報を含むタ
スクを生成するタスク生成手段と、他の各プロセシング
エレメントから、当該プロセシングエレメントに割り当
てられているタスクが全て終了すると予想される時間で
ある予想終了時間を収集する予想終了時間収集手段と、
プロセッサが、ネットワークを介さずに当該プロセシン
グエレメントに含まれる記憶資源にアクセスするのに要
する時間と、ネットワークを介して、他のプロセシング
エレメントに含まれる記憶資源にアクセスするのに要す
る時間とを保持するアクセス時間保持手段と、予想終了
時間と、前記頻度に関する情報と、前記アクセスに要す
る時間とから、生成されたタスクを割り当てるべきプロ
セシングエレメントを決定するプロセシングエレメント
決定手段とを備えるものであるから、タスク生成手段に
よるタスクの生成を受けて、予想終了時間収集手段が、
各プロセシングエレメントから、当該プロセシングエレ
メントに割り当てられているタスクが全て終了すると予
想される時間である予想終了時間を収集し、プロセシン
グエレメント決定手段が、予想終了時間と、前記頻度に
関する情報と、前記アクセスに要する時間とから、生成
されたタスクをどのプロセシングエレメントに割り当て
るかを決定することにより、ファイルのアクセスに要す
る時間をも考慮したタスクのスケジューリングを行うこ
とが可能になるという効果がある。
【0035】また、前記プロセシングエレメント決定手
段は、n個のプロセシングエレメントが接続されたマル
チプロセッサシステムにおいて、i番目(i=1〜n)
のプロセシングエレメントに存在する記憶資源にアクセ
スする回数をFi、各プロセシングエレメントから収集
された予想終了時間をTi、ネットワークを介して記憶
資源にアクセスする場合に一回のアクセスに要する時間
をAr、ネットワークを介さずに前記プロセシングエレ
メント内で記憶資源にアクセスする場合に一回のアクセ
スに要する時間をAlとした場合に、i(i=1〜n)
番目のプロセシングエレメントについて O(i)=Ti+Fi*(Al−Ar) を算出し、前記O(i)が最小となるプロセシングエレ
メントを、生成されたタスクを転送するべきプロセシン
グエレメントとして決定することもできる。この場合、
プロセシングエレメント決定手段が、各々のプロセシン
グエレメントについて上記式の結果を算出し、プログラ
ミングエレメント決定手段が、前記O(i)が最小とな
るプロセシングエレメントに、生成されたタスクを割り
当てるため、タスク実行のオーバーヘッドを正確に算出
する場合よりも簡易な演算で、最もオーバーヘッドの小
さいプロセシングエレメント、即ち生成されたタスクを
転送すべきプロセシングエレメントを決定することが可
能となるという効果を奏する。
【0036】また、前記各プロセッサは、当該プロセッ
サ上で実行されている一つ又は複数のタスクについて、
各タスクに含まれる当該タスクの平均処理時間を表す情
報から、前記予想終了時間を管理する処理時間管理手段
を有することもできる。この場合、処理時間管理手段
が、当該プロセッサ上で実行されている一つ又は複数の
タスクについて、各タスクに含まれる当該タスクの平均
処理時間を表す情報から、前記予想終了時間を管理する
ため、他のプロセッサから予想終了時間の送信要求が発
せられた際に、迅速にデータの送信を行うことができる
という効果がある。
【0037】また、前記タスク生成手段は、さらに、当
該タスクの処理が終了するまでに必要な時間であると予
想される平均処理時間を含むタスクを生成し、各プロセ
ッサはさらに、当該プロセッサに割り当てられている一
つ又は複数のタスクについて、各タスクに含まれる当該
タスクの平均処理時間を表す情報から、前記予想終了時
間を求める処理時間管理手段を備えることもできる。こ
の場合、各々のタスクに当該タスクの処理が終了するま
でに必要な時間である平均処理時間が含まれており、処
理時間管理手段が、前記平均処理時間から、予想終了時
間を管理することにより、他のプロセッサに対して迅速
に予想終了時間を通信することができるという効果があ
る。
【0038】また、前記予想終了時間収集手段はさら
に、他のプロセシングエレメントに対して、予想終了時
間の送信を要求する予想終了時間要求手段と、他のプロ
セシングエレメントから、送信されてきた予想終了時間
を受信する予想終了時間受信手段とを備えることもでき
る。この場合には、プロセシングエレメントでタスクが
生成された場合など、他のプロセッサの予想終了時間が
必要な時点で収集することが可能となる等、適切なタイ
ミングで予想終了時間の収集が可能になるという効果が
ある。
【0039】また、各プロセッサはさらに、他のプロセ
シングエレメントからの、予想終了時間の送信要求を受
信する予想終了時間要求受信手段と、他のプロセシング
エレメントからの送信要求に対して、他のプロセシング
エレメントに対して、予想終了時間を送信する予想終了
時間送信手段とを備えることもできる。この場合には、
他のプロセッサにおいてタスクが生成された場合に、当
該他のプロセッサから要求された時点で当該他のプロセ
ッサに対して予想終了時間を送信することができるとい
う効果がある。
【0040】また、本発明に係るプロセッサは、プロセ
ッサと記憶資源とを含むプロセシングエレメントをネッ
トワークを介して複数接続したマルチプロセッサシステ
ムにおけるプロセッサであって、各プロセシングエレメ
ントに含まれる記憶資源にアクセスする頻度に関する情
報を含むタスクを生成するタスク生成手段と、他の各プ
ロセシングエレメントから、当該プロセシングエレメン
トに割り当てられているタスクが全て終了すると予想さ
れる時間である予想終了時間を収集する予想終了時間収
集手段と、当該プロセッサが、ネットワークを介さずに
当該プロセシングエレメントに含まれる記憶資源にアク
セスするのに要する時間と、ネットワークを介して、他
のプロセシングエレメントに含まれる記憶資源にアクセ
スするのに要する時間とを保持するアクセス時間保持手
段と、予想終了時間と、前記頻度に関する情報と、前記
アクセスに要する時間とから、生成されたタスクを割り
当てるべきプロセシングエレメントを決定するプロセシ
ングエレメント決定手段とを備えるものであるから、フ
ァイルへのアクセスに要する時間を考慮したマルチプロ
セッサシステムを構築できるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施の形態におけるマルチプロセッ
サシステムの構成図である。
【図2】本発明の一実施の形態におけるタスクの構成図
である。
【図3】予想終了時間の変化を示すタイムチャートであ
る。
【図4】タスクを生成したプロセシングエレメントの処
理内容を示すフロ−チャ−トである。
【図5】タスクを生成したプロセシングエレメント以外
のプロセシングエレメントの処理内容を示すフロ−チャ
−トである。
【図6】本発明のマルチプロセッサシステムにおいてプ
ロセシングエレメントが二つの場合の具体例におけるシ
ステムの構成を示す図である。
【図7】プロセシングエレメントが二つの場合の具体例
におけるタスクの構成図である。
【図8】各プロセシングエレメントのOSの動作フロ−
である。
【図9】プロセシングエレメントが二つの場合の全タス
ク予想終了時間を示す概念図である。
【図10】タスクが生成された場合の総コストを説明す
るための概念図である。
【符号の説明】
1〜3 プロセシングエレメント 11 プロセッサ 12 メモリ 13 ディスク 111 タスク生成部 112 処理時間管理部 113 処理時間通信部 114 処理時間算出部 115 タスク通信部 4 ネットワーク 20 タスク 21 平均処理時間 22〜24 ファイルアクセス頻度 25 タスクテキスト部

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 プロセッサと記憶資源とを含むプロセシ
    ングエレメントをネットワークを介して複数接続したマ
    ルチプロセッサシステムであって、 各プロセッサは、 各プロセシングエレメントに含まれる記憶資源にアクセ
    スする頻度に関する情報を含むタスクを生成するタスク
    生成手段と、 他の各プロセシングエレメントから、当該プロセシング
    エレメントに割り当てられているタスクが全て終了する
    と予想される時間である予想終了時間を収集する予想終
    了時間収集手段と、 プロセッサが、ネットワークを介さずに当該プロセシン
    グエレメントに含まれる記憶資源にアクセスするのに要
    する時間と、ネットワークを介して、他のプロセシング
    エレメントに含まれる記憶資源にアクセスするのに要す
    る時間とを保持するアクセス時間保持手段と、 予想終了時間と、前記頻度に関する情報と、前記アクセ
    スに要する時間とから、生成されたタスクを割り当てる
    べきプロセシングエレメントを決定するプロセシングエ
    レメント決定手段とを備えることを特徴とするマルチプ
    ロセッサシステム。
  2. 【請求項2】 前記プロセシングエレメント決定手段
    は、 n個のプロセシングエレメントが接続されたマルチプロ
    セッサシステムにおいて、i番目(i=1〜n)のプロ
    セシングエレメントに存在する記憶資源にアクセスする
    回数をFi、各プロセシングエレメントから収集された
    予想終了時間をTi、ネットワークを介して他のプロセ
    シングエレメントに含まれる記憶資源にアクセスする場
    合に一回のアクセスに要する時間をAr、ネットワーク
    を介さずに当該プロセシングエレメント内で記憶資源に
    アクセスする場合に一回のアクセスに要する時間をAl
    とした場合に、i(i=1〜n)番目のプロセシングエ
    レメントについて O(i)=Ti+Fi*(Al−Ar) を算出し、前記O(i)が最小となるプロセシングエレ
    メントを、生成されたタスクを転送するべきプロセシン
    グエレメントとして決定することを特徴とする請求項1
    に記載のマルチプロセッサシステム。
  3. 【請求項3】 前記タスク生成手段は、 さらに、当該タスクの処理が終了するまでに必要な時間
    であると予想される平均処理時間を含むタスクを生成
    し、 各プロセッサはさらに、 当該プロセッサに割り当てられている一つ又は複数のタ
    スクについて、各タスクに含まれる当該タスクの平均処
    理時間を表す情報から、前記予想終了時間を求める処理
    時間管理手段を備えることを特徴とする請求項1又は2
    記載のマルチプロセッサシステム。
  4. 【請求項4】 前記予想終了時間収集手段はさらに、 他のプロセシングエレメントに対して、予想終了時間の
    送信を要求する予想終了時間要求手段と、 他のプロセシングエレメントから、送信されてきた予想
    終了時間を受信する予想終了時間受信手段とを備えるこ
    とを特徴とする請求項3記載のマルチプロセッサシステ
    ム。
  5. 【請求項5】 各プロセッサはさらに、 他のプロセシングエレメントからの、予想終了時間の送
    信要求を受信する予想終了時間要求受信手段と、 他のプロセシングエレメントからの送信要求に対して、
    他のプロセシングエレメントに対して、予想終了時間を
    送信する予想終了時間送信手段とを備えることを特徴と
    する請求項4記載のマルチプロセッサシステム。
  6. 【請求項6】 プロセッサと記憶資源とを含むプロセシ
    ングエレメントをネットワークを介して複数接続したマ
    ルチプロセッサシステムにおけるプロセッサであって、 各プロセシングエレメントに含まれる記憶資源にアクセ
    スする頻度に関する情報を含むタスクを生成するタスク
    生成手段と、 他の各プロセシングエレメントから、当該プロセシング
    エレメントに割り当てられているタスクが全て終了する
    と予想される時間である予想終了時間を収集する予想終
    了時間収集手段と、 当該プロセッサが、ネットワークを介さずに当該プロセ
    シングエレメントに含まれる記憶資源にアクセスするの
    に要する時間と、ネットワークを介して、他のプロセシ
    ングエレメントに含まれる記憶資源にアクセスするのに
    要する時間とを保持するアクセス時間保持手段と、 予想終了時間と、前記頻度に関する情報と、前記アクセ
    スに要する時間とから、生成されたタスクを割り当てる
    べきプロセシングエレメントを決定するプロセシングエ
    レメント決定手段とを備えることを特徴とするプロセッ
    サ。
JP25446196A 1995-10-06 1996-09-26 マルチプロセッサシステム Pending JPH09160890A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25446196A JPH09160890A (ja) 1995-10-06 1996-09-26 マルチプロセッサシステム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-259766 1995-10-06
JP25976695 1995-10-06
JP25446196A JPH09160890A (ja) 1995-10-06 1996-09-26 マルチプロセッサシステム

Publications (1)

Publication Number Publication Date
JPH09160890A true JPH09160890A (ja) 1997-06-20

Family

ID=26541691

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25446196A Pending JPH09160890A (ja) 1995-10-06 1996-09-26 マルチプロセッサシステム

Country Status (1)

Country Link
JP (1) JPH09160890A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11265359A (ja) * 1998-03-17 1999-09-28 Fujitsu Ltd 分散処理システム及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2008090507A (ja) * 2006-09-29 2008-04-17 Fujitsu Ltd ジョブ実行のスケジューリングプログラム、ジョブ実行のスケジューリング方法、ジョブ実行のスケジューリング装置
GB2475897A (en) * 2009-12-04 2011-06-08 Creme Software Ltd Resource allocation using estimated time to complete jobs in a grid or cloud computing environment
US9223641B2 (en) 2010-06-29 2015-12-29 Fujitsu Limited Multicore processor system, communication control method, and communication computer product
US9418044B2 (en) 2002-12-16 2016-08-16 Sony Interactive Entertainment Inc. Configuring selected component-processors operating environment and input/output connections based on demand

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11265359A (ja) * 1998-03-17 1999-09-28 Fujitsu Ltd 分散処理システム及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体
US9418044B2 (en) 2002-12-16 2016-08-16 Sony Interactive Entertainment Inc. Configuring selected component-processors operating environment and input/output connections based on demand
JP2008090507A (ja) * 2006-09-29 2008-04-17 Fujitsu Ltd ジョブ実行のスケジューリングプログラム、ジョブ実行のスケジューリング方法、ジョブ実行のスケジューリング装置
US8161485B2 (en) 2006-09-29 2012-04-17 Fujitsu Limited Scheduling jobs in a plurality of queues and dividing jobs into high and normal priority and calculating a queue selection reference value
GB2475897A (en) * 2009-12-04 2011-06-08 Creme Software Ltd Resource allocation using estimated time to complete jobs in a grid or cloud computing environment
US8650298B2 (en) 2009-12-04 2014-02-11 Creme Software Limited Resource allocation system
US9223641B2 (en) 2010-06-29 2015-12-29 Fujitsu Limited Multicore processor system, communication control method, and communication computer product

Similar Documents

Publication Publication Date Title
Gibbons A historical application profiler for use by parallel schedulers
US20080276242A1 (en) Method For Dynamic Scheduling In A Distributed Environment
US8219997B2 (en) Execution the job that is divided into job tasks based on the estimated completion time
US8701108B2 (en) Apparatus and method for controlling live-migrations of a plurality of virtual machines
US8595722B2 (en) Preprovisioning virtual machines based on request frequency and current network configuration
US5522070A (en) Computer resource distributing method and system for distributing a multiplicity of processes to a plurality of computers connected in a network
US6353844B1 (en) Guaranteeing completion times for batch jobs without static partitioning
Elmroth et al. A grid resource broker supporting advance reservations and benchmark-based resource selection
US8468530B2 (en) Determining and describing available resources and capabilities to match jobs to endpoints
Wieder et al. Efficient partitioning of sporadic real-time tasks with shared resources and spin locks
JP4185103B2 (ja) 実行可能プログラムをスケジューリングするためのシステム及び方法
Chard et al. Cost-aware cloud provisioning
He et al. A QoS guided scheduling algorithm for grid computing
KR20130088513A (ko) 멀티코어 시스템의 태스크 분배 방법 및 장치
Iorgulescu et al. Don't cry over spilled records: Memory elasticity of data-parallel applications and its application to cluster scheduling
US5715457A (en) Multiprocessor system for determining assignment of task in view of access time to storage resource
Du et al. Dynamic scheduling with process migration
JPH09160890A (ja) マルチプロセッサシステム
JP2004334853A (ja) 論理的パーティション間の自動化されたプロセッサ再割り振り及び最適化のための方法、システム及びプログラム製品
Kambatla et al. UBIS: Utilization-aware cluster scheduling
JP2007102332A (ja) 負荷分散システム及び負荷分散方法
JP2004046372A (ja) 分散処理システム、リソース割当方法およびプログラムならびにリソース割当プログラムが記録された記録媒体
US9367439B2 (en) Physical memory usage prediction
Kambatla et al. Optimistic scheduling with service guarantees
Lou et al. ArkGPU: enabling applications’ high-goodput co-location execution on multitasking GPUs