JP3792879B2 - 並列実行システム - Google Patents
並列実行システム Download PDFInfo
- Publication number
- JP3792879B2 JP3792879B2 JP05563098A JP5563098A JP3792879B2 JP 3792879 B2 JP3792879 B2 JP 3792879B2 JP 05563098 A JP05563098 A JP 05563098A JP 5563098 A JP5563098 A JP 5563098A JP 3792879 B2 JP3792879 B2 JP 3792879B2
- Authority
- JP
- Japan
- Prior art keywords
- analysis
- processing device
- prediction model
- execution time
- prediction
- 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.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は,並列実行環境において特定のアプリケーションによりパラメータの値ごとに内容の異なる解析を多数行う場合に,個々の解析を並列計算機の各処理装置に動的に割り当て,全体の処理を高速に効率的に行う並列実行システムに関する。
【0002】
構造解析や計算化学などの科学技術計算や統計処理などのビジネス計算の分野において,パラメータの値ごとに内容の異なる解析を特定のアプリケーションにより多数行い,パラメータの値ごとに得られた解析結果を総合的に判断する処理が広く行われている。
【0003】
このような処理では個々の解析は独立しており,並列計算機の要素である一つまたは複数の処理装置で実行することが可能であるが,これらの処理装置に対する解析の割り当て方によっては,処理の全体の実行時間が変わってくるため,実行時間を最短にするような割り当てをすることが重要である。本発明は,このような並列実行環境において,全体としての実行開始から実行終了までの時間を最短にするための技術を提供するものである。
【0004】
【従来の技術】
計算機システムにおいて,特定のアプリケーションによりパラメータの値ごとに内容の異なる解析を多数行い,パラメータの値ごとに得られた解析結果を総合的に判断するような処理を行う場合に,処理装置が1台しかないときには,パラメータの数だけの解析を順々に1台の処理装置によって処理する。
【0005】
一方,処理装置が複数ある場合には,従来,個々の解析の実行時間とは無関係に適当に決めた順番に従って,解析が割り当てられていない処理装置に対して解析を順々に割り当てて処理していた。
【0006】
【発明が解決しようとする課題】
複数の処理装置で解析を行う場合,例えば,解析の処理の後半において,実行時間の長い解析が一部の処理装置において処理され,残りの処理装置が活用されていないような状況が生じることがある。このように,処理装置ごとの処理量にばらつきが生じると,解析を均等に処理装置に割り当てる場合に比べて,処理装置の稼働率が低下し,全体としての処理時間が長くなってしまう。
【0007】
しかし,従来の技術では,個々の解析に必要と見込まれる実行時間を,解析の実際のパラメータを考慮して予測することは行っていないため,個々の解析に要する実行時間が分からず,パラメータの数だけある解析のうち,どの解析を,どの順番で,どの処理装置に割り当てれば,処理装置ごとの処理量のばらつきをなくして全体の処理時間を短くできるか,といった戦略を立てることができなかった。
【0008】
本発明の目的は,並列実行環境を持つ計算機システムにおいて,パラメータの値ごとに内容の異なる解析を特定のアプリケーションにより複数の処理装置で多数実行する場合に,解析の内容を特徴付けるパラメータの値をもとに,個々の解析の実行時間を予測し,この予測をもとに個々の解析を処理装置に割り当て,全体の処理時間が最短となるようにすることである。
【0009】
【課題を解決するための手段】
図1は本発明の原理ブロック図である。
本システムは,各々CPUとメモリとを備えた解析割り当て処理装置10と複数の処理装置20とからなる。解析割り当て処理装置10は,入力データ分配部1,パラメータ収集部2,ログ収集部3,予測モデル作成部4,解析割り当て部5,結果データ収集部6,順番テーブル7,処理装置テーブル8を持つ。
【0010】
入力データ分配部1は,パラメータの値ごとに対応する入力データを,その解析(解析a)が割り当てられている処理装置20に配る手段である。
パラメータ収集部2は,アプリケーションの名前や,実行時間に影響のある解析方法や解析規模などの個々の解析の内容を特徴付ける解析ごとのパラメータの値(パラメータp)を抜き出して保存し蓄積する手段である。
【0011】
ログ収集部3は,個々の解析が実行される処理装置20−1,20−2,…,20−mの資源や性能の情報c−1,c−2,…,c−mと実行時間の値t−1,t−2,…,t−mを抜き出して保存し蓄積する手段である。
【0012】
予測モデル作成部4は,パラメータ収集部2で収集したパラメータpと,ログ収集部3で収集した処理装置20の資源や性能の情報c−1,c−2,…,c−mと実行時間の値t−1,t−2,…,t−mとから,個々の解析の実行時間を予測するモデルを作成し,解析割り当て部5の必要に応じて予測モデルを渡す手段である。
【0013】
具体的には,予測モデル作成部4は,個々の解析の実行時間を予測するモデルを作成する予測手法として,決定木のアルゴリズム,MBRのアルゴリズム,重回帰分析のアルゴリズム,もしくはニューラルネットワークのアルゴリズムのいずれかのアルゴリズムを用い,またはこれらのうち2以上のアルゴリズムを組み合わせて用いて予測するモデルを作成する。また,予測モデル作成部4は,個々のアプリケーションに対して,いくつかの異なる予測手法により予測モデルを作成した場合には,予測値と実測値の差の二乗和や交差検定などの手段により予測精度を評価し,そのアプリケーションに適し,最良の精度を実現する予測手法によって作成したものを,実際に使用する予測モデルとする。
【0014】
解析割り当て部5は,解析が割り当てられていない処理装置20の資源や性能の情報cと,処理が済んでいない解析aのアプリケーションの名前やパラメータの値などから,解析の実行時間を予測し,予測される実行時間がより長い解析をより早い順番で処理装置20に割り当てるようにする。また,解析割り当て部5は,個々の解析が処理装置20で実際に終了し,次の解析を処理装置20に割り当てる時点で,次の順番の解析とその次の順番の解析とで順番を入れ換えて,全体の処理時間を短くする見込みが高いか低いかを判断し,見込みが高い場合には,解析の順番を入れ換えて解析の割り当て順序を動的に変更する。
【0015】
結果データ収集部6は,パラメータpごとに対応する結果データd−1,d−2,…,d−mを,その解析が割り当てられている処理装置20−1,20−2,…,20−mから受け取り,それらを集約した処理全体の結果Rを出力する手段である。
【0016】
順番テーブル7は,解析の割り当て順序を記録し,参照することのできる記憶領域である。
処理装置テーブル8は,個々の処理装置について,資源,性能,解析が割り当てられているかいないかのフラグ,解析が割り当てられている場合には,終了予測時刻を記録し参照することのできる記憶領域である。
【0017】
本発明は,以下のように作用する。
入力データ分配部1は,処理全体の入力(解析a−1,a−2,…,a−n)を受け取り,これらからパラメータpの値を複写してパラメータ収集部2に渡す。併せて,処理全体の入力を解析ごとに分割し,解析割り当て部5に渡す。
【0018】
ここで,処理全体の入力とは,ひとまとまりとなる処理の全入力データであって,内容の異なる解析ごとの入力の値(パラメータp)である。その内容は,例えばアプリケーション名n,解析方法m,解析規模s,その他のパラメータoからなる。
【0019】
パラメータ収集部2は,入力データ分配部1から受け取ったパラメータpを蓄積し,併せて,予測モデル作成部4にパラメータpの情報を送る。
一方,ログ収集部3は,実際の解析に要した実行時間t−1,t−2,…,t−mと処理装置の資源や性能の情報c−1,c−2,…,c−mを,処理装置20−1,20−2,…,20−mから受け取り,蓄積し,それらの情報を予測モデル作成部4に送る。
【0020】
予測モデル作成部4は,パラメータ収集部2からパラメータpを受け取り,また,ログ収集部3から実行時間t−1,t−2,…,t−m,処理装置の資源や性能の情報c−1,c−2,…,c−mを受け取り,これらの情報から,解析が特定の資源や性能の状況にある処理装置で行われる場合の実行時間を予測するための予測モデルを作成し,予測モデルを解析割り当て部5に渡す。
【0021】
解析割り当て部5は,予測モデル作成部4から受け取った予測モデルを用い,未実行の解析について,解析a−1,a−2,…,a−nの情報(アプリケーションの名前や解析方法や解析規模のパラメータなど)と,解析が割り当てられていない処理装置の資源や性能の情報c−1,c−2,…,c−mをもとに,実行時間を予測し,全体の処理時間ができる限り短くなるように,実行する順序や処理装置を決定して,割り当てを行う。また,必要であれば,個々の処理装置の資源,性能,解析が割り当てられているかいないかのフラグ,解析が割り当てられている場合の終了予測時刻が保持されている処理装置テーブル8を参照する。決定された解析を実行する順番は順番テーブル7に保持される。
【0022】
結果データ収集部6は,処理装置20−1,20−2,…,20−mから解析した結果データd−1,d−2,…,d−mを受け取って集約し,処理全体の結果Rを出力する。
【0023】
なお,図1の例では,解析割り当て処理装置10と複数の処理装置20とを別の装置として示しているが,解析割り当て処理装置10の機能を複数の処理装置20の中の1台もしくは複数台が担当する構成としても,同様に本発明を実施することができる。
【0024】
【発明の実施の形態】
以下に,本発明の実施の形態について,各手段ごとに詳しく説明する。
〔1〕入力データ分配部
図2は,入力データ分配部の説明図である。
【0025】
処理全体の入力として,3種の解析a−1,a−2,a−3があり,各解析の入力値であるパラメータpとして,アプリケーション名n,解析方法m,解析規模s,その他のパラメータoを持つとする。これらのパラメータpは,解析の内容を特徴付け,実行時間に影響を与えるパラメータである。
【0026】
入力データ分配部1は,処理全体の入力(解析a−1,a−2,a−3)を受け取り,パラメータp−1,p−2,p−3の値をコピーして,パラメータ収集部2に渡す。同時に処理全体の入力(解析a−1,a−2,a−3)を,解析ごとに分割して,解析割り当て部5に渡す。
【0027】
〔2〕パラメータ収集部
図3は,パラメータ収集部の説明図である。
パラメータ収集部2は,入力データ分配部1から,パラメータp−1,p−2,p−3を受け取り,蓄積する。併せて,予測モデル作成部4にこれらの情報を送る。
【0028】
〔3〕ログ収集部
図4は,ログ収集部の説明図である。
ログ収集部3は,解析に要した実行時間t−1,t−2と処理装置の資源や性能の情報c−1,c−2を,処理装置20−1,20−2から受け取り,蓄積する。併せて,これらの情報を予測モデル作成部4に送る。
【0029】
図5は,ログ収集部が収集するログの構成例を示す図である。
ログ収集部3は,図5に示すように,各処理装置における実際に解析に要した実行時間と,処理装置の資源や性能の情報と,その解析が使用したパラメータなどの値を収集し記憶する。処理装置の資源や性能の情報は,例えばCPUの速さ,メモリ容量,ディスクスペースなどである。
【0030】
〔4〕解析割り当て部・順番テーブル・処理装置テーブル
図6は,解析割り当て部の説明図である。
解析割り当て部5は,予測モデル作成部4から受け取った予測モデルを用いて,未実行の解析について,解析(アプリケーションの名前,解析方法や解析規模のパラメータなどのデータ)と,解析が割り当てられていない処理装置からの資源や性能の情報をもとに,実行時間を予測し,全体の処理時間ができる限り短くなるように,実行する順序や処理装置を決定して,割り当てを行う。
【0031】
順番テーブル7には,後述する解析の割り当て戦略に基づいて決定された解析を実行する順番が保持される。
処理装置テーブル8には,個々の処理装置の資源,性能,解析が割り当てられているかいないかのフラグ,解析が割り当てられている場合の終了予測時刻が保持される。
【0032】
解析の割り当て戦略は,以下で説明するフェーズ1とフェーズ2において決定される。フェーズ1は,ひとまとまりの処理に属する解析が解析割り当て部5に投入される時点で行われ,フェーズ2は,解析が処理装置20で終了し,次の解析の割り当てを行う時点で行われる。
【0033】
(1)解析の割り当て戦略(フェーズ1)
フェーズ1では,まず,処理装置テーブル8を参照し,解析が割り当てられていない処理装置があるかないかを調べる。解析が割り当てられていない処理装置がある場合には,その処理装置の性能,資源の情報を調べる。その状況で可能な最良の構成の処理装置を用いた場合について,未実行の個々の解析に必要と見込まれる実行時間を予測する。実行時間の予測値の最も長い解析をその処理装置に割り当て,処理装置テーブル8の解析が割り当てられているかいないかのフラグを割り当てられていると設定し,終了予測時刻を実行時間の予測値から見込まれる時刻で書き換える。
【0034】
解析が割り当てられていない処理装置に残りがあり,未実行の解析がある場合には,同様に実行時間の予測を行い,実行時間の予測値の長い解析から順に,処理装置に割り当て,処理装置テーブル8を同様の方法で書き換えていく。
【0035】
解析が割り当てられていない処理装置に残りがなく,未実行の解析がある場合には,次の「方法1」または「方法2」のいずれかの方法で,順番テーブル7に値を埋める。
【0036】
▲1▼ 方法1
処理装置テーブル8の内容を,作業用処理装置テーブル(図示しない)にコピーする。
【0037】
作業用処理装置テーブルから,次に解析が終了すると予測される処理装置を調べる。その処理装置の資源,性能の状況で可能な最良の構成の処理装置を用いた場合について,個々の未実行の解析を割り当てた場合の実行時間の予測値を計算する。予測値の最も長い解析を1番とし,順番テーブル7に記録し,作業用処理装置テーブルの該当する処理装置の終了予測時刻の部分を,予測値から見込まれる時刻で書き換える。
【0038】
以後,同様の方法で,次に解析が終了すると予測される処理装置を作業用処理装置テーブルから調べ,未実行かつ順番が付けられていない解析の実行時間を予測し,予測値の最も長い解析を調べ,順番テーブル7のその解析の該当箇所に番号を記録し,作業用処理装置テーブルの終了予測時刻を書き換えていく。
【0039】
▲2▼ 方法2
典型的な処理装置を選び,その処理装置の資源,性能において,未実行の解析を割り当てた場合の実行時間を予測する。予測値の大きなものから順に,対応する解析に対して1から順番に昇順で番号を付け,順番テーブル7に記録する。
【0040】
(2)解析の割り当て戦略(フェーズ2)
フェーズ2では,まず,解析の割り当てられていない処理装置の性能,資源の情報を処理装置テーブル8から調べる。この状況において,以下に述べる方法で時刻Aと時刻Bを求める。
【0041】
▲1▼ 時刻Aの求め方
順番テーブル7に1番と記録されている解析を実行する場合の実行時間を予測し,終了予測時刻(T1)を求める。次に解析が終了する処理装置を,処理装置テーブル8と時刻T1とから調べる。その処理装置で,順番テーブル7に2番と記録されている解析を実行する場合の実行時間を予測し,終了予測時刻(T2)を求める。時刻T1と時刻T2の遅い方を時刻Aとして保持する。
【0042】
▲2▼ 時刻Bの求め方
順番テーブル7に2番と記録されている解析を実行する場合の実行時間の予測値を計算し,終了予測時刻(T3)を求める。次に解析が終了すると見込まれる処理装置を,処理装置テーブル8とT3とから調べる。その処理装置で,順番テーブル7に1番と記録されている解析を実行する場合の実行時間を予測し,終了予測時刻(T4)を求める。時刻T3と時刻T4との遅い方を時刻Bとして保持する。
【0043】
時刻Aが時刻Bより遅い場合,順番が2番の解析を処理装置に割り当てる。その他の場合,順番が1番の解析を処理装置に割り当てる。処理装置テーブル8の該当処理装置の部分について,解析が割り当てられているかいないかのフラグと,終了予測時刻を書き換える。順番テーブル7において,順番1番または2番の残った方を順番1番とし,順番3番以降の番号を1ずつ小さくした番号として書き換える。
【0044】
〔5〕予測モデル作成部
図7は,予測モデル作成部の説明図である。
予測モデル作成部4は,パラメータ収集部2からパラメータpの情報を受け取り,また,ログ収集部3から実行時間tと,処理装置の資源や性能の情報cを受け取り,これらの情報から解析が特定の資源や性能の状況にある処理装置で行われる場合の実行時間を予測する予測モデルを作成し,予測モデルを解析割り当て部5に渡す。
【0045】
予測のアルゴリズムとしては,決定木,MBR(Memory Based Reasoning) ,ニューラルネットワーク,重回帰分析を使用する。予測のアルゴリズムは,いずれも解析の方法,解析の規模を特徴付けるパラメータの値,処理装置の性能,資源を入力とし,解析の実行時間の予測値を出力とする。また,予測モデルは使用するアプリケーションごとに別のものを用意する。
【0046】
予測のアルゴリズムを複数利用できる場合には,アプリケーションごとにどの予測のアルゴリズムが適しているかを,予測値と実測値の差の二乗和や交差検定などの方法により予測モデルの精度を評価することで決定し,解析割り当て部5において,個々のアプリケーションに最適な予測のアルゴリズムによって作成された予測モデルを使用できるようにする。
【0047】
各アルゴリズムによる予測方法の詳細は,次の通りである。
(1)決定木
図8は,解析の実行時間を予測する決定木の例を示す図である。
【0048】
過去に実行した解析について,パラメータ収集部2で収集した,解析の規模(例えば,レコード件数),解析の方法に関するデータと,ログ収集部3で収集した処理装置の性能,資源のデータや実行時間に関するデータとを入力とし,解析の実行時間を決定属性,それ以外のデータを条件属性として,決定木を一般的な手法で作成する。
【0049】
個々の解析の実行時間の予測は,パラメータ収集部2で収集した解析の規模,解析の方法のデータと,処理装置テーブル8から調べた解析を割り当てられていない処理装置の性能,資源のデータとを決定木に当てはめ,対応する経路を調べ,末端の実行時間を読み取ることで行う。
【0050】
予測モデルは決定木であり,決定木はアプリケーションのそれぞれについて用意する。予測の評価は,予測値と実測値の差の二乗和や,交差検定の方法により行う。
【0051】
(2)MBR(Memory Based Reasoning)
MBRでは,過去に実行した解析に関する大量のデータを,これから実行時間を予測する解析のデータとつきあわせて,処理装置の性能,資源,解析の規模,解析の方法などのデータの値がより多く一致しているものを検索し,類似データとする。この類似データの実行時間を読み取り,対象の解析の実行時間の予測値とする。
【0052】
予測モデルとしては,過去に実行した解析のデータと検索の仕組みが相当する。データと検索の仕組みは,アプリケーションのそれぞれについて用意する。予測の評価は,交差検定の方法により行う。
【0053】
(3)ニューラルネットワーク
下に示す式は,ニューラルネットワークの原理式の例である。
T=A×f(P)+B
P=ΣUi Qi −V
Qi =f(Ri )
Ri =Σ(WijSj −Zi )
ここで,Tは実行時間,A,Bはスケーリングの係数,Ui ,V,Wij,Zi はニューラルネットワークの係数,Sj は入力変数,P,Qi ,Ri は中間変数,fはシグモイド関数である。
【0054】
過去に実行した解析について,処理装置の性能,資源,解析の規模,解析の方法を数値化したものをSj とし,そのそれぞれの解析についての実行時間をTとする。ニューラルネットワークの一般的な手法を用いることにより,Uj ,V,Wij,Zi の値を決定し,また,過去に実行した解析の実行時間の値域からAとBを決定し,式を完成させる。
【0055】
実行時間の予測は,予測対象の解析と処理装置の状況に応じて,処理装置の性能,資源,解析の規模,解析の方法を求め,数値化し,Sj として入力し,上式を計算することにより行う。
【0056】
予測モデルは上記の式であり,式はアプリケーションのそれぞれについて用意する。予測の評価は,予測値と実測値の差の二乗和や,交差検定の方法により行う。
【0057】
(4)重回帰分析
下に示す式は,重回帰分析の原理式の例である。
T=S+ΣAi Bi
ここで,Tは実行時間,Sは定数項,Ai は重回帰分析の係数,Bi は入力変数である。
【0058】
過去に実行した解析について,処理装置の性能,資源,解析の規模,解析の方法に関するデータを数値化し,それをBi とし,そのそれぞれの実行時間をTとする。重回帰分析の一般的な手法を用いて,係数Ai と定数項Sを決定し,上式を完成させる。
【0059】
実行時間の予測は,予測対象の解析と処理装置の状況に応じて,処理装置の性能,資源,解析の規模,解析の方法を求め,数値化してBi として入力し,上式を計算することにより行う。
【0060】
予測モデルは上記の式であり,式はアプリケーションのそれぞれについて用意する。予測の評価は,予測値と実測値の差の二乗和や,交差検定の方法により行う。
【0061】
〔6〕結果データ収集部
図9は,結果データ収集部の説明図である。
結果データ収集部6は,処理装置20−1,20−2が解析した結果データd−1,d−2を受け取り,集約して処理全体の結果Rを出力する。
【0062】
【実施例】
本発明を実際の解析に適用した実施例として,構造解析の応力最適化計算,計算化学の構造最適化計算,および統計処理の交差検定に適用した例をとりあげて説明する。
【0063】
〔1〕構造解析の応力最適化計算
図10は,構造解析の応力最適化計算の実施例を説明する図である。
構造解析の応力最適化計算では,寸法の異なる形状の物体について,応力最適化計算を行い,個々の形状ごとに最適化された状態での応力値などを調べ,寸法と応力の最適値との関係や応力が最適な場合の寸法,最適値,最適化された形状を求める処理を行う。
【0064】
ひとまとまりの処理のうち,寸法の異なる形状に対する計算を個々の解析として区別する。形状を離散化する際の自由度の数を解析の規模とし,ソルバの種類で解析の方法を区別する。解析が割り当てられていない処理装置の性能と資源のデータを処理装置テーブル8から得る。
【0065】
解析の割り当ては,上述の解析の規模,解析の方法,処理装置の性能,資源のデータを入力とし,アプリケーションの名前に応じた予測モデルを用いることで解析の実行時間の予測値を求め,前述する解析の割り当て戦略に従って行う。
【0066】
解析の終了後,処理装置の性能,資源,実際にかかった実行時間のデータは,ログ収集部3において蓄積し,後の予測モデル作成時に使用する。
ひとまとまりの処理に属する個々の解析の結果を収集し,寸法と応力の最適値との関係,応力が最適な場合の寸法,最適値,最適化された形状を全体結果として出力する。
【0067】
〔2〕計算化学の構造最適化計算
図11は,計算化学の構造最適化計算の実施例を説明する図である。
計算化学の構造最適化計算では,原子の配置を少しずつ変えた分子構造をもとに構造最適化計算を行い,原子配置と物理量の最適値との関係や物理量が最適となる場合の値と最適化された分子構造を求める処理を行う。
【0068】
ひとまとまりの処理のうち,原子の配置の異なる分子構造に対する計算を個々の解析として区別する。
分子構造についての波動関数を展開する際の基底関数の数を解析の規模とし,エネルギーの正確さと計算アルゴリズムを解析の方法とする。
【0069】
解析が割り当てられていない処理装置の性能と資源のデータを処理装置テーブル8から得る。
解析の割り当ては,上述の解析の規模,解析の方法,処理装置の性能,資源のデータを入力とし,アプリケーションの名前に応じた予測モデルを用いることで解析の実行時間の予測値を求め,前述の解析の割り当て戦略に従って行う。
【0070】
解析の終了後,処理装置の性能,資源,実際にかかった実行時間のデータは,ログ収集部3において蓄積し,後の予測モデル作成時に使用する。
ひとまとまりの処理に属する個々の解析の結果を収集し,原子配置と物理量の最適値との関係,物理量が最適となる場合の値と最適化された分子構造を全体結果として出力する。
【0071】
〔3〕統計処理の交差検定
図12は,統計処理の交差検定の実施例を説明する図である。
統計処理の交差検定では,データをN個のグループに分けて,着目するグループ以外のデータから作成したモデルを着目するグループのデータで評価する処理を,着目するグループを取り換えてN通り行う。
【0072】
ひとまとまりの処理のうち,着目するグループが異なる計算を個々の解析として区別する。個々の解析で,モデルを作成するのに使用するデータの数を解析の規模とし解析の詳しさを解析の方法とする。
【0073】
解析が割り当てられていない処理装置の性能と資源のデータを処理装置テーブル8から得る。
解析の割り当ては,上述の解析の規模,解析の方法,処理装置の性能,資源のデータを入力とし,アプリケーションの名前に応じた予測モデルを用いることで,解析の実行時間の予測値を求め,前述の解析の割り当て戦略に従って行う。
【0074】
解析の終了後,処理装置の性能,資源,実際にかかった実行時間のデータは,ログ収集部3において蓄積し,後の予測モデル作成時に使用する。
ひとまとまりの処理に属する個々の解析の結果を収集し,精度が最も良いモデルとモデルの精度のばらつきとを全体結果として出力する。
【0075】
【発明の効果】
本発明によれば,パラメータの値ごとに内容の異なる多数の解析を効率よく並列に実行でき,全体の処理時間を短縮することができる。
【0076】
具体的には,以下のような効果を奏する。
1)パラメータの値ごとに内容の異なる解析を,特定のアプリケーションで多数行う処理において,個々の解析を最適な処理装置に順番に割り当てることができ,処理装置の稼働率を向上させ,全体の処理時間の短縮が可能となる。
【0077】
2)解析割り当て部では,解析が割り当てられていない処理装置の資源や性能の情報と,処理が済んでいない解析のアプリケーションの名前やパラメータの値から,解析の実行時間を予測し,どの解析を,どの処理装置で,どの順番で,行うかについて,予測される実行時間がより長い解析がより早い順番で処理装置に割り当てられるように決定することで,全体の処理時間を短くし,処理装置を有効に活用することができる。
【0078】
3)解析割り当て部では,個々の解析が処理装置で実際に終了し,次の解析を処理装置に割り当てる時点で,次の順番の解析とその次の順番の解析とで,順番を入れ換えることにより全体の処理時間を短くする見込みが高いか低いかを判断し,見込みが高い場合には,解析の順番を入れ換えて解析の割り当て順序を動的に改善することにより,全体の処理時間を短くし,処理装置を有効に活用することができる。
【0079】
4)パラメータ収集部で収集したパラメータとログ収集部で収集した実行時間の量とが増えれば増えるほど,予測モデル作成部で作成する予測モデルの精度が向上し,解析割り当て部において予測モデルを用いて行われる実行時間の予測精度が向上し,解析の割り当てが精度良く行えるようになる。
【0080】
5)予測モデル作成部で予測モデルを作成し保存し,解析割り当て部での必要に応じて予測モデルを渡すことによって,解析割り当て部において予測モデルを作成する時間を不要とし,解析の実行時間を高速に予測することができる。
【0081】
6)解析割り当て部ほどには高速性が要求されない予測モデル作成部において,精度が良い反面,時間がかかるアルゴリズムを使用して予測モデルを作成することができる。
【0082】
7)個々のアプリケーションに対して,予測モデル作成部において,いくつか異なる予測手法により予測モデルを作成し,予測値と実測値の差の二乗和や交差検定などの手段により予測精度を評価し,アプリケーションに適し,最良の精度を実現する予測手法によって作成した予測モデルを用い,解析割り当て部において,解析の割り当てを精度よく行うことを可能とすることによって,全体の処理を高速化させることができる。
【0083】
8)構造解析の応力最適化計算,計算化学の構造最適化計算,統計処理の交差検定において,パラメータの値ごとに内容の異なる解析を,複数ある処理装置で並列に処理することにより,全体の処理時間の短縮が可能となる。
【図面の簡単な説明】
【図1】本発明の原理ブロック図である。
【図2】入力データ分配部の説明図である。
【図3】パラメータ収集部の説明図である。
【図4】ログ収集部の説明図である。
【図5】ログの構成例を示す図である。
【図6】解析割り当て部の説明図である。
【図7】予測モデル作成部の説明図である。
【図8】解析の実行時間を予測する決定木の例を示す図である。
【図9】結果データ収集部の説明図である。
【図10】構造解析の応力最適化計算の実施例を説明する図である。
【図11】計算化学の構造最適化計算の実施例を説明する図である。
【図12】統計処理の交差検定の実施例を説明する図である。
【符号の説明】
1 入力データ分配部
2 パラメータ収集部
3 ログ収集部
4 予測モデル作成部
5 解析割り当て部
6 結果データ収集部
7 順番テーブル
8 処理装置テーブル
10 解析割り当て処理装置
20 処理装置
Claims (4)
- 複数の処理装置を備え,特定のアプリケーションによりパラメータの値ごとに内容の異なる解析を多数行う場合に,個々の解析を前記処理装置に割り当てて処理する並列実行システムにおいて,
個々の解析の内容を特徴付けるパラメータの値を抜き出して保存し蓄積するパラメータ収集手段と,
個々の解析を実行した処理装置の情報と実行時間の値を抜き出して保存し蓄積するログ収集手段と,
前記パラメータの値ごとに対応する入力データを,当該解析を割り当てる処理装置に配る入力データ分配手段と,
前記各処理装置が解析した結果データを集約した結果を出力する結果データ収集手段と,
前記パラメータ収集手段で収集したパラメータの値と,前記ログ収集手段で収集したログ情報とから,個々の解析の実行時間を予測するモデルを作成する予測モデル作成手段と,
前記予測モデル作成手段が作成した予測モデルにより,処理が済んでいない解析の実行時間を予測し,予測された実行時間に基づいて,どの解析を,どの処理装置で,どの順番で行うかについて決定し,実行すべき解析を処理装置に割り当てる解析割り当て手段とを備え,
前記解析割り当て手段は,予測される実行時間がより長い解析をより早い順番で処理装置に割り当てるとともに,個々の解析が処理装置で実際に終了し,次の解析を処理装置に割り当てる時点で,次の順番の解析とその次の順番の解析とで順番を入れ換えて,全体の処理時間を短くする見込みが高いか低いかを判断し,その見込みが高い場合には,解析の順番を入れ換えて,解析の割り当て順序を動的に変更する
ことを特徴とする並列実行システム。 - 請求項1に記載の並列実行システムにおいて,
前記予測モデル作成手段は,個々の解析の実行時間を予測するモデルを作成する予測手法として,決定木のアルゴリズム,MBRのアルゴリズム,重回帰分析のアルゴリズム,もしくはニューラルネットワークのアルゴリズムのいずれか一つまたは複数のアルゴリズムを用いて予測モデルを作成する
ことを特徴とする並列実行システム。 - 請求項2に記載の並列実行システムにおいて,
前記予測モデル作成手段は,個々のアプリケーションに対して,いくつか異なる予測手法により予測モデルを作成した場合に,予測値と実測値の差の二乗和または交差検定の手段により予測精度を評価し,アプリケーションに適し,最良の精度を実現する予測手法によって作成したものを予測モデルとする
ことを特徴とする並列実行システム。 - 請求項1,請求項2または請求項3に記載の並列実行システムにおいて,
前記パラメータの値ごとに内容の異なる解析は,構造解析の応力最適化計算における寸法と応力の最適値との関係もしくは応力が最適な場合の寸法,最適値,最適化された形状を求めるための解析,計算化学の構造最適化計算における原子配置と物理量の最適値との関係もしくは物理量が最適な場合の値と最適化された分子構造を求めるための解析,または統計処理の交差検定における精度が最も良いモデルもしくはモデルの精度のばらつきを求めるための解析である
ことを特徴とする並列実行システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05563098A JP3792879B2 (ja) | 1998-03-09 | 1998-03-09 | 並列実行システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05563098A JP3792879B2 (ja) | 1998-03-09 | 1998-03-09 | 並列実行システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11259433A JPH11259433A (ja) | 1999-09-24 |
JP3792879B2 true JP3792879B2 (ja) | 2006-07-05 |
Family
ID=13004115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05563098A Expired - Fee Related JP3792879B2 (ja) | 1998-03-09 | 1998-03-09 | 並列実行システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3792879B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019170359A (ja) * | 2018-03-28 | 2019-10-10 | 国立大学法人名古屋大学 | 植物栽培結果予測システム |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3959516B2 (ja) | 2001-08-06 | 2007-08-15 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ネットワークシステム、cpu資源プロバイダ、クライアント装置、処理サービスの提供方法、およびプログラム |
JP4729889B2 (ja) * | 2004-08-30 | 2011-07-20 | 独立行政法人情報通信研究機構 | 分子構造最適化システム |
WO2006048919A1 (ja) | 2004-11-01 | 2006-05-11 | Fujitsu Limited | 最適設計管理装置、最適設計計算システム、最適設計管理方法、最適設計管理プログラム |
EP1736907A3 (de) * | 2005-06-10 | 2016-07-06 | Siemens Healthcare GmbH | Verbesserung von Messdaten-Erfassung- und Bild-Rekonstruktion bei MR-Bildern |
EP2746942A4 (en) | 2011-08-15 | 2015-09-30 | Nec Corp | DISTRIBUTED PROCESS MANAGEMENT DEVICE AND DISTRIBUTED PROCESS MANAGEMENT METHOD |
JP5872561B2 (ja) * | 2011-08-26 | 2016-03-01 | 株式会社日立製作所 | 予測型逐次計算装置 |
US9170909B2 (en) | 2012-06-04 | 2015-10-27 | Massively Parallel Technologies, Inc. | Automatic parallel performance profiling systems and methods |
US9159028B2 (en) * | 2013-01-11 | 2015-10-13 | International Business Machines Corporation | Computing regression models |
WO2015151290A1 (ja) * | 2014-04-04 | 2015-10-08 | 株式会社日立製作所 | 管理計算機と計算機制御方法及び計算機システム |
WO2016116990A1 (ja) * | 2015-01-22 | 2016-07-28 | 日本電気株式会社 | 出力装置、データ構造、出力方法および出力プログラム |
JPWO2017188419A1 (ja) | 2016-04-28 | 2019-03-07 | 日本電気株式会社 | 計算資源管理装置、計算資源管理方法、及びプログラム |
WO2018168695A1 (ja) * | 2017-03-17 | 2018-09-20 | 日本電気株式会社 | 分散機械学習装置、分散機械学習方法および分散機械学習記録媒体 |
JP6614324B1 (ja) * | 2018-12-28 | 2019-12-04 | 富士通クライアントコンピューティング株式会社 | 情報処理装置及び情報処理システム |
US20220326982A1 (en) * | 2021-04-08 | 2022-10-13 | International Business Machines Corporation | Intelligent Identification of an Execution Environment |
-
1998
- 1998-03-09 JP JP05563098A patent/JP3792879B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019170359A (ja) * | 2018-03-28 | 2019-10-10 | 国立大学法人名古屋大学 | 植物栽培結果予測システム |
Also Published As
Publication number | Publication date |
---|---|
JPH11259433A (ja) | 1999-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3792879B2 (ja) | 並列実行システム | |
Battiti et al. | Greedy, prohibition, and reactive heuristics for graph partitioning | |
CN111258767B (zh) | 复杂系统仿真应用的云计算资源智能分配方法与装置 | |
US7802236B2 (en) | Method and apparatus for identifying similar regions of a program's execution | |
Amarís et al. | A comparison of GPU execution time prediction using machine learning and analytical modeling | |
BR112015019167B1 (pt) | Método realizado por um processador de computador e sistema | |
Mahgoub et al. | Wisefuse: Workload characterization and dag transformation for serverless workflows | |
JP2010507146A (ja) | 分散システムの能力計画及びリソース最適化を行う方法と装置 | |
US20040260517A1 (en) | Temporal affinity analysis using reuse signatures | |
Janus et al. | SLO-aware colocation of data center tasks based on instantaneous processor requirements | |
Sayadi et al. | Scheduling multithreaded applications onto heterogeneous composite cores architecture | |
Liu et al. | Register-aware optimizations for parallel sparse matrix–matrix multiplication | |
Lattuada et al. | Performance prediction of deep learning applications training in GPU as a service systems | |
CN113158435B (zh) | 基于集成学习的复杂系统仿真运行时间预测方法与设备 | |
Rosas et al. | Improving performance on data-intensive applications using a load balancing methodology based on divisible load theory | |
Moreno et al. | Load balancing in homogeneous pipeline based applications | |
Merkel et al. | Partitioner selection with ease to optimize distributed graph processing | |
Banicescu et al. | Addressing the stochastic nature of scientific computations via dynamic loop scheduling | |
Ismaeel et al. | Real-time energy-conserving vm-provisioning framework for cloud-data centers | |
Moreno et al. | HeDPM: load balancing of linear pipeline applications on heterogeneous systems | |
Amaris et al. | Evaluating execution time predictions on gpu kernels using an analytical model and machine learning techniques | |
Singh et al. | Modular performance prediction for scientific workflows using Machine Learning | |
Perez et al. | Bottleneck-aware task scheduling based on per-stage and multi-ml profiling | |
Hu et al. | Reloca: Optimize resource allocation for data-parallel jobs using deep learning | |
Baughman et al. | Measuring, quantifying, and predicting the cost-accuracy tradeoff |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060306 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060404 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060406 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090414 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100414 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110414 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110414 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120414 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130414 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140414 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |