JP2003316754A - 動的負荷分散を行うシミュレーションシステム - Google Patents

動的負荷分散を行うシミュレーションシステム

Info

Publication number
JP2003316754A
JP2003316754A JP2002126704A JP2002126704A JP2003316754A JP 2003316754 A JP2003316754 A JP 2003316754A JP 2002126704 A JP2002126704 A JP 2002126704A JP 2002126704 A JP2002126704 A JP 2002126704A JP 2003316754 A JP2003316754 A JP 2003316754A
Authority
JP
Japan
Prior art keywords
processing
load
program
objects
simulation
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.)
Withdrawn
Application number
JP2002126704A
Other languages
English (en)
Inventor
Hiroyuki Maeda
浩幸 前田
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.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries 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 Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP2002126704A priority Critical patent/JP2003316754A/ja
Publication of JP2003316754A publication Critical patent/JP2003316754A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 オブジェクトの処理を担当する各処理装置の
負荷を均衡させる均衡させる。 【解決手段】 シミュレーションシステム10の計算機
1〜3の記憶部11〜13には,シミュレーション対象
の系に登場する複数のオブジェクトに対応するオブジェ
クトプログラムが記憶されている。オブジェクト処理部
21〜23はそれぞれ,複数のオブジェクトのうち,自
己に割り当てられたオブジェクトに対応するオブジェク
トプログラムを実行する。負荷監視部31〜33は,そ
れぞれオブジェクト処理部21〜23の負荷(処理に要
する時間)を計測し,計測した負荷を計算機3の負荷監
視部53に送信する。負荷監視部53は,負荷の相対的
に小さい計算機に,負荷の相対的に大きい計算機が担当
していたオブジェクトの処理を割り当てることにより,
動的な負荷分散を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は,シミュレーション
システムに関し,特に,複数の物体を有する系のシミュ
レーションを実行する複数の処理装置と,該複数の処理
装置によるシミュレーションの進行を管理する管理装置
とを有し,該複数の処理装置に動的な負荷分散を行うシ
ミュレーションシステムに関する。また,本発明は,シ
ミュレーションシステムにおける負荷分散方法に関す
る。
【0002】
【従来の技術】多数の物体(オブジェクト:object)を
有する系のシミュレーションを行うシミュレーションシ
ステムは,一般に,シミュレーションの処理を高速に行
うために,複数の計算機を有する。複数の計算機は,シ
ミュレーションに登場するオブジェクトの一部分ずつを
受け持ち,分割(分担)して処理(計算)を行う。この
場合に,各オブジェクトを処理する計算機は固定されて
おり,処理の進行を管理するマスタ役の計算機が1台存
在する。
【0003】一般的にオブジェクトの個数は,計算機の
数より多い。そのため,1台の計算機が複数のオブジェ
クトを処理することになる。各計算機はシミュレーショ
ンの時間を同期させながら処理を行っていく必要がある
ため,各計算機の処理負荷がバランスするように,オブ
ジェクトの配分を行う必要がある。
【0004】図5は,従来のシミュレーションシステム
の構成例を示すブロック図である。図5に示すシミュレ
ーションシステムは,一例として3台の計算機100,
200,および300を有し,これらの計算機は,通信
ネットワーク400で相互に接続されている。
【0005】このシミュレーションシステムは,シミュ
レーションに登場する5つのオブジェクトa〜eを処理
し,計算機100はオブジェクトaおよびbを担当し,
計算機200はオブジェクトcおよびdを担当し,計算
機300はオブジェクトeを担当する。また,この例で
は,計算負荷の1番少ない計算機300が処理の進行を
管理するマスタ役も同時に行っている。
【0006】図6は,計算機100,200,および3
00のそれぞれのオブジェクトの処理に要する時間(負
荷)を示すタイムチャートである。第1フレームにおけ
るオブジェクトa〜eのそれぞれの処理時間をTa1〜T
e1で示し,第2フレームにおけるオブジェクトa〜eの
それぞれの処理時間をTa2〜Te2で示している。
【0007】各オブジェクトの計算量(処理量)は時間
的に変化するため,計算の終了に要する時間が変化す
る。第1フレームおよび第2フレームとも,計算機10
0の処理時間が長いが,第2フレームでは,オブジェク
トbの処理時間Tb2が第1フレームにおける処理時間T
b1よりも長くなってなり,また,オブジェクトdの処理
時間Td2が第1フレームにおける処理時間Td1よりも長
くなっている。その結果,計算機300は,第1フレー
ムおよび第2フレームとも,他の計算機の処理終了を待
たされることとなり,その待ち時間は,第2フレームの
方が第1フレームよりも長くなっている。
【0008】オブジェクトの処理量(計算量)の時間的
変化は一般に予測することが難しく,各計算機の総待ち
時間を最も少なくし,高速にシミュレーション計算を行
う最適なオブジェクトの計算機への配分をあらかじめ決
めるのは困難である。
【0009】
【発明が解決しようとする課題】本発明は,このような
状況に鑑みなされたものであり,その目的は,オブジェ
クトの処理を担当する処理装置(たとえば計算機)をシ
ミュレーション実行時に動的に変更することにより,各
処理装置の負荷を均衡させることにある。
【0010】また,本発明の目的は,負荷を均衡させる
ことにより,シミュレーションシステム全体の処理時間
を短縮することにある。
【0011】
【課題を解決するための手段】前記目的を達成するため
に,本発明によるシミュレーションシステムは,複数の
物体を有する系のシミュレーションを実行する複数の処
理装置と,該複数の処理装置によるシミュレーションの
進行を管理する管理装置とを有するシミュレーションシ
ステムであって,前記複数の処理装置のそれぞれは,複
数のプログラムからなるプログラム群であって,各プロ
グラムが前記複数の物体のそれぞれに対応して,対応し
た物体のシミュレーションを実行する,プログラム群を
記憶する記憶手段と,前記記憶手段に記憶されたプログ
ラム群のうち,自己に割り当てられた1または2以上の
物体に対応するプログラムを実行する処理手段と,自己
の処理の負荷を監視し,該負荷を前記管理装置に送信す
る監視手段と,を有し,前記管理装置は,前記各処理装
置の前記監視手段により送信された負荷に基づいて,相
対的に負荷の大きな処理装置に割り当てられた物体を相
対的に負荷の小さな処理装置に割り当てるように,各処
理装置が処理する物体の割り当てを変更する負荷調整手
段を有する。
【0012】また,本発明による負荷分散方法は,複数
の物体を有する系のシミュレーションを実行する複数の
処理装置と,該複数の処理装置によるシミュレーション
の進行を管理する管理装置とを有するシミュレーション
システムにおける負荷分散方法であって,前記複数の処
理装置のそれぞれは,複数のプログラムからなるプログ
ラム群であって,各プログラムが前記複数の物体のそれ
ぞれに対応して,対応した物体のシミュレーションを実
行する,プログラム群を自己の記憶手段にあらかじめ記
憶し,前記プログラム群のうち,自己に割り当てられた
1または2以上の物体に対応するプログラムを実行し,
自己の処理の負荷を監視し,該負荷を前記管理装置に送
信し,前記管理装置は,前記各処理装置から送信された
各処理装置の処理の負荷に基づいて,各処理装置の負荷
が均衡するように,各処理装置が処理する物体の割り当
てを変更するものである。
【0013】本発明によると,各処理装置から送信され
た負荷に基づいて,相対的に負荷の大きな処理装置に割
り当てられた物体が,相対的に負荷の小さな処理装置に
動的に割り当てられる。これにより,各処理装置の負荷
が均衡するように,負荷分散が動的に行われる。その結
果,シミュレーションシステム全体の処理時間も短縮す
ることができる。
【0014】本発明の一実施の形態によると,前記各処
理装置の前記監視手段は,前記処理手段が前記割り当て
られた1または2以上の物体に対応するプログラムの実
行が終了すると,該実行されたプログラムの各処理時間
を処理の負荷として前記管理装置に送信し,前記管理装
置の前記負荷調整手段は,前記複数の処理装置のすべて
から前記処理時間を受信すると,終了通知を前記複数の
処理装置のすべてに送信し,前記各処理装置の前記監視
手段は,前記割り当てられた物体に対応するプログラム
の処理の終了から前記終了通知を受信するまでの待ち時
間を前記管理装置に送信し,前記管理装置の前記負荷調
整手段は,前記待ち時間と,前記各処理装置の前記監視
手段から送信されたプログラムの各処理時間とに基づい
て,各処理装置が処理する物体の割り当てを変更する。
【0015】好ましくは,前記負荷調整手段は,前記待
ち時間の最大のものから前記各処理時間を減算し,減算
結果が該処理時間より大きいものの1つに対応する物体
を,待ち時間が最大の処理装置に割り当てる。また,減
算結果が該処理時間より大きいものの1つは,その中で
減算結果が最大のものであることがさらに好ましい。
【0016】さらに好ましくは,前記複数の処理装置の
それぞれは,前記管理装置の指令に基づいて,前記処理
手段が前記プログラムを実行するのに必要となるデータ
を他の処理装置との間で送受信する送受信手段をさらに
有し,前記管理装置の負荷調整手段は,前記データの送
受信を前記送受信手段に指令し,データを受信した処理
装置に該データに対応する物体を割り当て,データを送
信した処理装置に該データに対応する物体の割り当てを
解除する。これにより,プログラムを移動サルことな
く,データの移動のみで,動的な負荷分散を行うことが
できる。
【0017】
【発明の実施の形態】図1は,本発明の一実施の形態に
よるシミュレーションシステム10の構成を示すブロッ
ク図である。このシミュレーションシステム10は,複
数の物体を有する系のシミュレーション(たとえば防空
シミュレーション,フライトシミュレーション等)を実
行する。
【0018】シミュレーションシステム10は,複数の
処理装置としての計算機を有し,本実施の形態では一例
として3つの計算機1〜3を有する。これらの計算機1
〜3は,通信ネットワーク4に接続され,通信ネットワ
ーク4を介して相互に通信可能に構成されている。通信
ネットワーク4は,たとえばCSMA/CD方式等によ
る共通バスにより構成することもできるし,リングネッ
トワークにより構成することもできる。
【0019】計算機1は,記憶部11,オブジェクト処
理部21,負荷監視部31,およびオブジェクトデータ
移動部41を有する。計算機2は,記憶部12,オブジ
ェクト処理部22,負荷監視部32,およびオブジェク
トデータ移動部42を有する。計算機3は,記憶部1
3,オブジェクト処理部23,負荷監視部33,オブジ
ェクトデータ移動部43,および負荷調整部53を有す
る。計算機1〜3のそれぞれの構成要素は,各計算機内
部の内部バス(内部信号線)に接続され,相互に通信可
能に構成されている。
【0020】このように,計算機1および2は,同じ構
成を有するのに対し,計算機3は,計算機1および2の
構成要素に加えて,負荷調整部53を有する点で計算機
1および2と異なる。計算機3は,負荷調整部53によ
り,自己ならびに計算機1および2の全体の処理の進行
を管理するマスタ計算機(管理装置)の役割を果たす。
一方,計算機1および2は,マスタ計算機3の負荷調整
部53による負荷分散に基づいて処理が割り当てられ,
割り当てられた処理を実行するスレーブ計算機(処理装
置)の役割を果たす。また,計算機3は,自己の負荷調
整部53により処理が割り当てられるスレーブ計算機と
しても機能する。
【0021】記憶部11〜13には,シミュレーション
に登場する複数の航空機,センサ等の物体(オブジェク
ト:object)の処理内容または動作内容を記述したプロ
グラムがあらかじめ記憶されている。本実施の形態で
は,1つのオブジェクトに1つのプログラム(以下「オ
ブジェクトプログラム」という。)が対応している。
【0022】また,記憶部11〜13のそれぞれには,
シミュレーションに登場するすべてのオブジェクトに対
応するオブジェクトプログラムからなるプログラム群が
記憶されている。このように,各記憶部が全オブジェク
トプログラムをあらかじめ記憶しておくことにより,処
理中に動的な負荷分散が行われても,オブジェクトプロ
グラムそのものをスレーブ計算機間で通信する必要がな
く,通信コストおよび通信に要する処理時間が削減され
る。
【0023】オブジェクト処理部21〜23は,記憶部
11〜13のそれぞれに記憶されたオブジェクトプログ
ラムPa〜Peを実行することにより,オブジェクトa
〜eの処理(計算)を実行する。
【0024】オブジェクトプログラムは,そのオブジェ
クトプログラムの実行に必要な状態データ(以下「オブ
ジェクトデータ」という。)が与えられることにより実
行可能となる。このオブジェクトデータは,たとえばオ
ブジェクトプログラムが飛行機というオブジェクトに対
応するものである場合に,その飛行機の位置や飛行方
向,飛行速度等の状態を表すデータである。
【0025】このシミュレーションシステム10の処理
開始時において,各計算機には,初期値として,一部の
オブジェクトプログラムに対応するオブジェクトデータ
が与えられ,各計算機のオブジェクト処理部21〜23
は,与えられたオブジェクトデータに基づいて,そのオ
ブジェクトデータに対応するオブジェクトプログラムを
実行する。
【0026】オブジェクト処理部21〜23が,与えら
れたオブジェクトデータに基づいてオブジェクトプログ
ラムを実行すると,実行結果として,同じオブジェクト
プログラムまたは他のオブジェクトプログラムの実行に
必要なオブジェクトデータを生成する。
【0027】負荷監視部31〜33は,オブジェクト処
理部21〜23によりそれぞれ実行されたオブジェクト
プログラムの処理負荷を監視する。処理負荷として,本
実施の形態では,一例として,オブジェクトプログラム
の処理に要した時間を使用するものとする。
【0028】オブジェクトデータ移動部41〜43は,
負荷調整部53の指令により,オブジェクトデータを他
の計算機のオブジェクトデータ移動部との間で送受信す
る。後に詳述するように,オブジェクトデータを受信し
たスレーブ計算機は,該受信したオブジェクトデータに
基づいて,そのオブジェクトデータに対応するオブジェ
クトプログラムを実行する。このようにして,シミュレ
ーションの実行中に動的な負荷分散が行われる。
【0029】負荷調整部53は,各計算機の負荷を測定
し,計算機間の負荷バランスが崩れた場合に,オブジェ
クトデータ移動部41〜43を使用して,オブジェクト
データの移動を行い,各計算機間の負荷を均等にする。
【0030】なお,図示は省略するが,シミュレーショ
ンシステム10には表示装置および入力装置が設けられ
る。そして,シミュレーション結果は表示装置に表示さ
れ,シミュレーションシステムに対する所定の入力デー
タは入力装置を介して入力される。
【0031】図2および図3は,計算機1〜3のそれぞ
れのシミュレーション実行時の処理の流れを示すフロー
チャートであり,図3は図2の続きの処理を示してい
る。これらの図は,複数の計算機をマスタ計算機とスレ
ーブ計算機とに分けて図示しているが,マスタ計算機は
図1の計算機3に対応し,スレーブ計算機は計算機1〜
3のそれぞれに対応する。図4は,計算機1〜3のそれ
ぞれのオブジェクトプログラムの実行に要する時間(負
荷)を示すタイムチャートである。
【0032】以下では,一例として,スレーブ計算機の
各記憶部11〜13に,5つのオブジェクトa〜eにそ
れぞれ対応するオブジェクトプログラムPa〜Peが記
憶されているものとする。また,オブジェクトデータの
初期値として,スレーブ計算機1にはオブジェクトプロ
グラムPaおよびPbのオブジェクトデータが与えら
れ,スレーブ計算機2にはオブジェクトプログラムPc
およびPdのオブジェクトデータが与えられ,スレーブ
計算機3にはオブジェクトプログラムPeのオブジェク
トデータが与えられているものとする。これらの負荷デ
ータは,図示しない入力装置から入力することもでき,
また,負荷調整部53が通信ネットワーク4または内部
バスを介して,オブジェクト処理部21〜23に与える
こともできる。
【0033】スレーブ計算機のオブジェクト処理部2i
(iは1〜3のいずれかの整数,以下同様)は,初期値
として与えられたオブジェクトデータに基づいてオブジ
ェクトプログラムを実行する(S21)。上記例では,
計算機1のオブジェクト処理部21はオブジェクトプロ
グラムPaおよびPbを,計算機2のオブジェクト処理
部12はオブジェクトプログラムPcおよびPdを,計
算機3のオブジェクト処理部13はオブジェクトプログ
ラムPeを,それぞれ実行する。実行開始の指令は,負
荷調整部53から与えられてもよい。
【0034】複数のオブジェクトプログラムについての
オブジェクトデータが与えられた場合には,これら複数
のオブジェクトプログラムが同時並行して実行可能なら
ば,いずれか一方が選択されて先に実行され,その後,
他方が実行されることとなる。一方,これら複数のオブ
ジェクトプログラムが順序性を有する場合には,この順
序性に従って実行されることとなる。たとえば,上記例
では,計算機1のオブジェクト処理部11は,オブジェ
クトプログラムPaおよびPbが同時並行して実行可能
である場合には,いずれか一方を先に実行し,その後,
他方を実行し,順序性を有する場合には,この順序に従
って実行することとなる。計算機2においても同様であ
る。
【0035】本実施の形態では,一例として,計算機1
のオブジェクト処理部21は,オブジェクトプログラム
Paを先に実行し,その後オブジェクトプログラムPb
を実行するものとする。また,計算機2のオブジェクト
処理部22は,オブジェクトプログラムPbを先に実行
し,その後,オブジェクトプログラムPcを実行するも
のとする。
【0036】続いて,スレーブ計算機の負荷監視部3i
は,オブジェクトプログラムの実行が1つ終了するごと
に,そのオブジェクトプログラムの実行に要した時間を
計算する(S22)。
【0037】これらステップS21およびS22の処理
は,初期値として与えられたオブジェクトデータにより
実行可能となったオブジェクトプログラムの実行が終了
するまで繰り返される(S23)。
【0038】これにより,計算機1では,オブジェクト
プログラムPaおよびPbが実行され,オブジェクトプ
ログラムPaの処理時間Ta1およびオブジェクトプログ
ラムPbの処理時間Tb1が求められる。計算機2では,
オブジェクトプログラムPcおよびPdが実行され,オ
ブジェクトプログラムPcの処理時間Tc1およびオブジ
ェクトプログラムPdの処理時間Td1が求められる。計
算機3では,オブジェクトプログラムPeが実行され,
オブジェクトプログラムPeの処理時間Te1が求められ
る。
【0039】与えられたオブジェクトデータの初期値に
対する処理が終了すると,オブジェクト処理部2iは,
これにより,次のオブジェクトデータを生成するが,次
のオブジェクトデータに対する処理は,負荷調整部53
から指令があるまで,待ち状態となる。
【0040】続いて,負荷監視部3iは,処理終了通知
および処理時間をマスタ計算機の負荷調整部53に送信
する(S24)。負荷監視部31および32は,通信ネ
ットワーク4を介して処理終了通知および処理時間を送
信し,負荷監視部33は,同じ計算機3内に負荷調整部
53が存在するので,内部バスを介して処理終了通知お
よび処理時間を送信することとなる。
【0041】負荷調整部53は,すべてのスレーブ計算
機から処理終了通知および処理時間を受信すると(S1
でYES),処理時間を記憶するとともに,第1フレー
ムのフレーム終了通知をすべてのスレーブ計算機の負荷
監視部31〜33に送信する(S2)。
【0042】ここで,「フレーム」とは,各計算機に与
えたオブジェクトデータに対する各計算機の処理開始か
ら処理終了までの処理区間という。
【0043】負荷監視部3iは,第1フレームのフレー
ム終了通知を受信すると(S25でYES),オブジェ
クト処理部2iのプログラム終了からフレーム終了通知
の受信までの待ち時間を計算し,この待ち時間を負荷調
整部53に送信する(S26)。この待ち時間は,処理
終了通知および処理時間の送信後(S24),フレーム
終了通知の受信までの時間として求められる。
【0044】図4に示すように,第1フレームの時間を
Tf1,計算機1の待ち時間D11(=0),計算機2の待
ち時間D21,計算機3の待ち時間D31とすると,D11=
Tf1−(Ta1+Tb1)=0,D21=Tf1−(Tc1+Td
1),D31=Tf1−Te1となる。なお,図4に示すよう
に,Ta1+Tb1>Tc1+Td1>Te1の関係にあるものと
し,したがって,D31>D21>D11の関係にあるものと
する。
【0045】負荷調整部53は,すべてのスレーブ計算
機から待ち時間D11〜D13を受信すると(S3でYE
S),これら待ち時間D11〜D13を比較し,その中から
最大の待ち時間DMAX(ここではD13)を有するスレー
ブ計算機(計算機Mとする。)を決定する(S4)。上
記例では,計算機Mは計算機3となる。
【0046】スレーブ計算機Mが負荷の最も小さな計算
機である。したがって,負荷調整部53は,この最小負
荷のスレーブ計算機Mにどのオブジェクトプログラムの
処理を実行させると,シミュレーションシステム10全
体の処理時間が短くなるかを判断する。
【0047】すなわち,まず,負荷調整部53は,最小
の待ち時間のスレーブ計算機(計算機Nとする。)にお
いて第1フレームで実行された全オブジェクトプログラ
ムの処理時間(処理時間TN1〜TNnとする。)を読み出
す。上記例では,計算機Nはスレーブ計算機1となり,
読み出される処理時間はTa1およびTb1である。
【0048】続いて,負荷調整部53は,読み出した処
理時間のうち,DMAX−TNj>TNj(jは1〜nまでの
整数)となる処理時間TNjに対応するオブジェクト(オ
ブジェクトの識別子)を,スレーブ計算機Mに処理させ
るオブジェクトプログラムの候補として登録する(S6
〜S9)。
【0049】図3に移って,ステップS6で登録された
オブジェクトが複数存在する場合,すなわちDMAX−T
Nj>TNjとなる処理時間TNjが複数存在する場合には
(S10でYES),負荷調整部53は,その中から1
つのオブジェクト,好ましくは最大の処理時間を有する
オブジェクトを選択する(S11)。最大の処理時間を
有するオブジェクトが複数存在する場合には,その中か
らいずれか1つが選択される。登録されたオブジェクト
が1つの場合には,そのオブジェクトが選択される。上
記例では,オブジェクトaが選択される。
【0050】続いて,負荷調整部53は,ステップS1
1で選択されたオブジェクトaに対応するオブジェクト
プログラムPaの処理結果のオブジェクトデータをスレ
ーブ計算機Mに送信するように,スレーブ計算機Nのオ
ブジェクトデータ移動部に指令する(S12)。また,
負荷調整部53は,オブジェクトaに対応するオブジェ
クトプログラムPaの処理結果のオブジェクトデータを
受信するように,スレーブ計算機Mのオブジェクトデー
タ移動部に指令する(S13)。
【0051】上記例は,スレーブ計算機1のオブジェク
トデータ移動部41には,オブジェクトプログラムPa
のオブジェクトデータの送信指令が負荷調整部53から
与えられ,スレーブ計算機3のオブジェクトデータ移動
部43には,オブジェクトプログラムPaのオブジェク
トデータの受信指令が負荷調整部53から与えられる。
これにより,オブジェクトデータ移動部41は,オブジ
ェクトプログラムPaのオブジェクトデータを計算機3
に送信し,オブジェクトデータ移動部43は,送信され
た状態データを受信し,受信した状態データをオブジェ
クト処理部23に与える。
【0052】スレーブ計算機1は,オブジェクトプログ
ラムPaのオブジェクトデータの送信により,次のフレ
ーム(第2フレーム)では,オブジェクトプログラムP
aを除いたオブジェクトプログラム,すなわちオブジェ
クトプログラムPbのみを実行する。スレーブ計算機3
は,これまで実行したオブジェクトプログラムPeに加
えて,受信したオブジェクトデータに対応するオブジェ
クトプログラムPaを実行する。このようにして,シミ
ュレーション実行中に動的な負荷分散が実行される。
【0053】続いて,負荷調整部53は,次のフレーム
(第2フレーム)の処理開始指令をすべてのスレーブ計
算機に与える(S13)。
【0054】これにより,スレーブ計算機1は,オブジ
ェクトプログラムPaを除いたオブジェクトプログラム
Pbを実行し,スレーブ計算機2は,第1フレームと同
様にオブジェクトプログラムPcおよびPdを実行し,
スレーブ計算機3は,オブジェクトプログラムPaおよ
びPeを実行する。
【0055】その結果,図4に示すように,第2フレー
ムの処理時間Tf2は,第1フレームの処理時間Tf1より
も短くなり,シミュレーションシステム10全体の処理
時間が短縮される。
【0056】このような処理が,各フレームごとに実行
され,シミュレーションが実行されて行く。
【0057】このように,本実施の形態によると,各ス
レーブ計算機の負荷が均衡するように,各スレーブ計算
機が担当するオブジェクトが動的に変更され,動的な負
荷分散が実行される。その結果,シミュレーション処理
に要する時間も短縮される。
【0058】また,本実施の形態によると,シミュレー
ションシステムを構成するすべての計算機にすべての種
類のオブジェクトプログラムがあらかじめ記憶されてい
るので,オブジェクトの計算途中のオブジェクトデータ
を異なる計算機に移動させるだけで,オブジェクトの計
算を行う計算機を変更することが可能になる。その結
果,通信コストが軽減され,これによっても,シミュレ
ーションの処理時間を短縮することができる。
【0059】なお,本実施の形態は一例であって,本発
明の技術的範囲を限定するものではない。たとえば,負
荷調整部53は,計算機3に設けられているが,計算機
1または2に設けることもできる。また,処理の進行を
管理するマスタ役専用の計算機4が計算機1〜3以外に
設けられ,この計算機4に負荷調整部53を設けること
もできる。
【0060】
【発明の効果】本発明によると,各処理装置から送信さ
れた負荷に基づいて,相対的に負荷の大きな処理装置に
割り当てられた物体が,相対的に負荷の小さな処理装置
に動的に割り当てられる。これにより,各処理装置の負
荷が均衡するように,負荷分散が動的に行われる。その
結果,シミュレーションシステム全体の処理時間も短縮
することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態によるシミュレーション
システムの構成を示すブロック図である。
【図2】各計算機のシミュレーション実行時の処理の流
れを示すフローチャートである。
【図3】各計算機のシミュレーション実行時の処理の流
れを示すフローチャートである。
【図4】各計算機のそれぞれのオブジェクトプログラム
の実行に要する時間(負荷)を示すタイムチャートであ
る。
【図5】従来のシミュレーションシステムの構成を示す
ブロック図である。
【図6】従来の各計算機のそれぞれのオブジェクトの処
理に要する時間(負荷)を示すタイムチャートである。
【符号の説明】
10 シミュレーションシステム, 1〜3 計算機 4 通信ネットワーク 11〜13 記憶部 21〜23 オブジェクト処理部 31〜33 負荷監視部 41〜43 オブジェクトデータ移動部 53 負荷調整部

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数の物体を有する系のシミュレーショ
    ンを実行する複数の処理装置と,該複数の処理装置によ
    るシミュレーションの進行を管理する管理装置とを有す
    るシミュレーションシステムであって,前記複数の処理
    装置のそれぞれは,複数のプログラムからなるプログラ
    ム群であって,各プログラムが前記複数の物体のそれぞ
    れに対応して,対応した物体のシミュレーションを実行
    する,プログラム群を記憶する記憶手段と,前記記憶手
    段に記憶されたプログラム群のうち,自己に割り当てら
    れた1または2以上の物体に対応するプログラムを実行
    する処理手段と,自己の処理の負荷を監視し,該負荷を
    前記管理装置に送信する監視手段と,を有し,前記管理
    装置は,前記各処理装置の前記監視手段により送信され
    た負荷に基づいて,相対的に負荷の大きな処理装置に割
    り当てられた物体を相対的に負荷の小さな処理装置に割
    り当てるように,各処理装置が処理する物体の割り当て
    を変更する負荷調整手段を有する,シミュレーションシ
    ステム。
  2. 【請求項2】 請求項1において,前記各処理装置の前
    記監視手段は,前記処理手段が前記割り当てられた1ま
    たは2以上の物体に対応するプログラムの実行が終了す
    ると,該実行されたプログラムの各処理時間を処理の負
    荷として前記管理装置に送信し,前記管理装置の前記負
    荷調整手段は,前記複数の処理装置のすべてから前記処
    理時間を受信すると,終了通知を前記複数の処理装置の
    すべてに送信し,前記各処理装置の前記監視手段は,前
    記割り当てられた物体に対応するプログラムの処理の終
    了から前記終了通知を受信するまでの待ち時間を前記管
    理装置に送信し,前記管理装置の前記負荷調整手段は,
    前記待ち時間と,前記各処理装置の前記監視手段から送
    信されたプログラムの各処理時間とに基づいて,各処理
    装置が処理する物体の割り当てを変更する,シミュレー
    ションシステム。
  3. 【請求項3】 請求項2において,前記負荷調整手段
    は,前記待ち時間の最大のものから前記各処理時間を減
    算し,減算結果が該処理時間より大きいものの1つに対
    応する物体を,待ち時間が最大の処理装置に割り当て
    る,シミュレーションシステム。
  4. 【請求項4】 請求項2において,前記負荷調整手段
    は,前記待ち時間の最大のものから前記各処理時間を減
    算し,減算結果が該処理時間より大きいものの中で,前
    記減算結果の最大のものに対応する物体を,待ち時間が
    最大の処理装置に割り当てる,シミュレーションシステ
    ム。
  5. 【請求項5】 請求項1から4のいずれか1項におい
    て,前記複数の処理装置のそれぞれは,前記管理装置の
    指令に基づいて,前記処理手段が前記プログラムを実行
    するのに必要となるデータを他の処理装置との間で送受
    信する送受信手段をさらに有し,前記管理装置の負荷調
    整手段は,前記データの送受信を前記送受信手段に指令
    し,データを受信した処理装置に該データに対応する物
    体を割り当て,データを送信した処理装置に該データに
    対応する物体の割り当てを解除する,シミュレーション
    システム。
  6. 【請求項6】 請求項1から5のいずれか1項におい
    て,前記複数の処理装置の1つが前記管理装置に兼用さ
    れる,シミュレーションシステム。
  7. 【請求項7】 複数の物体を有する系のシミュレーショ
    ンを実行する複数の処理装置と,該複数の処理装置によ
    るシミュレーションの進行を管理する管理装置とを有す
    るシミュレーションシステムにおける負荷分散方法であ
    って,前記複数の処理装置のそれぞれは,複数のプログ
    ラムからなるプログラム群であって,各プログラムが前
    記複数の物体のそれぞれに対応して,対応した物体のシ
    ミュレーションを実行する,プログラム群を自己の記憶
    手段にあらかじめ記憶し,前記プログラム群のうち,自
    己に割り当てられた1または2以上の物体に対応するプ
    ログラムを実行し,自己の処理の負荷を監視し,該負荷
    を前記管理装置に送信し,前記管理装置は,前記各処理
    装置から送信された各処理装置の処理の負荷に基づい
    て,各処理装置の負荷が均衡するように,各処理装置が
    処理する物体の割り当てを変更する,負荷分散方法。
JP2002126704A 2002-04-26 2002-04-26 動的負荷分散を行うシミュレーションシステム Withdrawn JP2003316754A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002126704A JP2003316754A (ja) 2002-04-26 2002-04-26 動的負荷分散を行うシミュレーションシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002126704A JP2003316754A (ja) 2002-04-26 2002-04-26 動的負荷分散を行うシミュレーションシステム

Publications (1)

Publication Number Publication Date
JP2003316754A true JP2003316754A (ja) 2003-11-07

Family

ID=29541042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002126704A Withdrawn JP2003316754A (ja) 2002-04-26 2002-04-26 動的負荷分散を行うシミュレーションシステム

Country Status (1)

Country Link
JP (1) JP2003316754A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079341A (ja) * 2004-09-09 2006-03-23 Mitsubishi Electric Corp 分散シミュレーションシステム及びプログラム
WO2009131007A1 (ja) * 2008-04-22 2009-10-29 日本電気株式会社 Simd型並列計算機システム、simd型並列計算方法及び制御プログラム
JP2010244459A (ja) * 2009-04-09 2010-10-28 Mitsubishi Electric Corp シミュレーション実行方法
JP2010277272A (ja) * 2009-05-27 2010-12-09 Oki Electric Ind Co Ltd 負荷分散制御装置、プログラム及び方法、並びに、負荷分散装置及び情報処理装置
JP6324634B1 (ja) * 2017-03-03 2018-05-16 三菱電機株式会社 処理分割装置、シミュレータシステム、処理分割方法及び処理分割プログラム
JP2019035997A (ja) * 2017-08-10 2019-03-07 日本電信電話株式会社 分散同期処理システム、分散同期処理方法および分散同期処理プログラム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079341A (ja) * 2004-09-09 2006-03-23 Mitsubishi Electric Corp 分散シミュレーションシステム及びプログラム
JP4679856B2 (ja) * 2004-09-09 2011-05-11 三菱電機株式会社 分散シミュレーションシステム及びプログラム
WO2009131007A1 (ja) * 2008-04-22 2009-10-29 日本電気株式会社 Simd型並列計算機システム、simd型並列計算方法及び制御プログラム
US8769244B2 (en) 2008-04-22 2014-07-01 Nec Corporation SIMD parallel computer system, SIMD parallel computing method, and control program
JP2010244459A (ja) * 2009-04-09 2010-10-28 Mitsubishi Electric Corp シミュレーション実行方法
JP2010277272A (ja) * 2009-05-27 2010-12-09 Oki Electric Ind Co Ltd 負荷分散制御装置、プログラム及び方法、並びに、負荷分散装置及び情報処理装置
JP6324634B1 (ja) * 2017-03-03 2018-05-16 三菱電機株式会社 処理分割装置、シミュレータシステム、処理分割方法及び処理分割プログラム
WO2018158944A1 (ja) * 2017-03-03 2018-09-07 三菱電機株式会社 処理分割装置、シミュレータシステム、処理分割方法及び処理分割プログラム
JP2019035997A (ja) * 2017-08-10 2019-03-07 日本電信電話株式会社 分散同期処理システム、分散同期処理方法および分散同期処理プログラム

Similar Documents

Publication Publication Date Title
Samie et al. Computation offloading and resource allocation for low-power IoT edge devices
CN106776005B (zh) 一种面向容器化应用的资源管理系统及方法
US10305823B2 (en) Network interface card configuration method and resource management center
CN107534583B (zh) 在管理节点中实现的方法和相关装置
CN103207814B (zh) 一种去中心化的跨集群资源管理与任务调度系统与调度方法
US8635263B2 (en) Node processing device and its processing method
US20170003977A1 (en) Boot control program, boot control method, and boot control device
CN104615488A (zh) 异构多核可重构计算平台上任务调度的方法和装置
CN110489126B (zh) 编译任务的执行方法和装置、存储介质及电子装置
Convolbo et al. GEODIS: towards the optimization of data locality-aware job scheduling in geo-distributed data centers
EP4002115A1 (en) Resource allocation method and resource offloading method
CN110750351B (zh) 多核任务调度器、多核任务调度方法、装置及相关产品
US20070157207A1 (en) Hardwired scheduler for low power wireless device processor and method for using the same
CN111835849B (zh) 增强接入网服务能力的方法和装置
CN105144109A (zh) 分布式数据中心技术
CN105491150A (zh) 基于时间序列的负载均衡处理方法及系统
CN102436399A (zh) 一种负载均衡的采集方法
US20220300323A1 (en) Job Scheduling Method and Job Scheduling Apparatus
JP2003316754A (ja) 動的負荷分散を行うシミュレーションシステム
CN112422251B (zh) 数据传输方法及装置、终端、存储介质
Li et al. Co-Scheduler: A coflow-aware data-parallel job scheduler in hybrid electrical/optical datacenter networks
WO2019111411A1 (ja) 協調分散システム、協調分散管理装置、協調分散方法、及びプログラム
WO2021095943A1 (ko) 서비스 프로파일을 고려한 컨테이너의 배치 방법
CN115562878A (zh) Gpu计算资源的管理方法、装置、电子设备及可读存储介质
JP2010231601A (ja) グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050705