Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3512080B2 - Computing device and method - Google Patents
[go: Go Back, main page]

JP3512080B2 - Computing device and method - Google Patents

Computing device and method

Info

Publication number
JP3512080B2
JP3512080B2 JP34026295A JP34026295A JP3512080B2 JP 3512080 B2 JP3512080 B2 JP 3512080B2 JP 34026295 A JP34026295 A JP 34026295A JP 34026295 A JP34026295 A JP 34026295A JP 3512080 B2 JP3512080 B2 JP 3512080B2
Authority
JP
Japan
Prior art keywords
calculation
data
computing
surplus
task
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
Application number
JP34026295A
Other languages
Japanese (ja)
Other versions
JPH09179832A (en
Inventor
徹 大平
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP34026295A priority Critical patent/JP3512080B2/en
Publication of JPH09179832A publication Critical patent/JPH09179832A/en
Application granted granted Critical
Publication of JP3512080B2 publication Critical patent/JP3512080B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、計算装置および方
法に関し、特に、計算タスク、および所定の接続方向に
おける計算余力のデータを受信し、受信した計算余力の
データに応じて、受信した計算タスクを、処理もしくは
転送する計算装置および方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computing device and method, and more particularly, to a computing task and data of a computing power remaining in a predetermined connection direction, and the computing task received in accordance with the received computing power data. The present invention relates to a computing device and method for processing or transferring data.

【0002】[0002]

【従来の技術】近年、コンピュータシステムの維持や運
営に掛かる費用を削減するために、分散化やダウンサイ
ジングが行われ、従来の大型のコンピュータは、複数
の、安価で、小型のコンピュータが接続されたネットワ
ークで置き換えられている。
2. Description of the Related Art In recent years, in order to reduce the cost of maintaining and operating a computer system, decentralization and downsizing have been performed, and a conventional large computer is connected with a plurality of inexpensive, small computers. Has been replaced by the network.

【0003】このようなネットワークにおける分散処理
においては、従来、図9に示すように、所定の制御用プ
ロセッサ81を設け、この制御用プロセッサ81が、計
算用プロセッサ82−i(i=1,2,3,・・・)の
計算負荷(計算タスクの量)が均一になるように、計算
タスク83を振り分けている。
In distributed processing in such a network, conventionally, as shown in FIG. 9, a predetermined control processor 81 is provided, and this control processor 81 is used as a calculation processor 82-i (i = 1, 2, 1). , 3, ...) are distributed so that the calculation loads (the amount of calculation tasks) of the calculation tasks 83 become uniform.

【0004】しかしながら、このように、制御用プロセ
ッサ81が、計算タスク83の振り分けを行うようにす
ると、計算負荷の分散の処理が、制御用プロセッサ81
に集中するため、多数の計算用プロセッサ82−iを使
用する場合、制御用プロセッサ81の処理能力が限界に
達してしまい、分散処理の制御が困難となる。
However, when the control processor 81 distributes the calculation tasks 83 in this way, the calculation load is distributed by the control processor 81.
When a large number of calculation processors 82-i are used, the processing capacity of the control processor 81 reaches the limit, which makes it difficult to control the distributed processing.

【0005】また、制御用プロセッサ81だけで、分散
処理の制御を行うので、この制御用プロセッサ81が故
障した場合、コンピュータシステム全体が動作不能に陥
るという問題も生じる。
Further, since the control processor 81 alone controls the distributed processing, if the control processor 81 fails, the whole computer system becomes inoperable.

【0006】従って、このような制御用プロセッサ81
を使用せずに、計算タスクの自律的な分散を行うための
方法が考えられている。
Therefore, such a control processor 81
A method for autonomously distributing computational tasks without using is considered.

【0007】例えば、図10(a)に示すような1次元
状に接続されているプロセッサ91−iにおいて、各プ
ロセッサ91−iが、隣接するプロセッサ91−(i−
1),91−(i+1)の稼働状態を監視し、隣接する
プロセッサ91−(i−1),91−(i+1)の負荷
が軽いと判断すると、そのプロセッサに、所定の量の計
算タスク92の転送を行うようにすることが考えられ
る。
For example, in a processor 91-i connected in a one-dimensional manner as shown in FIG. 10 (a), each processor 91-i has an adjacent processor 91- (i-
1), 91- (i + 1) is monitored, and when it is determined that the load of the adjacent processors 91- (i-1), 91- (i + 1) is light, the processor is given a predetermined amount of calculation tasks 92. It is conceivable that the transfer is performed.

【0008】このようにすることで、図10(b)に示
すように、計算タスク93を多く有しているプロセッサ
(図10(a)におけるプロセッサ91−2)から、計
算タスク93を有していないプロセッサ(図10(a)
におけるプロセッサ91−3)に、計算タスク93が移
動するので、負荷の自律的な分散を行うことができる。
By doing so, as shown in FIG. 10B, the calculation task 93 is changed from the processor having a large number of calculation tasks 93 (the processor 91-2 in FIG. 10A). Not a processor (Fig. 10 (a))
Since the calculation task 93 moves to the processor 91-3) in the above, the load can be autonomously distributed.

【0009】[0009]

【発明が解決しようとする課題】しかしながら、上述の
ように負荷の分散を行うと、所定の負荷が重いプロセッ
サは、2つ以上離れている隣りのプロセッサの負荷が軽
い場合においても、隣接するプロセッサがある程度の負
荷(計算タスク)を有していると、計算タスクを移動さ
せることができない。従って、局所的に計算タスクの分
布が安定してしまい、稼働しないプロセッサが生じたま
まとなり、最適な負荷分散が行われないことになるとい
う問題を有している。
However, when the load is distributed as described above, a processor having a predetermined heavy load is adjacent to another processor even if two or more adjacent processors are lightly loaded. Has a certain load (calculation task), the calculation task cannot be moved. Therefore, there is a problem that the distribution of the calculation tasks is locally stabilized, some processors do not operate, and the optimum load distribution is not performed.

【0010】例えば、図11に示すように、プロセッサ
91−2が有する計算タスク92は、プロセッサ91−
3が、ある程度の計算タスク92を有しているので、プ
ロセッサ91−4,91−5が計算タスク92を有して
いないにもかかわらず、プロセッサ91−3には転送さ
れない。
For example, as shown in FIG. 11, the calculation task 92 of the processor 91-2 is the processor 91-2.
3 has a certain number of calculation tasks 92, it is not transferred to the processor 91-3 even though the processors 91-4 and 91-5 do not have the calculation task 92.

【0011】本発明は、このような状況に鑑みてなされ
たもので、計算余力を各プロセッサにおいて算出し、各
装置において、その計算余力の和を計算しながら、各接
続方向に所定の割合で伝達させていくことで、隣接する
プロセッサの状態だけでなく、各接続方向全体の負荷の
量を把握し、負荷の量が少ない方向に計算タスクを転送
することで、稼働しないプロセッサが生じないように
し、最適な負荷分散を行うようにするものである。
The present invention has been made in view of the above circumstances, and each processor calculates a surplus calculation capacity, and each device calculates the sum of the calculation surplus capacity at a predetermined ratio in each connection direction. By transmitting the information, not only the status of the adjacent processors, but also the load amount in each connection direction is grasped, and the calculation task is transferred in the direction of the light load so that there are no inactive processors. In this way, optimal load distribution is performed.

【0012】[0012]

【課題を解決するための手段】請求項1に記載の計算装
置は、計算タスク、および隣接して接続された他の計算
装置からの計算余力のデータを受信する受信手段と、受
信手段によって受信された各計算余力のデータと自己の
計算余力のデータとを比較して自己の計算余力が全ての
他の計算装置のそれぞれの計算余力以上である場合は、
計算タスクを処理する処理手段と、受信手段によって受
信された各計算余力のデータと自己の計算余力のデータ
とを比較して自己の計算余力が他の計算装置のいずれか
の計算余力より小さい場合は、他の計算機のうち、より
大きい計算余力のデータを送信してきた他の計算装置に
計算タスクを送信する送信手段とを備え、送信手段は、
さらに、自己の計算余力のデータと、受信手段によって
受信された計算余力のデータより計算される新たな計算
余力のデータを所定の割合で、隣接して接続された他の
計算装置に送信することを特徴とする。
According to a first aspect of the present invention, there is provided a computing device, a receiving means for receiving data of a computing task and a computing capacity from another computing device connected adjacently, and receiving by the receiving means. Comparing the respective calculated surplus data and the self calculated surplus data, if the self calculated surplus is equal to or more than the respective calculated surplus of all other computing devices,
When the calculation means for processing the calculation task and each calculation surplus data received by the receiving means are compared with the self calculation surplus data, and the self calculation surplus is smaller than one of the other calculation devices. Is more than any other calculator
And a transmission means for transmitting the calculation task to another calculation device that has transmitted a large amount of calculation power, and the transmission means comprises:
Furthermore, the data of the new calculation power calculated from the data of the calculation power of itself and the data of the calculation power received by the receiving means are transmitted at a predetermined ratio to another adjacent calculation device. Is characterized by.

【0013】請求項2に記載の計算方法は、計算タス
ク、および隣接して接続された他の計算装置からの計算
余力のデータを受信し、受信した各計算余力のデータと
自己の計算余力のデータとを比較して自己の計算余力が
全ての他の計算装置のそれぞれの計算余力以上である場
合は、計算タスクを処理し、自己の計算余力のデータ
と、受信した計算余力のデータより計算される新たな計
算余力のデータを所定の割合で、隣接して接続された他
の計算装置に送信し、受信した各計算余力のデータと自
己の計算余力のデータとを比較して自己の計算余力が他
の計算装置のいずれかの計算余力より小さい場合は、他
の計算機のうち、より大きい計算余力のデータを送信し
てきた他の計算装置に計算タスクを送信することを特徴
とする。
A calculation method according to a second aspect of the present invention receives a calculation task and data of a calculation remaining capacity from another calculation apparatus connected adjacent to the calculation task, and calculates the received calculation remaining capacity data and its own calculation remaining capacity. When comparing with the data, if the self-computation capacity is equal to or greater than the respective calculation capacity of all other computing devices, the calculation task is processed, and calculation is performed from the self-computation capacity data and the received calculation capacity data. The new calculation surplus data is transmitted at a predetermined rate to another adjacent computing device, and each received calculation surplus data is compared with the self calculation surplus data to calculate the self calculation. spare capacity is the smaller than any of the calculations available capacity of other computing devices, among other computer, and transmits the calculated task to another computing device that has transmitted the data of greater computational margin.

【0014】請求項1に記載の計算装置においては、受
信手段は、計算タスク、および隣接して接続された他の
計算装置からの計算余力のデータを受信し、処理手段
は、受信手段によって受信された各計算余力のデータと
自己の計算余力のデータとを比較して自己の計算余力が
全ての他の計算装置のそれぞれの計算余力以上である場
合は、計算タスクを処理し、送信手段は、自己の計算余
力のデータと、受信手段によって受信された計算余力の
データより計算される新たな計算余力のデータを所定の
割合で、隣接して接続された他の計算装置に送信し、受
信手段によって受信された各計算余力のデータと自己の
計算余力のデータとを比較して自己の計算余力が他の計
算装置のいずれかの計算余力より小さい場合は、他の計
算機のうち、より大きい計算余力のデータを送信してき
た他の計算装置に計算タスクを送信する。
In the computing device according to the first aspect, the receiving means receives the data of the computing power from the computing task and another computing device adjacently connected, and the processing means receives the data by the receiving means. Comparing the calculated surplus calculation data with the self calculation surplus data, and when the self calculation surplus is equal to or more than the respective calculation surplus of all other computing devices, the calculation task is processed, and the transmission means is , The data of the new calculation power calculated from the data of the calculation power of itself and the data of the calculation power received by the receiving unit are transmitted to and received by another calculation device connected to the adjacent device at a predetermined ratio. of by comparing the data of the data and its own calculations margin of each calculation margin received when own account margin is smaller than any of the calculated reserve capacity of other computing devices, other computers by means, large and more Data have calculated margin to other computing devices that has transmitted the transmitting computational tasks.

【0015】請求項2に記載の計算方法においては、計
算タスク、および隣接して接続された他の計算装置から
の計算余力のデータを受信し、受信した各計算余力のデ
ータと自己の計算余力のデータとを比較して自己の計算
余力が全ての他の計算装置のそれぞれの計算余力以上で
ある場合は、計算タスクを処理し、自己の計算余力のデ
ータと、受信した計算余力のデータより計算される新た
な計算余力のデータを所定の割合で、隣接して接続され
た他の計算装置に送信し、受信した各計算余力のデータ
と自己の計算余力のデータとを比較して自己の計算余力
が他の計算装置のいずれかの計算余力より小さい場合
は、他の計算機のうち、より大きい計算余力のデータを
送信してきた他の計算装置に計算タスクを送信する。
In the calculation method according to the second aspect, the calculation task and data of the calculation remaining capacity from other adjacently connected calculation devices are received, and the received data of the calculation remaining capacity and the calculation remaining capacity of the self are received. If the self-computation capacity is equal to or greater than the respective calculation capacity of all the other computing devices by comparing the data of the above, the calculation task is processed, and the self-computation capacity data and the received calculation capacity data are compared. The new calculation surplus data to be calculated is transmitted at a predetermined ratio to another adjacently connected computing device, and each received calculation surplus data is compared with the self calculation surplus data to calculate If the calculated reserve capacity is smaller than any of the calculations available capacity of other computing devices, among other computer sends computing tasks to other computing devices which transmitted the data of greater computational margin.

【0016】[0016]

【発明の実施の形態】図1は、本発明の計算装置の一実
施例を、複数個、接続した様子を示している。この接続
例においては、計算装置1−i(i=1,2,3,・・
・)は、プロセッサ21−iおよびサブプロセッサ22
−iを有し、1次元状に接続されている。なお、以下の
説明において、特に区別する必要がない場合、−iの記
号は省略する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows a state in which a plurality of embodiments of a computer according to the present invention are connected. In this connection example, the computing device 1-i (i = 1, 2, 3, ...
.) Indicates processor 21-i and sub-processor 22
-I, and are connected in a one-dimensional manner. In the following description, the symbol -i is omitted unless it is necessary to make a distinction.

【0017】プロセッサ21は、他の(隣の)プロセッ
サ21から計算タスク23を受信し、所定の条件に従っ
て、受信した計算タスク23をさらに他の(隣の)計算
装置1に送信するか、あるいは、保持し、実行するよう
になされている。
The processor 21 receives a calculation task 23 from another (adjacent) processor 21 and transmits the received calculation task 23 to another (adjacent) calculation device 1 according to a predetermined condition, or It is designed to hold, hold, and run.

【0018】プロセッサ21は、自らの計算能力と現在
の負荷状況より、計算余力(現在処理中の負荷以外に処
理可能な負荷の量)を算出する。そして、計算余力を示
す指標として、コンピュトン(Computon)24という仮
想的な粒子を導入し、計算余力を、このコンピュトン2
4の数で表現し、算出した計算余力に対応する数のコン
ピュトン24を、仮想的に、サブプロセッサ22に出力
するようになされている(実際には、プロセッサ21
は、コンピュトン24の数を、データとしてサブプロセ
ッサ22に出力する)。
The processor 21 calculates the computational capacity (the amount of load that can be processed in addition to the load currently being processed) from its own computing capacity and the current load status. Then, a virtual particle called Computon 24 is introduced as an index showing the calculation capacity, and the calculation capacity is calculated as
The number of Computon 24 expressed by the number of 4 and corresponding to the calculated spare capacity is virtually output to the sub-processor 22 (actually, the processor 21
Outputs the number of Computon 24 to the sub-processor 22 as data).

【0019】サブプロセッサ22は、仮想的に、プロセ
ッサ21、および隣接する計算装置1のサブプロセッサ
22よりコンピュトン24を受け取り、これらのコンピ
ュトン24を、1/3ずつ、2方向において隣接する計
算装置1に出力し、残りの1/3をプロセッサ21に出
力するようになされている。プロセッサ21に出力され
たコンピュトン24は、プロセッサ21において、消失
するものとする(実際には、コンピュトン24の数のデ
ータの授受が行われる)。
The sub-processor 22 virtually receives the Computons 24 from the processor 21 and the sub-processors 22 of the adjoining computing devices 1, and computes these Computons 24 by 1/3 in two directions. The output is output to the device 1 and the remaining 1/3 is output to the processor 21. It is assumed that the Computon 24 output to the processor 21 disappears in the processor 21 (actually, data of the number of Computon 24 is exchanged).

【0020】図2は、本発明の計算装置1の一実施例の
一構成例を示している。計算装置1は、プロセッサ21
とサブプロセッサ22で構成されている。プロセッサ2
1においては、CPU41(処理手段)は、ROM42
に記憶されているプログラムに従って、各種処理を行う
ようになされている。
FIG. 2 shows a configuration example of an embodiment of the computer 1 of the present invention. The computing device 1 includes a processor 21
And a sub processor 22. Processor 2
In FIG. 1, the CPU 41 (processing means) is the ROM 42.
Various processes are performed in accordance with the programs stored in.

【0021】例えば、CPU41は、現在の負荷状況に
応じた、コンピュトン24の数を計算し、そのコンピュ
トン24の数をインターフェース45を介して、サブプ
ロセッサ22に出力するようになされている。
For example, the CPU 41 is adapted to calculate the number of Computon 24 according to the current load condition and output the number of Computon 24 to the sub processor 22 via the interface 45.

【0022】RAM43は、CPU41が各種処理を行
うとき、一時的にデータを記憶するようになされてい
る。
The RAM 43 is adapted to temporarily store data when the CPU 41 performs various processes.

【0023】ネットワークインターフェース44(受信
手段、送信手段)は、他の計算装置1のネットワークイ
ンターフェース44に接続され、計算タスク23の授受
を行うようになされている。
The network interface 44 (reception means, transmission means) is connected to the network interface 44 of another computing device 1 to exchange the calculation task 23.

【0024】サブプロセッサ22においては、CPU6
1は、ROM62に記憶されているプログラムに従っ
て、各種処理を行い、例えば、ネットワークインターフ
ェース64を介して、受信したコンピュトン24の数
と、インターフェース65を介して受け取ったコンピュ
トン24の数より、隣接する計算装置1に送信するコン
ピュトン24の数を算出するようになされている。
In the sub processor 22, the CPU 6
1 performs various kinds of processing according to the program stored in the ROM 62, and, for example, the number of Computon 24 received via the network interface 64 and the number of Computon 24 received via the interface 65 The number of Computon 24 to be transmitted to the computing device 1 is calculated.

【0025】RAM63は、CPU61が各種処理を行
うとき、一時的にデータを記憶するようになされてい
る。
The RAM 63 is adapted to temporarily store data when the CPU 61 performs various processes.

【0026】ネットワークインターフェース64(受信
手段、送信手段)は、他の計算装置1のネットワークイ
ンターフェース64に接続され、コンピュトン24の数
の授受を行うようになされている。
The network interface 64 (reception means, transmission means) is connected to the network interface 64 of another computing device 1 so as to exchange the number of Computon 24.

【0027】次に、図3乃至図6のフローチャートを参
照して、計算装置1の動作について説明する。
Next, the operation of the computer 1 will be described with reference to the flowcharts of FIGS.

【0028】最初に、図3のフローチャートを参照し
て、計算装置1のプロセッサ21のメインルーチンにお
ける動作について説明する。
First, the operation of the main routine of the processor 21 of the computer 1 will be described with reference to the flowchart of FIG.

【0029】ステップS1において、CPU41は、プ
ロセッサ21が計算タスク23を有しているか否かを判
断し、計算タスク23を有していないと判断した場合、
計算タスク23が他の計算装置1より転送されてくるま
で待機する。
In step S1, the CPU 41 determines whether or not the processor 21 has the calculation task 23. If it is determined that the processor 21 does not have the calculation task 23,
It waits until the computing task 23 is transferred from another computing device 1.

【0030】CPU41は、プロセッサ21が計算タス
ク23を有している場合、ステップS2に進み、現在R
AM43に保持している計算タスク23のうち、所定の
順番で、計算タスク23の処理を行う。そして、すべて
の計算タスク23の処理を終えると、CPU41は、ス
テップS1に戻り、計算タスク23が他の計算装置1か
ら転送されてくるまで待機する。
When the processor 21 has the calculation task 23, the CPU 41 proceeds to step S2, where the current R
Of the calculation tasks 23 held in the AM 43, the calculation tasks 23 are processed in a predetermined order. When the processing of all the calculation tasks 23 is completed, the CPU 41 returns to step S1 and waits until the calculation task 23 is transferred from another calculation device 1.

【0031】CPU41は、ステップS2における計算
タスク23の処理において、新たな計算タスク23が発
生すると、タスク転送割り込みを発生させる。
When a new calculation task 23 occurs in the processing of the calculation task 23 in step S2, the CPU 41 causes a task transfer interrupt.

【0032】次に、図4のフローチャートを参照して、
このタスク転送割り込みにおけるプロセッサ21の動作
について説明する。
Next, referring to the flowchart of FIG.
The operation of the processor 21 in this task transfer interrupt will be described.

【0033】最初に、ステップS11において、CPU
41は、隣接する計算装置1(右または左方向に接続さ
れている計算装置1)より供給されるコンピュトン24
の数を調べる。
First, in step S11, the CPU
41 is a Computon 24 supplied from an adjacent computing device 1 (computing device 1 connected in the right or left direction)
Find out the number of.

【0034】次に、ステップS12において、CPU4
1は、左方向に接続されている計算装置1より供給され
るコンピュトン24の数NL、右方向に接続されている
計算装置1より供給されるコンピュトン24の数NR
および自らの計算装置1のコンピュトン24の数Nを比
較し、NがNL以上であり、かつ、NがNR以上であると
判断した場合、ステップS13において、新たな計算タ
スク23を保持し、メインルーチンのステップS2にお
いて、処理を行う。
Next, in step S12, the CPU 4
1 is the number N L of Computon 24 supplied from the computing device 1 connected in the left direction, the number N R of Computon 24 supplied from the computing device 1 connected in the right direction,
And the number N of Computon 24 of its own computing device 1 is compared, and when it is determined that N is N L or more and N is N R or more, the new computation task 23 is held in step S13. Then, the process is performed in step S2 of the main routine.

【0035】CPU41は、ステップS12において、
NがNLより小さい、または、NがNRより小さいと判断
した場合、ステップS14に進み、NLがNRより小さい
か否かを判断する。CPU41は、NLがNRより小さい
と判断した場合、ステップS15に進み、新たな計算タ
スク23を、右方向に接続されている計算装置1に、ネ
ットワークインターフェース44を介して転送する。
The CPU 41, in step S12,
When it is determined that N is smaller than N L or N is smaller than N R , the process proceeds to step S14 and it is determined whether N L is smaller than N R. When the CPU 41 determines that N L is smaller than N R , the CPU 41 proceeds to step S15 and transfers the new calculation task 23 to the calculation device 1 connected rightward via the network interface 44.

【0036】ステップS14において、CPU41は、
LがNR以上であると判断した場合、ステップS16に
進み、NLがNRより大きいか否かを判断し、NLがNR
り大きいと判断した場合、ステップS17に進み、新た
な計算タスク23を、左方向に接続されている計算装置
1に、ネットワークインターフェース44を介して転送
する。
In step S14, the CPU 41
If N L is equal to or greater than N R, the process proceeds to step S16, it is determined whether N L is larger than N R, if N L is determined to be larger than N R, the process proceeds to step S17, a new The specific computing task 23 is transferred to the computing device 1 connected leftward via the network interface 44.

【0037】CPU41は、ステップS16において、
LがNR以下であると判断した場合(即ち、NLとNR
等しい場合)、ステップS18に進み、区間(0,1)
で乱数を発生させ、ステップS19において、その乱数
が0.5より小さいか否かを判断し、その乱数が0.5
より小さいと判断された場合、ステップS17に進み、
新たな計算タスク23を、左方向に接続されている計算
装置1に転送する。
The CPU 41, in step S16,
If N L is equal to or less than N R (i.e., if N L and N R are equal), the process proceeds to step S18, the interval (0,1)
, A random number is generated, and in step S19, it is determined whether the random number is smaller than 0.5.
If it is determined that it is smaller, the process proceeds to step S17,
The new calculation task 23 is transferred to the calculation device 1 connected leftward.

【0038】CPU41は、ステップS19において、
乱数が0.5以上であると判断した場合、ステップS1
5に進み、新たな計算タスク23を、右方向に接続され
ている計算装置1に転送する。
The CPU 41, in step S19,
When it is determined that the random number is 0.5 or more, step S1
In step 5, the new calculation task 23 is transferred to the calculation device 1 connected to the right.

【0039】このようにして、新たな計算タスク23が
発生した場合、そのCPU41は、その計算タスク23
を、接続されている他の計算装置1に転送するか、ある
いは自らが処理するために保持する。
When a new calculation task 23 is generated in this way, the CPU 41 of the new calculation task 23
Is transferred to another connected computing device 1 or held for processing by itself.

【0040】この計算タスク23が転送された場合、転
送先のプロセッサ21は、同様に、タスク転送割り込み
を発生させ、その計算タスク23を、接続されている他
の計算装置1に転送するか、あるいは自らが処理する。
When this calculation task 23 is transferred, the processor 21 of the transfer destination similarly causes a task transfer interrupt to transfer the calculation task 23 to another connected computing device 1, or Or you can handle it yourself.

【0041】このように、新たに発生した計算タスク2
3は、順次、計算負荷が少ない方向(コンピュトン24
の数が大きい方向)に転送されていき、計算負荷が最も
少ない(左および右方向のコンピュトン24の数が同数
となる)計算装置1において、処理される。
Thus, the newly generated calculation task 2
3 is the direction in which the calculation load is low (Computon 24
Is transferred in the direction in which the number of A. is larger, and is processed in the computing device 1 with the least computational load (the number of Computetons 24 in the left and right directions is the same).

【0042】従って、局所的に計算タスク23の分布が
安定した場合においても、全体として計算タスク23が
均一に分散されていなければ、計算タスク23は、計算
負荷の少ない方向に移動していく。
Therefore, even when the distribution of the calculation tasks 23 is locally stable, if the calculation tasks 23 are not uniformly distributed as a whole, the calculation tasks 23 move in the direction in which the calculation load is small.

【0043】なお、プロセッサ21は、所定の時間間隔
で割り込みを発生させ、コンピュトン24の数を計算す
るようになされている。
The processor 21 generates an interrupt at a predetermined time interval and calculates the number of Computon 24.

【0044】図5のフローチャートを参照して、この割
り込みについて説明する。
This interrupt will be described with reference to the flowchart of FIG.

【0045】ステップS21において、CPU41は、
現在の計算タスク23の量より、プロセッサ21の計算
余力に対応する、コンピュトン24の数を計算する。
In step S21, the CPU 41
From the current amount of calculation tasks 23, the number of Computon 24 corresponding to the calculation capacity of the processor 21 is calculated.

【0046】そして、ステップS22において、CPU
41は、そのコンピュトン24の数を、サブプロセッサ
22にインターフェース45を介して送信する。
Then, in step S22, the CPU
41 transmits the number of the Computon 24 to the sub processor 22 via the interface 45.

【0047】このようにして、サブプロセッサ22は、
所定の時間間隔で、プロセッサ21よりコンピュトン2
4の数を供給される。
In this way, the sub processor 22
Computon 2 from the processor 21 at predetermined time intervals
Supplied with a number of four.

【0048】次に、図6のフローチャートを参照して、
計算装置1のサブプロセッサ22の動作について説明す
る。
Next, referring to the flowchart of FIG.
The operation of the sub processor 22 of the computing device 1 will be described.

【0049】CPU61は、ステップS31において、
プロセッサ21よりインターフェース65を介してコン
ピュトン24の数が供給されるまで待機し、プロセッサ
21よりコンピュトン24の数が供給されると、ステッ
プS32に進む。
The CPU 61, in step S31,
It waits until the number of Computon 24 is supplied from the processor 21 through the interface 65, and when the number of Computon 24 is supplied from the processor 21, the process proceeds to step S32.

【0050】ステップS32において、CPU61は、
プロセッサ21より供給されたコンピュトン24の数
と、左右方向に接続されている他の計算装置1より供給
されるコンピュトン24の数の総和を計算する。
In step S32, the CPU 61
The sum of the number of Computon 24 supplied from the processor 21 and the number of Computon 24 supplied from the other computing devices 1 connected in the left-right direction is calculated.

【0051】そして、ステップS33において、CPU
61は、その総和の1/3の数を、コンピュトン24の
数として、左右方向に接続されている他の計算装置1
に、ネットワークインターフェース64を介して送信す
る。
Then, in step S33, the CPU
Reference numeral 61 denotes another computing device 1 connected in the left-right direction, with the number of 1/3 of the total sum as the number of Computon 24.
, Via the network interface 64.

【0052】ステップS34において、CPU61は、
左右方向に接続されている他の計算装置1より、ネット
ワークインターフェース64を介して、コンピュトン2
4の数を受信し、RAM63に記憶させる。さらに、こ
れらのコンピュトンの数は、インターフェース65を介
して、プロセッサ21に供給され、タスク転送割り込み
処理において利用される。
In step S34, the CPU 61
From another computing device 1 connected in the left-right direction, via the network interface 64, the Computon 2
The number of 4 is received and stored in the RAM 63. Further, the number of these Computon is supplied to the processor 21 via the interface 65 and used in the task transfer interrupt processing.

【0053】以上のようにして、サブプロセッサ22
が、各接続方向に、所定の割合でコンピュトン24を伝
播させていくことで、全体的な負荷状況に基づいて計算
タスク23が転送されるので、より高い稼働率で、分散
処理を行うことができる。
As described above, the sub processor 22
However, by propagating the Computon 24 at a predetermined rate in each connection direction, the calculation task 23 is transferred based on the overall load status, so that the distributed processing should be performed at a higher operation rate. You can

【0054】図7は、本実施例を使用した場合の計算負
荷の分布の一例を示している。この例においては、所定
のプロセッサ21が、順次、計算タスク23を発生して
いる。従って、そのプロセッサ21の周辺(図7(a)
の区間a)における計算負荷は大きくなり、それに応じ
てその領域(図7(b)の区間a)のコンピュトン24
の数は減少する。
FIG. 7 shows an example of distribution of calculation load when this embodiment is used. In this example, a predetermined processor 21 sequentially generates a calculation task 23. Therefore, the periphery of the processor 21 (FIG. 7A)
The calculation load in the section a) becomes larger, and accordingly, the Computon 24 in the area (section a in FIG. 7B) becomes larger.
The number of is reduced.

【0055】図7(b)に示すようにコンピュトン24
が分布している場合、区間aで発生した計算タスク23
は、コンピュトン24の数の大きい、区間bもしくは区
間cに転送されていき、図7(a)に示すように負荷分
散される。
As shown in FIG. 7B, the Computon 24
Is distributed, the calculation task 23 that occurred in section a
Are transferred to section b or section c in which the number of Computon 24 is large, and the load is distributed as shown in FIG.

【0056】また、図8は、計算装置1を80個、1次
元リング状に接続し、所定の数の計算タスク23の処理
を行った場合における、稼働するプロセッサ21の数の
推移の一例を示している。
FIG. 8 shows an example of the transition of the number of operating processors 21 when 80 computing devices 1 are connected in a one-dimensional ring and a predetermined number of computing tasks 23 are processed. Shows.

【0057】計算装置1を80個、1次元リング状に接
続し、各計算装置1において、計算タスク23を処理し
ていないプロセッサ21は、16個のコンピュトンを放
出する。そして、計算タスク23が1個増える毎に、放
出するコンピュトン24は、2個ずつ減少するものとす
る。
Eighty computing devices 1 are connected in a one-dimensional ring shape, and in each computing device 1, the processor 21 that is not processing the computing task 23 releases 16 Computon. Then, each time the calculation task 23 increases by one, the number of Computon 24 to be discharged decreases by two.

【0058】いま、計算タスク23の発生する時間間隔
をtとし、コンピュトン24の放出、および計算タスク
23の移動ステップを、0.01tとする。そして、計
算タスク23は、移動し続けた場合、時間0.8tで移
動を停止し、処理時間を150tとする。
Now, let us say that the time interval at which the calculation task 23 occurs is t, and the discharge step of the Computon 24 and the movement step of the calculation task 23 are 0.01t. Then, if the calculation task 23 continues to move, the calculation task 23 stops the movement at a time of 0.8t and sets the processing time to 150t.

【0059】このような条件で、計算タスク23を10
00個、所定の計算装置1に発生させると、そのときの
計算装置1の稼働状況は、図8に曲線aで示すようにな
り、時間400t以降において、80台のうちの約56
台が稼働している。従って、稼働率は70%(=56/
80×100%)となる。稼働している計算装置1の台
数は、このような処理を100回実行したときの、各実
行時の稼働台数の平均値としている。
Under these conditions, the calculation task 23 is executed by 10
When 00 pieces are generated in a predetermined computing device 1, the operation status of the computing device 1 at that time is as shown by a curve a in FIG. 8, and after time 400t, about 56 out of 80 units are operated.
The platform is operating. Therefore, the operating rate is 70% (= 56 /
80 × 100%). The number of operating computing devices 1 is the average value of the operating numbers at each execution when such processing is executed 100 times.

【0060】なお、同様な条件で、コンピュトン24を
使用せずに、隣接するプロセッサ21の負荷だけを考慮
して、計算タスク23の移動を行う場合、図8に曲線b
で示すように、80台のうちの約44台の計算装置が稼
働する。従って、稼働率は、55%(=44/80×1
00%)となる。
Under the same conditions, when the calculation task 23 is moved in consideration of only the load of the adjacent processor 21 without using the Computon 24, the curve b in FIG.
As shown in, about 44 of 80 computing devices are in operation. Therefore, the operating rate is 55% (= 44/80 x 1
00%).

【0061】以上のように、各計算装置1の計算余力を
コンピュトン24で表現し、そのコンピュトン24を各
接続方向に所定の割合で伝播させていくことで、全体の
負荷状況に応じた計算タスク23の転送を行い、計算負
荷の分散を行う。
As described above, the computational capacity of each computing device 1 is represented by the Computon 24, and the Computon 24 is propagated in a predetermined ratio in each connection direction, so that the overall load condition can be met. The calculation task 23 is transferred to distribute the calculation load.

【0062】なお、本実施例においては、計算装置1
は、1次元状に接続されているが、2次元以上の高次な
形態で接続することも可能である。
In this embodiment, the computer 1
Are connected in a one-dimensional form, but they can be connected in a two-dimensional or higher-order form.

【0063】上記実施例においては、同一の計算能力を
有する計算装置1を互いに接続しているが、異なる計算
能力を有する計算装置を接続してもよい。
In the above embodiment, the computing devices 1 having the same computing capacity are connected to each other, but the computing devices having different computing capabilities may be connected.

【0064】[0064]

【発明の効果】以上のように、本発明の計算装置および
方法によれば、計算タスク、および隣接して接続された
他の計算装置からの計算余力のデータを受信し、受信し
た各計算余力のデータと自己の計算余力のデータとを比
較して自己の計算余力が全ての他の計算装置のそれぞれ
の計算余力以上である場合は、計算タスクを処理し、自
己の計算余力のデータと、受信した計算余力のデータよ
り計算される新たな計算余力のデータを所定の割合で、
隣接して接続された他の計算装置に送信し、受信した各
計算余力のデータと自己の計算余力のデータとを比較し
て自己の計算余力が他の計算装置のいずれかの計算余力
より小さい場合は、他の計算機のうち、より大きい計算
余力のデータを送信してきた他の計算装置に計算タスク
を送信するようにしたので、新たに発生した計算タスク
は、負荷の量が少ない方向に転送されていき、負荷の量
が少ないプロセッサによって処理され、最適な負荷分散
を行うことができる。
As described above, according to the computing device and method of the present invention, each of the received computing power is received by receiving the data of the computing power from the computing task and the other computing device connected adjacently. If the self-computation capacity is equal to or greater than the respective calculation capacity of all the other computing devices by comparing the data of (1) and the self-computation capacity data, the calculation task is processed, and the self-computation capacity data, A new ratio of new calculation power calculated from the received calculation power data
Transmitting to another computing device connected adjacently, comparing the received calculation surplus data with the self computing surplus data, and the self computing surplus is smaller than one of the other computing devices. If, among other computer, since to send computing tasks to other computing devices which transmitted the data of greater computational reserve capacity, new calculation task occurs, the transfer in the direction the amount of load is small As a result, the load is processed by a processor with a small load, and optimum load distribution can be performed.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の計算装置の一実施例を、複数個、接続
した様子を示すブロック図である。
FIG. 1 is a block diagram showing a state in which a plurality of embodiments of a computer according to the present invention are connected.

【図2】本発明の計算装置の一実施例の構成を示すブロ
ック図である。
FIG. 2 is a block diagram showing the configuration of an embodiment of a computer according to the present invention.

【図3】図2のプロセッサの動作を説明するフローチャ
ートである。
3 is a flowchart illustrating an operation of the processor of FIG.

【図4】図2のプロセッサの動作を説明するフローチャ
ートである。
FIG. 4 is a flowchart illustrating an operation of the processor of FIG.

【図5】図2のプロセッサの動作を説明するフローチャ
ートである。
5 is a flowchart illustrating an operation of the processor of FIG.

【図6】図2のサブプロセッサの動作を説明するフロー
チャートである。
FIG. 6 is a flowchart illustrating an operation of the sub processor of FIG.

【図7】図1の計算装置の接続例において、計算タスク
が分散されている様子を示す図である。
FIG. 7 is a diagram showing a state in which calculation tasks are distributed in the connection example of the calculation apparatus in FIG.

【図8】図1の計算装置の接続例における、稼働してい
る計算装置の数の推移を示す図である。
8 is a diagram showing a transition of the number of operating computing devices in the connection example of the computing devices of FIG. 1;

【図9】制御用プロセッサを有する、従来の分散処理シ
ステムの一例を示すブロック図である。
FIG. 9 is a block diagram showing an example of a conventional distributed processing system having a control processor.

【図10】従来の分散処理システムの他の例を示すブロ
ック図である。
FIG. 10 is a block diagram showing another example of a conventional distributed processing system.

【図11】図10の分散処理システムにおいて、局所的
に安定状態になったときの計算タスクの分布を示す図で
ある。
11 is a diagram showing distribution of calculation tasks when a stable state is locally achieved in the distributed processing system of FIG.

【符号の説明】[Explanation of symbols]

1 計算装置 21 プロセッサ 22 サブプロセッサ 23 計算タスク 24 コンピュトン 41 CPU 42 ROM 43 RAM 44 ネットワークインターフェース 45 インターフェース 61 CPU 62 ROM 63 RAM 64 ネットワークインターフェース 65 インターフェース 81 制御用プロセッサ 82 計算用プロセッサ 83 計算タスク 91 プロセッサ 92 計算タスク 1 computing device 21 processors 22 sub-processor 23 Calculation Task 24 Computon 41 CPU 42 ROM 43 RAM 44 network interface 45 interface 61 CPU 62 ROM 63 RAM 64 network interface 65 Interface 81 Control processor 82 Calculation Processor 83 Calculation Task 91 processor 92 Calculation task

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 互いに接続され、複数の計算タスクを分
散させて実行する計算装置において、 前記計算タスク、および隣接して接続された他の計算装
置からの計算余力のデータを受信する受信手段と、 前記受信手段によって受信された前記各計算余力のデー
タと自己の計算余力のデータとを比較して自己の計算余
力が全ての前記他の計算装置のそれぞれの計算余力以上
である場合は、前記計算タスクを処理する処理手段と、 前記受信手段によって受信された前記各計算余力のデー
タと自己の計算余力のデータとを比較して自己の計算余
力が前記他の計算装置のいずれかの計算余力より小さい
場合は、前記他の計算機のうち、より大きい計算余力の
データを送信してきた前記他の計算装置に前記計算タス
クを送信する送信手段とを備え、 前記送信手段は、さらに、自己の計算余力のデータと、
前記受信手段によって受信された前記計算余力のデータ
より計算される新たな計算余力のデータを所定の割合
で、隣接して接続された前記他の計算装置に送信するこ
とを特徴とする計算装置。
1. A computing device, which is connected to each other and executes a plurality of computing tasks in a distributed manner, and a receiving means for receiving the data of the computing power from the computing task and another computing device connected adjacently thereto. When the data of each of the calculation surplus received by the receiving means and the data of the self calculation surplus are compared and the self calculation surplus is equal to or more than the respective calculation surplus of each of the other computing devices, the A processing means for processing a calculation task and comparing the data of each of the calculation surplus received by the receiving means with the data of the calculation surplus of the self to calculate the calculation surplus of one of the calculation surpluses of any of the other calculation devices. If less than, among the other computer, and a transmitting means for transmitting the computing tasks to the other computing device that has transmitted the data of greater computational available capacity, the Shin means further includes a self computational remaining power data,
A new computing capacity data calculated from the computing capacity data received by the receiving means is transmitted at a predetermined ratio to the other computing apparatus connected to the adjacent computing capacity.
【請求項2】 複数の計算タスクを分散させて実行する
計算装置の計算方法において、 前記計算タスク、および隣接して接続された他の計算装
置からの計算余力のデータを受信し、 受信した前記各計算余力のデータと自己の計算余力のデ
ータとを比較して自己の計算余力が全ての前記他の計算
装置のそれぞれの計算余力以上である場合は、前記計算
タスクを処理し、 自己の計算余力のデータと、受信した前記計算余力のデ
ータより計算される新たな計算余力のデータを所定の割
合で、隣接して接続された前記他の計算装置に送信し、 受信した前記各計算余力のデータと自己の計算余力のデ
ータとを比較して自己の計算余力が前記他の計算装置の
いずれかの計算余力より小さい場合は、前記他の計算機
のうち、より大きい計算余力のデータを送信してきた前
記他の計算装置に前記計算タスクを送信することを特徴
とする計算方法。
2. A calculation method of a calculation device that executes a plurality of calculation tasks in a distributed manner, wherein the calculation task and data of a calculation remaining capacity from another calculation device adjacently connected are received and received. Comparing the data of each calculation surplus with the data of the calculation surplus of the self, if the calculation surplus of the self is equal to or more than the respective calculation surplus of each of the other computing devices, the calculation task is processed, and the self calculation Spare data and new calculation surplus data calculated from the received calculation surplus data are transmitted at a predetermined ratio to the other computing device connected adjacently, and the received calculation surplus by comparing the data with the own account remaining data if its own computation margin is smaller than any of the calculated available capacity of the other computing devices, among the other computer, the data of the greater computing margin Calculation method and transmits the calculated task to the other computing device that has been signal.
JP34026295A 1995-12-27 1995-12-27 Computing device and method Expired - Fee Related JP3512080B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34026295A JP3512080B2 (en) 1995-12-27 1995-12-27 Computing device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34026295A JP3512080B2 (en) 1995-12-27 1995-12-27 Computing device and method

Publications (2)

Publication Number Publication Date
JPH09179832A JPH09179832A (en) 1997-07-11
JP3512080B2 true JP3512080B2 (en) 2004-03-29

Family

ID=18335262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34026295A Expired - Fee Related JP3512080B2 (en) 1995-12-27 1995-12-27 Computing device and method

Country Status (1)

Country Link
JP (1) JP3512080B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005116832A1 (en) * 2004-05-31 2005-12-08 International Business Machines Corporation Computer system, method, and program for controlling execution of job in distributed processing environment
JP6504062B2 (en) * 2016-01-18 2019-04-24 トヨタ自動車株式会社 Task execution method and task execution system

Also Published As

Publication number Publication date
JPH09179832A (en) 1997-07-11

Similar Documents

Publication Publication Date Title
US7058957B1 (en) Cluster event notification system
US7444640B2 (en) Controlling processing networks
CN1906586B (en) Method and apparatus for handling processing errors in a multiprocessor system
JPS61253572A (en) Load distributing system for loose coupling multi-processor system
US5317757A (en) System and method for finite state machine processing using action vectors
EP2269136A1 (en) Method, system and computer program for workload scheduling
JP3512080B2 (en) Computing device and method
US20040205767A1 (en) Controlling processing networks
CN119829898A (en) Computing task scheduling method, electronic device, storage medium and product
JP2004171172A (en) Storage controller with processor load control function
JP2010231601A (en) Grid computing system, method and program for controlling resource
CA2413712A1 (en) Node-to-node data transfer method and node-to-node data transfer apparatus
KR102248978B1 (en) Resource Allocation Method and Apparatus for Reducing the Expected Latency in Distributed Machine Learning with Multiple Users
JPS59114665A (en) Parallel computer system
CN118170542B (en) Method, related device and computer program product for configuring task resources
JPS63211060A (en) Load distribution control system for multiprocessor system
US7804943B2 (en) Management for a heterogeneous pool of processors for the assignment of additional load
JP2004038715A (en) Parallel computation processing method
CN119250212A (en) Quantum-classical fusion computing unit and fusion computing power cluster architecture
JPH0281158A (en) Inter-computer program online relocation method
JPS619742A (en) Phenomenon control system
JP3123425B2 (en) Interrupt load balancer
JP2704137B2 (en) Current / spare switching method
AU2023285763A1 (en) Processing method, device and system for quantum cloud computing, and storage medium
JPS61131158A (en) Mode change-over system of function dispersion type computer system

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: 20031218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031231

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

Free format text: PAYMENT UNTIL: 20080116

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090116

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100116

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees