JPH11259431A - 分散処理方法及びネットワーク分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
分散処理方法及びネットワーク分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体Info
- Publication number
- JPH11259431A JPH11259431A JP5689998A JP5689998A JPH11259431A JP H11259431 A JPH11259431 A JP H11259431A JP 5689998 A JP5689998 A JP 5689998A JP 5689998 A JP5689998 A JP 5689998A JP H11259431 A JPH11259431 A JP H11259431A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- computer
- time
- network
- name
- 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
Links
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】
【目的】 本発明は、ネットワークにより接続された複
数の計算機システム上で行われる分散処理において、各
計算機システム上での全処理時間がそれぞれ均一になる
ように複数の処理単位を処理することを目的とする。 【構成】 ネットワークで接続された複数の計算機シテ
スムにより分散処理を行う分散処理方法において、複数
の処理単位に係る処理単位量又は処理時間をキーにして
処理単位の名称を降順に分類する名称分類手順と、該名
称分類手段で分類された順序で複数の処理単位を前記複
数の計算機システム上で処理する処理手順とからなる。
数の計算機システム上で行われる分散処理において、各
計算機システム上での全処理時間がそれぞれ均一になる
ように複数の処理単位を処理することを目的とする。 【構成】 ネットワークで接続された複数の計算機シテ
スムにより分散処理を行う分散処理方法において、複数
の処理単位に係る処理単位量又は処理時間をキーにして
処理単位の名称を降順に分類する名称分類手順と、該名
称分類手段で分類された順序で複数の処理単位を前記複
数の計算機システム上で処理する処理手順とからなる。
Description
【0001】
【発明の属する分野】本発明は、プログラムによる処理
をネットワークに接続された複数の計算機に分散させて
処理を行う分散処理方式に関する。近年、LANなどの
通信設備費用の低価格化にともない、ネットワークによ
り接続された複数の計算機システム上で処理順序の関係
がない処理単位を割り当て、分散処理を行うことにより
全処理経過時間の短縮が行われている。しかしながら、
一つ一つの処理経過時間に大きなバラツキを伴う処理で
は、単純に処理順番をスケジュールすると、早く処理が
終了する計算機と、なかなか処理が終了しない計算機と
が発生し、全体の処理がうまく分散されないためバラン
スよく全体の処理が終了しないといった問題がある。
をネットワークに接続された複数の計算機に分散させて
処理を行う分散処理方式に関する。近年、LANなどの
通信設備費用の低価格化にともない、ネットワークによ
り接続された複数の計算機システム上で処理順序の関係
がない処理単位を割り当て、分散処理を行うことにより
全処理経過時間の短縮が行われている。しかしながら、
一つ一つの処理経過時間に大きなバラツキを伴う処理で
は、単純に処理順番をスケジュールすると、早く処理が
終了する計算機と、なかなか処理が終了しない計算機と
が発生し、全体の処理がうまく分散されないためバラン
スよく全体の処理が終了しないといった問題がある。
【0002】このような観点から処理単位をバランスよ
く各計算機システムに割り当て、ネットワーク上の全処
理単位の処理が同じ時刻に終了するようにスケジュール
し、分散処理による処理経過時間を更に短縮する機能の
提供が望まれている。
く各計算機システムに割り当て、ネットワーク上の全処
理単位の処理が同じ時刻に終了するようにスケジュール
し、分散処理による処理経過時間を更に短縮する機能の
提供が望まれている。
【0003】
【従来の技術】従来の分散翻訳処理では、予め決められ
た処理順序でソースプログラムをネットワークに接続さ
れた複数の計算機システム上で翻訳(コンパイル)して
いた。しかしながら、ソースプログラムごとにステップ
数が大幅に異なっており、各ソースプログラムの翻訳経
過時間にばらつきが顕著であった。したがって、例え
ば、全体で900本のソースプログラムを任意の300
本を1セットにして、ネットワークで接続された3台の
計算機システム上で動作するコンパイラによる分散翻訳
処理を同時に開始した場合、各1セットが終了する時刻
にバラツキがあり、一番遅く終了した翻訳時間が全体の
処理時間となった。
た処理順序でソースプログラムをネットワークに接続さ
れた複数の計算機システム上で翻訳(コンパイル)して
いた。しかしながら、ソースプログラムごとにステップ
数が大幅に異なっており、各ソースプログラムの翻訳経
過時間にばらつきが顕著であった。したがって、例え
ば、全体で900本のソースプログラムを任意の300
本を1セットにして、ネットワークで接続された3台の
計算機システム上で動作するコンパイラによる分散翻訳
処理を同時に開始した場合、各1セットが終了する時刻
にバラツキがあり、一番遅く終了した翻訳時間が全体の
処理時間となった。
【0004】図9は各モジュールのコンパイルCPU使
用時間&割り当て順序を説明する図である。この図で
は、コンパイルCPU使用時間に大きなバラツキがある
ことを示している。例えば、各モジュールのコンパイル
順番を固定的に3台のホストでコンパイルすると、図1
0に示すようにM2の計算機は3本のプログラムの翻訳
を短時間に終了するが、M1の計算機は極端に長い時間
を必要とする場合がある。このように、全コンパイル処
理経過時間は最長の処理経過時間を必要としたM1の計
算機処理時間となってしまう問題があった。
用時間&割り当て順序を説明する図である。この図で
は、コンパイルCPU使用時間に大きなバラツキがある
ことを示している。例えば、各モジュールのコンパイル
順番を固定的に3台のホストでコンパイルすると、図1
0に示すようにM2の計算機は3本のプログラムの翻訳
を短時間に終了するが、M1の計算機は極端に長い時間
を必要とする場合がある。このように、全コンパイル処
理経過時間は最長の処理経過時間を必要としたM1の計
算機処理時間となってしまう問題があった。
【0005】しかしながら、予め、各モジュールのコン
パイル処理経過時間が予め把握されていれば、図11に
示すように処理経過時間の長いモジュールの順番にM1
からM3に各モジュールの翻訳処理を行わせると全コン
パイル処理経過時間の短縮が図られる。このように、一
度に多数のプログラムのコンパイルを必要とする移植作
業あるいはシステム開発などでは、一度に多数のモジュ
ールの翻訳する作業が発生し、分散翻訳処理によるコン
パイル時間の短縮が望まれている。
パイル処理経過時間が予め把握されていれば、図11に
示すように処理経過時間の長いモジュールの順番にM1
からM3に各モジュールの翻訳処理を行わせると全コン
パイル処理経過時間の短縮が図られる。このように、一
度に多数のプログラムのコンパイルを必要とする移植作
業あるいはシステム開発などでは、一度に多数のモジュ
ールの翻訳する作業が発生し、分散翻訳処理によるコン
パイル時間の短縮が望まれている。
【0006】
【発明が解決しようとする課題】前述のように、分散翻
訳処理によりネットワークシステム上の個々の全翻訳処
理時間は短くなるが、コンパイル時間のバラツキにより
翻訳処理時間の短縮には限度があった。本発明は、ネッ
トワークにより接続された複数の計算機システム上で行
われる分散処理において、各計算機システム上での全処
理時間がそれぞれ均一になるように処理単位を処理する
ことを目的とする。
訳処理によりネットワークシステム上の個々の全翻訳処
理時間は短くなるが、コンパイル時間のバラツキにより
翻訳処理時間の短縮には限度があった。本発明は、ネッ
トワークにより接続された複数の計算機システム上で行
われる分散処理において、各計算機システム上での全処
理時間がそれぞれ均一になるように処理単位を処理する
ことを目的とする。
【0007】
【課題を解決するための手段】処理経過時間は処理され
る計算機システムでのCPU資源の割り当て待ち、入出
力の競合待ちなどのシステムの稼働状態により大きく変
化する。すなわち、多くプログラムの実行による資源の
競合待ちが多く発生すれば処理経過時間は長くなり、待
ちが少なければ処理経過時間は短くなる。このため、処
理経過時間の予測値として変化の少ないCPU使用時
間、入出力回数、あるいはCPU使用時間と入出力回数
の組合せた値を参考にすることもある。本発明では、処
理単位は、アプリケーションなどで処理されるデータ、
文章、ソースプログラムなどを意味し、処理単位に係る
処理単位量は処理単位のファイルサイズ、ステップ数、
センテンス数、ワード数又は文字数を意味する。また、
処理単位に係る処理時間には、CPU使用時間、処理経
過時間(処理開始から終了までの所要時間)、及びCP
U使用時間及び入出力回数に基づく処理予想経過時間
(例えば、CPU使用時間*係数1+入出力回数*係数
2など)を含めるものとする。更に、ネットワークで接
続された複数の計算機システムには自計算機システムを
含むものとする。
る計算機システムでのCPU資源の割り当て待ち、入出
力の競合待ちなどのシステムの稼働状態により大きく変
化する。すなわち、多くプログラムの実行による資源の
競合待ちが多く発生すれば処理経過時間は長くなり、待
ちが少なければ処理経過時間は短くなる。このため、処
理経過時間の予測値として変化の少ないCPU使用時
間、入出力回数、あるいはCPU使用時間と入出力回数
の組合せた値を参考にすることもある。本発明では、処
理単位は、アプリケーションなどで処理されるデータ、
文章、ソースプログラムなどを意味し、処理単位に係る
処理単位量は処理単位のファイルサイズ、ステップ数、
センテンス数、ワード数又は文字数を意味する。また、
処理単位に係る処理時間には、CPU使用時間、処理経
過時間(処理開始から終了までの所要時間)、及びCP
U使用時間及び入出力回数に基づく処理予想経過時間
(例えば、CPU使用時間*係数1+入出力回数*係数
2など)を含めるものとする。更に、ネットワークで接
続された複数の計算機システムには自計算機システムを
含むものとする。
【0008】本発明では、ネットワークで接続された複
数の計算機シテスムにより分散処理を行う分散処理方法
において、複数の処理単位に係る処理単位量又は処理時
間をキーにして処理単位の名称を降順に分類する名称分
類手順と、該名称分類手段で分類された順序で複数の処
理単位を複数の計算機システム上でプログラム処理を行
わせる処理手順とからなることを特徴とし、また、ネッ
トワークで接続された複数の計算機シテスムにより分散
処理を行うためのネットワーク分散処理プログラムを記
録したコンピュータ読み取り可能な記録媒体であって、
複数の処理単位に係る処理単位量又は処理時間をキーと
して処理単位の名称を降順に分類する名称分類手順と、
該名称分類手段で分類された順序で前記複数の処理単位
を前記複数の計算機システム上でプログラ処理を行わせ
る処理手順とを実行させるためのネットワーク分散処理
プログラムを記録したコンピュータ読み取り可能な記録
媒体により、上記課題を解決する手段とする。
数の計算機シテスムにより分散処理を行う分散処理方法
において、複数の処理単位に係る処理単位量又は処理時
間をキーにして処理単位の名称を降順に分類する名称分
類手順と、該名称分類手段で分類された順序で複数の処
理単位を複数の計算機システム上でプログラム処理を行
わせる処理手順とからなることを特徴とし、また、ネッ
トワークで接続された複数の計算機シテスムにより分散
処理を行うためのネットワーク分散処理プログラムを記
録したコンピュータ読み取り可能な記録媒体であって、
複数の処理単位に係る処理単位量又は処理時間をキーと
して処理単位の名称を降順に分類する名称分類手順と、
該名称分類手段で分類された順序で前記複数の処理単位
を前記複数の計算機システム上でプログラ処理を行わせ
る処理手順とを実行させるためのネットワーク分散処理
プログラムを記録したコンピュータ読み取り可能な記録
媒体により、上記課題を解決する手段とする。
【0009】
【発明の実施の形態】本発明の第1の実施の例を図面に
基づいて説明する。図1は本発明の第1の実施の例のフ
ローを説明する図である。図1に沿って説明する。本発
明の第1の実施形態では、各計算機でのコンパイル処理
の実行多重度は1としている。従って、図7に示すコン
パイル中のモジュール名(2)〜(4)は使用しない。
基づいて説明する。図1は本発明の第1の実施の例のフ
ローを説明する図である。図1に沿って説明する。本発
明の第1の実施形態では、各計算機でのコンパイル処理
の実行多重度は1としている。従って、図7に示すコン
パイル中のモジュール名(2)〜(4)は使用しない。
【0010】図1に示すステップ(S101)では、コ
ンパイル処理の対象となるモジュール名(翻訳単位の名
称)と各モジュール名についてのファイルサイズ、ステ
ップ数、センテンス数、ワード数、及び文字数の情報を
それぞれ収集し、図6に示すコンパイル管理テーブルを
作成する。該コンパイル管理テーブルには、前記ファイ
ル名としてモジュール名61が設定される。更に、各モ
ジュール名についてのファイルサイズ62、ステップ数
63、センテンス数64、ワード数65、及び文字数6
6がそれぞれ設定される。これらの設定された情報はコ
ンパイル順序の決定するための分類キーとして使用され
る。しかしながら、1回目のコンパイル処理の実行済な
らば、ステップ(S122)において、前回のコンパイ
ル処理時のコンパイル処理経過時間68、CPU使用時
間69、および入出力回数70がそれぞれ前記コンパイ
ル管理テーブルに設定されている。
ンパイル処理の対象となるモジュール名(翻訳単位の名
称)と各モジュール名についてのファイルサイズ、ステ
ップ数、センテンス数、ワード数、及び文字数の情報を
それぞれ収集し、図6に示すコンパイル管理テーブルを
作成する。該コンパイル管理テーブルには、前記ファイ
ル名としてモジュール名61が設定される。更に、各モ
ジュール名についてのファイルサイズ62、ステップ数
63、センテンス数64、ワード数65、及び文字数6
6がそれぞれ設定される。これらの設定された情報はコ
ンパイル順序の決定するための分類キーとして使用され
る。しかしながら、1回目のコンパイル処理の実行済な
らば、ステップ(S122)において、前回のコンパイ
ル処理時のコンパイル処理経過時間68、CPU使用時
間69、および入出力回数70がそれぞれ前記コンパイ
ル管理テーブルに設定されている。
【0011】ステップ(S102)では、例えば、プロ
グラム起動時のパラメータとしてコンパイル順序を各モ
ジュールのファイルサイズの大きい順に行うように指示
する。各モジュール名はファイルサイズで降順に分類さ
れ、ファイルサイズ62の欄の値が一番大きいものから
順に分散コンパイルするように順序を決定される。ま
た、コンパイル順序を決定する分類キーとしてファイル
サイズ、ステップ数、センテンス数、ワード数、文字
数、コンパイル処理経過時間、CPU使用時間、および
入出力回数のいずれかを前記パラメータとして指定する
こともできる。
グラム起動時のパラメータとしてコンパイル順序を各モ
ジュールのファイルサイズの大きい順に行うように指示
する。各モジュール名はファイルサイズで降順に分類さ
れ、ファイルサイズ62の欄の値が一番大きいものから
順に分散コンパイルするように順序を決定される。ま
た、コンパイル順序を決定する分類キーとしてファイル
サイズ、ステップ数、センテンス数、ワード数、文字
数、コンパイル処理経過時間、CPU使用時間、および
入出力回数のいずれかを前記パラメータとして指定する
こともできる。
【0012】ステップ(S103)では、前記ステップ
(S102)で決定されたコンパイル順序を処理順序番
号67のフィールドに一番大きいファイルサイズから一
番小さなファイルサイズの順に分散コンパイル(分散翻
訳)される順序が設定される。すなわち、図6におい
て、一番最初にコンパイルされるモジュール名の行に対
応する処理順序番号67に設定される値として1が設定
され、次に処理されるモジュールの値は2が設定され
る。それ以降のモジュール名については、順次1ずつ加
算された値が設定される。また、処理順序番号67に設
定された値のうち一番値の大きいものが図示していない
最終処理順序番号カウンタに設定される。
(S102)で決定されたコンパイル順序を処理順序番
号67のフィールドに一番大きいファイルサイズから一
番小さなファイルサイズの順に分散コンパイル(分散翻
訳)される順序が設定される。すなわち、図6におい
て、一番最初にコンパイルされるモジュール名の行に対
応する処理順序番号67に設定される値として1が設定
され、次に処理されるモジュールの値は2が設定され
る。それ以降のモジュール名については、順次1ずつ加
算された値が設定される。また、処理順序番号67に設
定された値のうち一番値の大きいものが図示していない
最終処理順序番号カウンタに設定される。
【0013】ステップ(S104)では、図7に示すコ
ンパイル監視テーブルのコンパイル中のモジュール名
(1)72を全てスペースで初期化する。図7はコンパ
イル監視テーブルを説明する図である。コンパイル監視
テーブルにはネットワークで接続された計算機名が計算
機名71に予め設定されており、計算機名上の動作する
コンパイラにより翻訳されるモジュール名が該計算機名
に対応する行のコンパイル中のモジュール名(1)72
に設定される。
ンパイル監視テーブルのコンパイル中のモジュール名
(1)72を全てスペースで初期化する。図7はコンパ
イル監視テーブルを説明する図である。コンパイル監視
テーブルにはネットワークで接続された計算機名が計算
機名71に予め設定されており、計算機名上の動作する
コンパイラにより翻訳されるモジュール名が該計算機名
に対応する行のコンパイル中のモジュール名(1)72
に設定される。
【0014】ステップ(S105)では、図示していな
いコンパイル処理管理カウンタに1を設定する。なお、
該コンパイル処理管理カウンタは次のコンパイル対象と
なるモジュールの処理順番が設定・保持され、コンパイ
ル対象モジュールを選択するときに参照される。ステッ
プ(S110)では、全モジュールの翻訳が完了したど
うかの判定が行われる。すなわち、前記コンパイル処理
管理カウンタの値が前記最終処理順序番号カウンタの値
を越え、且つ、図7に示すコンパイル監視テーブルのコ
ンパイル中のモジュール名(1)72にモジュール名が
1つでも設定されていないときに全モジュールのコンパ
イルが終了したものと判定される。
いコンパイル処理管理カウンタに1を設定する。なお、
該コンパイル処理管理カウンタは次のコンパイル対象と
なるモジュールの処理順番が設定・保持され、コンパイ
ル対象モジュールを選択するときに参照される。ステッ
プ(S110)では、全モジュールの翻訳が完了したど
うかの判定が行われる。すなわち、前記コンパイル処理
管理カウンタの値が前記最終処理順序番号カウンタの値
を越え、且つ、図7に示すコンパイル監視テーブルのコ
ンパイル中のモジュール名(1)72にモジュール名が
1つでも設定されていないときに全モジュールのコンパ
イルが終了したものと判定される。
【0015】ステップ(S111)では、図7に示すコ
ンパイル監視テーブルのコンパイル中のモジュール名
(1)72にモジュール名が全て設定されていれば、全
ての計算機がコンパイル処理を実行中であると判定す
る。もし、1つでもモジュール名が設定されていなけれ
ばステップ(S112)に分岐し、そうでなければステ
ップ(S121)に分岐する。
ンパイル監視テーブルのコンパイル中のモジュール名
(1)72にモジュール名が全て設定されていれば、全
ての計算機がコンパイル処理を実行中であると判定す
る。もし、1つでもモジュール名が設定されていなけれ
ばステップ(S112)に分岐し、そうでなければステ
ップ(S121)に分岐する。
【0016】ステップ(S112)では、前記コンパイ
ル処理管理カウンタの読み出しを行い、ステップ(S1
13)では、図6に示すコンパイル管理テーブルから次
の1行を読み出し、次にコンパイルすべきモジュールを
選択する。ステップ(S114)はステップ(S20
1,S121)との連携により動作するものであり、そ
れぞれのステップについては図5に基づいて、更に詳細
に説明する。図中、ステップ(S114)では、メイン
プロセスとしてUNIX(Solaris 1.x) のfork関数
を使ってサブプロセスを起動する。次に該サブプロセス
からのexecl関数によりrshコマンドを実行し、
rshコマンドのhostnameオペランドでホスト
名を指定し、更にホストで実行すべきtimeコマンド
およびコンパイラコマンドも指定する。これにより、ス
テップ(S201)では、該ホスト上でtimeコマン
ドが起動される。次に、該timeコマンドはコンパイ
ラを起動し、コンパイラコマンドのオペランドとして指
定されたモジュール名のコンパイル処理を実行する。コ
ンパイル処理が終了すると、コンパイラからtimeコ
マンドに制御が戻る。該timeコマンドは該コンパイ
ラのコンパイル処理経過時間、CPU使用時間、入出力
回数を標準出力およびNFS(Network File System)経
由で呼び出し元の計算機のファイルシテスムに出力す
る。そして、ステップ(S114)の呼び出し元のサブ
プロセスに戻りexit関数を実行する。このexit
関数を実行することによりステップ(S121)のwa
it関数のwait処理による待ち状態が解放され、次
のステップ(S122)に進む。
ル処理管理カウンタの読み出しを行い、ステップ(S1
13)では、図6に示すコンパイル管理テーブルから次
の1行を読み出し、次にコンパイルすべきモジュールを
選択する。ステップ(S114)はステップ(S20
1,S121)との連携により動作するものであり、そ
れぞれのステップについては図5に基づいて、更に詳細
に説明する。図中、ステップ(S114)では、メイン
プロセスとしてUNIX(Solaris 1.x) のfork関数
を使ってサブプロセスを起動する。次に該サブプロセス
からのexecl関数によりrshコマンドを実行し、
rshコマンドのhostnameオペランドでホスト
名を指定し、更にホストで実行すべきtimeコマンド
およびコンパイラコマンドも指定する。これにより、ス
テップ(S201)では、該ホスト上でtimeコマン
ドが起動される。次に、該timeコマンドはコンパイ
ラを起動し、コンパイラコマンドのオペランドとして指
定されたモジュール名のコンパイル処理を実行する。コ
ンパイル処理が終了すると、コンパイラからtimeコ
マンドに制御が戻る。該timeコマンドは該コンパイ
ラのコンパイル処理経過時間、CPU使用時間、入出力
回数を標準出力およびNFS(Network File System)経
由で呼び出し元の計算機のファイルシテスムに出力す
る。そして、ステップ(S114)の呼び出し元のサブ
プロセスに戻りexit関数を実行する。このexit
関数を実行することによりステップ(S121)のwa
it関数のwait処理による待ち状態が解放され、次
のステップ(S122)に進む。
【0017】一方、ステップ(S114)でfork関
数を実行した後は、直ちに次のステップ(S115)に
進む。ステップ(S115)では、ステップ(S11
4)でコンパイルを依頼した計算機名(ホスト名)と一
致する前記コンパイル監視テーブルのコンパイル中のモ
ジュール名(1)72にステップ(S114)でコンパ
イルを依頼したモジュール名を設定する。
数を実行した後は、直ちに次のステップ(S115)に
進む。ステップ(S115)では、ステップ(S11
4)でコンパイルを依頼した計算機名(ホスト名)と一
致する前記コンパイル監視テーブルのコンパイル中のモ
ジュール名(1)72にステップ(S114)でコンパ
イルを依頼したモジュール名を設定する。
【0018】ステップ(S116)では、次に処理すべ
き処理順序番号67の値を前記コンパイル処理管理カウ
ンタに設定する。そして、ステップ(S110)に進
む。ステップ(S121)では、ステップ(S114)
でホストにコンパイルの依頼を行うが、このコンパイル
処理の完了をこのステップで待つ。すなわち、このステ
ップではwait関数を実行することにより待ち状態に
入る。そして、ステップ(S114)でのexit関数
が実行された段階で、該wait関数による待ち状態が
解除され、次のステップ(S122)に進む。
き処理順序番号67の値を前記コンパイル処理管理カウ
ンタに設定する。そして、ステップ(S110)に進
む。ステップ(S121)では、ステップ(S114)
でホストにコンパイルの依頼を行うが、このコンパイル
処理の完了をこのステップで待つ。すなわち、このステ
ップではwait関数を実行することにより待ち状態に
入る。そして、ステップ(S114)でのexit関数
が実行された段階で、該wait関数による待ち状態が
解除され、次のステップ(S122)に進む。
【0019】ステップ(S122)では、ホストからt
imeコマンドによりコンパイル処理経過時間、CPU
使用時間、入出力回数を前記NFS(ファイル共用シス
テム)を経由して取得する。そして、コンパイル管理テ
ーブルの翻訳経過時間68、CPU使用時間69、入出
力回数70にそれぞれの値を設定する。ステップ(S1
23)では、翻訳が終了したモジュール名をコンパイル
監視テーブルのコンパイル中のモジュール名(1)72
を検索し、該当するモジュール名を空白で初期化する。
そして、ステップ(S110)に進む。
imeコマンドによりコンパイル処理経過時間、CPU
使用時間、入出力回数を前記NFS(ファイル共用シス
テム)を経由して取得する。そして、コンパイル管理テ
ーブルの翻訳経過時間68、CPU使用時間69、入出
力回数70にそれぞれの値を設定する。ステップ(S1
23)では、翻訳が終了したモジュール名をコンパイル
監視テーブルのコンパイル中のモジュール名(1)72
を検索し、該当するモジュール名を空白で初期化する。
そして、ステップ(S110)に進む。
【0020】本発明の第2の実施の例を図面に基づいて
説明する。図2は本発明の第2の実施の例のフロー(そ
の1)を説明する図である。主として図2に基づき説明
する。本発明の第2の実施の例では、各計算機でのコン
パイル処理の実行多重度は1〜4としている。従って、
図7に示すコンパイル中のモジュール名(1)〜(4)
を使用する。
説明する。図2は本発明の第2の実施の例のフロー(そ
の1)を説明する図である。主として図2に基づき説明
する。本発明の第2の実施の例では、各計算機でのコン
パイル処理の実行多重度は1〜4としている。従って、
図7に示すコンパイル中のモジュール名(1)〜(4)
を使用する。
【0021】ステップ(S101〜S103)は本発明
の第1の実施形態のステップ(S101〜S103)と
同じ処理を行い、分類キーに基づきコンパイル順序の決
定及び設定を行うものである。既に説明済なので省略す
る。ステップ(S104)では、図7に示すコンパイル
監視テーブルのコンパイル中のモジュール名(1)72
〜コンパイル中のモジュール名(4)75を全てスペー
スで初期化する。
の第1の実施形態のステップ(S101〜S103)と
同じ処理を行い、分類キーに基づきコンパイル順序の決
定及び設定を行うものである。既に説明済なので省略す
る。ステップ(S104)では、図7に示すコンパイル
監視テーブルのコンパイル中のモジュール名(1)72
〜コンパイル中のモジュール名(4)75を全てスペー
スで初期化する。
【0022】ステップ(S105)では、図示していな
いコンパイル処理管理カウンタに1を設定する。なお、
該コンパイル処理管理カウンタは次のコンパイル対象と
なるモジュールの処理順番が設定・保持され、コンパイ
ル対象モジュールを選択するときに参照される。ステッ
プ(S106)は各計算機におけるコンパイラの実行多
重度を管理する多重度管理テーブル(図8を参照)のコ
ンパイル実行数83を全て0(零)で初期化を行う。こ
の多重度管理テーブルには計算機名81に各計算機名
が、コンパイル許容多重度数82に各計算機名ごとのコ
ンパイル許容多重度数がそれぞれ予め設定されている。
また、コンパイラの実行時におけるコンパイル実行数の
値が設定されるコンパイル実行数83が設けられてい
る。
いコンパイル処理管理カウンタに1を設定する。なお、
該コンパイル処理管理カウンタは次のコンパイル対象と
なるモジュールの処理順番が設定・保持され、コンパイ
ル対象モジュールを選択するときに参照される。ステッ
プ(S106)は各計算機におけるコンパイラの実行多
重度を管理する多重度管理テーブル(図8を参照)のコ
ンパイル実行数83を全て0(零)で初期化を行う。こ
の多重度管理テーブルには計算機名81に各計算機名
が、コンパイル許容多重度数82に各計算機名ごとのコ
ンパイル許容多重度数がそれぞれ予め設定されている。
また、コンパイラの実行時におけるコンパイル実行数の
値が設定されるコンパイル実行数83が設けられてい
る。
【0023】ステップ(S107)では、図示していな
い指示カウンタに1を設定する。ステップ(S108)
では、多重度管理テーブルから先頭の行が読み出され
る。ステップ(S110)では、全てのコンパイルが完
了したことの判定が行われ、前記コンパイル処理管理カ
ウンタの値が前記最終処理順序番号カウンタの値を越
え、かつ、前記コンパイル監視テーブルにコンパイル中
のモジュール名が設定されていない(モジュール名が全
て空白)場合に全ての翻訳が終了したものと判定する。
い指示カウンタに1を設定する。ステップ(S108)
では、多重度管理テーブルから先頭の行が読み出され
る。ステップ(S110)では、全てのコンパイルが完
了したことの判定が行われ、前記コンパイル処理管理カ
ウンタの値が前記最終処理順序番号カウンタの値を越
え、かつ、前記コンパイル監視テーブルにコンパイル中
のモジュール名が設定されていない(モジュール名が全
て空白)場合に全ての翻訳が終了したものと判定する。
【0024】ステップ(S110a)は多重度管理テー
ブルの各計算機名欄ごとに現在の多重度許容数が実行中
の多重度数と等しいか、又は多い場合にステップ(S1
10b)に進み、そうでなければステップ(S110
c)に進む。ステップ(S110b)では、多重度管理
テーブルのコンパイル実行数が前記指示カウンタと同じ
値であるかどうかを判定し、同じであればステップ(S
112)に進み、異なっていればステップ(S110
C)に進む。
ブルの各計算機名欄ごとに現在の多重度許容数が実行中
の多重度数と等しいか、又は多い場合にステップ(S1
10b)に進み、そうでなければステップ(S110
c)に進む。ステップ(S110b)では、多重度管理
テーブルのコンパイル実行数が前記指示カウンタと同じ
値であるかどうかを判定し、同じであればステップ(S
112)に進み、異なっていればステップ(S110
C)に進む。
【0025】ステップ(S112)は、前記コンパイル
処理管理カウンタの読み出し、ステップ(S113)は
コンパイル管理テーブルの読み出しを行う。ステップ
(S114)はステップ(S201,S121)との連
携で動作するものであり、また、ステップ(S115,
S116)も翻訳モジュール名及び処理番号の設定も本
発明の第1の実施の例のフローを説明する図のステップ
(S114,S201,S121,S115,S11
6)と同じ処理であり、既に説明済なので省略する。
処理管理カウンタの読み出し、ステップ(S113)は
コンパイル管理テーブルの読み出しを行う。ステップ
(S114)はステップ(S201,S121)との連
携で動作するものであり、また、ステップ(S115,
S116)も翻訳モジュール名及び処理番号の設定も本
発明の第1の実施の例のフローを説明する図のステップ
(S114,S201,S121,S115,S11
6)と同じ処理であり、既に説明済なので省略する。
【0026】ステップ(S117)は多重度管理テーブ
ルの計算機名81において、ステップ(S114)でコ
ンパイルを依頼した計算機名と一致する行のコンパイル
実行数の値に1を加えて設定する。ステップ(S110
c)では、計算機名71に設定された各計算機名(1号
機、2号機)の処理が全て終了すると、ステップ(S1
19)に進み、そうでなければ、ステップ(S118)
に進む。
ルの計算機名81において、ステップ(S114)でコ
ンパイルを依頼した計算機名と一致する行のコンパイル
実行数の値に1を加えて設定する。ステップ(S110
c)では、計算機名71に設定された各計算機名(1号
機、2号機)の処理が全て終了すると、ステップ(S1
19)に進み、そうでなければ、ステップ(S118)
に進む。
【0027】ステップ(S118)では、多重度管理テ
ーブルの次の行を読み出し、ステップ(S110)に進
む。ステップ(S119)では、前記指示カウンタの値
に1を加える。ステップ(S110d)では、多重度管
理テーブル読み出した行のコンパイル許容多重度数82
の値が前記指示カウンタと等しい又は小さいときにステ
ップ(S121)に進み、そうでなければ、ステップ
(S108)に進む。
ーブルの次の行を読み出し、ステップ(S110)に進
む。ステップ(S119)では、前記指示カウンタの値
に1を加える。ステップ(S110d)では、多重度管
理テーブル読み出した行のコンパイル許容多重度数82
の値が前記指示カウンタと等しい又は小さいときにステ
ップ(S121)に進み、そうでなければ、ステップ
(S108)に進む。
【0028】ステップ(S121,S122,S12
3)はホストに対して翻訳処理を依頼した結果の通知を
待つwait関数を発行し、待ち状態が解除されてから
コンパイル処理経過時間などを設定し、モジュール名の
初期化を行う。詳細な説明については、本発明の第1の
実施の例のフローのステップ(S121,S122,S
123)の説明を参照されたい。
3)はホストに対して翻訳処理を依頼した結果の通知を
待つwait関数を発行し、待ち状態が解除されてから
コンパイル処理経過時間などを設定し、モジュール名の
初期化を行う。詳細な説明については、本発明の第1の
実施の例のフローのステップ(S121,S122,S
123)の説明を参照されたい。
【0029】ステップ(S124)は多重度管理テーブ
ルの計算機名81において、ステップ(S121)でコ
ンパイルが終了した計算機名と一致する行のコンパイル
実行数83の値に1を減算する。ステップ(S125)
はコンパイル監視テーブルの中にコンパイル中のモジュ
ール名(1)72〜コンパイル中のモジュール名(4)
75に空白がすべて設定されたとき、すべてのモジュー
ルのコンパイルは終了したものと判定し、処理を終了す
る。そうでなければ、ステップ(126)に進む。
ルの計算機名81において、ステップ(S121)でコ
ンパイルが終了した計算機名と一致する行のコンパイル
実行数83の値に1を減算する。ステップ(S125)
はコンパイル監視テーブルの中にコンパイル中のモジュ
ール名(1)72〜コンパイル中のモジュール名(4)
75に空白がすべて設定されたとき、すべてのモジュー
ルのコンパイルは終了したものと判定し、処理を終了す
る。そうでなければ、ステップ(126)に進む。
【0030】ステップ(S126)では、コンパイル管
理テーブルから行の読み出しを行う。ステップ(S12
7)はホストに対してコンパイル処理の依頼を行うもの
であり、前述のステップ(S114)の説明と同じ処理
を行う。ステップ(S128、S129)は翻訳モジュ
ール名をコンパイル監視テーブル及び次の処理順序番号
を前記コンパイル処理管理カウンタに設定するものであ
る。
理テーブルから行の読み出しを行う。ステップ(S12
7)はホストに対してコンパイル処理の依頼を行うもの
であり、前述のステップ(S114)の説明と同じ処理
を行う。ステップ(S128、S129)は翻訳モジュ
ール名をコンパイル監視テーブル及び次の処理順序番号
を前記コンパイル処理管理カウンタに設定するものであ
る。
【0031】ステップ(S130)は多重度管理テーブ
ルの計算機名81とステップ(S127)で翻訳依頼を
したホスト名とが対応する計算機名81の行のコンパイ
ル実行数83の値に1を加える。そして、ステップ(S
121)に進む。
ルの計算機名81とステップ(S127)で翻訳依頼を
したホスト名とが対応する計算機名81の行のコンパイ
ル実行数83の値に1を加える。そして、ステップ(S
121)に進む。
【0032】
【発明の効果】上述したように、本発明によれば、処理
単位に係る処理単位量(ファイルサイズ、ステップ数、
センテンス数、ワード数、及び文字数のいずれか)又は
処理時間(処理経過時間、CPU使用時間、及び入出力
回数のいずれか)を分類キーとして処理単位の名称を降
順に分類し、分類された順序で処理単位をネットワーク
で接続された複数のシステム上で動作するプログラムで
分散処理することにより、各計算機システムでの処理経
過時間を平均化にすることができ、その結果、全処理時
間を短縮できる効果がある。
単位に係る処理単位量(ファイルサイズ、ステップ数、
センテンス数、ワード数、及び文字数のいずれか)又は
処理時間(処理経過時間、CPU使用時間、及び入出力
回数のいずれか)を分類キーとして処理単位の名称を降
順に分類し、分類された順序で処理単位をネットワーク
で接続された複数のシステム上で動作するプログラムで
分散処理することにより、各計算機システムでの処理経
過時間を平均化にすることができ、その結果、全処理時
間を短縮できる効果がある。
【図1】 本発明の第1の実施の例のフローを説明する
図
図
【図2】 本発明の第2の実施の例のフロー(その1)
を説明する図
を説明する図
【図3】 本発明の第2の実施の例のフロー(その2)
を説明する図
を説明する図
【図4】 本発明の第2の実施の例のフロー(その3)
を説明する図
を説明する図
【図5】 ホストに対してコンパイル指示及びCPU使
用時間等のデータ収集を説明する図
用時間等のデータ収集を説明する図
【図6】 コンパイル管理テーブルを説明する図
【図7】 コンパイル監視テーブルを説明する図
【図8】 多重度管理テーブルを説明する図
【図9】 各モジュールの処理経過時間とCPU使用時
間を説明する図
間を説明する図
【図10】 固定順序コンパイルによる処理経過時間を
説明する図
説明する図
【図11】 CPU使用時間順の分散コンパイルによる
処理経過時間の短縮を説明する図
処理経過時間の短縮を説明する図
61 モジュール名 62 ファイルサイズ 63 ステップ数 64 センテンス数 65 ワード数 66 文字数 67 処理順序番号 68 コンパイル処理経過時間 69 CPU使用時間 70 入出力回数 71 計算機名 72 コンパイル中のモジュール名(1) 73 コンパイル中のモジュール名(2) 74 コンパイル中のモジュール名(3) 75 コンパイル中のモジュール名(4) 81 計算機名 82 コンパイル許容多重度数 83 コンパイル実行数
Claims (4)
- 【請求項1】 ネットワークで接続された複数の計算機
シテスムにより分散処理を行う分散処理方法において、 複数の処理単位に係る処理単位量をキーにして処理単位
の名称を降順に分類する名称分類手順と、 該名称分類手段により分類された順序で複数の処理単位
を前記複数の計算機システム上でプログラム処理を行わ
せる処理手順とからなることを特徴とする分散処理方
法。 - 【請求項2】 ネットワークで接続された複数の計算機
シテスムにより分散処理を行う分散処理方法において、 複数の処理単位に係る処理時間をキーにして処理単位の
名称を降順に分類する名称分類手順と、 該名称分類手段により分類された順序で複数の処理単位
を前記複数の計算機システム上でプログラム処理を行わ
せる処理手順とからなることを特徴とする分散処理方
法。 - 【請求項3】 ネットワークで接続された複数の計算機
シテスムにより分散処理を行うためのネットワーク分散
処理プログラムを記録したコンピュータ読み取り可能な
記録媒体であって、 複数の処理単位に係る処理単位量をキーとして処理単位
の名称を降順に分類する名称分類手順と、 該名称分類手段により分類された順序で前記複数の処理
単位を前記複数の計算機システム上でプログラム処理を
行わせる処理手順とを実行させるためのネットワーク分
散処理プログラムを記録したコンピュータ読み取り可能
な記録媒体。 - 【請求項4】 ネットワークで接続された複数の計算機
シテスムにより分散処理を行うためのネットワーク分散
処理プログラムを記録したコンピュータ読み取り可能な
記録媒体であって、 複数の処理単位に係る処理時間をキーとして処理単位の
名称を降順に分類する名称分類手順と、 該名称分類手段により分類された順序で前記複数の処理
単位を前記複数の計算機システム上でプログラム処理を
行わせる処理手順とを実行させるためのネットワーク分
散処理プログラムを記録したコンピュータ読み取り可能
な記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5689998A JPH11259431A (ja) | 1998-03-09 | 1998-03-09 | 分散処理方法及びネットワーク分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5689998A JPH11259431A (ja) | 1998-03-09 | 1998-03-09 | 分散処理方法及びネットワーク分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11259431A true JPH11259431A (ja) | 1999-09-24 |
Family
ID=13040310
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5689998A Withdrawn JPH11259431A (ja) | 1998-03-09 | 1998-03-09 | 分散処理方法及びネットワーク分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11259431A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005134976A (ja) * | 2003-10-28 | 2005-05-26 | Hitachi High-Technologies Corp | 外観検査装置用画像処理装置 |
| JP2020154608A (ja) * | 2019-03-19 | 2020-09-24 | 富士通クライアントコンピューティング株式会社 | 情報処理装置及び情報処理システム |
-
1998
- 1998-03-09 JP JP5689998A patent/JPH11259431A/ja not_active Withdrawn
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005134976A (ja) * | 2003-10-28 | 2005-05-26 | Hitachi High-Technologies Corp | 外観検査装置用画像処理装置 |
| JP2020154608A (ja) * | 2019-03-19 | 2020-09-24 | 富士通クライアントコンピューティング株式会社 | 情報処理装置及び情報処理システム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11379272B2 (en) | Autoscaling using file access or cache usage for cluster machines | |
| US5835737A (en) | Method and apparatus for arbitrating access to selected computer system devices | |
| US8667459B2 (en) | Application specific runtime environments | |
| US6202080B1 (en) | Apparatus and method for computer job workload distribution | |
| JP2551312B2 (ja) | ジョブステップ並列実行方式 | |
| CN1795434B (zh) | 程序执行控制设备和程序执行控制方法 | |
| JP2005536791A (ja) | 動的多重レベルタスク管理方法及び装置 | |
| CN118708533B (zh) | 面向K8s的多机多卡GPU最优通信调度方法和系统 | |
| Jiang et al. | Symbiosis: Network-aware task scheduling in data-parallel frameworks | |
| US6981134B2 (en) | Method and system for processing using a CPU and digital signal processor | |
| US5276821A (en) | Operation assignment method and apparatus therefor | |
| WO2010001736A1 (ja) | マルチプロセッサシステム、マルチスレッド処理方法、及びプログラム | |
| US20050071531A1 (en) | Concurrent arbitration of interrupt resources | |
| JPH11259431A (ja) | 分散処理方法及びネットワーク分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
| KR20230138604A (ko) | 빅데이터를 분석하는 전자 장치 및 그 동작 방법 | |
| JPH08241214A (ja) | データ処理システム | |
| JP2002244892A (ja) | ベンチマーク実施方法 | |
| CN115033374A (zh) | 一种多核可编程控制器的任务到线程匹配方法 | |
| JPH07105013A (ja) | レジスタ割り付け方式 | |
| US20030014739A1 (en) | Method and system for optimizing the use of processors when compiling a program | |
| US20020169908A1 (en) | System and method for implementing a flexible arbitration mechanism | |
| CN117544582A (zh) | 一种交换芯片的管理方法、装置及交换机 | |
| CN100478930C (zh) | 高级可编程中断控制器的识别码配置方法 | |
| JPH04299734A (ja) | ソフトウェア開発方法 | |
| JP3397425B2 (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: 20050510 |