JPH10187568A - Method for macro state determination, check point setting and re-execution - Google Patents

Method for macro state determination, check point setting and re-execution

Info

Publication number
JPH10187568A
JPH10187568A JP9136028A JP13602897A JPH10187568A JP H10187568 A JPH10187568 A JP H10187568A JP 9136028 A JP9136028 A JP 9136028A JP 13602897 A JP13602897 A JP 13602897A JP H10187568 A JPH10187568 A JP H10187568A
Authority
JP
Japan
Prior art keywords
weight
message
return
generation
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9136028A
Other languages
Japanese (ja)
Inventor
Kazuaki Mutsuzawa
一昭 六澤
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP9136028A priority Critical patent/JPH10187568A/en
Publication of JPH10187568A publication Critical patent/JPH10187568A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

PROBLEM TO BE SOLVED: To determine a macro state without transmitting any control message to all network channels and to enable application to a system having passing of message. SOLUTION: Respective processors (PE) (PEA-PEC) mutually exchange ordinary messages. A determination process defines the state of system at a certain time point as the macro state. The determination process 1, PE and ordinary messages are respectively weighted and controlled so as to be fixed values when all the weight is added. Under the weight control, the absence of ordinary message on a network is detected and the macro state is determined.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、非同期メッセージ
通信によってプロセッサ間処理を行なうマルチプロセッ
サシステムにおける、大域状態決定、チェックポイント
設定及び再実行方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a global state determination, checkpoint setting, and re-execution method in a multiprocessor system that performs inter-processor processing by asynchronous message communication.

【0002】[0002]

【従来の技術】はじめに、次のような計算モデルを考え
る。まず、有限個のプロセッサ(以下、PEと略す)が
ネットワークチャネルで接続されているものとする。こ
うしてマルチプロセッサシステムが構成されている。各
PEは非同期メッセージ通信によって互いに通信する。
システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
く。大域状態を決定する特別なプロセス(決定プロセス
と呼ぶ)が存在する。決定プロセスはすべてのPEとメ
ッセージ通信を行なうことができる。ここで、大域状態
とは、「すべてのPEの状態とすべてのネットワークチ
ャネルの状態の集合」である。あるネットワークチャネ
ルの状態とは、「そのネットワークチャネル上のメッセ
ージの集合」である。また、大域状態を決定するとは、
「ある場面における辻褄の合った状態を求める」ことで
ある。「ある瞬間における状態を求める」ことではな
い。システム全体を統括するクロックはないので、各P
Eとネットワークチャネルに共通な時刻は存在しないか
らである。
2. Description of the Related Art First, the following calculation model is considered. First, it is assumed that a finite number of processors (hereinafter abbreviated as PEs) are connected by a network channel. Thus, a multiprocessor system is configured. Each PE communicates with each other by asynchronous message communication.
There is no clock to control the whole system, and each PE and network channel operate individually according to each clock. There is a special process for determining the global state (called the decision process). The decision process can communicate with all PEs. Here, the global state is "a set of states of all PEs and states of all network channels". The state of a certain network channel is “a set of messages on the network channel”. To determine the global state,
"To find a consistent state in a certain situation." It is not to “find the state at a certain moment”. Since there is no clock to control the whole system, each P
This is because there is no time common to E and the network channel.

【0003】この大域状態を図2及び図3を使って更に
詳しく説明する。図2はマルチプロセッサシステムの概
念図を示す。図のように、3つのPEが4つのネットワ
ークチャネルで接続している。PEA とPEC 、及びP
EB とPEC は双方向のチャネルで接続しているが、P
EAとPEB の間にはチャネルが存在しない。ネットワ
ークチャネルは通信回線上で確立された論理的な通信路
である。
This global state will be described in more detail with reference to FIGS. FIG. 2 shows a conceptual diagram of the multiprocessor system. As shown, three PEs are connected by four network channels. PEA and PEC, and P
EB and PEC are connected by a bidirectional channel.
There is no channel between EA and PEB. A network channel is a logical communication path established on a communication line.

【0004】図3は、このようなシステム上でのメッセ
ージ送受信とPEの状態変化の例説明図を示している。
(a)において、PEA はメッセージM0 をPEC へ送
信した。送信後のPEA の状態はA0 である。(b)に
おいて、PEC はM0 を受信した結果、自PEの状態が
C0 からC1に変わり、さらにメッセージM1 をPEB
へ送信した。一方、PEA は自PE内の処理の結果、状
態がA0 からA1 に変化した。(c)において、PEB
はM1 を受信した結果、自PEの状態がB0 からB1に
変わった。(a)の状態を観測した後に大域状態を求め
る処理を開始した場合、例えば以下の5つのいずれが求
まってもよい。
FIG. 3 shows an example of message transmission / reception and PE state change on such a system.
In (a), PEA sends message M0 to PEC. After transmission, the state of PEA is A0. In (b), as a result of receiving M0, the PEC changes its own PE state from C0 to C1, and furthermore, the message M1 is changed to PEB.
Sent to On the other hand, the state of PEA changed from A0 to A1 as a result of processing in the own PE. In (c), PEB
As a result of receiving M1, the state of its own PE has changed from B0 to B1. When the process of obtaining the global state is started after observing the state of (a), for example, any of the following five may be obtained.

【0005】(1){PEA :A0 ,PEB :B0 ,P
EC :C0 ,CHAC:M0 } (2){PEA :A0 ,PEB :B0 ,PEC :C1 ,
CHCB:M1 } (3){PEA :A1 ,PEB :B0 ,PEC :C1 ,
CHCB:M1 } (4){PEA :A0 ,PEB :B1 ,PEC :C1 } (5){PEA :A1 ,PEB :B1 ,PEC :C1 }
(1) @PEA: A0, PEB: B0, P
EC: C0, CHAC: M0 (2) {PEA: A0, PEB: B0, PEC: C1,
CHCB: M1 (3) {PEA: A1, PEB: B0, PEC: C1,
(4) {PEA: A0, PEB: B1, PEC: C1} (5) {PEA: A1, PEB: B1, PEC: C1}

【0006】PEA :,PEB :,PEC :は、それぞ
れPEA の状態、PEB の状態、PEC の状態を示す。
CHAC:は、「PEA がPEC へ送信したがPEC には
まだ到着していないメッセージ」を意味する。これが
「PEA からPEC へのネットワークチャネルの状態」
である。同様に、CHCB:は、PEC からPEB へのネ
ットワークチャネルの状態である。(1)は(a)に、
(3)は(b)に、(5)は(c)に対応する。
(2),(4)は、(3),(5)と比べてPEA の状
態のみが異なる。(2),(4)のPEA は状態変化前
を、(3),(5)のPEA は状態変化後を示してい
る。PEA のA0 からA1 への状態変化は他から独立し
ているため、(2)も(4)も正しい状態である。
[0006] PEA :, PEB :, PEC: indicate the state of PEA, the state of PEB, and the state of PEC, respectively.
CHAC: means "message sent by PEA to PEC but not yet arrived at PEC". This is the state of the network channel from PEA to PEC
It is. Similarly, CHCB: is the state of the network channel from PEC to PEB. (1) in (a),
(3) corresponds to (b), and (5) corresponds to (c).
(2) and (4) differ from (3) and (5) only in the state of PEA. The PEAs in (2) and (4) indicate before the state change, and the PEAs in (3) and (5) indicate after the state change. Since the state change of PEA from A0 to A1 is independent of the others, both (2) and (4) are correct.

【0007】一方、以下の 2つは正しくない。 (6){PEA :A0 ,PEB :B0 ,PEC :C1 ,
CHAC:M0 ,CHCB:M1 } (7){PEA :A0 ,PEB :B0 ,PEC :C0 } (6)は、CHACはメッセージM0 がまだネットワーク
チャネル上に存在する状態を示しているのに、PEC ,
CHCBはM0 が受信された後の状態を示してしまってい
る。(7)は、(6)とは逆の点で正しくない。PEB
はM0 を受信する前の状態を示しているのに、CHACに
M0 が存在しない。
On the other hand, the following two are not correct. (6) @PEA: A0, PEB: B0, PEC: C1,
CHAC: M0, CHCB: M1 (7) {PEA: A0, PEB: B0, PEC: C0} (6) The CHAC indicates that the message M0 still exists on the network channel, ,
CHCB indicates the state after M0 has been received. (7) is incorrect in the opposite respect to (6). PEB
Shows the state before receiving M0, but M0 does not exist in the CHAC.

【0008】並列計算機、あるいは「ネットワークで接
続された計算機群」の上にシステムが構築されるのは現
在当たり前のことになってきている。このようなシステ
ムでプログラムを開発する時は、何らかのタイミング
で、PEの状態とネットワーク上のメッセージを調べる
(即ち、大域状態を決定する)ことが必要になる。これ
は、単一PE上のシステムでプログラム開発を行なう時
に、開発中のプログラムの実行を中断し、レジスタやメ
モリの内容を調べることに対応する。このように、大域
状態の決定は、並列計算機やネットワークで接続された
計算機群の上のシステムにとって必要不可欠な機能であ
る。
[0008] It is now commonplace to build a system on parallel computers or "computers connected by a network". When a program is developed in such a system, it is necessary to examine the state of the PE and the message on the network at some timing (that is, determine the global state). This corresponds to suspending the execution of the program under development and examining the contents of registers and memories when developing a program in a system on a single PE. Thus, the determination of the global state is an indispensable function for a system on a group of computers connected by a parallel computer or a network.

【0009】なお、以下の従来技術の説明において、通
常メッセージと制御メッセージを次の意味で用いる。 通常メッセージ:通常処理を行なうためのメッセージ,
PE群が互いに送受信する。 制御メッセージ:大域状態を求めるためのメッセージ,
決定プロセスとPE群が互いに送受信する。
[0009] In the following description of the prior art, a normal message and a control message are used in the following meaning. Normal message: Message for normal processing,
PEs transmit and receive from each other. Control message: message for determining the global state,
The decision process and the PEs communicate with each other.

【0010】すべてのネットワークチャネルに「通常メ
ッセージをネットワークチャネルから追い出す」働きを
する制御メッセージを送信することによって大域状態を
決定する方法が以下の文献に書かれている。Chandy, K.
M. and Lamport, L., “Distributed Snapshots: Deter
mining Global States of Distributed Systems,”ACM
Transactions on Computer Systems, Vol.3, No.1, pp.
63-75,1985.
The following document describes a method for determining the global state by sending a control message that acts to "remove normal messages from a network channel" to all network channels. Chandy, K.
M. and Lamport, L., “Distributed Snapshots: Deter
mining Global States of Distributed Systems, ”ACM
Transactions on Computer Systems, Vol.3, No.1, pp.
63-75, 1985.

【0011】[0011]

【発明が解決しようとする課題】ところで、上記のよう
な従来の大域状態決定方法には次のような解決すべき課
題があった。上記の例では、ネットワークチャネルから
通常メッセージを追い出すために、すべてのネットワー
クチャネルに制御メッセージを送信する。従って、決定
プロセスとPEの間のみならず、PE間のネットワーク
チャネルの数に比例した数の多くの制御メッセージの送
信が必要である。しかも、送信された順序でメッセージ
が受信されることを前提としているので、メッセージの
追い越しのあるシステムには適用できない。制御メッセ
ージが通常メッセージを追い越す可能性があると、ある
制御メッセージを受信しても、その制御メッセージより
前に送信された全ての通常メッセージをすべて受信した
とは言えない。
However, the above-mentioned conventional global state determination method has the following problems to be solved. In the above example, control messages are sent to all network channels in order to expel normal messages from the network channels. Therefore, it is necessary to transmit a number of control messages in proportion to the number of network channels not only between the decision process and the PEs, but also between the PEs. In addition, since it is assumed that messages are received in the order in which they are transmitted, the system cannot be applied to a system in which messages are overtaken. If there is a possibility that the control message will overtake the normal message, even if a certain control message is received, it cannot be said that all the normal messages transmitted before the control message have been received.

【0012】[0012]

【課題を解決するための手段】本発明は以上の点を解決
するため次の構成を採用する。 〈構成1〉非同期メッセージ通信によってプロセッサ間
処理を行うマルチプロセッサシステムにおいて、有限個
のプロセッサがネットワークチャネルを介して接続さ
れ、システム全体を統括するクロックは存在せず、各プ
ロセッサとネットワークチャネルとはそれぞれ独自のク
ロックにより制御されて動作する。システムの大域状態
を決定する処理を行う決定プロセスが存在し、各プロセ
ッサが他のプロセッサに対して送信する通常メッセージ
の持つ重みと前記プロセッサの重みとの総和を相殺する
重みをこの決定プロセスが持ち、これら全ての重みを加
算したとき一定値となるようにシステムが制御される。
大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、決定プロセスは求めた大域状態を格納するための大
域状態用バッファを持つ。各プロセッサは、どの制御メ
ッセージに対応する状態にあるかを示すメッセージスイ
ッチと、自己の状態を保存する状態バッファと、受信し
た通常メッセージを格納する受信バッファと、送信を保
留中の通常メッセージを格納する送信バッファとを持
ち、メッセージスイッチはバッファになにも格納してい
ないことを示すノットレコーデット( notRecorded)に
初期設定される。決定プロセスは、大域状態用バッファ
をクリアし、通常メッセージの送信を保留するよう指示
するレコード(record)制御メッセージを全てのプロセ
ッサへ所定の重みを付けて送信し、その重みの分だけ自
己の重みを減らす。プロセッサは、レコード(record)
制御メッセージを受信すると、自己の状態を状態バッフ
ァに格納し、自己の重みとレコード(record)制御メッ
セージについていた重みの合計とをリターン(return)
制御メッセージに付けて決定プロセスへ送り、メッセー
ジスイッチを通常メッセージの送信を保留する状態を示
すレコーデッド(recorded)に設定し、受信バッファと
送信バッファとをクリアする。その後、メッセージスイ
ッチがレコーデッド(recorded)となったプロセッサ
は、通常メッセージを受信するとその通常メッセージの
コピーを受信バッファに格納するとともに、そのつど、
その通常メッセージに付いていた重みをリターン(retu
rn)制御メッセージに付けて決定プロセスに送信し、送
信する通常メッセージは送信を保留して送信バッファに
格納する。決定プロセスは、プロセッサからリターン
(return)制御メッセージを受信すると、これに付いて
いた重みを自分の重みに加えて、その結果が上記全ての
重みを加算したときの一定値となった場合には、格納デ
ータ要求のためのリクエスト( request)制御メッセー
ジを全てのプロセッサに送る。各プロセッサは、リクエ
スト( request)制御メッセージを受信すると、自己の
状態バッファの内容と受信バッファの内容とを、アンサ
ー(answer)制御メッセージで決定プロセスへ送り、メ
ッセージスイッチを格納データ送信完了を示すレディ
( ready)に設定する。決定プロセスは、アンサー(an
swer)制御メッセージを受信すると、そのアンサー(an
swer)制御メッセージが運んだ状態バッファの内容と受
信バッファの内容とを大域状態用バッファに格納し、全
てのプロセッサからアンサー(answer)制御メッセージ
を受信したら、動作の再開を指示するリスタート( res
tart)制御メッセージに重みを付けて全てのプロセッサ
へ送り、その重み分だけ自己の重みを減らす。各プロセ
ッサは、リスタート( restart)制御メッセージを受信
すると、そのリスタート( restart)制御メッセージに
付いていた重みを自己の重みに加え、送信バッファに通
常メッセージが格納されているならばそれらを送信し、
メッセージスイッチがレディ( ready)ならば、メッセ
ージスイッチをノットレコーデット( notRecorded)に
設定し、動作を再開したことを示すスターテッド( sta
rted)制御メッセージを決定プロセスに送信する。決定
プロセスは、全てのプロセッサからスターテッド( sta
rted)制御メッセージを受信したら処理を完了して、大
域状態用バッファの内容を決定することを特徴とする。
The present invention employs the following structure to solve the above problems. <Structure 1> In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. It operates under the control of its own clock. There is a determination process for performing a process of determining the global state of the system, and this determination process has a weight for canceling the sum of the weight of the normal message transmitted from each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value.
A message transmitted and received between the decision process and each processor to determine the global state is called a control message, and the decision process has a global state buffer for storing the determined global state. Each processor stores a message switch that indicates which control message corresponds to the corresponding state, a state buffer that stores its own state, a receive buffer that stores received normal messages, and stores a normal message that is pending transmission. The message switch is initialized to notRecorded, indicating that nothing is stored in the buffer. The decision process clears the global state buffer, transmits a record control message instructing to suspend the transmission of the normal message to all processors with a predetermined weight, and transmits its own weight by the weight. Reduce. Processor is a record
When a control message is received, its status is stored in a status buffer, and its own weight and the sum of the weights attached to the record control message are returned.
The control message is sent to the decision process, the message switch is set to "recorded" indicating that the transmission of the normal message is suspended, and the reception buffer and the transmission buffer are cleared. After that, when the message switch is recorded, the processor, upon receiving the normal message, stores a copy of the normal message in a reception buffer, and each time,
Return the weight attached to the normal message (retu
rn) The control message is transmitted to the decision process, and the normal message to be transmitted is suspended from transmission and stored in the transmission buffer. Upon receiving a return control message from the processor, the decision process adds the weight attached to the return control message to its own weight, and when the result becomes a constant value obtained by adding all the above weights, , Send a request control message for a stored data request to all processors. When each processor receives the request control message, it sends the contents of its own status buffer and the contents of the reception buffer to the decision process in the form of an answer control message, and sends a message switch indicating that the stored data transmission has been completed. (Ready). The decision process is based on the answer (an
swer) When receiving the control message, the answer (an
swer) The contents of the status buffer carried by the control message and the contents of the reception buffer are stored in the global state buffer, and when an answer (answer) control message is received from all processors, a restart (res
tart) The control message is weighted and sent to all processors, and its weight is reduced by the weight. When each processor receives a restart control message, it adds the weight attached to the restart control message to its own weight, and sends the normal message if it is stored in the transmission buffer. And
If the message switch is ready, the message switch is set to notRecorded and the operation is resumed (started).
rted) send a control message to the decision process. The decision process is started from all processors (sta
rted) When the control message is received, the process is completed and the contents of the global state buffer are determined.

【0013】〈説明〉非同期メッセージ通信とは、各プ
ロセッサが相互に同期をとることなくメッセージの送受
信を行う通信方法をいい、プロセッサの数は任意であ
る。ネットワークチャネルは、プロセッサ間に設けられ
た回線上の論理的な通信路をいう。大域状態とは、任意
の時点におけるシステムのつじつまのあった状態をい
う。通常メッセージは、プロセッサ相互間で送受信され
るメッセージである。決定プロセスと、プロセッサと、
各プロセッサが送信する通常メッセージには、それぞれ
数値による重みが付けられる。通常メッセージを送信し
たプロセッサは自己の重みを減らし、その通常メッセー
ジを受信したプロセッサは自己の重みを増やす。決定プ
ロセスの分も含めてこれら全ての重みを加算すると常に
一定値になる。このような重みを付けたのは、決定プロ
セスが各プロセッサからその重みを受信したとき一定値
となれば、メッセージの追い越しの有無に関わらずネッ
トワークチャネル上にメッセージが存在しなくなったと
確認できるからである。
<Description> Asynchronous message communication refers to a communication method in which each processor transmits and receives messages without synchronizing with each other, and the number of processors is arbitrary. The network channel is a logical communication path on a line provided between processors. The global state refers to the consistent state of the system at any time. Normal messages are messages transmitted and received between processors. A decision process, a processor,
Each normal message transmitted by each processor is assigned a numerical weight. The processor that has transmitted the normal message decreases its own weight, and the processor that has received the normal message increases its own weight. The sum of all these weights, including that of the decision process, will always be constant. This weighting is used because if the decision process receives a constant value from each processor when the weight becomes constant, it can be confirmed that the message is no longer present on the network channel regardless of whether the message has passed or not. is there.

【0014】相殺するというのは、プロセッサと各プロ
セッサが送信する通常メッセージの持つ重みの総和が、
決定プロセスの重みと符号が反対で絶対値が等しい場合
と、決定プロセスの重みとの和がゼロ以外の一定値にな
る場合とを含む。大域状態用バッファには、各プロセッ
サの状態と送受信されるメッセージの状態とが集められ
て格納される。メッセージスイッチは、平常はノットレ
コーデット( notRecorded)であって、大域状態の決定
過程で、レコーデッド(recorded)、レディ( ready)
と変化し、最後に再びノットレコーデット( notRecord
ed)に戻る。
The cancellation means that the sum of the weights of the processor and the normal message transmitted by each processor is
This includes the case where the sign of the weight of the decision process is opposite to the sign and the absolute value is equal, and the case where the sum with the weight of the decision process becomes a constant value other than zero. The global state buffer collects and stores the state of each processor and the state of messages transmitted and received. The message switch is normally not Recorded, and during the process of determining the global state, it is recorded and ready.
And finally changed again not record (notRecord
Return to ed).

【0015】レコード(record)制御メッセージの受信
後は、プロセッサは、通常メッセージを他のプロセッサ
に送信しない。いったん、ネットワークチャネル上に通
常メッセージが存在しない状況を作り出して大域状態を
決定するためである。送信バッファは、この場合に送信
されるべき通常メッセージを保留するために設けられて
いる。また、受信バッファは、決定プロセスから要求を
受けた時、ネットワークチャネルの状態が返信できるよ
うに受信した通常メッセージのコピーを格納しておくた
めのものである。レコード(record)制御メッセージに
重みを付けるのは、全てのレコード(record)制御メッ
セージがそれぞれの宛先プロセッサに到着したことを確
認できるようにするためである。
After receiving a record control message, the processor does not send the normal message to other processors. Once, there is usually no message present on the network channel to determine the global state. The transmission buffer is provided for holding a normal message to be transmitted in this case. The receiving buffer is for storing a copy of the received normal message so that the status of the network channel can be returned when a request is received from the decision process. The weights of the record control messages are provided so that it can be confirmed that all record control messages have arrived at their respective destination processors.

【0016】プロセッサがレコード(record)制御メッ
セージを受信すると、自己の状態を状態バッファに格納
するのは、その時点の自己の状態を大域状態における自
己の状態として後で決定プロセスに通知するためであ
る。従って、その後に受信した通常メッセージにたいす
る内部処理は実行して構わない。ただし、受信した通常
メッセージは全てネットワークチャネルの状態として、
受信バッファに格納しておき、後で決定プロセスに通知
する。送信バッファの内容を決定プロセスに通知しない
のは、求める大域状態の後に発生する事象だからであ
る。プロセッサが受信した通常メッセージの重みを決定
プロセスに通知するのは、相殺によってネットワークチ
ャネル上に通常メッセージが既に存在しないことを確認
できるようにするためである。決定プロセスはプロセッ
サからリターン(return)制御メッセージを受信する
と、これに付いていた重みを自分の重みに加える。加え
た結果が上記全ての重みを加算したときの一定値となっ
た場合にネットワークチャネル上に通常メッセージが存
在しないことの確認ができる。これで、各プロセッサか
ら状態の通知を受ければ矛盾のない大域状態が求められ
る。
When the processor receives the record control message, it stores its state in the state buffer in order to inform the decision process later of its current state as its state in the global state. is there. Therefore, the internal processing for the subsequently received normal message may be executed. However, all the received normal messages are in the state of the network channel,
It is stored in the reception buffer, and later notified to the decision process. The reason for not notifying the decision process of the contents of the transmit buffer is that it occurs after the desired global state. The processor informs the decision process of the weight of the received normal message so that the cancellation can confirm that the normal message is no longer present on the network channel. When the decision process receives a return control message from the processor, it adds the weight attached to it to its own weight. When the added result becomes a constant value when all the weights are added, it can be confirmed that there is no normal message on the network channel. As a result, if a state notification is received from each processor, a consistent global state is obtained.

【0017】リスタート( restart)制御メッセージ
は、各プロセッサに動作再開を示唆するメッセージで、
その制御メッセージの受信後各プロセッサは、通常の動
作を再開する。レコーデッド(recorded)状態からノッ
トレコーデット( notRecorded)状態に移る前にレディ
( ready)状態をおいたのは、自己の状態を決定プロセ
スに報告する前のプロセッサに対して、既に報告を終了
し通常の動作を再開したプロセッサから新たな通常メッ
セージが送信されて、状態に矛盾が生じるのを防止する
ためである。各プロセッサは、リスタート( restart)
制御メッセージをメッセージスイッチがレディ( read
y)の状態で待つ。この状態では、まだ通常メッセージ
は送信を保留して送信バッファに格納している。そこ
で、動作が再開されるとそれらを送信してバッファを空
にして、メッセージスイッチをノットレコーデット( n
otRecorded)に設定する。
The restart control message is a message indicating to each processor that operation is restarted.
After receiving the control message, each processor resumes normal operation. Putting the ready state before transitioning from the recorded state to the notRecorded state is because the processor that has not reported its state to the decision process has already finished reporting to the decision process. This is to prevent a new normal message from being transmitted from the processor that has resumed the operation of the above, thereby causing inconsistency in the state. Each processor is restarted
The message switch is ready (read
Wait in the state of y). In this state, transmission of the normal message is still suspended and stored in the transmission buffer. Therefore, when the operation is resumed, they are sent to empty the buffer, and the message switch is set to not record (n
otRecorded).

【0018】なお、第12パラグラフで「メッセージス
イッチがレディ( ready)ならば」と表現したのは、各
プロセッサが大域状態決定処理の終了をリスタート( r
estart)制御メッセージの受信前に知ることがあり、こ
の場合には、構成6に示すように、リスタート( resta
rt)制御メッセージ受信時に既にメッセージスイッチが
ノットレコーデット( notRecorded)に設定されている
ことがあるからである。
In the twelfth paragraph, the expression "if the message switch is ready" means that each processor restarts the termination of the global state determination processing (r
estart) before receiving the control message, in which case, as shown in Configuration 6, the restart (resta
rt) This is because the message switch may already be set to notRecorded when the control message is received.

【0019】〈構成2〉非同期メッセージ通信によって
プロセッサ間処理を行うマルチプロセッサシステムにお
いて、有限個のプロセッサがネットワークチャネルを介
して接続され、システム全体を統括するクロックは存在
せず、各プロセッサとネットワークチャネルとはそれぞ
れ独自のクロックにより制御されて動作する。システム
の大域状態を決定する処理を行う決定プロセスが存在
し、各プロセッサが他のプロセッサに対して送信する通
常メッセージの持つ重みと前記プロセッサの重みとの総
和を相殺する重みをこの決定プロセスが持ち、これら全
ての重みを加算したとき一定値となるようにシステムが
制御される。大域状態を求めるために決定プロセスと各
プロセッサとが互いに送受信するメッセージを制御メッ
セージと呼び、決定プロセスは求めた大域状態を格納す
るための大域状態用バッファを持つ。各プロセッサは、
どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとを持つ。メッセージスイッチはバ
ッファになにも格納していないことを示すノットレコー
デット( notRecorded)に初期設定され、決定プロセス
は、大域状態用バッファをクリアし、通常メッセージの
送信を保留するよう指示するレコード(record)制御メ
ッセージを全てのプロセッサへ所定の重みを付けて送信
し、その重みの分だけ自己の重みを減らす。プロセッサ
は、レコード(record)制御メッセージを受信すると、
自己の重みとレコード(record)制御メッセージについ
ていた重みの合計と、自己の状態とをリターン(retur
n)制御メッセージで決定プロセスに送信し、メッセー
ジスイッチを、通常メッセージの送信を保留する状態を
示すレコーデッド(recorded)に設定し、送信バッファ
をクリアする。その後、メッセージスイッチがレコーデ
ッド(recorded)となったプロセッサは、通常メッセー
ジを受信すると、その通常メッセージのコピーとこれに
付いていた重みをそのつどリターン(return)制御メッ
セージに付けて決定プロセスに送信し、送信する通常メ
ッセージは送信を保留して送信バッファに格納する。決
定プロセスは、プロセッサからリターン(return)制御
メッセージを受信すると、そのリターン(return)制御
メッセージが運んだ各プロセッサの状態あるいは通常メ
ッセージのコピーを大域状態用バッファに格納し、リタ
ーン(return)制御メッセージに付いていた重みを自分
の重みに加えて、その結果が前記全ての重みを加算した
ときの一定値となった場合には、プロシード( procee
d)制御メッセージを全てのプロセッサに送る。各プロ
セッサは、プロシード( proceed)制御メッセージを受
信すると、プロシーデッド( proceeded)制御メッセー
ジを決定プロセスへ送り、メッセージスイッチをレディ
( ready)に設定する。決定プロセスは、全てのプロセ
ッサからプロシーデッド( proceeded)制御メッセージ
を受信すると、動作の再開を指示するリスタート( res
tart)制御メッセージを重みを付けて全てのプロセッサ
へ送り、その重み分だけ自己の重みを減らす。各プロセ
ッサは、リスタート( restart)制御メッセージを受信
すると、そのリスタート( restart)制御メッセージに
付いていた重みを自己の重みに加え、メッセージスイッ
チがレディ( ready)ならばノットレコーデット( not
Recorded)に設定し、動作を再開したことを示すスター
テッド( started)制御メッセージを決定プロセスに送
信して、送信バッファに通常メッセージが格納されてい
るならばそれらを送信する。決定プロセスは、全てのプ
ロセッサからスターテッド( started)制御メッセージ
を受信したら処理を完了して、大域状態用バッファの内
容を決定する。
<Structure 2> In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. Operate under the control of their own clocks. There is a determination process for performing a process of determining the global state of the system, and this determination process has a weight for canceling the sum of the weight of the normal message transmitted from each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value. A message transmitted and received between the decision process and each processor to determine the global state is called a control message, and the decision process has a global state buffer for storing the determined global state. Each processor:
It has a message switch that indicates which control message it is in, and a transmission buffer that stores normal messages that are pending transmission. The message switch is initially set to notRecorded, indicating that nothing is stored in the buffer, and the decision process clears the global state buffer and records (instructing to suspend normal message transmission). record) A control message is transmitted with a predetermined weight to all processors, and its own weight is reduced by the weight. When the processor receives the record control message,
Return the sum of the weight of the self and the weight attached to the record control message and the state of the self (retur
n) Send to the decision process in a control message, set the message switch to recorded, indicating a state where normal message transmission is suspended, and clear the transmission buffer. Thereafter, when the processor whose message switch has been recorded receives the normal message, the processor sends a copy of the normal message and the weight attached thereto to the return control message each time and sends it to the decision process. The transmission of the normal message to be transmitted is suspended and stored in the transmission buffer. Upon receiving a return control message from the processor, the decision process stores a copy of the state or normal message of each processor carried by the return control message in a global state buffer, and returns the return control message. Is added to its own weight, and if the result becomes a constant value when all the weights are added, the procedure (procee
d) Send control messages to all processors. When each processor receives the proceed control message, it sends a proceed control message to the decision process and sets the message switch to ready. When the decision process receives a proceeded control message from all processors, a restart (res
tart) Control messages are weighted and sent to all processors, and their weight is reduced by the weight. When each processor receives the restart control message, it adds the weight attached to the restart control message to its own weight, and if the message switch is ready, the not record (not).
Recorded), and sends a started control message indicating that the operation has been resumed to the decision process, and if a normal message is stored in the transmission buffer, transmits them. The determination process completes the processing when a started control message is received from all processors, and determines the contents of the global state buffer.

【0020】〈説明〉構成1との相違点は、プロセッサ
の状態がレコード(record)制御メッセージの応答とし
て直ちに決定プロセス側に通知され、その後プロセッサ
が受信した通常メッセージのコピーが、そのつど決定プ
ロセス側に通知される点にある。即ち、レコード(reco
rd)制御メッセージを受信した後は、プロセッサが自発
的に決定プロセスに対して大域状態の通知を行うから、
構成1のように決定プロセス側からの要求に従って通常
メッセージのコピーの集合を送る必要はない。プロセッ
サは決定プロセスに通常メッセージのコピーを受信した
段階で送るので、受信した通信メッセージのコピーを格
納しておく必要はない。プロセッサの状態も、レコード
(record)制御メッセージを決定プロセスから受信した
段階で送ってしまうので、格納しておく必要がない。従
ってプロセッサ側には、送信バッファは設けられている
が、状態バッファと受信バッファは不要となる。プロシ
ード( proceed)制御メッセージは、構成1のリクエス
ト( request)制御メッセージと異なり、各PEに対し
て大域状態決定のためのデータは要求しないが、各PE
をレコーデッド(recorded)状態からレディ( ready)
状態にする目的に使用される点は共通する。
<Explanation> The difference from the configuration 1 is that the status of the processor is immediately notified to the decision process side in response to a record control message, and thereafter, a copy of the normal message received by the processor is sent to the decision process each time. The point is to be notified to the side. That is, the record (reco
rd) After receiving the control message, the processor will voluntarily notify the decision process of the global state,
It is not necessary to send a set of normal message copies according to the request from the decision process side as in the configuration 1. The processor normally sends a copy of the message to the decision process upon receipt, so there is no need to store a copy of the received communication message. The state of the processor does not need to be stored because it is sent when a record control message is received from the decision process. Therefore, although the transmission buffer is provided on the processor side, the status buffer and the reception buffer are not required. Unlike the request control message of Configuration 1, the proceed control message does not request data for global state determination from each PE, but
From the recorded state to ready
The point used for the purpose of making a state is common.

【0021】即ち、決定プロセスが状態を把握しても、
直ちにリスタート( restart)状態メッセージが送信さ
れると、そのメッセージが到着したプロセッサから送信
された新たな通常メッセージが、その事実を未だ知らな
い(recorded)状態のプロセッサに到着すると、その通
常メッセージが決定プロセスに通知されてしまう。決定
プロセスは既に大域状態を決定しているので、その通知
は無視すればよい。しかしながら、その後続いて次の大
域状態を求めようとしたとき、この無視された通常メッ
セージの重み分が、後の決定プロセスによる重みの総和
演算の支障となる。即ち、繰り返し大域状態を求めよう
とした場合に、この( ready)状態を設ける意義があ
る。
That is, even if the decision process grasps the state,
As soon as a restart status message is sent, a new normal message sent from the processor on which the message arrives arrives on a processor whose status is not yet known (recorded). The decision process is notified. Since the decision process has already determined the global state, the notification may be ignored. However, when subsequently trying to find the next global state, the weight of the ignored normal message hinders the calculation of the sum of the weights in the subsequent decision process. That is, it is meaningful to provide this (ready) state when repeatedly trying to obtain the global state.

【0022】〈構成3〉非同期メッセージ通信によって
プロセッサ間処理を行うマルチプロセッサシステムにお
いて、有限個のプロセッサがネットワークチャネルを介
して接続され、システム全体を統括するクロックは存在
せず、各プロセッサとネットワークチャネルとはそれぞ
れ独自のクロックにより制御されて動作する。システム
の大域状態を決定する処理を行う決定プロセスが存在
し、各プロセッサが他のプロセッサに対して送信する通
常メッセージの持つ重みと前記プロセッサの重みとの総
和を相殺する重みをこの決定プロセスが持ち、これら全
ての重みを加算したとき一定値となるようにシステムが
制御される。大域状態を求めるために決定プロセスと各
プロセッサとが互いに送受信するメッセージを制御メッ
セージと呼び、決定プロセスは求めた大域状態を格納す
るための大域状態用バッファを持つ。各プロセッサは、
どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとを持ち、メッセージスイッチはバ
ッファになにも格納していないことを示すノットレコー
デット( notRecorded)に初期設定される。決定プロセ
スは、大域状態用バッファをクリアし、通常メッセージ
の送信を保留するよう指示するレコード(record)制御
メッセージを全てのプロセッサへ所定の重みを付けて送
信し、その重みの分だけ自己の重みを減らす。プロセッ
サは、レコード(record)制御メッセージを受信する
と、自己の重みとレコード(record)制御メッセージに
ついていた重みの合計をリターン(return)制御メッセ
ージに付けて決定プロセスに送信し、メッセージスイッ
チを、通常メッセージの送信を保留する状態を示すレコ
ーデッド(recorded)に設定し、送信バッファをクリア
する。その後、メッセージスイッチがレコーデッド(re
corded)となったプロセッサは、通常メッセージを受信
すると、その通常メッセージに付いていた重みをそのつ
どリターン(return)制御メッセージに付けて決定プロ
セスに送信し、送信する通常メッセージは送信を保留し
て送信バッファに格納する。決定プロセスは、プロセッ
サからリターン(return)制御メッセージを受信する
と、リターン(return)制御メッセージに付いていた重
みを自分の重みに加えて、その結果が前記全ての重みを
加算したときの一定値となった場合には、リクエスト
( request)制御メッセージを全てのプロセッサに送
る。各プロセッサは、リクエスト( request)制御メッ
セージを受信すると、自己の状態と送信バッファの内容
とをアンサー(answer)制御メッセージで決定プロセス
へ送り、メッセージスイッチをレディ( ready)に設定
する。決定プロセスは、アンサー(answer)制御メッセ
ージを受信すると、そのアンサー(answer)制御メッセ
ージが運んだプロセッサの状態と送信バッファの内容と
を大域状態用バッファに格納し、全てのプロセッサから
アンサー(answer)制御メッセージを受信すると、動作
の再開を指示するリスタート( restart)制御メッセー
ジに重みを付けて全てのプロセッサへ送り、その重み分
だけ自己の重みを減らす。各プロセッサは、リスタート
( restart)制御メッセージを受信すると、そのリスタ
ート( restart)制御メッセージに付いていた重みを自
己の重みに加え、メッセージスイッチがレディ( read
y)ならばノットレコーデット( notRecorded)に設定
し、動作を再開したことを示すスターテッド( starte
d)制御メッセージを決定プロセスに送信して、送信バ
ッファに通常メッセージが格納されているならばそれら
を送信する。決定プロセスは、全てのプロセッサからス
ターテッド( started)制御メッセージを受信したら処
理を完了して、大域状態用バッファの内容を決定するこ
とを特徴とする。
<Structure 3> In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. Operate under the control of their own clocks. There is a determination process for performing a process of determining the global state of the system, and this determination process has a weight for canceling the sum of the weight of the normal message transmitted from each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value. A message transmitted and received between the decision process and each processor to determine the global state is called a control message, and the decision process has a global state buffer for storing the determined global state. Each processor:
A message switch for indicating which control message is in a corresponding state, and a transmission buffer for storing a normal message pending transmission, the message switch not indicating that no message is stored in the buffer Initialized to (notRecorded). The decision process clears the global state buffer, transmits a record control message instructing to suspend the transmission of the normal message to all processors with a predetermined weight, and transmits its own weight by the weight. Reduce. When the processor receives the record control message, it sends the sum of its own weight and the weight attached to the record control message to a return control message to the decision process, and sends a message switch to the normal message. Set to "recorded", which indicates a state where transmission is suspended, and clear the transmission buffer. After that, the message switch is
When the processor that has become corded receives the normal message, it sends the weight attached to the normal message to the decision process with the return control message added thereto each time. Store in transmission buffer. The decision process, upon receiving a return control message from the processor, adds the weight attached to the return control message to its own weight, and the result is a constant value obtained by adding all the weights. If so, send a request control message to all processors. When each processor receives the request control message, it sends its state and the contents of the transmission buffer to the decision process in an answer control message, and sets the message switch to ready. Upon receiving an answer (answer) control message, the decision process stores the state of the processor carried by the answer (answer) control message and the contents of the transmission buffer in a global state buffer, and receives an answer (answer) from all processors. When a control message is received, a restart control message for instructing restart of operation is weighted and sent to all processors, and its own weight is reduced by the weight. When each processor receives the restart control message, it adds the weight attached to the restart control message to its own weight, and the message switch reads the ready (read) message.
If it is y), it is set to not Recorded (notRecorded), indicating that operation has been resumed (starte
d) Send control messages to the decision process and send regular messages if they are stored in the send buffer. The determination process is characterized in that when a started control message is received from all processors, the process is completed and the contents of the global state buffer are determined.

【0023】〈説明〉構成3は、リクエスト( reques
t)制御メッセージを受信したときの各プロセッサの状
態を大域状態における各プロセッサの状態とする。ま
た、そのときまで各プロセッサは送信バッファにネット
ワークに送信すべき通常メッセージを保留しておき、一
括して決定プロセスに通知する。従って、それ以前は重
みに関する情報のみが決定プロセスに集められ、通常メ
ッセージがネットワークに存在するかどうかが監視され
る。このため、この構成の場合、頻繁な状態報告等に伴
うトラフィックは減少する。プロセッサが決定プロセス
へ送るリターン(return)制御メッセージの数は変わら
ないが、それぞれのリターン(return)制御メッセージ
は重みしか運ばないので、リターン(return)制御メッ
セージによるデータ通信量は非常に小さい。
<Explanation> In the configuration 3, the request (reques
t) The state of each processor when receiving the control message is the state of each processor in the global state. Until that time, each processor holds a normal message to be transmitted to the network in a transmission buffer and notifies the decision process collectively. Therefore, before that, only information about the weights is gathered in the decision process and it is usually monitored whether the message is present in the network. Therefore, in the case of this configuration, traffic accompanying frequent status reports and the like is reduced. Although the number of return control messages that the processor sends to the decision process does not change, each return control message carries only a weight, so the data traffic due to the return control message is very small.

【0024】〈構成4〉非同期メッセージ通信によって
プロセッサ間処理を行うマルチプロセッサシステムにお
いて、有限個のプロセッサがネットワークチャネルを介
して接続され、システム全体を統括するクロックは存在
せず、各プロセッサとネットワークチャネルとはそれぞ
れ独自のクロックにより制御されて動作する。システム
の大域状態を決定する処理を行う決定プロセスが存在
し、各プロセッサが他のプロセッサに対して送信する通
常メッセージの持つ重みと前記プロセッサの重みとの総
和を相殺する重みをこの決定プロセスが持ち、これら全
ての重みを加算したとき一定値となるようにシステムが
制御される。大域状態を求めるために決定プロセスと各
プロセッサとが互いに送受信するメッセージを制御メッ
セージと呼び、決定プロセスは求めた大域状態を格納す
るための大域状態用バッファとメッセージ受信数を数え
る受信カウンタとを持つ。各プロセッサは、どの制御メ
ッセージに対応する状態にあるかを示すメッセージスイ
ッチと、送信を保留中の通常メッセージを格納する送信
バッファとメッセージ送信数を数える送信カウンタとを
持ち、メッセージスイッチはバッファになにも格納して
いないことを示すノットレコーデット( notRecorded)
に初期設定される。決定プロセスは、大域状態用バッフ
ァと受信カウンタとをクリアし、通常メッセージの送信
を保留するよう指示するレコード(record)制御メッセ
ージを全てのプロセッサへ所定の重みを付けて送信し、
その重みの分だけ自己の重みを減らす。プロセッサは、
レコード(record)制御メッセージを受信すると、自己
の重みとレコード(record)制御メッセージについてい
た重みの合計をリターン(return)制御メッセージに付
けて決定プロセスに送信し、メッセージスイッチを、通
常メッセージの送信を保留する状態を示すレコーデッド
(recorded)に設定し、送信バッファと送信カウンタを
クリアする。その後、メッセージスイッチがレコーデッ
ド(recorded)となったプロセッサは、通常メッセージ
を受信すると、その通常メッセージに付いていた重みを
そのつどリターン(return)制御メッセージで決定プロ
セスに送信し、送信する通常メッセージは送信を保留し
て送信バッファに格納するとともに、その通常メッセー
ジのコピーをレポート(report)制御メッセージで決定
プロセスに送り、送信カウンタをインクリメントする。
決定プロセスは、プロセッサからレポート(report)制
御メッセージを受信すると、そのレポート(report)制
御メッセージが運んだ通常メッセージのコピーを大域状
態用バッファに格納して受信カウンタをインクリメント
し、リターン(return)制御メッセージを受信すると、
そのリターン(return)制御メッセージに付いていた重
みを自分の重みに加えて、その結果が前記全ての重みを
加算したときの一定値となった場合には、リクエスト
( request)制御メッセージを全てのプロセッサに送
る。各プロセッサは、リクエスト( request)制御メッ
セージを受信すると、送信カウンタの内容と自己の状態
をアンサー(answer)制御メッセージで決定プロセスへ
送り、メッセージスイッチをレディ( ready)に設定す
る。決定プロセスは、プロセッサからアンサー(answe
r)制御メッセージを受信すると、そのアンサー(answe
r)制御メッセージが運んだプロセッサの状態を大域状
態用バッファに格納し、そのアンサー(answer)制御メ
ッセージが運んだ送信カウンタの数だけ受信カウンタを
減算し、全てのプロセッサからアンサー(answer)制御
メッセージを受信して、受信カウンタの値がもとのクリ
アされた状態になると、動作の再開を指示するリスター
ト( restart)制御メッセージに重みを付けて全てのプ
ロセッサへ送り、その重み分だけ自己の重みを減らす。
各プロセッサは、リスタート( restart)制御メッセー
ジを受信すると、そのリスタート( restart)制御メッ
セージに付いていた重みを自己の重みに加え、メッセー
ジスイッチがレディ( ready)ならばノットレコーデッ
ト( notRecorded)に設定し、動作を再開したことを示
すスターテッド( started)制御メッセージを決定プロ
セスに送信して、送信バッファに通常メッセージが格納
されているならばそれらを送信する。決定プロセスは、
全てのプロセッサからスターテッド( started)制御メ
ッセージを受信したら処理を完了して、大域状態用バッ
ファの内容を決定することを特徴とする。
<Structure 4> In a multiprocessor system in which interprocessor processing is performed by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. Operate under the control of their own clocks. There is a determination process for performing a process of determining the global state of the system, and this determination process has a weight for canceling the sum of the weight of the normal message transmitted from each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value. A message transmitted and received between the decision process and each processor to determine the global state is called a control message, and the decision process has a global state buffer for storing the determined global state and a reception counter for counting the number of received messages. . Each processor has a message switch for indicating which control message corresponds to the state, a transmission buffer for storing a normal message pending transmission, and a transmission counter for counting the number of message transmissions. Not Recorded (notRecorded)
Initially set to The decision process clears the global state buffer and the reception counter, sends a record control message indicating that the transmission of the normal message is suspended to all processors with a predetermined weight,
The self weight is reduced by the weight. The processor is
When a record control message is received, the sum of its own weight and the weight attached to the record control message is added to a return control message and sent to a decision process, and the message switch sends a normal message. Set to "recorded" to indicate the status to hold, and clear the transmission buffer and transmission counter. Thereafter, when the processor whose message switch has been recorded receives the normal message, the processor sends the weight attached to the normal message to the decision process in a return control message each time, and transmits the normal message. The transmission is suspended and stored in the transmission buffer, and a copy of the normal message is sent to the decision process in a report control message, and the transmission counter is incremented.
Upon receiving a report control message from the processor, the decision process stores a copy of the normal message carried by the report control message in a global state buffer, increments a reception counter, and returns control. When you receive a message,
If the weight added to the return control message is added to its own weight, and the result becomes a constant value when all the weights are added, the request control message is changed to all the weights. Send to processor. When each processor receives the request control message, it sends the contents of the transmission counter and its state to the decision process in an answer control message, and sets the message switch to ready. The decision process is based on the answer from the processor (answe
r) When a control message is received, the answer (answe)
r) The state of the processor carried by the control message is stored in the global state buffer, the reception counter is reduced by the number of transmission counters carried by the answer control message, and the answer control message is sent from all processors. Is received, and when the value of the reception counter is cleared, the restart control message instructing the restart of operation is weighted and sent to all processors, and the weight of the self-restart control message is transmitted to all processors. Reduce weight.
When each processor receives the restart control message, the weight added to the restart control message is added to its own weight. And sends a started control message indicating that the operation has been resumed to the decision process and, if normal messages are stored in the transmission buffer, transmits them. The decision process is
The process is completed when a started control message is received from all processors, and the contents of the global state buffer are determined.

【0025】〈説明〉各プロセッサが送信バッファを持
つのは、ネットワークチャネル上への通常メッセージの
送信を保留するためである。これまでの構成と同様に、
決定プロセスと、プロセッサと、通常メッセージに重み
付けを行うのは決定プロセス側でネットワークチャネル
上の通常メッセージがなくなったことを確認できるよう
にするためである。
<Explanation> Each processor has a transmission buffer in order to suspend transmission of a normal message on a network channel. Like the previous configuration,
The decision process, the processor, and the weighting of the normal message are performed so that the decision process side can confirm that the normal message on the network channel has disappeared.

【0026】送信バッファの内容を決定プロセスに送る
のは、これをネットワークチャネルの状態とするからで
ある。構成4では、送信バッファの内容を決定プロセス
からの要求を待つことなく自発的に決定プロセスに送信
する。決定プロセス側に受信カウンタを設け、プロセッ
サ側に送信カウンタを設けたのは、プロセッサから決定
プロセスに送信をしたレポート(report)制御メッセー
ジが決定プロセスに全て到着したことを確認するためで
ある。これは、アンサー(answer)制御メッセージがレ
ポート(report)制御メッセージを追い越すと、矛盾し
た大域状態が決定されてしまうからである。
The reason for sending the contents of the transmission buffer to the decision process is to make it the state of the network channel. In the configuration 4, the contents of the transmission buffer are spontaneously transmitted to the decision process without waiting for a request from the decision process. The reason why the reception counter is provided on the decision process side and the transmission counter is provided on the processor side is to confirm that all report control messages transmitted from the processor to the decision process have arrived at the decision process. This is because if the answer control message overtakes the report control message, an inconsistent global state will be determined.

【0027】重みを加えた結果がゼロになると、ネット
ワークチャネル上に通常メッセージが存在しなくなった
ことを認識する。プロセッサはリクエスト( request)
制御メッセージを受信したとき、自己の状態を決定プロ
セスに報告する。即ち、このリクエスト( request)制
御メッセージを受信した時点のプロセッサの状態が大域
状態におけるプロセッサの状態となり、その時点までに
送信した通常メッセージの集合がネットワークチャネル
の状態となる。リスタート( restart)制御メッセージ
は構成1〜3と同様に、各プロセッサに動作再開を示唆
する働きをする。
When the weighted result becomes zero, it is recognized that there is no longer a normal message on the network channel. The processor requests
When receiving the control message, it reports its status to the decision process. That is, the state of the processor at the time of receiving the request control message becomes the state of the processor in the global state, and the set of normal messages transmitted up to that point becomes the state of the network channel. The restart control message, similar to configurations 1 to 3, serves to indicate to each processor that the operation should be restarted.

【0028】〈構成5〉非同期メッセージ通信によって
プロセッサ間処理を行うマルチプロセッサシステムにお
いて、有限個のプロセッサがネットワークチャネルを介
して接続され、システム全体を統括するクロックは存在
せず、各プロセッサとネットワークチャネルとはそれぞ
れ独自のクロックにより制御されて動作する。システム
の大域状態を決定する処理を行う決定プロセスが存在
し、各プロセッサが他のプロセッサに対して送信する通
常メッセージの持つ重みと前記プロセッサの重みとの総
和を相殺する重みをこの決定プロセスが持ち、これら全
ての重みを加算したとき一定値となるようにシステムが
制御される。大域状態を求めるために決定プロセスと各
プロセッサとが互いに送受信するメッセージを制御メッ
セージと呼び、決定プロセスは求めた大域状態を格納す
るための大域状態用バッファを持つ。各プロセッサは、
どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとを持ち、メッセージスイッチはバ
ッファになにも格納していないことを示すノットレコー
デット( notRecorded)に初期設定される。決定プロセ
スは、大域状態用バッファをクリアし、通常メッセージ
の送信を保留するよう指示するレコード(record)制御
メッセージを全てのプロセッサへ所定の重みを付けて送
信し、その重みの分だけ自己の重みを減らす。プロセッ
サは、レコード(record)制御メッセージを受信する
と、自己の重みとレコード(record)制御メッセージに
ついていた重みの合計をリターン(return)制御メッセ
ージに付けて決定プロセスに送信し、メッセージスイッ
チを、通常メッセージの送信を保留する状態を示すレコ
ーデッド(recorded)に設定し、送信バッファをクリア
する。その後、メッセージスイッチがレコーデッド(re
corded)となったプロセッサは、通常メッセージを受信
すると、その通常メッセージに付いていた重みをそのつ
どリターン(return)制御メッセージに付けて決定プロ
セスに送信し、送信する通常メッセージは送信を保留し
て送信バッファに格納するとともに、その通常メッセー
ジのコピーをレポート(report)制御メッセージで決定
プロセスに送る。決定プロセスは、プロセッサからレポ
ート(report)制御メッセージを受信すると、そのレポ
ート(report)制御メッセージが運んだ通常メッセージ
のコピーを大域状態用バッファに格納し、リターン(re
turn)制御メッセージを受信すると、そのリターン(re
turn)制御メッセージに付いていた重みを自分の重みに
加えて、その結果が前記全ての重みを加算したときの一
定値となった場合には、リクエスト( request)制御メ
ッセージを全てのプロセッサに送る。各プロセッサは、
リクエスト( request)制御メッセージを受信すると、
自己の状態をアンサー(answer)制御メッセージととも
に決定プロセスへ送り、メッセージスイッチをレディ
( ready)に設定する。決定プロセスは、プロセッサか
らアンサー(answer)制御メッセージを受信すると、そ
のアンサー(answer)制御メッセージとともに受信した
プロセッサの状態を大域状態用バッファに格納し、全て
のプロセッサからアンサー(answer)制御メッセージを
受信すると、動作の再開を指示するリスタート( resta
rt)制御メッセージに重みを付けて全てのプロセッサへ
送り、その重み分だけ自己の重みを減らす。各プロセッ
サは、リスタート( restart)制御メッセージを受信す
ると、そのリスタート( restart)制御メッセージに付
いていた重みを自己の重みに加え、メッセージスイッチ
がレディ( ready)ならばノットレコーデット( notRe
corded)に設定し、動作を再開したことを示すスターテ
ッド( started)制御メッセージを決定プロセスに送信
して、送信バッファに通常メッセージが格納されている
ならばそれらを送信する。決定プロセスは、全てのプロ
セッサからスターテッド( started)制御メッセージを
受信したら処理を完了して、大域状態用バッファの内容
を決定することを特徴とする。
<Structure 5> In a multiprocessor system in which interprocessor processing is performed by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. Operate under the control of their own clocks. There is a determination process for performing a process of determining the global state of the system, and this determination process has a weight for canceling the sum of the weight of the normal message transmitted from each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value. A message transmitted and received between the decision process and each processor to determine the global state is called a control message, and the decision process has a global state buffer for storing the determined global state. Each processor:
A message switch for indicating which control message is in a corresponding state, and a transmission buffer for storing a normal message pending transmission, the message switch not indicating that no message is stored in the buffer Initialized to (notRecorded). The decision process clears the global state buffer, transmits a record control message instructing to suspend the transmission of the normal message to all processors with a predetermined weight, and transmits its own weight by the weight. Reduce. When the processor receives the record control message, it sends the sum of its own weight and the weight attached to the record control message to a return control message to the decision process, and sends a message switch to the normal message. Set to "recorded", which indicates a state where transmission is suspended, and clear the transmission buffer. After that, the message switch is
When the processor that has become corded receives the normal message, it sends the weight attached to the normal message to the decision process with the return control message added thereto each time. Store it in the transmit buffer and send a copy of the normal message to the decision process in a report control message. Upon receiving a report control message from the processor, the decision process stores a copy of the normal message carried by the report control message in a global state buffer and returns (re)
turn) control message, the return (re
turn) The weight attached to the control message is added to its own weight, and when the result becomes a constant value when all the weights are added, a request control message is sent to all processors. . Each processor:
Upon receiving a request control message,
Sends its state to the decision process with an answer control message and sets the message switch to ready. When the decision process receives an answer (answer) control message from a processor, it stores the received processor state in the global state buffer together with the answer (answer) control message, and receives an answer (answer) control message from all processors. Then, restart (resta
rt) The control message is weighted and sent to all processors, and its weight is reduced by the weight. When each processor receives the restart control message, it adds the weight attached to the restart control message to its own weight.
set to corded) and send a started control message to the decision process to indicate that it has resumed operation, and send them if the transmit buffer contains normal messages. The determination process is characterized in that when a started control message is received from all processors, the process is completed and the contents of the global state buffer are determined.

【0029】〈説明〉この構成は、構成4のものでアン
サー(answer)制御メッセージがレポート(report)制
御メッセージを追い越さないことが保証されている場合
に採用される。受信カウンタと送信カウンタが不要にな
るため構成が簡素化される。
<Explanation> This configuration is adopted in the case of the configuration 4 where it is guaranteed that the answer control message does not overtake the report control message. Since the reception counter and the transmission counter become unnecessary, the configuration is simplified.

【0030】〈構成6〉構成1,2,3,4または5に
おいて、メッセージスイッチがレディ( ready)である
プロセッサが、他のプロセッサから通常メッセージを受
信したときは、自己のメッセージスイッチをノットレコ
ーデット( notRecorded)にして、通常動作を再開する
ことを特徴とする。
<Structure 6> In the structure 1, 2, 3, 4 or 5, when a processor whose message switch is ready receives a normal message from another processor, the processor switches its own message switch to a notre. It is characterized in that it is codeted (notRecorded) and normal operation is resumed.

【0031】〈説明〉各プロセッサは、決定プロセスが
リスタート( restart)制御メッセージを送信したこと
を何らかの手段で検出したならば、たとえリスタート
( restart)制御メッセージを受信しなくても、通常動
作を再開してよい。各プロセッサは、決定プロセスから
リスタート( restart)制御メッセージを受信すると通
常メッセージの送信を再開する。従って、他のプロセッ
サから通常メッセージが届いたのはいずれかのプロセッ
サが決定プロセスからリスタート(restart)制御メッ
セージを受信し通常動作を再開している証拠である。そ
こで、決定プロセスからのリスタート( restart)制御
メッセージの到着を待たずに動作を再開するようにし
た。このように、間接的に大域状態決定処理が終了した
ことを知ることもできる。
<Explanation> If each processor detects that the decision process has transmitted a restart control message by any means, the respective processors operate normally even if they do not receive the restart control message. May be resumed. Each processor resumes normal message transmission upon receiving a restart control message from the decision process. Thus, the arrival of the normal message from the other processor is evidence that one of the processors has received a restart control message from the decision process and has resumed normal operation. Therefore, the operation is restarted without waiting for the arrival of a restart control message from the decision process. In this way, it is possible to indirectly know that the global state determination processing has been completed.

【0032】〈構成7〉非同期メッセージ通信によって
プロセッサ間処理を行うマルチプロセッサシステムにお
いて、有限個のプロセッサがネットワークチャネルを介
して接続され、システム全体を統括するクロックは存在
せず、各プロセッサとネットワークチャネルとはそれぞ
れ独自のクロックにより制御されて動作する。システム
の大域状態を決定する処理を行う決定プロセスが存在
し、各プロセッサが他のプロセッサに対して送信する通
常メッセージの持つ重みと上記プロセッサの重みとの総
和を相殺する重みをこの決定プロセスが持ち、これら全
ての重みを加算したとき一定値となるようにシステムが
制御される。大域状態を求めるために決定プロセスと各
プロセッサとが互いに送受信するメッセージを制御メッ
セージと呼び、決定プロセスは、求めた大域状態を格納
するための大域状態用バッファと、旧世代の重みをカウ
ントする旧世代重みカウンタとを持つ。決定プロセス
は、大域状態用バッファをクリアし、旧世代重みカウン
タに自己の重みを設定し、自己の重みを上記一定値に設
定し世代をひとつ進め、状態を通知するよう指示するリ
クエスト( request)制御メッセージを全てのプロセッ
サへ所定の重みを付けて送信し、その重みの分だけ自己
の重みを減らす。各プロセッサは、リクエスト( reque
st)制御メッセージを受信すると、そのリクエスト( r
equest)制御メッセージの重みの世代と自己の重みの世
代とを比較して、リクエスト( request)制御メッセー
ジの重みの世代が新しいならば、自己の状態と自己の重
みとをリターン(return)制御メッセージに付けて決定
プロセスへ送り、リクエスト( request)制御メッセー
ジの重みを自己の重みに設定し、両者が同一ならばリク
エスト( request)制御メッセージの重みを自己の重み
に加え、通常メッセージを受信すると、その通常メッセ
ージの重みの世代と自己の重みの世代とを比較して、両
者が同一ならば通常メッセージの重みを自己の重みに加
え、自己の重みの世代が新しいならば通常メッセージの
コピーと通常メッセージの重みとをリターン(return)
制御メッセージに付けて決定プロセスへ送り、通常メッ
セージの世代が新しいならば、自己の状態と重みをリタ
ーン(return)制御メッセージで決定プロセスへ送り、
通常メッセージの重みを自己の重みに設定する。決定プ
ロセスがリターン(return)制御メッセージを受信する
と、リターン(return)制御メッセージに付いていた重
みを旧世代重みカウンタに加え、リターン(return)制
御メッセージに付加された各プロセッサの状態と通常メ
ッセージのコピーを大域状態用バッファに格納する。旧
世代重みカウンタの値が上記一定値になったらそのとき
の大域状態用バッファの内容を大域状態に決定する。
<Structure 7> In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. Operate under the control of their own clocks. There is a determination process for determining the global state of the system, and the determination process has a weight for canceling the sum of the weight of the normal message transmitted by each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value. A message transmitted and received between the decision process and each processor to determine the global state is called a control message. The decision process includes a global state buffer for storing the determined global state, and an old state buffer for counting the weight of the old generation. It has a generation weight counter. The decision process clears the global state buffer, sets its own weight in the old generation weight counter, sets its own weight to the above-mentioned constant value, advances the generation by one, and notifies the request to notify the state. The control message is transmitted to all processors with a predetermined weight, and the weight of the processor is reduced by the weight. Each processor sends a request (reque
st) When a control message is received, the request (r
equest) comparing the weight generation of the control message with the generation of its own weight, and if the generation of the weight of the request control message is newer, return its state and its own weight to the return control message. To the decision process, set the weight of the request control message to its own weight, and if both are the same, add the weight of the request control message to its own weight; Compare the normal message weight generation with its own weight generation.If both are the same, add the normal message weight to its own weight.If the own weight generation is newer, copy the normal message and the normal message copy. Return message weight and return
Send to the decision process with the control message, usually if the message generation is newer, send its status and weight in the return control message to the decision process,
Set the weight of the normal message to its own weight. When the decision process receives the return control message, the weight attached to the return control message is added to the old generation weight counter, and the state of each processor added to the return control message and the normal message Store the copy in the global state buffer. When the value of the old generation weight counter reaches the above-mentioned constant value, the contents of the global state buffer at that time are determined to be the global state.

【0033】〈説明〉決定プロセスの重みの初期値は、
ゼロでもよいし予め設定した一定値でもよい。決定プロ
セスが世代の進んだ重みを付けてリクエスト( reques
t)制御メッセージを送信すると、その後はその新しい
世代の重みが通常メッセージの送信等に使用されてい
く。前の世代の重みを持ったプロセス群と通常メッセー
ジ群が大域状態を構成しているが、これらはリターン
(return)制御メッセージによって回収されていく。回
収が完了したことは旧世代重みカウンタの値が一定値例
えばゼロになったことで確認できる。
<Explanation> The initial value of the weight of the decision process is
It may be zero or a preset constant value. The decision process is based on advanced generations of weighted requests (reques
t) After transmitting the control message, the weight of the new generation is subsequently used for transmitting the normal message and the like. The process group having the weight of the previous generation and the normal message group constitute a global state, and these are collected by a return control message. Completion of the collection can be confirmed by the value of the old generation weight counter becoming a constant value, for example, zero.

【0034】〈構成8〉非同期メッセージ通信によって
プロセッサ間処理を行うマルチプロセッサシステムにお
いて、有限個のプロセッサがネットワークチャネルを介
して接続され、システム全体を統括するクロックは存在
せず、各プロセッサとネットワークチャネルとはそれぞ
れ独自のクロックにより制御されて動作する。システム
の大域状態を決定する処理を行う決定プロセスが存在
し、各プロセッサが他のプロセッサに対して送信する通
常メッセージの持つ重みと上記プロセッサの重みとの総
和を相殺する重みをこの決定プロセスが持ち、これら全
ての重みを加算したとき一定値となるようにシステムが
制御される。大域状態を求めるために決定プロセスと各
プロセッサとが互いに送受信するメッセージを制御メッ
セージと呼び、決定プロセスは、求めた大域状態を格納
するための大域状態用バッファと、旧世代の重みをカウ
ントする旧世代重みカウンタとを持つ。決定プロセス
は、大域状態用バッファをクリアし、旧世代重みカウン
タに自己の重みを設定し、自己の重みを上記一定値に設
定し世代をひとつ進め、状態を保存するよう指示するレ
コード(record)制御メッセージを全てのプロセッサへ
所定の重みを付けて送信し、その重みの分だけ自己の重
みを減らす。各プロセッサは、自己の状態を格納する状
態用バッファを持つとともに、レコード(record)制御
メッセージを受信すると、そのレコード(record)制御
メッセージの重みの世代と自己の重みの世代とを比較し
て、レコード(record)制御メッセージの重みの世代が
新しいならば、自己の状態を状態用バッファへ格納し、
自己の重みをリターン(return)制御メッセージに付け
て決定プロセスへ送り、レコード(record)制御メッセ
ージの重みを自己の重みに設定し、両者が同一ならばレ
コード(record)制御メッセージの重みを自己の重みに
加え、通常メッセージを受信すると、その通常メッセー
ジの重みの世代と自己の重みの世代とを比較して、両者
が同一ならば通常メッセージの重みを自己の重みに加
え、自己の重みの世代が新しいならば通常メッセージの
コピーを状態用バッファへ格納し、通常メッセージの重
みをリターン(return)制御メッセージに付けて決定プ
ロセスへ送り、通常メッセージの世代が新しいならば、
自己の状態を状態用バッファへ格納し、自己の重みをリ
ターン(return)制御メッセージで決定プロセスへ送
り、通常メッセージの重みを自己の重みに設定する。決
定プロセスがリターン(return)制御メッセージを受信
すると、リターン(return)制御メッセージに付いてい
た重みを旧世代重みカウンタに加える。旧世代重みカウ
ンタの値が上記一定値になったら、決定プロセスがリク
エスト( request)制御メッセージを全てのプロセッサ
へ送り、各プロセッサはリクエスト( request)制御メ
ッセージを受信すると、状態用バッファに格納していた
自己の状態と通常メッセージのコピーとをアンサー(an
swer)制御メッセージで決定プロセスへ送り、状態用バ
ッファはクリアする。決定プロセスは、アンサー(answ
er)制御メッセージに付加された各プロセッサの状態と
通常メッセージのコピーを大域状態用バッファに格納
し、全てのプロセッサからアンサー(answer)制御メッ
セージを受信したら、そのときの大域状態用バッファの
内容を大域状態に決定することを特徴とする。
<Configuration 8> In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. Operate under the control of their own clocks. There is a determination process for determining the global state of the system, and the determination process has a weight for canceling the sum of the weight of the normal message transmitted by each processor to another processor and the weight of the processor. , The system is controlled so that when all these weights are added, the weight becomes a constant value. A message transmitted and received between the decision process and each processor to determine the global state is called a control message. The decision process includes a global state buffer for storing the determined global state, and an old state buffer for counting the weight of the old generation. It has a generation weight counter. The decision process clears the global state buffer, sets its own weight in the old generation weight counter, sets its own weight to the above-mentioned constant value, advances the generation by one, and instructs to save the state. The control message is transmitted to all processors with a predetermined weight, and the weight of the processor is reduced by the weight. Each processor has a state buffer for storing its own state, and upon receiving a record control message, compares the generation of the weight of the record control message with the generation of its own weight, If the generation of the weight of the record control message is new, store its state in the state buffer,
The weight of the record control message is set to its own weight, and the weight of the record control message is set to its own weight. When a normal message is received in addition to the weight, the generation of the weight of the normal message is compared with the generation of its own weight. If both are the same, the weight of the normal message is added to its own weight, and the generation of its own weight is added. Is newer, a copy of the normal message is stored in the status buffer, the weight of the normal message is appended to the return control message, and sent to the decision process.
It stores its state in the state buffer, sends its weight to the decision process in a return control message, and sets the weight of the normal message to its weight. When the decision process receives the return control message, it adds the weight attached to the return control message to the old generation weight counter. When the value of the old generation weight counter reaches the above-mentioned fixed value, the decision process sends a request control message to all processors, and when each processor receives the request control message, it stores it in the status buffer. The state of the self and the copy of the normal message
swer) The control message is sent to the decision process, and the status buffer is cleared. The decision process is based on the answer (answ
er) Store the state of each processor added to the control message and a copy of the normal message in the global state buffer. When an answer (answer) control message is received from all processors, the contents of the global state buffer at that time are read. It is characterized in that it is determined to be in a global state.

【0035】〈説明〉構成7と異なるのは、構成8で
は、前の世代の重みを決定プロセスに返却する際、プロ
セッサの状態や通常メッセージのコピーはプロセッサ側
に格納しておき、決定プロセスからの要請に従って一度
に送る点である。
<Explanation> The difference from the configuration 7 is that, in the configuration 8, when the weight of the previous generation is returned to the determination process, the state of the processor and a copy of the normal message are stored in the processor and the determination process is performed. The point is to send at once according to the request.

【0036】〈構成9〉構成7または8において、各重
みに付加する世代として、相対的に順序が明らかになっ
ている3種以上の記号を用いることを特徴とする。
<Structure 9> The structure 7 or 8 is characterized in that three or more kinds of symbols whose order is relatively clear are used as the generation to be added to each weight.

【0037】〈説明〉相対的に順序が明らかになってい
るというのは、両者を比較した場合に、予め定めた基準
に従って、他の情報無しに新旧の判断ができることをい
う。従って、一定の順位を定めることができるような3
種以上の記号等による組み合わせが適する。また、その
内容は任意である。
<Explanation> The fact that the order is relatively clear means that, when the two are compared, it is possible to judge the old and new without any other information according to a predetermined criterion. Therefore, 3
Combinations of more than one symbol are suitable. The contents are arbitrary.

【0038】〈構成10〉有限個のプロセッサ群(以
下、PE群と書く)がネットワークを介して互いに結合
しており、PE群は非同期メッセージ通信によって互い
に通信し、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動作し、各PEは他のPEへのメッセージを送
ることができ、自分の状態と受信したメッセージを記録
することができ、チェックポイントの設定の指示を出す
特別なプロセス(制御プロセスと呼ぶ)が存在し、制御
プロセスと全てのPEは互いにメッセージ通信を行うこ
とができ、通常処理を行うためにPE群が互いに送受信
するメッセージを通常メッセージと呼び、チェックポイ
ントの設定を行うために制御プロセスとPE群が互いに
送受信するメッセージを制御メッセージと呼び、制御プ
ロセスとPE及びメッセージは重みを持ち、全ての重み
の合計は所定の一定値をとり、重みは世代を持ち、全て
の重みを同じ世代に初期設定し、制御プロセスは旧世代
重みカウンタを持ち、各PEは状態バッファを持ち、制
御プロセスは、チェックポイント設定を行うために、チ
ェックポイント(checkpoint)制御メッセージ(以下ch
eckpointと書く)を全てのPEへ送信し、全てのPEか
らチェックポイント認識(ackCheckpoint )制御メッセ
ージ(以下ackCheckpoint と書く)を受信するまで待
ち、旧世代重みカウンタに自分の重みを設定し、自分の
重みをある定まった一定値に設定し、自分の重みの世代
をひとつ進め、レコード(record)制御メッセージ(以
下recordと書く)を全てのPEへ送信し、recordには重
みを付け、自分の重みはその分だけ減らし、PEは、ch
eckpointを受信すると、状態バッファをクリアし、ackC
heckpoint を制御プロセスへ返信し、recordを受信する
と、「recordが持っている重みの世代」と「自分の重み
の世代」を比較し、「recordの重みの世代」が新しいな
らば、自分の状態を状態バッファに記録し、自分の重み
をreturn制御メッセージ(以下returnと書く)で制御プ
ロセスへ送り、自分の重みをrecordの重みで再設定し、
ふたつの世代が等しいならばrecordの重みを自分の重み
に加え、PEは、通常メッセージを受信すると、「通常
メッセージが持っている重みの世代」と「自分の重みの
世代」を比較し、「自分の重みの世代」が新しいなら
ば、通常メッセージの重みをreturnで制御プロセスへ送
り、通常メッセージの内容を状態バッファに記録し、通
常メッセージを処理し、「通常メッセージの重みの世
代」が新しいならば、自分の重みをreturnで制御プロセ
スへ送り、自分の状態を状態バッファに記録し、自分の
重みを通常メッセージの重みで再設定し、通常メッセー
ジを処理し、ふたつの世代が等しいならば、通常メッセ
ージの重みを自分の重みに加え、通常メッセージを処理
し、制御プロセスは、returnを受信すると、returnが運
んだ重みを旧世代重みカウンタへ加え、加えた結果、旧
世代重みカウンタの値がある定まった一定値になったな
らばチェックポイントの設定が完了したことが確認さ
れ、完了を確認した時点における各PEの状態バッファ
の内容の集合がチェックポイントを構成するものとした
ことを特徴とするチェックポイント設定方法。
<Structure 10> A finite number of processor groups (hereinafter referred to as PE groups) are connected to each other via a network. The PE groups communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. , Each PE and network channel operate independently according to their clocks, each PE can send messages to other PEs, record their status and received messages, and set checkpoints. There is a special process (called a control process) for issuing an instruction, the control process and all the PEs can perform message communication with each other, and a message transmitted and received between the PEs for normal processing is called a normal message. Messages sent and received by the control process and the PEs to set checkpoints Is called a control message, the control process, the PE and the message have a weight, the sum of all the weights takes a predetermined constant value, the weight has a generation, and all the weights are initialized to the same generation. Each PE has a state buffer, and the control process performs a checkpoint control message (hereinafter, ch.
eckpoint) to all PEs, wait until a checkpoint recognition (ackCheckpoint) control message (hereinafter ackCheckpoint) is received from all PEs, set their own weight in the old generation weight counter, and Set the weight to a certain fixed value, advance the generation of one's own weight by one, and send a record control message (hereinafter referred to as record) to all PEs. Is reduced by that amount, PE is ch
When the eckpoint is received, the status buffer is cleared and ackC
When heckpoint is returned to the control process and record is received, "the generation of the weight held by the record" is compared with "the generation of its own weight". In the status buffer, send its own weight to the control process with a return control message (hereinafter referred to as "return"), reset its own weight with the weight of record,
If the two generations are equal, the weight of record is added to its own weight, and upon receiving the normal message, the PE compares "the generation of the weight that the normal message has" with "the generation of its own weight", If the “own weight generation” is new, the normal message weight is sent to the control process by return, the contents of the normal message are recorded in the status buffer, the normal message is processed, and the “normal message weight generation” is new. If so, send your weight to the control process with return, record your state in the state buffer, reset your weight with the weight of the normal message, process the normal message, and if the two generations are equal, Adds the weight of the normal message to its own weight, processes the normal message, and when the control process receives the return, it returns the weight carried by the return to the old generation weight counter. As a result, when the value of the old generation weight counter reaches a certain fixed value, it is confirmed that the setting of the checkpoint has been completed, and a set of the contents of the state buffer of each PE at the time of confirming the completion. A checkpoint setting method.

【0039】〈説明〉制御プロセスとPE及びメッセー
ジの重みの合計は所定の一定値で、任意の値に予め設定
される。
<Explanation> The sum of the weights of the control process, the PE, and the message is a predetermined constant value, which is set in advance to an arbitrary value.

【0040】〈構成11〉有限個のプロセッサ群(以
下、PE群と書く)がネットワークを介して互いに結合
しており、PE群は非同期メッセージ通信によって互い
に通信し、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動作し、各PEは他のPEへのメッセージを送
ることができ、自分の状態と受信したメッセージを記録
することができ、チェックポイントの設定と再実行の指
示を出す特別なプロセス(制御プロセスと呼ぶ)が存在
し、制御プロセスと全てのPEは互いにメッセージ通信
を行うことができ、通常処理を行うためにPE群が互い
に送受信するメッセージを通常メッセージと呼び、チェ
ックポイントの設定と再実行を行うために制御プロセス
とPE群が互いに送受信するメッセージを制御メッセー
ジと呼び、制御プロセスとPE及びメッセージは重みを
持ち、全ての重みの合計は所定の一定値をとり、重みは
世代を持ち、全ての重みを同じ世代に初期設定し、制御
プロセスは旧世代重みカウンタを持ち、各PEは状態フ
ラグと状態バッファを持ち、状態フラグはチェックポイ
ント設定中を表すC及び再実行中を表すRのいずれかの
値のみをとり、制御プロセスは、チェックポイント設定
を行うために、チェックポイント(checkpoint)制御メ
ッセージ(以下checkpointと書く)を全てのPEへ送信
し、全てのPEからチェックポイント認識(ackCheckpo
int )制御メッセージ(以下ackCheckpoint と書く)を
受信するまで待ち、旧世代重みカウンタに自分の重みを
設定し、自分の重みをある定まった一定値に設定し、自
分の重みの世代をひとつ進め、レコード(record)制御
メッセージ(以下recordと書く)を全てのPEへ送信
し、recordには重みを付け、自分の重みはその分だけ減
らし、PEは、checkpointを受信すると、状態フラグを
Cに設定し、ackCheckpoint を制御プロセスへ返信し、
recordを受信すると、「recordが持っている重みの世
代」と「自分の重みの世代」を比較し、「recordの重み
の世代」が新しいならば、状態バッファをクリアし、自
分の状態を状態バッファに記録し、自分の重みをreturn
制御メッセージ(以下returnと書く)で制御プロセスへ
送り、自分の重みをrecordの重みで再設定し、ふたつの
世代が等しいならばrecordの重みを自分の重みに加え、
制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
チェックポイントの設定が完了したことが確認され、制
御プロセスは、再実行を行うために、再実行準備(roll
back)制御メッセージ(以下rollbackと書く)を全ての
PEへ送信し、再実行準備認識(ackRollback )制御メ
ッセージ(以下ackRollback と書く)を全てのPEから
受信するまで待ち、旧世代重みカウンタに自分の重みを
設定し、自分の重みをある定まった一定値に設定し、自
分の重みの世代をひとつ進め、再実行(reexecute )制
御メッセージ(以下reexecute と書く)を全てのPEへ
送信し、reexecute には重みを付け、自分の重みはその
分だけ減らし、PEは、rollbackを受信すると、状態フ
ラグをRに設定し、ackRollback を制御プロセスへ送
り、reexecute を受信すると、「reexecute が持ってい
る重みの世代」と「自分の重みの世代」を比較し、「re
execute の重みの世代」が新しいならば、自分の状態を
状態バッファの内容で設定し直し、自分の重みをreturn
で制御プロセスへ送り、自分の重みをreexecute の重み
で再設定し、ふたつの世代が等しいならば、reexecute
の重みを自分の重みに加え、制御プロセスは、returnを
受信すると、returnが運んだ重みを旧世代重みカウンタ
へ加え、加えた結果、旧世代重みカウンタの値がある定
まった一定値になったならば再実行の開始が完了したこ
とを確認でき、PEは、通常メッセージを受信すると、
「通常メッセージが持っている重みの世代」と「自分の
重みの世代」を比較し、「自分の重みの世代」が新しく
状態フラグがCならば、通常メッセージの重みをreturn
で制御プロセスへ送り、通常メッセージの内容を状態バ
ッファに記録し、通常メッセージを処理し、「自分の重
みの世代」が新しく状態フラグがRならば、通常メッセ
ージの重みをreturnで制御プロセスへ送り、通常メッセ
ージは処理することなく捨て、「通常メッセージの重み
の世代」が新しく状態フラグがCならば、状態バッファ
をクリアし、自分の状態を状態バッファに記録し、自分
の重みをreturnで制御プロセスへ送り、自分の重みを通
常メッセージの重みで再設定し、通常メッセージを処理
し、「通常メッセージの重みの世代」が新しく状態フラ
グがRならば、自分の状態を状態バッファの内容で設定
し直し、自分の重みをreturnで制御プロセスへ送り、自
分の重みを通常メッセージの重みで再設定し、通常メッ
セージを処理し、ふたつの世代が等しいならば、通常メ
ッセージの重みを自分の重みに加え、通常メッセージを
処理することを特徴とするチェックポイント設定と再実
行方法。
<Configuration 11> A finite number of processor groups (hereinafter, referred to as PE groups) are connected to each other via a network. The PE groups communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. , Each PE and network channel operate independently according to their respective clocks, and each PE can send messages to other PEs, record their status and received messages, set checkpoints and There is a special process (called a control process) that issues a re-execution instruction. The control process and all the PEs can perform message communication with each other. Called a message, the control process and PEs send each other to set a checkpoint and re-execute. The message to be transmitted is called a control message, the control process, the PE and the message have a weight, the sum of all the weights takes a predetermined constant value, the weight has a generation, and all the weights are initialized to the same generation, The control process has an old-generation weight counter, each PE has a status flag and a status buffer, and the status flag takes only one of the value C indicating that a checkpoint is being set and the value R indicating that the process is being re-executed. In order to perform checkpoint setting, a checkpoint control message (hereinafter referred to as checkpoint) is transmitted to all PEs, and checkpoint recognition (ackCheckpo) is performed from all PEs.
int) Wait until a control message (hereinafter referred to as ackCheckpoint) is received, set its own weight in the old generation weight counter, set its own weight to a certain fixed value, advance its own weight by one generation, Sends a record control message (hereinafter referred to as record) to all PEs, assigns a weight to the record, reduces its own weight by that amount, and when the PE receives the checkpoint, sets the status flag to C Returns an ackCheckpoint to the control process,
When a record is received, the "generation of the weight held by record" is compared with the "generation of its own weight". If the "generation of the weight of record" is new, the status buffer is cleared and the status of one's own is cleared. Record in buffer and return own weight
Send it to the control process with a control message (hereinafter referred to as return), reset its own weight with the weight of record, and if the two generations are equal, add the weight of record to its own weight,
Upon receiving the return, the control process adds the weight carried by the return to the old generation weight counter, and when the value of the old generation weight counter reaches a certain fixed value, the checkpoint setting is completed. It is confirmed that the control process is ready for re-execution (roll
back) sends a control message (hereinafter referred to as “rollback”) to all PEs, waits until a re-execution readiness (ackRollback) control message (hereinafter referred to as “ackRollback”) is received from all PEs, and stores the old generation weight counter in the old generation weight counter. Set the weights, set their own weights to a certain fixed value, advance their own weights by one, send a re-execute control message (hereinafter called execute) to all PEs, and Weights, and reduces its own weight by that amount. When the PE receives the rollback, it sets the status flag to R, sends ackRollback to the control process, and receives the reexecute. The generation and the generation of their own weight are compared.
If the "generation of the weight of execute" is new, reset your own state with the contents of the state buffer and return your own weight.
To the control process, reset its own weight with the reexecute weight, and if the two generations are equal, execute
When the control process receives the return, the control process adds the weight carried by the return to the old generation weight counter, and as a result, the value of the old generation weight counter becomes a certain fixed value. Then, the start of the re-execution can be confirmed to be completed, and the PE receives the normal message,
Compare the "generation of the weight that the normal message has" with the "generation of its own weight". If the "own weight generation" is new and the status flag is C, return the weight of the normal message.
To send to the control process, record the contents of the normal message in the status buffer, process the normal message, and if the "own weight generation" is new and the status flag is R, send the weight of the normal message to the control process by return Normal message is discarded without processing. If "normal message weight generation" is new and status flag is C, clear status buffer, record own status in status buffer, and control own weight by return. Sends to the process, resets its own weight with the weight of the normal message, processes the normal message, and if the "generation of normal message weight" is new and the status flag is R, sets its own status with the contents of the status buffer Reset, send your weight to the control process with return, reset your weight with the weight of the normal message, process the normal message, If generations are equal, adding the weight of normal messages to their weight, usually checkpointing and redo wherein processing the message.

【0041】〈説明〉状態フラグは、チェックポイント
設定中と再実行中のふたつを区別できればよい。
<Explanation> The state flag only needs to be able to distinguish between the checkpoint setting and the re-execution.

【0042】〈構成12〉有限個のプロセッサ群(以
下、PE群と書く)がネットワークを介して互いに結合
しており、PE群は非同期メッセージ通信によって互い
に通信し、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動作し、各PEは他のPEへのメッセージを送
ることができ、自分の状態と受信したメッセージを記録
することができ、チェックポイントの設定の指示を出す
特別なプロセス(制御プロセスと呼ぶ)が存在し、制御
プロセスと全てのPEは互いにメッセージ通信を行うこ
とができ、通常処理を行うためにPE群が互いに送受信
するメッセージを通常メッセージと呼び、チェックポイ
ントの設定を行うために制御プロセスとPE群が互いに
送受信するメッセージを制御メッセージと呼び、制御プ
ロセスとPE及びメッセージは重みを持ち、全ての重み
の合計は所定の一定値をとり、重みは世代を持ち、全て
の重みを同じ世代に初期設定し、制御プロセスは旧世代
重みカウンタを持ち、各PEは状態バッファとメッセー
ジバッファを持ち、メッセージバッファは初期化処理で
クリアし、制御プロセスは、チェックポイント設定を行
うために、旧世代重みカウンタに自分の重みを設定し、
自分の重みをある定まった一定値に設定し、自分の重み
の世代をひとつ進め、レコード(record)制御メッセー
ジ(以下、recordと書く)をすべてのPEへ送信し、re
cordには重みを付け、自分の重みはその分だけ減らし、
PEはrecordを受信すると、状態バッファをクリアし、
自分の状態を状態バッファに記録し、自分の重みをretu
rn制御メッセージ(以下returnと書く)で制御プロセス
へ送り、自分の重みをrecordの重みで再設定し、メッセ
ージバッファに通常メッセージが格納されているなら
ば、それらのメッセージに対して、メッセージの重みを
自分の重みに加えてから処理することを行い、メッセー
ジバッファをクリアし、PEは、通常メッセージを受信
すると、「通常メッセージが持っている重みの世代」と
「自分の重みの世代」を比較し、「自分の重みの世代」
が新しいならば、通常メッセージの重みをreturnで制御
プロセスへ送り、通常メッセージの内容を状態バッファ
に記録し、通常メッセージを処理し、「通常メッセージ
の重みの世代」が新しいならば、通常メッセージをメッ
セージバッファに格納し、ふたつの世代が等しいならば
通常メッセージの重みを自分の重みに加え、通常メッセ
ージを処理し、制御プロセスは、returnを受信すると、
returnが運んだ重みを旧世代重みカウンタへ加え、加え
た結果、旧世代重みカウンタの値がある定まった一定値
になったならばチェックポイントの設定が完了したこと
が確認され、完了を確認した時点における各PEの状態
バッファの内容の集合がチェックポイントを構成するも
のとしたことを特徴とするチェックポイント設定方法。
<Structure 12> A finite number of processors (hereinafter referred to as PEs) are connected to each other via a network. The PEs communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. , Each PE and network channel operate independently according to their clocks, each PE can send messages to other PEs, record their status and received messages, and set checkpoints. There is a special process (called a control process) for issuing an instruction, the control process and all the PEs can perform message communication with each other, and a message transmitted and received between the PEs for normal processing is called a normal message. Messages sent and received by the control process and the PEs to set checkpoints Is called a control message, the control process, the PE and the message have a weight, the sum of all the weights takes a predetermined constant value, the weight has a generation, and all the weights are initialized to the same generation. It has an old generation weight counter, each PE has a status buffer and a message buffer, the message buffer is cleared by initialization processing, and the control process sets its own weight in the old generation weight counter to perform checkpoint setting And
Set its own weight to a certain fixed value, advance its own weight by one generation, and send a record control message (hereinafter referred to as record) to all PEs.
Cord is weighted, my weight is reduced by that much,
When the PE receives record, it clears the status buffer,
Record your state in the state buffer and retu your weight
rn Control message (hereinafter referred to as "return") is sent to the control process, and its own weight is reset by the weight of record. If normal messages are stored in the message buffer, the message weight is applied to those messages. Is added to its own weight and then processed, the message buffer is cleared, and when the PE receives the normal message, the PE compares the "generation of the weight that the normal message has" with the "generation of its own weight" And "the generation of their own weight"
Is new, send the weight of the normal message to the control process by return, record the contents of the normal message in the status buffer, process the normal message, and if the "generation of the weight of the normal message" is new, send the normal message The message is stored in the message buffer, and if the two generations are equal, the weight of the normal message is added to its own weight, and the normal message is processed.
The weight carried by return is added to the old generation weight counter, and as a result, when the value of the old generation weight counter reaches a certain fixed value, it is confirmed that the checkpoint setting is completed, and the completion is confirmed. A checkpoint setting method, wherein a set of contents of the status buffer of each PE at a time constitutes a checkpoint.

【0043】〈構成13〉有限個のプロセッサ群(以
下、PE群と書く)がネットワークを介して互いに結合
しており、PE群は非同期メッセージ通信によって互い
に通信し、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動作し、各PEは他のPEへのメッセージを送
ることができ、自分の状態と受信したメッセージを記録
することができ、チェックポイントの設定と再実行の指
示を出す特別なプロセス(制御プロセスと呼ぶ)が存在
し、制御プロセスと全てのPEは互いにメッセージ通信
を行うことができ、通常処理を行うためにPE群が互い
に送受信するメッセージを通常メッセージと呼び、チェ
ックポイントの設定と再実行を行うために制御プロセス
とPE群が互いに送受信するメッセージを制御メッセー
ジと呼び、制御プロセスとPE及びメッセージは重みを
持ち、全ての重みの合計は所定の一定値をとり、重みは
世代を持ち、全ての重みを同じ世代に初期設定し、制御
プロセスは旧世代重みカウンタを持ち、各PEは状態フ
ラグと状態バッファ、それにメッセージバッファを持
ち、状態フラグはチェックポイント設定中を表すC及び
再実行を表すRのいずれかの値のみを取り、メッセージ
バッファは初期化処理でクリアし、制御プロセスは、チ
ェックポイント設定を行うために、旧世代重みカウンタ
に自分の重みを設定し、自分の重みをある定まった一定
値に設定し、自分の重みの世代をひとつ進め、レコード
(record)制御メッセージ(以下、recordと書く)をす
べてのPEへ送信し、recordには重みを付け、自分の重
みはその分だけ減らし、PEはrecordを受信すると、状
態フラグをCに設定し、状態バッファをクリアし、自分
の状態を状態バッファに記録し、自分の重みをreturn制
御メッセージ(以下returnと書く)で制御プロセスへ送
り、自分の重みをrecordの重みで再設定し、メッセージ
バッファに通常メッセージが格納されているならば、そ
れらのメッセージに対して、メッセージの重みを自分の
重みに加えてから処理することを行い、メッセージバッ
ファをクリアし、制御プロセスは、returnを受信する
と、returnが運んだ重みを旧世代重みカウンタへ加え、
加えた結果、旧世代重みカウンタの値がある定まった一
定値になったならばチェックポイントの設定が完了した
ことが確認され、制御プロセスは、再実行を行うため
に、旧世代重みカウンタに自分の重みを設定し、自分の
重みを一定値に設定し、自分の重みの世代をひとつ進
め、再実行(reexecute )制御メッセージ(以下reexec
ute と書く)を全てのPEへ送信し、reexecute には重
みを付け、自分の重みはその分だけ減らし、PEは、re
execute を受信すると、状態フラグをRに設定し、自分
の状態を状態バッファの内容で設定し直し、自分の重み
をreturnで制御プロセスへ送り、自分の重みをreexecut
e の重みで再設定し、メッセージバッファに通常メッセ
ージが格納されているならば、それらのメッセージに対
して、メッセージの重みを自分の重みに加えてから処理
することを行い、メッセージバッファをクリアし、制御
プロセスは、returnを受信すると、returnが運んだ重み
を旧世代重みカウンタへ加え、加えた結果、旧世代重み
カウンタの値がある定まった一定値になったならば再実
行の開始が完了したことを確認でき、PEは、通常メッ
セージを受信すると、「通常メッセージが持っている重
みの世代」と「自分の重みの世代」を比較し、「自分の
重みの世代」が新しく状態フラグがCならば、通常メッ
セージの重みをreturnで制御プロセスへ送り、通常メッ
セージの内容を状態バッファに記録し、通常メッセージ
を処理し、「自分の重みの世代」が新しく状態フラグが
Rならば、通常メッセージの重みをreturnで制御プロセ
スへ送り、通常メッセージは処理することなく捨て、
「通常メッセージの重みの世代」が新しいならば、通常
メッセージをメッセージバッファに格納し、ふたつの世
代が等しいならば、通常メッセージの重みを自分の重み
に加え、通常メッセージを処理することを特徴とするチ
ェックポイント設定と再実行方法。 〈説明〉状態フラグのとる値は構成11と同様である。
<Configuration 13> A finite number of processor groups (hereinafter referred to as PE groups) are connected to each other via a network. The PE groups communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. , Each PE and network channel operate independently according to their respective clocks, and each PE can send messages to other PEs, record their status and received messages, set checkpoints and There is a special process (called a control process) that issues a re-execution instruction. The control process and all the PEs can perform message communication with each other. Called a message, the control process and PEs send each other to set a checkpoint and re-execute. The message to be transmitted is called a control message, the control process, the PE and the message have a weight, the sum of all the weights takes a predetermined constant value, the weight has a generation, and all the weights are initialized to the same generation, The control process has an old generation weight counter, each PE has a status flag, a status buffer, and a message buffer, and the status flag takes only one of the values C indicating that a checkpoint is being set and R indicating re-execution, The message buffer is cleared by initialization processing, and the control process sets its own weight in the old generation weight counter, sets its own weight to a certain fixed value, and sets its own weight to perform checkpoint setting. One generation, send a record control message (hereafter, record) to all PEs, assign a weight to the record, When the PE receives record, the PE sets the status flag to C, clears the status buffer, records its own status in the status buffer, and sets its own weight in the return control message (hereinafter referred to as a return control message). ) To the control process, reset its own weight with the weight of record, and if normal messages are stored in the message buffer, add the weight of the message to those weights for those messages After processing, clears the message buffer, and upon receiving the return, the control process adds the weight carried by the return to the old generation weight counter,
As a result, when the value of the old generation weight counter reaches a certain fixed value, it is confirmed that the setting of the checkpoint is completed, and the control process stores the old generation weight counter in the old generation weight counter in order to execute again. , Set its own weight to a constant value, advance its own weight by one generation, and execute (reexecute) control message
ute) is sent to all PEs, execute is weighted, its own weight is reduced by that amount, and PE
When execute is received, the state flag is set to R, the state is reset by the contents of the state buffer, the own weight is sent to the control process by return, and the own weight is reexecuted.
If the normal message is stored in the message buffer, the message weight is added to its own weight and then processed, and the message buffer is cleared. When the control process receives the return, the control process adds the weight carried by the return to the old-generation weight counter, and when the value of the old-generation weight counter reaches a certain fixed value, the start of re-execution is completed. When the PE receives the normal message, the PE compares the "generation of the weight of the normal message" with the "generation of its own weight", and the "generation of its own weight" is newly set and the status flag is set. If it is C, return the weight of the normal message to the control process by return, record the content of the normal message in the status buffer, process the normal message, and If generation "is new status flag R, it sends the weight of normal messages to the control process in return, normally the message discarded without treatment,
If the "normal message weight generation" is new, the normal message is stored in the message buffer, and if the two generations are equal, the normal message weight is added to its own weight, and the normal message is processed. Checkpointing and re-run method. <Description> The values of the status flags are the same as in the configuration 11.

【0044】〈構成14〉有限個のプロセッサ群(以
下、PE群と書く)がネットワークを介して互いに結合
しており、PE群は非同期メッセージ通信によって互い
に通信し、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動作し、各PEは他のPEへのメッセージを送
ることができ、自分の状態と受信したメッセージを記録
することができ、チェックポイントの設定と再実行の指
示を出す特別なプロセス(制御プロセスと呼ぶ)が存在
し、制御プロセスと全てのPEは互いにメッセージ通信
を行うことができ、通常処理を行うためにPE群が互い
に送受信するメッセージを通常メッセージと呼び、チェ
ックポイントの設定と再実行を行うために制御プロセス
とPE群が互いに送受信するメッセージを制御メッセー
ジと呼び、制御プロセスとPE及びメッセージは重みを
持ち、全ての重みの合計は所定の一定値をとり、重みは
世代を持ち、全ての重みを同じ世代に初期設定し、制御
プロセスは旧世代重みカウンタを持ち、制御プロセス
は、チェックポイント設定を行うために、旧世代重みカ
ウンタに自分の重みを設定し、自分の重みを一定値に設
定し、自分の重みの世代をひとつ進め、レコード(reco
rd)制御メッセージ(以下recordと書く)を全てのPE
へ送信し、recordには重みを付け、自分の重みはその分
だけ減らし、PEは、recordを受信すると、「recordが
持っている重みの世代」と「自分の重みの世代」を比較
し、「recordの重みの世代」が新しいならば、状態バッ
ファをクリアし、自分の状態を状態バッファに記録し、
自分の重みをreturn制御メッセージ(以下returnと書
く)で制御プロセスへ送り、自分の重みをrecordの重み
で再設定し、ふたつの世代が等しいならば、recordの重
みを自分の重みに加え、制御プロセスは、returnを受信
すると、returnが運んだ重みを旧世代重みカウンタへ加
え、加えた結果、旧世代重みカウンタの値がある定まっ
た一定値になったならばチェックポイントの設定が完了
したことが確認され、制御プロセスは、再実行を行うた
めに、旧世代重みカウンタに自分の重みを設定し、自分
の重みをある定まった一定値に設定し、自分の重みの世
代をふたつ進め、再実行(reexecute )制御メッセージ
(以下reexecute と書く)を全てのPEへ送信し、reex
ecute には重みを付け、自分の重みはその分だけ減ら
し、PEは、reexecute を受信すると、「reexecute が
持っている重みの世代」と「自分の重みの世代」を比較
し、「reexecute の重みの世代」が新しいならば、自分
の状態を状態バッファの内容で設定し直し、自分の重み
をreturnで制御プロセスへ送り、自分の重みをreexecut
e の重みで再設定し、ふたつの世代が等しいならば、re
execute の重みを自分の重みに加え、制御プロセスは、
returnを受信すると、returnが運んだ重みを旧世代重み
カウンタへ加え、加えた結果、旧世代重みカウンタの値
がある定まった一定値になったならば再実行の開始が完
了したことを確認でき、PEは、通常メッセージを受信
すると、「通常メッセージが持っている重みの世代」と
「自分の重みの世代」を比較し、「自分の重みの世代」
が1世代新しいならば、通常メッセージの重みをreturn
で制御プロセスへ送り、通常メッセージの内容を状態バ
ッファに記録し、通常メッセージを処理し、「自分の重
みの世代」が2世代分新しいならば、通常メッセージの
重みをreturnで制御プロセスへ送り、通常メッセージは
処理することなく捨て、「通常メッセージの重みの世
代」が1世代分新しいならば、状態バッファをクリア
し、自分の状態を状態バッファに記録し、自分の重みを
returnで制御プロセスへ送り、自分の重みを通常メッセ
ージの重みで再設定し、通常メッセージを処理し、「通
常メッセージの重みの世代」が2世代分新しいならば、
自分の状態を状態バッファの内容で設定し直し、自分の
重みをreturnで制御プロセスへ送り、自分の重みを通常
メッセージの重みで再設定し、通常メッセージを処理
し、ふたつの世代が等しいならば、通常メッセージの重
みを自分の重みに加え、通常メッセージを処理すること
を特徴とするチェックポイント設定と再実行方法。 〈説明〉状態フラグのとる値は構成11と同様である。
<Configuration 14> A finite number of processor groups (hereinafter, referred to as PE groups) are connected to each other via a network. The PE groups communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. , Each PE and network channel operate independently according to their respective clocks, each PE can send messages to other PEs, record their status and received messages, set checkpoints and There is a special process (referred to as a control process) that issues a re-execution instruction. The control process and all PEs can perform message communication with each other. Called a message, the control process and PEs send each other to set a checkpoint and re-execute. The message to be transmitted is called a control message, the control process, the PE and the message have a weight, the sum of all the weights takes a predetermined constant value, the weight has a generation, and all the weights are initialized to the same generation, The control process has an old generation weight counter, and the control process sets its own weight in the old generation weight counter, sets its own weight to a constant value, and sets the generation of its own weight in order to perform checkpoint setting. Next, record (reco
rd) Control messages (hereinafter referred to as record) are sent to all PEs.
, The record is weighted, its own weight is reduced by that amount, and when the PE receives the record, the PE compares "the generation of the weight that the record has" with "the generation of its own weight", If the "record weight generation" is new, clear the state buffer, record your state in the state buffer,
Sends its own weight to the control process with a return control message (hereinafter referred to as "return"), resets its own weight with the weight of record, and if the two generations are equal, adds the weight of record to its own weight and controls When the process receives the return, the process adds the weight carried by the return to the old generation weight counter, and when the old generation weight counter reaches a certain fixed value, the checkpoint setting is completed. Is confirmed, the control process sets its own weight in the old generation weight counter, sets its own weight to a certain fixed value, performs two generations of its own weight, and performs Execute (reexecute) control message (hereinafter referred to as “reexecute”) is sent to all PEs, and reex
The ecute is weighted, and its own weight is reduced by that amount. When the PE receives the reexecute, the PE compares "the generation of the weight that reexecute has" with "the generation of its own weight", and "the weight of the reexecute If the "generation" is new, reset its own state with the contents of the state buffer, send its own weight to the control process by return, and reexecut its own weight.
reset by the weight of e, and if the two generations are equal, re
Adding the weight of execute to your own weight, the control process
When return is received, the weight carried by return is added to the old generation weight counter, and when the value of the old generation weight counter reaches a certain fixed value, it can be confirmed that re-start has been completed. When the PE receives the normal message, the PE compares the “generation of the weight that the normal message has” with the “generation of its own weight”, and “the generation of its own weight”
Is one generation newer, usually returns the weight of the message
To the control process, record the contents of the normal message in the status buffer, process the normal message, and if the "generation of its own weight" is new by two generations, send the weight of the normal message to the control process by return, The normal message is discarded without processing, and if the "generation of the weight of the normal message" is newer by one generation, the status buffer is cleared, the own status is recorded in the status buffer, and the own weight is set.
Send to the control process with return, reset its own weight with the weight of the normal message, process the normal message, and if the "generation of the weight of the normal message" is two generations newer,
Resets its state with the contents of the state buffer, sends its weight to the control process with return, resets its weight with the weight of the normal message, processes the normal message, if the two generations are equal A checkpoint setting and re-execution method, wherein the normal message is processed by adding the weight of the normal message to its own weight. <Description> The values of the status flags are the same as in the configuration 11.

【0045】〈構成15〉構成10及び12において、
重みの世代としてA、B、Cの3種類の世代を設け、重
みの世代を進める処理を、AならばBにする、Bならば
Cにする、CならばAにする処理であるとし、重みの世
代の新旧を、AとBではBの方が新しい、BとCではC
の方が新しい、CとAではAの方が新しい、と定めたこ
とを特徴とするチェックポイント設定方法。
<Structure 15> In structures 10 and 12,
It is assumed that three types of generations of A, B, and C are provided as the generations of the weights, and the processing of advancing the generations of the weights is processing of setting B for A, setting C for B, and setting A for C. The old and new generations of weights, B is newer in A and B, C in B and C
The checkpoint setting method is characterized in that it is determined that is newer, and that C and A are newer.

【0046】〈構成16〉構成11及び13において、
重みの世代としてA、B、Cの3種類の世代を設け、重
みの世代を進める処理を、AならばBにする、Bならば
Cにする、CならばAにする処理であるとし、重みの世
代の新旧を、AとBではBの方が新しい、BとCではC
の方が新しい、CとAではAの方が新しい、と定めたこ
とを特徴とするチェックポイント設定と再実行方法。
<Structure 16> In structures 11 and 13,
It is assumed that three types of generations of A, B, and C are provided as the generations of the weights, and the processing of advancing the generations of the weights is processing of setting B for A, setting C for B, and setting A for C. The old and new generations of weights, B is newer in A and B, C in B and C
Is newer, and between C and A, A is newer.

【0047】〈構成17〉構成14において、重みの世
代として、A、B、C、D、Eの5種類の世代を設け、
重みの世代をひとつ進める処理を、AならばBにする、
BならばCにする、CならばDにする、DならばEにす
る、EならばAにする処理であるとし、重みの世代をふ
たつ進める処理を、AならばCにする、BならばDにす
る、CならばEにする、DならばAにする、EならばB
にする処理であるとし、重みの世代の新旧を、AとBで
はBの方が1世代新しい、BとCではCの方が1世代新
しい、CとDではDの方が1世代新しい、DとEではE
の方が1世代新しい、EとAではAの方が1世代新し
い、AとCではCの方が2世代新しい、BとDではDの
方が2世代新しい、CとEではEの方が2世代新しい、
DとAではAの方が2世代新しい、EとBではBの方が
2世代新しいと定めたことを特徴とするチェックポイン
ト設定と再実行方法。
<Structure 17> In Structure 14, five generations of A, B, C, D, and E are provided as weight generations.
The processing to advance the weight generation by one is changed to B if A,
If B, then C, C, then D, D, then E, E, then A D, C, E, D, A, E, B
In the processing of A and B, B is one generation newer in A and B, C is one generation new in B and C, D is one generation new in C and D, E for D and E
Is one generation new, A is one generation new in E and A, C is two generations new in A and C, D is two generations new in B and D, E is C and E Is two generations new,
A checkpoint setting and re-execution method characterized in that A is two generations newer for D and A, and B is two generations newer for E and B.

【0048】〈構成18〉有限個のプロセッサ (以
下、PEと書く) が論理的な通信チャネルで互いに結
合しており、PE群は非同期メッセージ通信によって互
いに通信し、通信チャネル上でメッセージの追い越しの
起こることがあり、メッセージが送信された順序に到着
する保証はなく、システム全体を統括するクロックはな
く、各PEとネットワークチャネルはそれぞれのクロッ
クに従い個別に動き、各PEは他のすべてのPEへメッ
セージを送ることができ、自分の状態と受信したメッセ
ージを記録することができ、チェックポイントの設定と
再実行の指示を出す特別なプロセス(制御プロセスと呼
ぶ)が存在し、制御プロセスとすべてのPEは互いにメ
ッセージ通信を行なうことができ、通常処理を行なうた
めにPE群が互いに送受信するメッセージを通常メッセ
ージと呼び、チェックポイントの設定と再実行を行なう
ために制御プロセスとPE群が互いに送受信するメッセ
ージを制御メッセージと呼び、制御プロセスとPE及び
メッセージは重みを持ち、すべての重みの合計は一定値
を取り、重みは世代を持ち、すべての重みを同じ世代に
初期設定し、制御プロセスは旧世代重みカウンタを持
ち、各PEは状態フラグと状態レコード、IDレジスタを
持ち、状態レコードはIDフィールドと状態フィールドか
らなり、状態フラグはCあるいはRのいずれかの値を取
り、状態フィールドは割り付けた段階ではクリアされて
おり、制御プロセスは、チェックポイント設定を行なう
ために、設定するチェックポイントのID(checkpointID
と呼ぶ)を決定し、checkpoint制御メッセージ(以下ch
eckpointと略す)をすべてのPEへ送信し、checkpoint
はcheckpointIDを引数として持ち、すべてのPEからac
kCheckpoint制御メッセージ(以下ackCheckpointと書
く)を受信するまで待ち、旧世代重みカウンタに自分の
重みを設定し、自分の重みを一定値に設定し、自分の重
みの世代をひとつ進め、record制御メッセージ(以下re
cordと略す)をすべてのPEへ送信し、recordには重み
を付け、自分の重みはその分だけ減らし、PEは、chec
kpointを受信すると、状態フラグをCに設定し、checkp
ointが運んだcheckpointIDをIDレジスタに記録し、状態
レコードを新しく割り付け、IDフィールドにcheckpoint
IDを記録し、ackCheckpointを制御プロセスへ返信し、r
ecordを受信すると、「recordが持っている重みの世
代」と「自分の重みの世代」を比較し、「recordの重み
の世代」が新しいならば、IDレジスタが示す状態レコー
ドの状態フィールドに自分の状態を記録し、自分の重み
をreturn制御メッセージ(以下returnと書く)で制御プ
ロセスへ送り、自分の重みをrecordの重みで再設定し、
ふたつの世代が等しいならば、recordの重みを自分の重
みに加え、制御プロセスは、returnを受信すると、retu
rnが運んだ重みを旧世代重みカウンタへ加え、加えた結
果、旧世代重みカウンタの値が一定値になったならばチ
ェックポイントの設定が完了したことが確認され、完了
を確認した時点における各PEの状態フィールドの集合
がチェックポイントを構成し、制御プロセスは、再実行
を行なうために、再実行を始めるチェックポイントを決
定し、そのチェックポイントを示すcheckpointIDを求
め、rollback制御メッセージ(以下rollbackと書く)を
すべてのPEへ送信し、rollbackはcheckpointIDを引数
として持ち、ackRollback制御メッセージ(以下ackRoll
backと書く)をすべてのPEから受信するまで待ち、旧
世代重みカウンタに自分の重みを設定し、自分の重みを
一定値に設定し、自分の重みの世代をひとつ進め、 ree
xecute制御メッセージ(以下 reexecuteと書く)をすべ
てのPEへ送信し、 reexecuteには重みを付け、自分の
重みはその分だけ減らし、PEは、rollbackを受信する
と、状態フラグをRに設定し、rollbackが運んだcheckp
ointIDをIDレジスタに記録し、ackRollbackを制御プロ
セスへ送り、 reexecuteを受信すると、「 reexecuteが
持っている重みの世代」と「自分の重みの世代」を比較
し、「 reexecuteの重みの世代」が新しいならば、IDレ
ジスタが示す状態レコードの状態フィールドの内容で自
分の状態を設定し直し、自分の重みをreturnで制御プロ
セスへ送り、自分の重みを reexecuteの重みで再設定
し、ふたつの世代が等しいならば、 reexecuteの重みを
自分の重みに加え、制御プロセスは、returnを受信する
と、returnが運んだ重みを旧世代重みカウンタへ加え、
加えた結果、旧世代重みカウンタの値が一定値になった
ならば再実行の開始が完了したことを確認でき、PE
は、通常メッセージを受信すると、「通常メッセージが
持っている重みの世代」と「自分の重みの世代」を比較
し、「自分の重みの世代」が新しく状態フラグがCなら
ば、通常メッセージの重みをreturnで制御プロセスへ送
り、IDレジスタが示す状態レコードの状態フィールドに
通常メッセージの内容を記録し、通常メッセージを処理
し、「自分の重みの世代」が新しく状態フラグがRなら
ば、通常メッセージの重みをreturnで制御プロセスへ送
り、通常メッセージは処理することなく捨て、「通常メ
ッセージの重みの世代」が新しく状態フラグがCなら
ば、IDレジスタが示す状態レコードの状態フィールドに
自分の状態を記録し、自分の重みをreturnで制御プロセ
スへ送り、自分の重みを通常メッセージの重みで再設定
し、通常メッセージを処理し、「通常メッセージの重み
の世代」が新しく状態フラグがRならば、IDレジスタが
示す状態レコードの状態フィールドの内容で自分の状態
を設定し直し、自分の重みをreturnで制御プロセスへ送
り、自分の重みを通常メッセージの重みで再設定し、通
常メッセージを処理し、ふたつの世代が等しいならば、
通常メッセージの重みを自分の重みに加え、通常メッセ
ージを処理することを特徴とするチェックポイント設定
と再実行方法。
<Structure 18> A finite number of processors (hereinafter, referred to as PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous message communication, and overtake messages on the communication channel. This can happen, there is no guarantee that messages will arrive in the order in which they were sent, there is no clock governing the entire system, each PE and network channel will operate independently according to their own clock, and each PE will send to every other PE. There are special processes (called control processes) that can send messages, record their status and received messages, and issue checkpointing and re-execution instructions. PEs can communicate with each other, and PEs send messages to each other for normal processing. A message to be transmitted is called a normal message, a message transmitted and received by a control process and a group of PEs for setting and re-executing a checkpoint is called a control message. The control process, the PE, and the message have a weight. Takes a constant value, the weight has a generation, all weights are initialized to the same generation, the control process has an old generation weight counter, each PE has a status flag and a status record, an ID register, The record is composed of an ID field and a status field. The status flag takes a value of either C or R. The status field is cleared at the stage of allocation, and the control process sets the checkpoint. Checkpoint ID (checkpointID
) And a checkpoint control message (ch
eckpoint) to all PEs and checkpoint
Has checkpointID as an argument, and ac
Wait until a kCheckpoint control message (hereinafter referred to as ackCheckpoint) is received, set your own weight in the old generation weight counter, set your own weight to a certain value, advance your weight by one generation, and record control message ( Below re
cord is abbreviated to all PEs, record is weighted, own weight is reduced by that much, PE is chec
When a kpoint is received, the status flag is set to C and checkp
Record the checkpoint ID carried by oint in the ID register, allocate a new status record, and checkpoint in the ID field
Record ID, send ackCheckpoint back to control process, r
When the ecord is received, the "generation of the weight that record has" and the "generation of its own weight" are compared, and if the "generation of the weight of record" is new, the self is added to the status field of the status record indicated by the ID register. And send its weight to the control process with a return control message (hereinafter referred to as "return"), reset its own weight with the weight of record,
If the two generations are equal, the weight of record is added to its own weight, and the control process receives a return and returns
The weight carried by rn is added to the old generation weight counter.As a result, if the value of the old generation weight counter becomes a constant value, it is confirmed that the setting of the checkpoint is completed. The set of status fields of the PEs constitute a checkpoint, and the control process determines a checkpoint to start the re-execution, obtains a checkpoint ID indicating the check point, and executes a rollback control message (hereinafter, rollback and rollback control message). Writeback) to all PEs, and rollback has a checkpointID as an argument, and an ackRollback control message (hereinafter ackRollback
back) is received from all PEs, sets its own weight in the old generation weight counter, sets its own weight to a certain value, advances the generation of its own weight by one,
Sends an xecute control message (hereinafter referred to as reexecute) to all PEs, assigns a weight to reexecute, and reduces its own weight by that amount. When the PE receives rollback, the PE sets the status flag to R, Checkp carried by
Record the ointID in the ID register, send ackRollback to the control process, and when reexecute is received, compare the `` generation of the weight that reexecute has '' with the `` generation of your own weight '', and the `` generation of the weight of reexecute '' If it is new, reset its own state with the contents of the state field of the state record indicated by the ID register, send its own weight to the control process with return, reset its own weight with the weight of reexecute, two generations Are equal, the reexecute weight is added to its own weight, and the control process, upon receiving the return, adds the weight carried by return to the old generation weight counter,
As a result, when the value of the old generation weight counter becomes a constant value, it can be confirmed that the re-execution has been started, and that PE
Receives the normal message, compares the “generation of the weight that the normal message has” with the “generation of its own weight”, and if the “own weight generation” is new and the status flag is C, Send the weight to the control process by return, record the contents of the normal message in the status field of the status record indicated by the ID register, process the normal message, and if the "own weight generation" is new and the status flag is R, the normal The weight of the message is sent to the control process by return, the normal message is discarded without processing, and if the "generation of normal message weight" is new and the status flag is C, the status field of the status record indicated by the ID register indicates its status Record, send its weight to the control process by return, reset its weight with the weight of the normal message, and process the normal message. If the “normal message weight generation” is new and the status flag is R, reset your own status with the contents of the status field of the status record indicated by the ID register, send your weight to the control process by return, and Is re-weighted by the weight of the normal message, the normal message is processed, and if the two generations are equal,
A checkpoint setting and re-execution method characterized by processing a normal message by adding the weight of the normal message to its own weight.

【0049】〈構成19〉有限個のプロセッサ(以下、
PEと書く)が論理的な通信チャネルで互いに結合して
おり、PE群は非同期メッセージ通信によって互いに通
信し、通信チャネル上でメッセージの追い越しの起こる
ことがあり、メッセージが送信された順序に到着する保
証はなく、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動き、各PEは他のすべてのPEへメッセージ
を送ることができ、自分の状態と受信したメッセージを
記録することができ、チェックポイントの設定と再実行
の指示を出す特別なプロセス(制御プロセスと呼ぶ)が
存在し、制御プロセスとすべてのPEは互いにメッセー
ジ通信を行なうことができ、通常処理を行なうためにP
E群が互いに送受信するメッセージを通常メッセージと
呼び、チェックポイントの設定と再実行を行なうために
制御プロセスとPE群が互いに送受信するメッセージを
制御メッセージと呼び、制御プロセスとPE及びメッセ
ージは重みを持ち、すべての重みの合計は一定値を取
り、重みは世代を持ち、すべての重みを同じ世代に初期
設定し、制御プロセスは旧世代重みカウンタを持ち、各
PEは状態フラグと状態レコード、IDレジスタ、メッセ
ージバッファを持ち、状態レコードはIDフィールドと状
態フィールドからなり、状態フラグはCあるいはRのい
ずれかの値を取り、状態フィールドは割り付けた段階で
はクリアされており、メッセージバッファは初期化処理
でクリアし、制御プロセスは、チェックポイント設定を
行なうために、設定するチェックポイントを示すcheckp
ointIDを決定し、旧世代重みカウンタに自分の重みを設
定し、自分の重みを一定値に設定し、自分の重みの世代
をひとつ進め、recordをすべてのPEへ送信し、record
はcheckpointIDを引数として持ち、recordには重みを付
け、自分の重みはその分だけ減らし、PEは、recordを
受信すると、状態フラグをCに設定し、recordが運んだ
checkpointIDをIDレジスタに記録し、状態レコードを新
しく割り付け、IDフィールドにcheckpointIDを、状態フ
ィールドに自分の状態を記録し、自分の重みをreturnで
制御プロセスへ送り、自分の重みをrecordの重みで再設
定し、メッセージバッファに通常メッセージが格納され
ているならば、それらの重みを自分の重みに加えてから
それらを処理し、メッセージバッファをクリアし、制御
プロセスは、returnを受信すると、returnが運んだ重み
を旧世代重みカウンタへ加え、加えた結果、旧世代重み
カウンタの値が一定値になったならばチェックポイント
の設定が完了したことが確認され、完了を確認した時点
における各PEの状態フィールドの集合がチェックポイ
ントを構成し、制御プロセスは、再実行を行なうため
に、再実行を始めるチェックポイントを決定し、そのチ
ェックポイントを示すcheckpointIDを求め、旧世代重み
カウンタに自分の重みを設定し、自分の重みを一定値に
設定し、自分の重みの世代をひとつ進め、 reexecuteを
すべてのPEへ送信し、 reexecuteはcheckpointIDを引
数として持ち、 reexecuteには重みを付け、自分の重み
はその分だけ減らし、PEは、 reexecuteを受信する
と、状態フラグをRに設定し、 reexecuteが運んだchec
kpointIDが示す状態レコードの状態フィールドの内容で
自分の状態を設定し直し、自分の重みをreturnで制御プ
ロセスへ送り、自分の重みを reexecuteの重みで再設定
し、メッセージバッファに通常メッセージが格納されて
いるならば、それらの重みを自分の重みに加えてからそ
れらを処理し、メッセージバッファをクリアし、制御プ
ロセスは、returnを受信すると、returnが運んだ重みを
旧世代重みカウンタへ加え、加えた結果、旧世代重みカ
ウンタの値が一定値になったならば再実行の開始が完了
したことを確認でき、PEは、通常メッセージを受信す
ると、「通常メッセージが持っている重みの世代」と
「自分の重みの世代」を比較し、「自分の重みの世代」
が新しく状態フラグがCならば、通常メッセージの重み
をreturnで制御プロセスへ送り、IDレジスタが示す状態
レコードの状態フィールドに通常メッセージの内容を記
録し、通常メッセージを処理し、「自分の重みの世代」
が新しく状態フラグがRならば、通常メッセージの重み
をreturnで制御プロセスへ送り、通常メッセージは処理
することなく捨て、「通常メッセージの重みの世代」が
新しいならば、その通常メッセージは処理せずにメッセ
ージバッファに格納し、ふたつの世代が等しいならば、
通常メッセージの重みを自分の重みに加え、通常メッセ
ージを処理することを特徴とするチェックポイント設定
と再実行方法。
<Structure 19> A finite number of processors (hereinafter, referred to as
PEs) are connected to each other by a logical communication channel, the PEs communicate with each other by asynchronous messaging, overtaking of messages may occur on the communication channel, and messages arrive in the order in which they were sent. There is no guarantee, there is no clock to control the whole system, each PE and network channel run independently according to their clock, each PE can send messages to all other PEs, their status and received messages And there is a special process (called a control process) that issues a checkpoint setting and re-execution instruction. The control process and all PEs can perform message communication with each other, and perform normal processing. P to do
Messages transmitted and received by the group E are called normal messages, messages transmitted and received by the control process and the group of PEs for setting and re-executing checkpoints are called control messages, and the control process, the PEs and the messages have weight. , The sum of all weights takes a constant value, the weights have a generation, all weights are initialized to the same generation, the control process has an old generation weight counter, each PE has a status flag and status record, an ID register , A message buffer, a status record consists of an ID field and a status field, a status flag takes a value of either C or R, the status field is cleared at the stage of allocation, and the message buffer is initialized by an initialization process. Clear and set the control process to checkpoint Checkp indicating the checkpoint to perform
Determine the ointID, set its own weight in the old generation weight counter, set its own weight to a fixed value, advance the generation of its own weight by one, send record to all PEs, record
Has a checkpointID as an argument, weights record, reduces its own weight by that amount, and when PE receives record, it sets the status flag to C, and record carries
Record the checkpoint ID in the ID register, allocate a new status record, record the checkpoint ID in the ID field, record your status in the status field, send your weight to the control process with return, and re-apply your weight with the weight of record. Set, if the message buffer normally contains messages, add their weights to their own weight, then process them, clear the message buffer, and the control process will return when the return is received. The weight is added to the old generation weight counter. As a result, when the value of the old generation weight counter becomes a constant value, it is confirmed that the setting of the checkpoint is completed, and the state of each PE at the time when the completion is confirmed The set of fields constitutes a checkpoint, and the control process sets a checkpoint to begin Determine, find checkpointID indicating the checkpoint, set own weight in old generation weight counter, set own weight to a certain value, advance one weight generation, and send reexecute to all PEs Then, reexecute has checkpointID as an argument, weights reexecute, and reduces its own weight by that amount. When PE receives reexecute, it sets the status flag to R, and the chec carried by reexecute
Resets its own state with the contents of the state field of the state record indicated by kpointID, sends its own weight to the control process by return, resets its own weight by reexecute weight, and stores the normal message in the message buffer. If so, add those weights to their own weights, process them, clear the message buffer, and when the control receives a return, add the weight carried by return to the old generation weight counter, add As a result, when the value of the old generation weight counter becomes a constant value, it is possible to confirm that the re-execution has been started, and when the PE receives the normal message, the PE reads "generation of the weight held by the normal message". Compare “own weight generation” and “own weight generation”
Is new and the status flag is C, the weight of the normal message is sent to the control process by return, the contents of the normal message are recorded in the status field of the status record indicated by the ID register, the normal message is processed, and “the weight of the own weight” is output. generation"
Is new, if the status flag is R, the weight of the normal message is sent to the control process by return, and the normal message is discarded without processing. If the "generation of the weight of the normal message" is new, the normal message is not processed. And if the two generations are equal,
A checkpoint setting and re-execution method characterized by processing a normal message by adding the weight of the normal message to its own weight.

【0050】〈構成20〉有限個のプロセッサ(以下、
PEと書く)が論理的な通信チャネルで互いに結合して
おり、PE群は非同期メッセージ通信によって互いに通
信し、通信チャネル上でメッセージの追い越しの起こる
ことがあり、メッセージが送信された順序に到着する保
証はなく、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動き、各PEは他のすべてのPEへメッセージ
を送ることができ、自分の状態と受信したメッセージを
記録することができ、チェックポイントの設定と再実行
の指示を出す特別なプロセス(制御プロセスと呼ぶ)が
存在し、制御プロセスとすべてのPEは互いにメッセー
ジ通信を行なうことができ、通常処理を行なうためにP
E群が互いに送受信するメッセージを通常メッセージと
呼び、チェックポイントの設定と再実行を行なうために
制御プロセスとPE群が互いに送受信するメッセージを
制御メッセージと呼び、制御プロセスとPE及びメッセ
ージは重みを持ち、すべての重みの合計は一定値を取
り、重みは世代を持ち、すべての重みを同じ世代に初期
設定し、制御プロセスは旧世代重みカウンタを持ち、各
PEは状態スイッチと状態レコード、IDレジスタを持
ち、状態レコードはIDフィールドと状態フィールドから
なり、状態スイッチはC、C′、R、R′のいずれかの
値を取り、初期値はCであり、状態フィールドは割り付
けた段階ではクリアされており、制御プロセスは、チェ
ックポイント設定を行なうために、設定するチェックポ
イントを示すcheckpointIDを決定し、旧世代重みカウン
タに自分の重みを設定し、自分の重みを一定値に設定
し、自分の重みの世代をひとつ進め、recordをすべての
PEへ送信し、recordはcheckpointIDを引数として持
ち、recordには重みを付け、自分の重みはその分だけ減
らし、PEは、recordを受信すると、「recordが持って
いる重みの世代」と「自分の重みの世代」を比較し、
「recordの重みの世代」が新しいならば、状態フラグを
C′に設定し、recordが運んだcheckpointIDをIDレジス
タに記録し、状態レコードを新しく割り付け、IDフィー
ルドにcheckpointIDを、状態フィールドに自分の状態を
記録し、自分の重みをreturnで制御プロセスへ送り、自
分の重みをrecordの重みで再設定し、ふたつの世代が等
しいならば、recordの重みを自分の重みに加え、制御プ
ロセスは、returnを受信すると、returnが運んだ重みを
旧世代重みカウンタへ加え、加えた結果、旧世代重みカ
ウンタの値が一定値になったならばチェックポイントの
設定が完了したことが確認され、完了を確認した時点に
おける各PEの状態フィールドの集合がチェックポイン
トを構成し、制御プロセスは、チェックポイント設定の
完了を確認すると、 completed制御メッセージ(以下 c
ompletedと略す)をすべてのPEへ送信し、 completed
には重みを付け、自分の重みはその分だけ減らし、制御
プロセスは、再実行を行なうために、再実行を始めるチ
ェックポイントを決定し、そのチェックポイントを示す
checkpointIDを求め、旧世代重みカウンタに自分の重み
を設定し、自分の重みを一定値に設定し、自分の重みの
世代をひとつ進め、 reexecuteをすべてのPEへ送信
し、 reexecuteはcheckpointIDを引数として持ち、 ree
xecuteには重みを付け、自分の重みはその分だけ減ら
し、PEは、 reexecuteを受信すると、「 reexecuteが
持っている重みの世代」と「自分の重みの世代」を比較
し、「 reexecuteの重みの世代」が新しいならば、状態
フラグをR′に設定し、 reexecuteが運んだcheckpoint
IDをIDレジスタに記録し、checkpointIDが示す状態レコ
ードの状態フィールドの内容で自分の状態を設定し直
し、自分の重みをreturnで制御プロセスへ送り、自分の
重みを reexecuteの重みで再設定し、ふたつの世代が等
しいならば、 reexecuteの重みを自分の重みに加え、制
御プロセスは、returnを受信すると、returnが運んだ重
みを旧世代重みカウンタへ加え、加えた結果、旧世代重
みカウンタの値が一定値になったならば再実行の開始が
完了したことを確認でき、制御プロセスは、再実行開始
の完了を確認すると、 completed制御メッセージ(以下
completedと略す)をすべてのPEへ送信し、 complet
edには重みを付け、自分の重みはその分だけ減らし、P
Eは、 completedを受信すると、状態スイッチがC′な
らば、Cに設定し、状態スイッチがR′ならば、Rに設
定し、PEは、通常メッセージを受信すると、「通常メ
ッセージが持っている重みの世代」と「自分の重みの世
代」を比較し、「自分の重みの世代」が新しく状態スイ
ッチがC′ならば、通常メッセージの重みをreturnで制
御プロセスへ送り、IDレジスタが示す状態レコードの状
態フィールドに通常メッセージの内容を記録し、通常メ
ッセージを処理し、「自分の重みの世代」が新しく状態
スイッチがR′ならば、通常メッセージの重みをreturn
で制御プロセスへ送り、通常メッセージは処理すること
なく捨て、「通常メッセージの重みの世代」が新しく
「通常メッセージの状態フラグ」がC′ならば、状態ス
イッチをC′に設定し、通常メッセージが運んだcheckp
ointIDをIDレジスタに記録し、状態レコードを新しく割
り付け、IDフィールドにcheckpointIDを、状態フィール
ドに自分の状態を記録し、自分の重みをreturnで制御プ
ロセスへ送り、自分の重みを通常メッセージの重みで再
設定し、通常メッセージを処理し、「通常メッセージの
重みの世代」が新しく「通常メッセージの状態フラグ」
がR′ならば、状態スイッチをR′に設定し、通常メッ
セージが運んだcheckpointIDをIDレジスタに記録し、ch
eckpointIDが示す状態レコードの状態フィールドの内容
で自分の状態を設定し直し、自分の重みをreturnで制御
プロセスへ送り、自分の重みを通常メッセージの重みで
再設定し、通常メッセージを処理し、ふたつの世代が等
しいならば、通常メッセージの重みを自分の重みに加
え、通常メッセージを処理し、PEは、通常メッセージ
を送信する時、状態スイッチがC′あるいはR′なら
ば、状態スイッチの値と、IDレジスタが記録しているch
eckpointIDを通常メッセージに付けて送ることを特徴と
するチェックポイント設定と再実行方法。
<Structure 20> A finite number of processors (hereinafter referred to as
PEs) are connected to each other by a logical communication channel, the PEs communicate with each other by asynchronous messaging, overtaking of messages may occur on the communication channel, and messages arrive in the order in which they were sent. There is no guarantee, there is no clock to control the whole system, each PE and network channel run independently according to their clock, each PE can send messages to all other PEs, their status and received messages And there is a special process (called a control process) that issues a checkpoint setting and re-execution instruction. The control process and all PEs can perform message communication with each other, and perform normal processing. P to do
Messages transmitted and received by the group E are called normal messages, messages transmitted and received by the control process and the group of PEs for setting and re-executing checkpoints are called control messages, and the control process, the PEs and the messages have weight. , The sum of all weights takes a constant value, the weights have a generation, all weights are initialized to the same generation, the control process has an old generation weight counter, each PE has a state switch and state record, an ID register The status record has an ID field and a status field. The status switch takes one of the values C, C ', R, and R'. The initial value is C. The status field is cleared at the stage of allocation. The control process sets a checkpoint ID indicating the checkpoint to be set in order to set the checkpoint. Decide, set its own weight in the old generation weight counter, set its own weight to a certain value, advance its own weight by one generation, send record to all PEs, and record has checkpointID as an argument. , Record is weighted, its own weight is reduced by that amount, and when PE receives record, it compares "the generation of weight that record has" with "the generation of its own weight",
If the "generation of record weight" is new, set the status flag to C ', record the checkpoint ID carried by record in the ID register, allocate a new status record, checkpointID in the ID field, and write your own in the status field. Record the state, send your weight to the control process with return, reset your weight with the weight of record, and if the two generations are equal, add the weight of record to your weight, and the control process will When return is received, the weight carried by return is added to the old generation weight counter.As a result, if the value of the old generation weight counter becomes a constant value, it is confirmed that the checkpoint setting is completed. The set of status fields of each PE at the time of confirmation constitutes a checkpoint, and the control process confirms the completion of checkpoint setting. : C
ompleted) to all PEs, completed
Is weighted, its own weight is reduced by that amount, and the control process determines a checkpoint to start the re-execution and indicates the check point in order to perform the re-execution
Find the checkpointID, set its own weight in the old generation weight counter, set its own weight to a certain value, advance the generation of its own weight by one, send reexecute to all PEs, reexecute with checkpointID as an argument Have, ree
xecute is weighted, its own weight is reduced by that amount, and when PE receives reexecute, it compares "the generation of weight that reexecute has" with "the generation of its own weight", and "reexecute weight If the "generation" is new, set the status flag to R 'and checkpoint carried by reexecute
Record the ID in the ID register, reset the own state with the contents of the state field of the state record indicated by checkpointID, send your own weight to the control process with return, reset your own weight with the weight of reexecute, If the two generations are equal, the reexecute weight is added to its own weight, and the control process, upon receiving the return, adds the weight carried by return to the old generation weight counter, and as a result, the value of the old generation weight counter is added. Can be confirmed that the start of re-execution has been completed if the value of has reached a certain value. When the control process confirms the completion of the start of re-execution, the completed control message
completed) to all PEs
ed is weighted, own weight is reduced by that much, P
When E receives the completed message, the status switch is set to C if the status switch is C ', and when the status switch is R', it is set to R if the status switch is R '. Compare the "weight generation" with the "own weight generation". If the "own weight generation" is new and the state switch is C ', send the weight of the normal message to the control process by return, and return the state indicated by the ID register. Record the contents of the normal message in the status field of the record, process the normal message, and if the "own weight generation" is new and the state switch is R ', return the weight of the normal message.
And the normal message is discarded without processing. If the "normal message weight generation" is new and the "normal message status flag" is C ', the status switch is set to C', and the normal message is discarded. Checkp carried
Record ointID in the ID register, allocate a new status record, record checkpointID in the ID field, record your status in the status field, send your weight to the control process with return, and assign your weight with the weight of the normal message. Reconfigure and process normal messages, new "normal message weight generation" new "normal message status flag"
Is R ', the status switch is set to R', and the checkpoint ID carried by the normal message is recorded in the ID register.
Reset your own state with the contents of the state field of the state record indicated by eckpointID, send your own weight to the control process with return, reset your own weight with the weight of normal message, process normal message, Are equal, the weight of the normal message is added to its own weight, and the normal message is processed. When the normal message is transmitted, if the state switch is C 'or R', the value of the state switch is equal to the value of the state switch. Ch recorded by ID register
Checkpoint setting and re-execution method characterized by sending eckpointID to normal message.

【0051】〈構成21〉有限個のプロセッサ(以下、
PEと書く)が論理的な通信チャネルで互いに結合して
おり、PE群は非同期メッセージ通信によって互いに通
信し、通信チャネル上でメッセージの追い越しの起こる
ことがあり、メッセージが送信された順序に到着する保
証はなく、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動き、各PEは他のすべてのPEへメッセージ
を送ることができ、自分の状態と受信したメッセージを
記録することができ、チェックポイントの設定と再実行
の指示を出す特別なプロセス(制御プロセスと呼ぶ)が
存在し、制御プロセスとすべてのPEは互いにメッセー
ジ通信を行なうことができ、PEは、returnの送信先を
示すreturn送信先レジスタを持ち、return送信先レジス
タが示す宛先へreturnを送信し、returnを受信すると、
「returnが運んだ重みの世代」と「自分の重みの世代」
を比較し、ふたつの世代が等しいならば、return送信先
レジスタが示す宛先へ、受信したreturnをそのまま送信
し、「自分の重みの世代」が新しいならば、returnが運
んだ重みを自分の重みに加えることを特徴とするチェッ
クポイント設定と再実行方法。
<Structure 21> A finite number of processors (hereinafter, referred to as
PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous messaging, which may overtake messages on the communication channel and arrive in the order in which the messages were sent. There is no guarantee, there is no clock to control the whole system, each PE and network channel run independently according to their clock, each PE can send messages to all other PEs, their status and received messages There is a special process (called a control process) that issues a checkpoint setting and re-execution instruction. The control process and all the PEs can perform message communication with each other. It has a return destination register that indicates the return destination, and sends a return to the destination indicated by the return destination register. And, upon receipt of the return,
"Returned weight generation" and "own weight generation"
If the two generations are equal, the received return is transmitted as it is to the destination indicated by the return destination register, and if the “own weight generation” is new, the weight carried by return Checkpoint setting and re-execution method characterized by adding to the above.

【0052】〈構成22〉有限個のプロセッサ(以下、
PEと書く)が論理的な通信チャネルで互いに結合して
おり、PE群は非同期メッセージ通信によって互いに通
信し、通信チャネル上でメッセージの追い越しの起こる
ことがあり、メッセージが送信された順序に到着する保
証はなく、システム全体を統括するクロックはなく、各
PEとネットワークチャネルはそれぞれのクロックに従
い個別に動き、各PEは他のすべてのPEへメッセージ
を送ることができ、自分の状態と受信したメッセージを
記録することができ、チェックポイントの設定と再実行
の指示を出す特別なプロセス(制御プロセスと呼ぶ)が
存在し、制御プロセスとすべてのPEは互いにメッセー
ジ通信を行なうことができ、通常処理を行なうためにP
E群が互いに送受信するメッセージを通常メッセージと
呼び、チェックポイントの設定と再実行を行なうために
制御プロセスとPE群が互いに送受信するメッセージを
制御メッセージと呼び、制御プロセスとPE及びメッセ
ージは重みを持ち、すべての重みの合計は一定値を取
り、重みは世代を持ち、すべての重みを同じ世代に初期
設定し、PEは、return送信先レジスタと返却重みカウ
ンタ、return送信スイッチ、return受信テーブルを持
ち、return受信テーブルはreturn送信元PEと受信フラ
グからなり、返却重みカウンタはゼロに初期設定し、re
turn送信スイッチはnotReady、ready、doneのいずれか
かの値を取り、returnを受信することのないPEはdone
に初期設定し、それ以外のPEはnotReadyに初期設定
し、受信フラグは notReceived、receivedのいずれかの
値を取り、 notReceivedに初期設定し、PEが、自分の
重みの世代より新しい世代の重みを持つrecord、 reexe
cuteあるいは通常メッセージを受信し、受信したメッセ
ージの重みで自分の重みを再設定した時は、返却重みカ
ウンタとreturn送信スイッチ、return受信テーブルを初
期設定し、PEがreturnを送信しようとした時、そのP
Eのreturn送信スイッチがdoneならば、return送信先レ
ジスタが示す宛先へreturnを送り、そのPEのreturn送
信スイッチが readyならば、「returnで返却しようとし
た重み」を却重みカウンタに足し込み、そのPEのretu
rn送信スイッチがnotReadyで、return受信テーブルの受
信フラグの値がすべてreceivedならば、「returnで返却
しようとする重み」と「返却重みカウンタが格納してい
る重み」の合計を運ぶreturnを、return送信先レジスタ
が示すPEへ送り、return送信スイッチをdoneにセット
し、そのPEのreturn送信スイッチがnotReadyで、retu
rn受信テーブルのひとつ以上の受信フラグが notReceiv
edならば、return送信スイッチを readyにセットし、
「returnで返却しようとした重み」を返却重みカウンタ
に足し込み、PEがreturnを受信した時、return送信ス
イッチがdoneで「returnが運んだ重みの世代」と「自分
の重みの世代」が等しいならば、返却重みカウンタとre
turn送信スイッチ、return受信テーブルを初期設定し、
returnが運んだ重みを返却重みカウンタに足し込み、re
turn受信テーブルの、受信したreturnの送信元PEに対
応する受信フラグをreceivedにセットし、return送信ス
イッチがdoneで「returnが運んだ重みの世代」より「自
分の重みの世代」が新しいならば、return送信先レジス
タが示すPEへ、そのreturnをそのまま送り、return送
信スイッチが readyならば、returnが運んだ重みを返却
重みカウンタに足し込み、return受信テーブルの、受信
したreturnの送信元PEに対応する受信フラグをreceiv
edにセットし、セットした結果、受信フラグの値がすべ
てreceivedになったならば返却重みカウンタが格納して
いる重みを運ぶreturnを、return送信先レジスタが示す
PEへ送り、return送信スイッチをdoneにセットし、re
turn送信スイッチがnotReadyならば、returnが運んだ重
みを返却重みカウンタに足し込み、return受信テーブル
の、受信したreturnの送信元PEに対応する受信フラグ
をreceivedにセットすることを特徴とするチェックポイ
ント設定と再実行方法。
<Structure 22> A finite number of processors (hereinafter referred to as
PEs) are connected to each other by a logical communication channel, the PEs communicate with each other by asynchronous messaging, overtaking of messages may occur on the communication channel, and messages arrive in the order in which they were sent. There is no guarantee, there is no clock to control the whole system, each PE and network channel run independently according to their clock, each PE can send messages to all other PEs, their status and received messages And there is a special process (called a control process) that issues a checkpoint setting and re-execution instruction. The control process and all PEs can perform message communication with each other, and perform normal processing. P to do
Messages transmitted and received by the group E are called normal messages, messages transmitted and received by the control process and the PE group for setting and re-executing checkpoints are called control messages, and the control process, the PE and the message have weight. , The sum of all weights takes a fixed value, the weight has a generation, and all weights are initialized to the same generation.The PE has a return destination register and return weight counter, a return transmission switch, and a return reception table. , The return reception table is composed of the return source PE and the reception flag, the return weight counter is initialized to zero,
The turn transmission switch takes one of the notReady, ready, and done values, and the PE that does not receive a return is done.
, The other PEs are initialized to notReady, the reception flag takes either the value of notReceived or received, and initialized to notReceived, and the PE uses the weight of a newer generation than its own generation. Having record, reexe
When receiving a cute or normal message and resetting its own weight with the weight of the received message, initialize the return weight counter, return transmission switch, return reception table, and when PE tries to transmit return, That P
If the return transmission switch of E is done, a return is sent to the destination indicated by the return transmission destination register. If the return transmission switch of the PE is ready, “the weight to be returned by return” is added to the rejection weight counter, Retu of that PE
If the sending switch is notReady and the values of the receiving flags in the return receiving table are all received, the return carrying the sum of the "weight to be returned by return" and the "weight stored in the return weight counter" is returned. Send to the PE indicated by the transmission destination register, set the return transmission switch to done, return return switch of that PE is notReady, and return
rn One or more reception flags in the reception table are notReceiv
If ed, set the return send switch to ready,
"Return weight to be returned" is added to the return weight counter, and when the PE receives the return, the return transmission switch is done and the "generation of the weight carried by return" is equal to the "own weight generation". Then, return weight counter and re
Initialize turn send switch, return receive table,
The weight carried by return is added to the return weight counter, and re
In the turn reception table, set the reception flag corresponding to the transmission source PE of the received return to received, and if the return transmission switch is done and the "own weight generation" is newer than "the weight carried by return" Then, the return is sent to the PE indicated by the return destination register as it is, and if the return transmission switch is ready, the weight carried by the return is added to the return weight counter, and the return PE in the return reception table is transmitted to the source PE of the received return. Receiv the corresponding receive flag
If the value of the reception flag is set to "received" as a result of the setting, the return carrying the weight stored in the return weight counter is sent to the PE indicated by the return destination register, and the return transmission switch is set to "done". Set to re
If the turn transmission switch is notReady, the check point is that the weight carried by return is added to the return weight counter, and the reception flag corresponding to the source PE of the received return in the return reception table is set to received. Configuration and re-run method.

【0053】〈構成23〉PEは、return送信先レジス
タと返却重みカウンタ、return送信スイッチ、return受
信カウンタを持ち、返却重みカウンタはゼロに初期設定
し、return送信スイッチはnotReady、 ready、doneのい
ずれかかの値を取り、returnを受信することのないPE
はdoneに初期設定し、それ以外のPEはnotReadyに初期
設定し、受信カウンタは「受信するreturnの最低数」に
初期設定し、PEが、自分の重みの世代より新しい世代
の重みを持つrecord、 reexecuteあるいは通常メッセー
ジを受信し、受信したメッセージの重みで自分の重みを
再設定した時は、返却重みカウンタとreturn送信スイッ
チ、return受信カウンタを初期設定し、PEがreturnを
送信しようとした時、そのPEのreturn送信スイッチが
doneならば、return送信先レジスタが示す宛先へreturn
を送り、そのPEのreturn送信スイッチが readyなら
ば、「returnで返却しようとした重み」を返却重みカウ
ンタに足し込み、そのPEのreturn送信スイッチがnotR
eadyでreturn受信カウンタの値がゼロならば、「return
で返却しようとする重み」と「返却重みカウンタが格納
している重み」の合計を運ぶreturnを、return送信先レ
ジスタが示すPEへ送り、return送信スイッチをdoneに
セットし、そのPEのreturn送信スイッチがnotReadyで
return受信カウンタの値がゼロでないならば、return送
信スイッチを readyにセットし、「returnで返却しよう
とした重み」を返却重みカウンタに足し込み、PEがre
turnを受信した時、return送信スイッチがdoneで「retu
rnが運んだ重みの世代」と「自分の重みの世代」が等し
いならば、返却重みカウンタとreturn送信スイッチ、re
turn受信カウンタを初期設定し、returnが運んだ重みを
返却重みカウンタに足し込み、return受信カウンタを-1
し、return送信スイッチがdoneで「returnが運んだ重み
の世代」より「自分の重みの世代」が新しいならば、re
turn送信先レジスタが示すPEへ、そのreturnをそのま
ま送り、return送信スイッチが readyならば、returnが
運んだ重みを返却重みカウンタに足し込み、return受信
カウンタを-1し、-1した結果、受信カウンタの値がゼロ
になったならば返却重みカウンタが格納している重みを
運ぶreturnを、return送信先レジスタが示すPEへ送
り、return送信スイッチをdoneにセットし、return送信
スイッチがnotReadyならば、returnが運んだ重みを返却
重みカウンタに足し込み、return受信カウンタを-1する
ことを特徴とするチェックポイント設定と再実行方法。
<Structure 23> The PE has a return destination register, a return weight counter, a return transmission switch, and a return reception counter. The return weight counter is initialized to zero, and the return transmission switch is set to notReady, ready, or done. PE that takes the value of heel and does not receive return
Is initialized to done, the other PEs are initialized to notReady, the reception counter is initialized to "the minimum number of returns to receive", and the PE has a newer generation weight than its own weight. When a PE receives a reexecute or normal message and resets its own weight with the weight of the received message, it initializes the return weight counter, return transmission switch, and return reception counter, and the PE attempts to transmit a return. , The return transmission switch of that PE is
If done, return to destination indicated by return destination register
If the return transmission switch of the PE is ready, add the “weight to be returned by return” to the return weight counter, and set the return transmission switch of the PE to notR.
If return return counter value is zero in eady, "return
Send the return carrying the sum of the weight to be returned by "the weight stored in the return weight counter" to the PE indicated by the return destination register, set the return transmission switch to done, and return transmission of that PE The switch is notReady
If the value of the return reception counter is not zero, the return transmission switch is set to ready, and the “weight to be returned by return” is added to the return weight counter.
When a turn is received, the return send switch is set to done and "retu
If the "generation of the weight carried by rn" and the "generation of its own weight" are equal, the return weight counter and the return transmission switch, re
Initialize the turn reception counter, add the weight carried by return to the return weight counter, and set the return reception counter to -1
If the return transmission switch is done and the “own weight generation” is newer than the “return weight weight generation”, re
The return is sent to the PE indicated by the turn destination register as it is, and if the return transmission switch is ready, the weight carried by the return is added to the return weight counter, the return reception counter is decremented by 1, and the result of -1 is received. If the value of the counter becomes zero, the return carrying the weight stored in the return weight counter is sent to the PE indicated by the return destination register, the return transmission switch is set to done, and if the return transmission switch is notReady, And adding a weight carried by return to a return weight counter and decrementing a return reception counter by one.

【0054】[0054]

【発明の実施の形態】以下、本発明の実施の形態を具体
例を用いて説明する。図1は、本発明の大域状態決定方
法の説明図である。以下、図を用いて、重み付け方式に
よって「ネットワークチャネル上にメッセージが存在し
なくなったこと」を検出し、メッセージの追い越しが有
り得るシステムの大域状態を決定する方法を述べる。ま
ず重み付け方式を説明し、その後具体例を述べる。尚、
従来技術と同様に、通常メッセージと制御メッセージを
以下の意味で用いる。 通常メッセージ:通常処理を行なうためのメッセージ。
PE群が互いに送受信する。 制御メッセージ:大域状態を求めるためのメッセージ。
決定プロセスとPE群が互いに送受信する。大域状態は
大域状態用バッファ3に最終的に集められる。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below using specific examples. FIG. 1 is an explanatory diagram of the global state determination method of the present invention. Hereinafter, a method of detecting “the message no longer exists on the network channel” by the weighting method and determining the global state of the system in which the message may be overtaken will be described with reference to the drawings. First, the weighting method will be described, and then a specific example will be described. still,
As in the prior art, the normal message and the control message are used in the following sense. Normal message: A message for performing normal processing.
PEs transmit and receive from each other. Control message: A message for determining the global state.
The decision process and the PEs communicate with each other. The global state is finally collected in the global state buffer 3.

【0055】図1に示すように、以下の3つのそれぞれ
は重みを持つ。即ち、決定プロセス1はW1,PEA ,
PEB ,PEC はそれぞれW2,W3,W4、メッセー
ジはXの重みを持つ。決定プロセス1の重みW1は例え
ば負の整数であり、その他の重みW2〜W4とXは例え
ば正の整数である。それぞれの重みは「すべての重みの
合計(W1+W2+W3+W4+X)が一定値例えばゼ
ロ」になるように初期設定する。各PEと決定プロセス
1は重みについて以下の処理を行ない、「すべての重み
の合計が例えばゼロ」という状態を保つ。
As shown in FIG. 1, each of the following three has a weight. That is, the decision process 1 includes W1, PEA,
PEB and PEC have weights of W2, W3 and W4, respectively, and the message has a weight of X. The weight W1 of the decision process 1 is, for example, a negative integer, and the other weights W2 to W4 and X are, for example, positive integers. The respective weights are initialized so that “the sum of all the weights (W1 + W2 + W3 + W4 + X) becomes a constant value, for example, zero”. Each PE and the decision process 1 perform the following processing on the weight, and keep the state that the sum of all weights is, for example, zero.

【0056】・メッセージを送信する時は、メッセージ
に重みを付け、自分の重みはその分だけ減らす。 ・メッセージを受信すると、メッセージに付いていた重
みを自分の重みに加える。この結果、「決定プロセス1
の重みが例えばゼロ」ということは、ネットワークチャ
ネル上にメッセージが存在しないで、かつ、すべてのP
Eの重みはゼロであるという状態が同時に成り立ってい
ることを意味する。このため本方式によって「ネットワ
ークチャネル上にメッセージが存在しなくなったこと」
を検出できる。以下では「すべての重みの合計がゼロ」
という設定の下で説明する。
When transmitting a message, weight the message and reduce its own weight. -When a message is received, the weight attached to the message is added to its own weight. As a result, "decision process 1"
Weight of, for example, zero "means that there are no messages on the network channel and all P
This means that the state where the weight of E is zero is simultaneously established. For this reason, this method "the message no longer exists on the network channel"
Can be detected. Below, "the sum of all weights is zero"
It will be described under the setting of.

【0057】〈具体例1〉この方法はネットワークチャ
ネルの状態を通常メッセージの受信側PEが求める方法
である。このために、各PEにはそれぞれ状態バッファ
5と送信バッファ6と受信バッファ7とが設けられてい
る。ネットワークチャネルとPEの状態は、PE側が受
信バッファ7と状態バッファ5にそれぞれ格納し、決定
プロセス1からの要求を受けて報告する。
<Specific Example 1> In this method, the state of the network channel is determined by the PE on the receiving side of the normal message. For this purpose, each PE is provided with a status buffer 5, a transmission buffer 6, and a reception buffer 7, respectively. The state of the network channel and the state of the PE are stored in the reception buffer 7 and the state buffer 5, respectively, on the PE side, and are reported upon receiving a request from the decision process 1.

【0058】決定プロセス1はすべてのPEへrecord制
御メッセージを送る。PEはrecord制御メッセージを受
信すると、その時点の自分の状態を状態バッファ5に格
納する。そして、その後、受信する通常メッセージのコ
ピーを格納していく。ネットワークチャネル上にメッセ
ージが存在しなくなったことを決定プロセス1が検出す
ると、すべてのPEへ request制御メッセージを送る。
PEは request制御メッセージを受信すると状態バッフ
ァ5に格納している自分の状態と受信バッファ7に格納
している受信メッセージのコピーをanswer制御メッセー
ジで報告する。この報告内容の集合が大域状態となる。
Decision process 1 sends a record control message to all PEs. When receiving the record control message, the PE stores its own state at that time in the state buffer 5. Thereafter, a copy of the received normal message is stored. When decision process 1 detects that the message is no longer on the network channel, it sends a request control message to all PEs.
When receiving the request control message, the PE reports its own status stored in the status buffer 5 and a copy of the received message stored in the reception buffer 7 in an answer control message. This set of report contents becomes the global state.

【0059】この具体例で利用されるバッファの詳細は
即ち、次の通りである。決定プロセスは大域状態用バッ
ファ3を持つ。各PEから送られてくる「PEの状態」
と「ネットワークチャネルの状態」をこのバッファに格
納する。このバッファの内容が「大域状態」となる。
The details of the buffer used in this specific example are as follows. The decision process has a global state buffer 3. "PE status" sent from each PE
And the "network channel state" are stored in this buffer. The contents of this buffer become "global state".

【0060】各PEは以下のスイッチとバッファを持
つ。 メッセージスイッチ:受信した通常メッセージの扱いと
通常メッセージの送信処理に関わるスイッチである。値
はrecorded,ready , notRecordedのいずれかであり、
初期値は notRecordedである。 PE状態バッファ:「PEの状態」を格納する。 受信バッファ:大域状態決定処理中に受信した通常メッ
セージのコピーをこのバッファに格納する。バッファの
内容が「ネットワークチャネルの状態」となる。 送信バッファ:まだ送信しない通常メッセージを一時的
にこのバッファに格納する。バッファ中のメッセージに
は重みを付けない。このメッセージを送信する前の状態
を、求める大域状態とするからである。送信メッセージ
の重みは大域状態決定処理の後で実際に送信するときに
付ける。
Each PE has the following switches and buffers. Message switch: A switch related to handling of a received normal message and transmission processing of the normal message. The value can be recorded, ready, or notRecorded.
The initial value is notRecorded. PE status buffer: Stores “PE status”. Receive buffer: Stores a copy of the normal message received during the global state determination process in this buffer. The content of the buffer becomes the “network channel state”. Transmission buffer: Temporarily stores ordinary messages that have not yet been transmitted in this buffer. The messages in the buffer are not weighted. This is because the state before transmitting this message is set to the desired global state. The weight of the transmission message is assigned when the transmission is actually performed after the global state determination processing.

【0061】図1の(b)には、各PEのメッセージス
イッチの状態を示した。決定プロセス1は、処理の開始
後以下の動作を行なう。 1.大域状態用バッファをクリアする。 2.すべてのPEへrecord制御メッセージを送る。reco
rd制御メッセージには重みを付け、自分の重みはその分
だけ減らす。 return制御メッセージを受信したら、付いていた重みを
自分の重みに加える。重みを加えた結果がゼロでない場
合は何も行わない。重みを加えた結果ゼロになったなら
ば、 request制御メッセージをすべてのPEに送る。 r
equest制御メッセージには重みを付けない。尚、この時
ネットワークチャネル上にはメッセージが存在せず、す
べてのPEのメッセージスイッチはrecordedである。an
swer制御メッセージを受信したら、メッセージが記録し
ている「(送信元)PEの状態」と「(送信元PEの)
ネットワークチャネルの状態」を大域状態用バッファに
格納する。
FIG. 1B shows the state of the message switch of each PE. The decision process 1 performs the following operations after the start of the processing. 1. Clear the global state buffer. 2. Send record control message to all PEs. reco
The rd control message is weighted, and its own weight is reduced accordingly. Upon receiving the return control message, add the weight attached to your own weight. If the weighted result is not zero, do nothing. If the weighting results in zero, a request control message is sent to all PEs. r
The equest control message is not weighted. At this time, no message exists on the network channel, and the message switches of all PEs are recorded. an
When the swer control message is received, the “(source) PE status” and “(source PE)”
The state of the network channel is stored in the global state buffer.

【0062】すべてのPEからanswer制御メッセージを
受信したら以下の処理を行う。尚、この時ネットワーク
チャネル上にはメッセージが存在せず、すべてのPEの
メッセージスイッチはready である。 1.この時点における大域状態用バッファの内容が「大
域状態」である。 2.すべてのPEへrestart 制御メッセージを送る。 大域状態決定処理の完了:すべてのPEからstarted 制
御メッセージを受信したら処理は完了である。この時、
すべてのPEのメッセージスイッチはnotRecorded であ
る。
When the answer control message is received from all PEs, the following processing is performed. At this time, no message exists on the network channel, and the message switches of all PEs are ready. 1. The contents of the global state buffer at this point are “global state”. 2. Send a restart control message to all PEs. Completion of global state determination processing: The processing is completed when started control messages are received from all PEs. At this time,
All PE message switches are notRecorded.

【0063】PEは次の動作を行う。record制御メッセ
ージを受信したら以下の処理を行う。尚、record制御メ
ッセージを受信するPEのメッセージスイッチは必ず n
otRecordedである。 1.自PEの状態をPE状態バッファに記録する。 2.メッセージスイッチをrecordedに設定する。 3.受信バッファと送信バッファをクリアする。 4.自PEの重みとrecord制御メッセージに付いていた
重みの合計をreturn制御メッセージで決定プロセスへ送
る。
The PE performs the following operation. When the record control message is received, the following processing is performed. The message switch of the PE receiving the record control message must be n
otRecorded. 1. The status of the own PE is recorded in the PE status buffer. 2. Set the message switch to recorded. 3. Clear the receive and transmit buffers. 4. The sum of the weight of the own PE and the weight attached to the record control message is sent to the decision process in a return control message.

【0064】request制御メッセージを受信したら以下
の処理を行なう。尚、 request制御メッセージを受信す
るPEの重みはゼロでありメッセージスイッチはrecord
edである。 1.メッセージスイッチを readyに設定する。 2.PE状態バッファの内容(PEの状態)と受信バッ
ファの内容(ネットワークチャネルの状態)をanswer制
御メッセージで決定プロセスへ送る。
When the request control message is received, the following processing is performed. The weight of the PE receiving the request control message is zero, and the message switch is record
ed. 1. Set the message switch to ready. 2. The content of the PE status buffer (PE status) and the content of the reception buffer (network channel status) are sent to the decision process in an answer control message.

【0065】restart制御メッセージを受信したら以下
の処理を行う。尚、 restart制御メッセージを受信する
PEのメッセージスイッチは readyあるいは notRecord
edである。 1. restart制御メッセージに付いていた重みを自PE
の重みに加える。 2.メッセージスイッチが readyならば notRecordedに
設定する。 3. started制御メッセージを決定プロセスへ送信す
る。 4.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。
When the restart control message is received, the following processing is performed. The message switch of the PE that receives the restart control message is ready or notRecord.
ed. 1. The weight attached to the restart control message is assigned to the own PE.
Weight. 2. If the message switch is ready, set to notRecorded. 3. Send a started control message to the decision process. 4. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly.

【0066】通常メッセージを受信した場合の処理はメ
ッセージスイッチの値によって異なる。recordedなら
ば、以下の処理を行なう。 1.そのメッセージのコピーを受信バッファに格納す
る。 2.そのメッセージを通常通り処理する。ただし、付い
ていた重みはreturn制御メッセージによって決定プロセ
スへ送る。readyならば、以下の処理を行う。 1.そのメッセージを通常通り処理する。 2.メッセージスイッチを notRecordedに設定する。 3.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。 notRecordedならば、そのメッセージを通常通り処理す
る。通常メッセージの送信処理もメッセージスイッチの
値によって異なる。メッセージスイッチが notRecorded
ならば重みを付けて実際に送信する。recordedあるいは
readyならば送信せず送信バッファに格納する。
Processing when a normal message is received differs depending on the value of the message switch. If recorded, the following processing is performed. 1. Store a copy of the message in the receive buffer. 2. Process the message as usual. However, the attached weight is sent to the decision process by a return control message. If ready, perform the following processing. 1. Process the message as usual. 2. Set the message switch to notRecorded. 3. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly. If notRecorded, process the message as usual. Normal message transmission processing also differs depending on the value of the message switch. Message switch is notRecorded
If so, weight is actually transmitted. recorded or
If it is ready, it is not transmitted and stored in the transmission buffer.

【0067】〈具体例1の動作〉図4〜図8には、具体
例1の動作説明図を示す。図4において、まず決定プロ
セス1が大域状態を決定するため、record制御メッセー
ジをすべてのPEへ送信した。これらの制御メッセージ
はいつ到着するかは不明である。各record制御メッセー
ジの重みWは“1”に設定し、決定プロセス1の重みは
“−500”からこのメッセージ分の“3”が差し引か
れて、“−503”に変化している。PEA は重みが3
00、PEB は重みが100、PEC は重みが100に
予め設定されている。なお、ここで、PEA は通常メッ
セージMA をPEB に送信した。この通常メッセージM
A の重みWは100である。従って、PEA の重みは3
00から200に減少している。また、PEB はPEC
に対し通常メッセージMB を送信した。この通常メッセ
ージMB の重みWは50である。従って、PEB の重み
は100から50に減少している。なお、これらのすべ
てのプロセッサはまだrecordメッセージが到着していな
いため、メッセージスイッチが notRecordedとなってい
る。
<Operation of Embodiment 1> FIGS. 4 to 8 are explanatory diagrams of the operation of Embodiment 1. FIG. In FIG. 4, first, the decision process 1 sends a record control message to all PEs to determine the global state. It is unknown when these control messages arrive. The weight W of each record control message is set to "1", and the weight of the decision process 1 is changed to "-503" by subtracting "3" for this message from "-500". PEA has a weight of 3
00, PEB have a weight of 100, and PEC has a weight of 100. Here, the PEA transmitted the normal message MA to the PEB. This normal message M
The weight W of A is 100. Therefore, the weight of PEA is 3
It has decreased from 00 to 200. PEB is PEC
Sent the normal message MB to the user. The weight W of the normal message MB is 50. Therefore, the weight of PEB has been reduced from 100 to 50. Note that since all of these processors have not yet received a record message, the message switch is notRecorded.

【0068】図4(b)において、record制御メッセー
ジがPEA とPEB とに到着した。このとき、これらは
自分の状態A0 ,B0 を状態バッファに格納し、それぞ
れreturn制御メッセージを決定プロセス1に送信してい
る。PEA から送信されたreturn制御メッセージの重み
は201である。これは、PEA のすべての重みとreco
rd制御メッセージの重みとを加算した値である。同様
に、PEB から送信されたreturn制御メッセージの重み
は51である。PEB の重みが50で、受信したrecord
制御メッセージの重みが1だからこれらを加算した値と
なる。尚、この状態では、メッセージMA は、まだPE
B に到着していない。一方、メッセージMB は既にPE
C に到着し、PEC の状態はC0 からC1 に変化してい
る。このとき、PEC は、元の重み100に対し受信し
た通常メッセージMB の重み50を加えた150となっ
ている。
In FIG. 4B, a record control message arrives at PEA and PEB. At this time, they store their states A0 and B0 in the state buffer, and transmit a return control message to the decision process 1 respectively. The weight of the return control message transmitted from PEA is 201. This is because all weights of PEA and reco
This is a value obtained by adding the weight of the rd control message. Similarly, the weight of the return control message transmitted from PEB is 51. PEB weight is 50 and received record
Since the weight of the control message is 1, a value obtained by adding these values is obtained. Note that in this state, the message MA is still PE
B has not arrived. On the other hand, message MB is already PE
Arriving at C, the state of PEC has changed from C0 to C1. At this time, the PEC is 150, which is the original weight 100 plus the weight 50 of the received normal message MB.

【0069】次に、図5(c)に移って、決定プロセス
1からrecord制御メッセージがPEC に到着すると、P
EC は自分の状態C1 を状態バッファに格納し、return
制御メッセージを決定プロセス1に送信する。この場合
に、自分の重みは既に150に変化しており、これに受
信したrecord制御メッセージの重み1を加えて151の
重みを付けてreturn制御メッセージを送信する。PEB
は、その後通常メッセージMA を受信し、状態がB0 か
らB1 に変化した。このとき、MA のコピーを受信バッ
ファに格納し、MA に付いていた重みをreturn制御メッ
セージで決定プロセス1へ送信した。従って、return制
御メッセージの重みは100となる。以上の結果、この
(c)に示すように、すべてのプロセッサPEA 、PE
B 、PEC は、いずれも重みが0になっている。
Next, referring to FIG. 5C, when the record control message from the decision process 1 arrives at the PEC, the P
EC stores its state C1 in the state buffer and returns
Send a control message to decision process 1. In this case, the own weight has already been changed to 150, and the weight 1 of the received record control message is added thereto, and a weight of 151 is transmitted to transmit the return control message. PEB
Received the normal message MA thereafter, and the state changed from B0 to B1. At this time, a copy of MA was stored in the receiving buffer, and the weight assigned to MA was transmitted to the decision process 1 in a return control message. Therefore, the weight of the return control message is 100. As a result, as shown in (c), all processors PEA, PEA
B and PEC both have a weight of 0.

【0070】図5の(d)において、決定プロセス1は
すべてのPEからreturn制御メッセージを受信し、自己
の重みと相殺することにより重みが0になった。このた
め、決定プロセス1は、すべてのPEに対し request制
御メッセージを送信した。なお、PEA は内部処理によ
り状態がA0 からA1 に変化した。また、PEC はPE
B へ送信しようとした通常メッセージMC を送信バッフ
ァに格納した。そして、PEC は、その後状態をC1 か
らC2 に変化させた。なお、この図5(d)の処理の
後、 request制御メッセージはすべてのPEに到着し
た。そして、図6(e)に示すように、 request制御メ
ッセージを受信した各PEはそれぞれ状態バッファに格
納していた内容と受信バッファに格納していた内容とを
answer制御メッセージを用いて決定プロセス1に送る。
図6(f)では、すべてのPEからanswer制御メッセー
ジを受信した決定プロセス1が大域状態用バッファにP
Eとネットワークチャネルの状態とを格納し終えたとこ
ろを示す。その後、決定プロセス1は restart制御メッ
セージをすべてのPEに送信する。各 restart制御メッ
セージはいずれも重みを300とし、決定プロセス1は
自己の重みを0から−900に変化させる。
In FIG. 5D, the decision process 1 receives the return control messages from all the PEs, and the weight is reduced to zero by canceling the self control weight. Therefore, the decision process 1 has transmitted the request control message to all the PEs. The state of PEA changed from A0 to A1 due to internal processing. PEC is PE
The normal message MC to be transmitted to B is stored in the transmission buffer. The PEC then changed its state from C1 to C2. After the process of FIG. 5D, the request control message has arrived at all PEs. Then, as shown in FIG. 6E, each of the PEs receiving the request control message exchanges the content stored in the status buffer with the content stored in the reception buffer.
Sent to decision process 1 using the answer control message.
In FIG. 6 (f), the decision process 1 having received the answer control message from all the PEs stores the P in the global state buffer.
E and the state of the network channel have been stored. Thereafter, decision process 1 sends a restart control message to all PEs. Each restart control message has a weight of 300, and the decision process 1 changes its own weight from 0 to -900.

【0071】図7の(g)では、 restart制御メッセー
ジがPEA とPEC とに到着した。ここで、PEA とP
EC は自己の重みをその restart制御メッセージの重み
とし、決定プロセス1に対し応答として started制御メ
ッセージを送る。なお、各プロセッサは決定プロセス1
にanswer制御メッセージを送信した後、メッセージスイ
ッチを readyとしている。そして、図6(f)の状態
で、決定プロセス1からrestart制御メッセージを受信
すると、そのメッセージスイッチを notRecordedに変化
させる。これによって、通常の動作を再開する。従っ
て、図7(g)に示すように、PEC はこれまで送信バ
ッファに保留していた送信メッセージMC をPEB に対
して送信する。これによって、自己の重み300から送
信メッセージの重み50を差し引いた250が新たなP
EC の重みとなる。また、図7(h)において、PEB
が決定プロセス1から restart制御メッセージを受信す
る前にメッセージMC をPEC から受信している。 res
tart制御メッセージが決定プロセス1から送信された後
は、既にどのプロセッサも動作を再開してよい状態にな
る。従って、たとえ決定プロセス1から restart制御メ
ッセージが届かない場合であっても、PEC から通常メ
ッセージを受信することによって既にPEC が restart
制御メッセージを受信したことを知るから、PEB はそ
の通常メッセージを受信し、動作を再開する。従って、
メッセージスイッチを readyから notRecordedの状態に
変化させる。なお、プロセッサPEA はこのとき内部処
理によって自己の状態がA1 からA2 に変化している。
In FIG. 7 (g), a restart control message arrives at PEA and PEC. Where PEA and P
EC uses its own weight as the weight of its restart control message and sends a started control message to decision process 1 as a response. Note that each processor performs the decision process 1
After sending the answer control message to, the message switch is set to ready. When the restart control message is received from the decision process 1 in the state of FIG. 6F, the message switch is changed to notRecorded. Thus, the normal operation is resumed. Accordingly, as shown in FIG. 7 (g), the PEC transmits the transmission message MC, which has been held in the transmission buffer, to the PEB. As a result, 250 obtained by subtracting the weight 50 of the transmission message from its own weight 300 becomes a new P.
It becomes the weight of EC. Also, in FIG.
Receives the message MC from the PEC before receiving the restart control message from the decision process 1. res
After the tart control message is transmitted from the decision process 1, any processor is ready to resume operation. Therefore, even if the restart control message does not arrive from the decision process 1, the PEC is already restarted by receiving the normal message from the PEC.
Knowing that it has received the control message, PEB receives its normal message and resumes operation. Therefore,
Change the message switch from ready to notRecorded. At this time, the processor PEA changes its state from A1 to A2 due to internal processing.

【0072】図8の(i)において、 restart制御メッ
セージがPEB に到着すると、PEB は started制御メ
ッセージを決定プロセス1に送る。尚、この段階でPE
B の重みは restart制御メッセージの重みを加えた35
0に変化している。そして、図8(j)において、すべ
てのPEから started制御メッセージを受信した決定プ
ロセス1は大域状態決定処理を終了し、大域状態用バッ
ファに格納した内容を求める大域状態とする。従って、
その結果は、PEA の状態がA0 、PEB の状態がB0
、PEC の状態がC1 で、PEA からPEB へのネッ
トワークチャネルの状態がMA となる。
In FIG. 8I, when the restart control message arrives at the PEB, the PEB sends a started control message to the decision process 1. At this stage, PE
The weight of B is the sum of the weight of the restart control message and 35
It has changed to zero. Then, in FIG. 8 (j), the decision process 1 that has received the started control messages from all the PEs ends the global state decision processing, and sets the global state to obtain the contents stored in the global state buffer. Therefore,
As a result, the state of PEA is A0 and the state of PEB is B0.
, PEC is C1, and the state of the network channel from PEA to PEB is MA.

【0073】〈具体例1の効果〉この具体例によれば、
すべてのネットワークチャネルに制御メッセージを送信
する必要はない。また、重み付け処理によってメッセー
ジの追い越しのあるシステムにも適用することができ
る。
<Effect of Specific Example 1> According to this specific example,
It is not necessary to send control messages to all network channels. Further, the present invention can be applied to a system in which a message is overtaken by a weighting process.

【0074】〈具体例2〉図9には、具体例2による状
態決定方法説明図を示す。この例は、ネットワークチャ
ネルの状態を通常メッセージの受信側PEが求める。ま
た、ネットワークチャネルとPEの状態は、PEが決定
プロセス1に逐次報告し、決定プロセス1が大域状態用
バッファに格納する。従って、PEは送信バッファ6の
みを持つ。メッセージスイッチは図9(b)に示すよう
に変化する。決定プロセス1はすべてのPEへrecord制
御メッセージを送る。PEはrecord制御メッセージを受
信すると、その時点の自分の状態を報告する。そして、
その後、通常メッセージを受信する度にメッセージの内
容を報告していく。決定プロセス1は受信した報告内容
を格納していき、ネットワークチャネル上にメッセージ
が存在しなくなったことを検出した時点における報告内
容の集合が大域状態となる。
<Embodiment 2> FIG. 9 is an explanatory diagram of a state determining method according to Embodiment 2. In this example, the state of the network channel is determined by the PE on the receiving side of the normal message. The status of the network channel and the PE are sequentially reported by the PE to the decision process 1, and the decision process 1 stores the status in the global status buffer. Therefore, the PE has only the transmission buffer 6. The message switch changes as shown in FIG. Decision process 1 sends a record control message to all PEs. When receiving the record control message, the PE reports its own state at that time. And
Thereafter, each time a normal message is received, the contents of the message are reported. The decision process 1 stores the received report contents, and the set of report contents at the time when it is detected that the message is no longer present on the network channel becomes the global state.

【0075】決定プロセス1は大域状態用バッファ3を
持つ。各PEから送られてくる「PEの状態」と「受信
した通常メッセージのコピー」をこのバッファに格納す
る。このバッファの内容が「大域状態」となる。各PE
は以下のスイッチとバッファを持つ。 メッセージスイッチ:受信した通常メッセージの扱いと
通常メッセージの送信処理に係わるスイッチである。値
はrecorded、ready 及び notRecordedのいずれかであ
り、初期値は notRecordedである。 送信バッファ:(まだ)送信しない通常メッセージを一
時的にこのバッファに格納する。バッファ中のメッセー
ジには重みを付けない。重みは実際に送信する時に付け
る。
The decision process 1 has a global state buffer 3. The “PE state” and the “copy of received normal message” sent from each PE are stored in this buffer. The contents of this buffer become "global state". Each PE
Has the following switches and buffers. Message switch: a switch related to handling of a received normal message and transmission processing of the normal message. The value is one of recorded, ready, and notRecorded. The initial value is notRecorded. Transmission buffer: Temporarily stores ordinary messages that are not transmitted (yet) in this buffer. The messages in the buffer are not weighted. Weights are assigned when actually transmitting.

【0076】決定プロセスは処理を開始すると以下のよ
うに動作する。 1.大域状態用バッファ3をクリアする。 2.すべてのPEへrecord制御メッセージを送る。reco
rd制御メッセージには重みを付け、自分の重みはその分
だけ減らす。return制御メッセージを受信したら以下の
処理を行なう。 1.メッセージに付いていた重みを自分の重みに加え
る。 2.メッセージが記録している「(送信元)PEの状
態」あるいは「(送信元PEが受信した)通常メッセー
ジのコピー」を大域状態用バッファ3に格納する。 3.重みを加えた結果ゼロになったならば、 proceed制
御メッセージをすべてのPEに送る。 proceed制御メッ
セージには重みを付けない。また、この時点における大
域状態用バッファの内容が「大域状態」である。
When the process starts, the decision process operates as follows. 1. The global state buffer 3 is cleared. 2. Send record control message to all PEs. reco
The rd control message is weighted, and its own weight is reduced accordingly. When the return control message is received, the following processing is performed. 1. Add the weight attached to the message to your own weight. 2. The “state of the (source) PE” or “copy of the normal message (received by the source PE)” recorded in the message is stored in the global state buffer 3. 3. If the weighting results in zero, send a proceed control message to all PEs. The proceed control message is not weighted. Further, the contents of the global state buffer at this point are “global state”.

【0077】大域状態決定後決定プロセスは、すべての
PEから proceeded制御メッセージを受信したら、すべ
てのPEへ restart制御メッセージを送る。尚、この時
ネットワークチャネル上にはメッセージが存在せず、す
べてのPEのメッセージスイッチは readyである。すべ
てのPEからstarted 制御メッセージを受信したら処理
は完了である。この時、すべてのPEのメッセージスイ
ッチは notRecordedである。
After receiving the proceeding control message from all the PEs, the decision process sends a restart control message to all the PEs. At this time, no message exists on the network channel, and the message switches of all PEs are ready. When the started control messages are received from all the PEs, the processing is completed. At this time, the message switches of all PEs are notRecorded.

【0078】各PEは、次のように動作する。record制
御メッセージを受信したら以下の処理を行う。尚、reco
rd制御メッセージを受信するPEのメッセージスイッチ
は必ず notRecordedである。 1.メッセージスイッチをrecordedに設定する。 2.送信バッファ3をクリアする。 3.「自PEの重みとrecord制御メッセージに付いてい
た重みの合計」と「自PEの状態」をreturn制御メッセ
ージで決定プロセスへ送る。
Each PE operates as follows. When the record control message is received, the following processing is performed. In addition, reco
The message switch of the PE receiving the rd control message is always notRecorded. 1. Set the message switch to recorded. 2. Clear the transmission buffer 3. 3. The “sum of the weight of the own PE and the weight attached to the record control message” and the “state of the own PE” are sent to the decision process by a return control message.

【0079】proceed制御メッセージを受信したら以下
の処理を行なう。尚、 proceed制御メッセージを受信す
るPEの重みはゼロであり、メッセージスイッチはreco
rdedである。 1.メッセージスイッチを readyに設定する。 2. proceeded制御メッセージを決定プロセスへ送信す
る。 restart制御メッセージを受信したら以下の処理を行
う。尚、 restart制御メッセージを受信するPEのメッ
セージスイッチは readyあるいは notRecordedである。
Upon receiving the proceed control message, the following processing is performed. The weight of the PE receiving the proceed control message is zero, and the message switch is
rded. 1. Set the message switch to ready. 2. Send a proceeded control message to the decision process. Perform the following processing when the restart control message is received. The message switch of the PE receiving the restart control message is ready or notRecorded.

【0080】1. restart制御メッセージに付いていた
重みを自PEの重みに加える。 2.メッセージスイッチが readyならば notRecordedに
設定する。 3. started制御メッセージを決定プロセスへ送信す
る。 4.送信バッファ6に通常メッセージが格納されている
ならば、それらを送信する。送信する通常メッセージに
は重みを付け、自PEの重みはその分だけ減らす。
1. The weight attached to the restart control message is added to the weight of the own PE. 2. If the message switch is ready, set to notRecorded. 3. Send a started control message to the decision process. 4. If normal messages are stored in the transmission buffer 6, they are transmitted. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly.

【0081】通常メッセージを受信した場合の処理はメ
ッセージスイッチの値によって異なる。recordedなら
ば、以下の処理を行なう。 1.「そのメッセージのコピー」と「そのメッセージに
付いていた重み」をreturn制御メッセージによって決定
プロセスへ送る。 2.そのメッセージを通常通り処理する。 readyならば、以下の処理を行う。 1.そのメッセージを通常通り処理する。 2.メッセージスイッチを notRecordedに設定する。 3.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。 notRecordedならば、そのメッセージを通常通り処理す
る。通常メッセージの送信処理もメッセージスイッチの
値によって異なる。メッセージスイッチが notRecorded
ならば重みを付けて実際に送信する。recordedあるいは
readyならば送信せず送信バッファに格納する。
The processing when a normal message is received differs depending on the value of the message switch. If recorded, the following processing is performed. 1. The "copy of the message" and the "weight attached to the message" are sent to the decision process by a return control message. 2. Process the message as usual. If ready, perform the following processing. 1. Process the message as usual. 2. Set the message switch to notRecorded. 3. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly. If notRecorded, process the message as usual. Normal message transmission processing also differs depending on the value of the message switch. Message switch is notRecorded
If so, weight is actually transmitted. recorded or
If it is ready, it is not transmitted and stored in the transmission buffer.

【0082】〈具体例2の動作〉図10には、具体例2
の動作説明図を示す。具体例2の動作は、決定プロセス
1がrecord制御メッセージを送信するまで具体例1と同
一である。これは、図4(a)を用いて説明した。次
に、各PEがrecord制御メッセージを受信したときの動
作を説明する。この具体例では、図10(a)に示すよ
うに、PEA とPEB がrecord制御メッセージを受信し
たとき、各PEは自己の状態を直ちにreturn制御メッセ
ージを用いて決定プロセス1に送信する。即ち、return
制御メッセージにはPEA は自己の状態A0 を、PEB
は自己の状態B0 を乗せる。尚、そのとき、return制御
メッセージの重みは図4(b)を用いて説明した具体例
1のときと同様に、PEA から送信されたものは重みが
201、PEB から送信されたものは重みが51となっ
ている。
<Operation of Embodiment 2> FIG.
FIG. The operation of the second embodiment is the same as that of the first embodiment until the decision process 1 transmits a record control message. This has been described with reference to FIG. Next, the operation when each PE receives the record control message will be described. In this specific example, as shown in FIG. 10A, when PEA and PEB receive the record control message, each PE immediately transmits its own state to the decision process 1 using the return control message. That is, return
In the control message, PEA indicates its own state A0 and PEB
Puts its own state B0. At this time, the weight of the return control message is 201 as in the case of the specific example 1 described with reference to FIG. It is 51.

【0083】こうして、return制御メッセージが決定プ
ロセス1に到着すると、決定プロセス1は各PEの状態
を大域状態用バッファに格納する。図10(b)におい
て、決定プロセス1はこのPEA とPEB からreturn制
御メッセージを受信すると、その重みを−503から−
251に変化させている。この処理は図5(c)に示し
た具体例1の処理と同様である。なお、このタイミング
でPEC はrecord制御メッセージを受信し、return制御
メッセージを用いて自己の状態C1 を決定プロセス1に
送信している。なお、そのときのreturn制御メッセージ
の重みは151となっている。この説明は、図5(c)
を用いて行った具体例1の場合と同様である。一方、re
turn制御メッセージを送信した後、更にPEB に通常メ
ッセージMA が到着した。PEB は、決定プロセス1に
対し受信した通常メッセージMAのコピーをreturn制御
メッセージを用いて通知する。尚、受信した通常メッセ
ージはPEB が処理し、その状態をB0 からB1 に変化
させている。また、return制御メッセージには受信した
通常メッセージの重み100を付加して決定プロセス1
に送信している。
Thus, when the return control message arrives at the decision process 1, the decision process 1 stores the state of each PE in the global state buffer. In FIG. 10B, upon receiving the return control message from the PEA and PEB, the decision process 1 changes the weight from -503 to-
251. This processing is the same as the processing of the specific example 1 shown in FIG. At this timing, the PEC receives the record control message and transmits its state C1 to the decision process 1 using the return control message. The weight of the return control message at that time is 151. This description is given in FIG.
This is the same as in the case of the specific example 1 performed using. On the other hand, re
After transmitting the turn control message, the normal message MA further arrives at PEB. PEB notifies the decision process 1 of a copy of the received normal message MA using a return control message. The received normal message is processed by the PEB, and its state is changed from B0 to B1. The return control message is added with the weight 100 of the received normal message to determine
Is sending to.

【0084】このように、具体例2では具体例1と同様
に、通常メッセージを受信した場合にはその重みを決定
プロセス1に送信するが、その受信した通常メッセージ
のコピーも合わせて決定プロセス1に逐次通知する。決
定プロセス1は、その内容を大域状態用バッファに格納
して保持する。従って、決定プロセス1の重みが0にな
ると同時に、決定プロセス1の大域状態用バッファに格
納された内容が求める大域状態となる。その後、決定プ
ロセスは具体例1の場合に送信した request制御メッセ
ージの代わりに proceed制御メッセージを各PEに送信
する。各PEからそれ以上何らかの情報を受け取る必要
がないからである。 proceedメッセージには重みを付け
ない。その後、 proceed制御メッセージに対応する pro
ceeded制御メッセージが各PEから決定プロセスに到着
すると、その後は具体例1と全く同様の動作で restart
制御メッセージとstarted制御メッセージの送受信が行
われる。
As described above, in the specific example 2, similarly to the specific example 1, when a normal message is received, its weight is transmitted to the decision process 1, and a copy of the received normal message is also added. Notify sequentially. The decision process 1 stores and holds the contents in a global state buffer. Therefore, at the same time when the weight of the decision process 1 becomes 0, the content stored in the global state buffer of the decision process 1 becomes the desired global state. Thereafter, the decision process sends a proceed control message to each PE instead of the request control message sent in the case of the first embodiment. This is because there is no need to receive any more information from each PE. proceed messages are not weighted. Then, the pro corresponding to the proceed control message
When the ceeded control message arrives at the decision process from each PE, the restart operation is performed in exactly the same manner as in the first embodiment.
Transmission and reception of the control message and the started control message are performed.

【0085】〈具体例2の効果〉この例でもすべてのネ
ットワークチャネルに制御メッセージを送信する必要は
ない。また、メッセージの追い越しのあるシステムにも
適用できる。具体例1の方法と異なり、PE側が状態バ
ッファや受信バッファを持つ必要はなくなる。また、P
Eの決定プロセスへのPEの状態と受信メッセージの報
告は、具体例1の場合には一括して通知できる効果があ
る一方、具体例2の場合にはこれらの情報は分割して送
信されるため、報告1回分のデータ量を小さくできる効
果がある。
<Effect of Specific Example 2> In this example as well, it is not necessary to transmit control messages to all network channels. Also, the present invention can be applied to a system in which messages are overtaken. Unlike the method of the specific example 1, the PE does not need to have the status buffer and the reception buffer. Also, P
In the specific example 1, the report of the PE status and the received message to the E determination process has the effect of being collectively notified, while in the specific example 2, these pieces of information are divided and transmitted. Therefore, there is an effect that the data amount for one report can be reduced.

【0086】〈具体例3〉図11は、具体例3の方法の
説明図である。この例は、ネットワークチャネルの状態
を通常メッセージの送信側PEが求める方法である。ネ
ットワークチャネルの状態は、PE側が送信バッファ6
に格納し、決定プロセス1からの要求を受けて報告す
る。PEの状態は、具体例1はrecord制御メッセージを
受信した状態であったが、この具体例では決定プロセス
1からの要求を受けた時の requestメッセージ受信時の
状態を報告する。まず、この具体例3の概略を説明す
る。決定プロセス1はすべてのPEへrecord制御メッセ
ージを送る。PEはrecord制御メッセージを受信する
と、その後送信する通常メッセージを送信バッファ6に
格納していく。ネットワークチャネル上にメッセージが
存在しなくなったことを決定プロセス1が検出すると、
すべてのPEへ request制御メッセージを送る。PEは
request制御メッセージを受信すると、その時点の自分
の状態と格納している送信メッセージを報告する。この
報告内容の集合が「大域状態」となる。
<Embodiment 3> FIG. 11 is an explanatory view of the method of Embodiment 3. In this example, the state of the network channel is obtained by the PE on the transmitting side of the normal message. The state of the network channel is determined by the PE on the transmission buffer 6.
And receives a report from the decision process 1 to report. The state of the PE is a state in which the record control message is received in the specific example 1, but in this specific example, the state at the time of receiving the request message when the request from the decision process 1 is received is reported. First, the outline of the specific example 3 will be described. Decision process 1 sends a record control message to all PEs. When the PE receives the record control message, the PE stores the normal message to be transmitted thereafter in the transmission buffer 6. When decision process 1 detects that the message is no longer on the network channel,
Send a request control message to all PEs. PE is
Upon receiving the request control message, it reports its status at that time and the stored transmission message. This set of report contents becomes the “global state”.

【0087】決定プロセスは大域状態用バッファを持
つ。各PEから送られてくる「PEの状態」と「ネット
ワークチャネルの状態」をこのバッファに格納する。こ
のバッファの内容が「大域状態」となる。各PEは以下
のスイッチとバッファを持つ。 メッセージスイッチ:受信した通常メッセージの扱いと
通常メッセージの送信処理に係わるスイッチである。値
はrecorded、 ready及び notRecordedのいずれかであ
り、初期値は notRecordedである。 送信バッファ:(まだ)送信しない通常メッセージを一
時的にこのバッファに格納する。バッファ中のメッセー
ジには重みを付けない。重みは実際に送信する時に付け
る。バッファの内容が「ネットワークチャネルの状態」
となる。
The decision process has a global state buffer. The “PE state” and the “network channel state” sent from each PE are stored in this buffer. The contents of this buffer become "global state". Each PE has the following switches and buffers. Message switch: a switch related to handling of a received normal message and transmission processing of the normal message. The value is one of recorded, ready, and notRecorded. The initial value is notRecorded. Transmission buffer: Temporarily stores ordinary messages that are not transmitted (yet) in this buffer. The messages in the buffer are not weighted. Weights are assigned when actually transmitting. The buffer contents are "Network channel status"
Becomes

【0088】決定プロセスは以下の処理を行なう。 1.大域状態用バッファをクリアする。 2.すべてのPEへrecord制御メッセージを送る。reco
rd制御メッセージには重みを付け、自分の重みはその分
だけ減らす。return制御メッセージを受信したら、付い
ていた重みを自分の重みに加える。重みを加えた結果が
ゼロでない場合は何も行わない。重みを加えた結果ゼロ
になったならば、 request制御メッセージをすべてのP
Eに送る。 request制御メッセージには重みを付けな
い。尚、この時ネットワークチャネル上にはメッセージ
が存在せず、すべてのPEのメッセージスイッチはreco
rdedである。answer制御メッセージを受信したら メッ
セージが記録している「(送信元)PEの状態」と
「(送信元PEの)ネットワークチャネルの状態」を大
域状態用バッファに格納する。
The determination process performs the following processing. 1. Clear the global state buffer. 2. Send record control message to all PEs. reco
The rd control message is weighted, and its own weight is reduced accordingly. Upon receiving the return control message, add the weight attached to your own weight. If the weighted result is not zero, do nothing. If the weighting results in zero, the request control message is sent to all P
Send to E. Request control messages are not weighted. At this time, no message exists on the network channel, and the message switches of all PEs
rded. When the answer control message is received, the "state of the (source) PE" and the "state of the network channel (of the source PE)" recorded in the message are stored in the global state buffer.

【0089】大域状態の決定と決定後の処理:すべての
PEからanswer制御メッセージを受信したら以下の処理
を行なう。尚、この時すべてのPEのメッセージスイッ
チはreadyである。 1.この時点における大域状態用バッファの内容が「大
域状態」である。 2.すべてのPEへ restart制御メッセージを送る。 大域状態決定処理の完了:すべてのPEから started制
御メッセージを受信したら処理は完了である。この時、
すべてのPEのメッセージスイッチは notRecordedであ
る。
Determination of global state and processing after determination: When answer control messages are received from all PEs, the following processing is performed. At this time, the message switches of all PEs are ready. 1. The contents of the global state buffer at this point are “global state”. 2. Send a restart control message to all PEs. Completion of global state determination processing: Processing is completed when started control messages are received from all PEs. At this time,
All PE message switches are notRecorded.

【0090】PEは次のように動作する。record制御メ
ッセージを受信したら以下の処理を行う。尚、recordを
受信するPEのメッセージスイッチは必ず notRecorded
である。 1.メッセージスイッチをrecordedに設定する。 2.送信バッファをクリアする。 3.自PEの重みとrecordに付いていた重みの合計をre
turnで決定プロセスへ送る。
The PE operates as follows. When the record control message is received, the following processing is performed. Note that the message switch of the PE receiving record must be notRecorded.
It is. 1. Set the message switch to recorded. 2. Clear the transmission buffer. 3. The sum of the weight of its own PE and the weight attached to record is re
Turn to send to decision process.

【0091】request制御メッセージを受信したら以下
の処理を行なう。尚、 request制御メッセージを受信す
るPEの重みはゼロであり、メッセージスイッチはreco
rdedである。 1.メッセージスイッチを readyに設定する。 2.自PEの状態と送信バッファの内容(ネットワーク
チャネルの状態)をanswer制御メッセージで決定プロセ
スへ送る。
When the request control message is received, the following processing is performed. The weight of the PE receiving the request control message is zero, and the message switch
rded. 1. Set the message switch to ready. 2. The state of the own PE and the contents of the transmission buffer (state of the network channel) are sent to the decision process by an answer control message.

【0092】restart制御メッセージを受信したら以下
の処理を行う。尚、 restart制御メッセージを受信する
PEのメッセージスイッチは readyあるいは notRecord
edである。 1. restart制御メッセージに付いていた重みを自PE
の重みに加える。 2.メッセージスイッチが readyならば notRecordedに
設定する。 3. started制御メッセージを決定プロセスへ送信す
る。 4.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。
When the restart control message is received, the following processing is performed. The message switch of the PE that receives the restart control message is ready or notRecord.
ed. 1. The weight attached to the restart control message is assigned to the own PE.
Weight. 2. If the message switch is ready, set to notRecorded. 3. Send a started control message to the decision process. 4. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly.

【0093】通常メッセージを受信した場合の処理はメ
ッセージスイッチの値によって異なる。recordedなら
ば、そのメッセージを通常通り処理する。ただし付いて
いた重みはreturn制御メッセージによって決定プロセス
へ送る。readyならば、以下の処理を行う。 1.そのメッセージを通常通り処理する。 2.メッセージスイッチを notRecordedに設定する。 3.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。 notRecordedならば、そのメッセージを通常通り処理す
る。通常メッセージの送信処理もメッセージスイッチの
値によって異なる。メッセージスイッチが notRecorded
ならば重みを付けて実際に送信する。recordedあるいは
readyならば送信せず送信バッファに格納する。
Processing when a normal message is received differs depending on the value of the message switch. If recorded, process the message as usual. However, the attached weight is sent to the decision process by a return control message. If ready, perform the following processing. 1. Process the message as usual. 2. Set the message switch to notRecorded. 3. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly. If notRecorded, process the message as usual. Normal message transmission processing also differs depending on the value of the message switch. Message switch is notRecorded
If so, weight is actually transmitted. recorded or
If it is ready, it is not transmitted and stored in the transmission buffer.

【0094】〈具体例3の動作〉図12に、具体例3の
動作説明図を示す。この具体例は、はじめに具体例1と
同様にして図4(a)(b)と図5(c)が示すrecord
制御メッセージによる状態決定処理の開始とreturn制御
メッセージによる重みの返却を行う。図12に示すよう
に決定プロセスからPEに request制御メッセージが到
着すると、各PEは(b)に示すようにそのときの自己
の状態と送信バッファの内容とを決定プロセスに送る。
その後の動作は、具体例1と変わるところはない。
<Operation of Embodiment 3> FIG. 12 is a diagram for explaining the operation of Embodiment 3. This specific example is performed in the same manner as the first specific example.
The status determination process is started by the control message and the weight is returned by the return control message. When the request control message arrives at the PE from the decision process as shown in FIG. 12, each PE sends its own state and the contents of the transmission buffer to the decision process as shown in FIG.
The subsequent operation is not different from that of the first embodiment.

【0095】〈具体例3の効果〉この方法もすべてのネ
ットワークチャネルに制御メッセージを送信する必要は
ない。また、メッセージの追い越しのあるシステムにも
適用できる。なお、具体例1と比較すると、「PE側に
は送信バッファのみを設ければよい」という点がPEに
とって有利である。
<Effect of Embodiment 3> In this method, it is not necessary to transmit a control message to all network channels. Also, the present invention can be applied to a system in which messages are overtaken. In comparison with the first example, the point that only the transmission buffer needs to be provided on the PE side is advantageous for the PE.

【0096】〈具体例4〉この方法は、ネットワークチ
ャネルの状態を通常メッセージの送信側PEが求める方
法である。ネットワークチャネルの状態は、PE側が逐
次報告する。PEの状態は、決定プロセスからの要求を
受けた時の状態をPEが報告する。決定プロセスはすべ
てのPEへrecord制御メッセージを送る。PEはrecord
制御メッセージを受信すると、その後通常メッセージを
送信しようとする度にその通常メッセージの内容を報告
していく。ネットワークチャネル上に通常メッセージが
存在しなくなったことを決定プロセスが検出すると、全
てのPEに request制御メッセージを送信する。PEは
request制御メッセージを受信してただちに、その時点
の自分の状態を報告する。以上の報告内容の集合が大域
状態となる。報告回数をカウントすることにより、すべ
ての報告が受信されたことを検出する。
<Example 4> This method is a method in which the state of the network channel is determined by the PE on the transmitting side of the normal message. The status of the network channel is sequentially reported by the PE. The status of the PE is reported by the PE when it receives a request from the decision process. The decision process sends a record control message to all PEs. PE is record
When the control message is received, the content of the normal message is reported each time the control message is transmitted. When the decision process detects that there is no longer a normal message on the network channel, it sends a request control message to all PEs. PE is
Immediately after receiving the request control message, it reports its status at that time. A set of the above report contents becomes a global state. By counting the number of reports, it detects that all reports have been received.

【0097】図13は、具体例4の方法を示す説明図で
ある。図のように、決定プロセス1は以下のカウンタ1
1とバッファ3を持つ。 report受信カウンタ11:PEによって送信されたすべ
てのreport制御メッセージを決定プロセスが受信したこ
とを確認するためのカウンタ。 大域状態用バッファ3:各PEから送られてくる「送信
する通常メッセージのコピー」と「PEの状態」をこの
バッファに格納する。このバッファの内容が「大域状
態」となる。各PEは以下のスイッチとカウンタ12、
バッファ6を持つ。 メッセージスイッチ:受信した通常メッセージの扱いと
通常メッセージの送信処理に係わるスイッチである。値
はrecord、 ready及び notRecordedのいずれかであり、
初期値は notRecordedである。 report送信カウンタ12:report制御メッセージの送信
数をカウントする。 送信バッファ6:(まだ)送信しない通常メッセージを
一時的にこのバッファに格納する。バッファ中のメッセ
ージには重みを付けない。重みは実際に送信する時に付
ける。
FIG. 13 is an explanatory view showing the method of the fourth embodiment. As shown, decision process 1 comprises the following counter 1
1 and buffer 3. report reception counter 11: a counter for confirming that the decision process has received all report control messages transmitted by the PE. Global state buffer 3: Stores "copy of normal message to be transmitted" and "PE state" sent from each PE in this buffer. The contents of this buffer become "global state". Each PE has the following switches and counters 12,
It has a buffer 6. Message switch: a switch related to handling of a received normal message and transmission processing of the normal message. The value can be record, ready, or notRecorded,
The initial value is notRecorded. report transmission counter 12: counts the number of report control message transmissions. Transmission buffer 6: A normal message that is not transmitted (yet) is temporarily stored in this buffer. The messages in the buffer are not weighted. Weights are assigned when actually transmitting.

【0098】決定プロセスは以下の処理を行なう。 1.report受信カウンタ11をクリアする。 2.大域状態用バッファ3をクリアする。 3.すべてのPEへrecord制御メッセージを送る。reco
rdには重みを付け、自分の重みはその分だけ減らす。 report制御メッセージを受信したら以下の処理を行な
う。 1.report受信カウンタ11を+1する。 2.メッセージが記録している「(送信元PEが送信す
る)通常メッセージのコピー」を大域状態用バッファ3
に格納する。 return制御メッセージを受信したら、付いていた重みを
自分の重みに加える。重みを加えた結果がゼロでない場
合は何も行わない。重みを加えた結果ゼロになったなら
ば、 request制御メッセージをすべてのPEに送る。 r
equest制御メッセージには重みを付けない。尚、この時
すべてのPEのメッセージスイッチはrecordedである。
answer制御メッセージを受信したら、メッセージが記録
している「report送信カウンタの値」と「(送信元)P
Eの状態」を使って以下の処理を行なう。 1.「report送信カウンタの値」だけreport受信カウン
タ11を減算する。 2.「(送信元)PEの状態」を大域状態用バッファ3
に格納する。 大域状態の決定処理では、report送信カウンタの値がゼ
ロになり、すべてのPEからanswerを受信したら以下の
処理を行う。尚、この時ネットワークチャネル上にはメ
ッセージが存在せず、すべてのPEのメッセージスイッ
チは readyである。 1.この時点における大域状態用バッファ3の内容が
「大域状態」である。 2.すべてのPEへ restart制御メッセージを送る。 すべてのPEから started制御メッセージを受信したら
処理は完了である。この時、すべてのPEのメッセージ
スイッチは notRecordedである。
The decision process performs the following processing. 1. The report reception counter 11 is cleared. 2. The global state buffer 3 is cleared. 3. Send record control message to all PEs. reco
rd is weighted and its own weight is reduced accordingly. When the report control message is received, the following processing is performed. 1. The report reception counter 11 is incremented by one. 2. The "copies of normal messages (transmitted by the source PE)" recorded in the message are stored in the global state buffer 3.
To be stored. Upon receiving the return control message, add the weight attached to your own weight. If the weighted result is not zero, do nothing. If the weighting results in zero, a request control message is sent to all PEs. r
The equest control message is not weighted. At this time, the message switches of all PEs are recorded.
When the answer control message is received, the "report transmission counter value" and "(sender) P
The following processing is performed using "state of E". 1. The report reception counter 11 is decremented by “report transmission counter value”. 2. "(Transmission source) PE status" is changed to the global status buffer 3
To be stored. In the global state determination processing, when the value of the report transmission counter becomes zero and the answer is received from all PEs, the following processing is performed. At this time, no message exists on the network channel, and the message switches of all PEs are ready. 1. The content of the global state buffer 3 at this point is "global state". 2. Send a restart control message to all PEs. The process is completed when the started control messages are received from all the PEs. At this time, the message switches of all PEs are notRecorded.

【0099】PEは、record制御メッセージを受信した
ら以下の処理を行う。尚、record制御メッセージを受信
するPEのメッセージスイッチは必ず notRecordedであ
る。 1.メッセージスイッチをrecordedに設定する。 2.report送信カウンタ12と送信バッファ6をクリア
する。 3.自PEの重みとrecord制御メッセージに付いていた
重みの合計をreturn制御メッセージで決定プロセスへ送
る。 request制御メッセージを受信したら、以下の処理を行
なう。尚、 request制御メッセージを受信するPEの重
みはゼロでありメッセージスイッチはrecordedである。 1.メッセージスイッチを readyに設定する。 2.「report送信カウンタの値」と「自PEの状態」を
answer制御メッセージで決定プロセスへ送る。 restart制御メッセージを受信したら、以下の処理を行
う。尚、 restart制御メッセージを受信するPEのメッ
セージスイッチは readyあるいは notRecordedである。 1. restart制御メッセージに付いていた重みを自PE
の重みに加える。 2.メッセージスイッチが readyならば notRecordedに
設定する。 3. started制御メッセージを決定プロセスへ送信す
る。 4.送信バッファ6に通常メッセージが格納されている
ならば、それらを送信する。送信する通常メッセージに
は重みを付け、自PEの重みはその分だけ減らす。
The PE performs the following processing upon receiving the record control message. The message switch of the PE that receives the record control message is always notRecorded. 1. Set the message switch to recorded. 2. The report transmission counter 12 and the transmission buffer 6 are cleared. 3. The sum of the weight of the own PE and the weight attached to the record control message is sent to the decision process in a return control message. When the request control message is received, the following processing is performed. The weight of the PE receiving the request control message is zero, and the message switch is recorded. 1. Set the message switch to ready. 2. "Report transmission counter value" and "own PE status"
Sent to decision process in answer control message. When the restart control message is received, perform the following processing. The message switch of the PE receiving the restart control message is ready or notRecorded. 1. The weight attached to the restart control message is assigned to the own PE.
Weight. 2. If the message switch is ready, set to notRecorded. 3. Send a started control message to the decision process. 4. If normal messages are stored in the transmission buffer 6, they are transmitted. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly.

【0100】通常メッセージを受信した場合の処理はメ
ッセージスイッチの値によって異なる。recordedなら
ば、そのメッセージを通常通り処理する。ただし付いて
いた重みはreturn制御メッセージによって決定プロセス
へ送る。readyならば、以下の処理を行う。 1.そのメッセージを通常通り処理する。 2.メッセージスイッチを notRecordedに設定する。 3.送信バッファ6に通常メッセージが格納されている
ならば、それらを送信する。送信する通常メッセージに
は重みを付け、自PEの重みはその分だけ減らす。 notRecordedならば、そのメッセージを通常通り処理す
る。
The processing when a normal message is received differs depending on the value of the message switch. If recorded, process the message as usual. However, the attached weight is sent to the decision process by a return control message. If ready, perform the following processing. 1. Process the message as usual. 2. Set the message switch to notRecorded. 3. If normal messages are stored in the transmission buffer 6, they are transmitted. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly. If notRecorded, process the message as usual.

【0101】通常メッセージの送信処理もメッセージス
イッチの値によって異なる。メッセージスイッチが not
Recordedならば重みを付けて実際に送信する。recorded
ならば送信せず送信バッファに格納する。そして、その
メッセージのコピーをreport制御メッセージで決定プロ
セスへ送り、report送信カウンタ12を+1する。repo
rt制御メッセージには重みを付けない。readyならば送
信せず送信バッファに格納する。
The normal message transmission process also depends on the value of the message switch. Message switch is not
If it is Recorded, it is actually weighted and transmitted. recorded
If not, the data is not transmitted and stored in the transmission buffer. Then, a copy of the message is sent to the decision process by a report control message, and the report transmission counter 12 is incremented by one. repo
No weight is assigned to the rt control message. If it is ready, it is not transmitted and stored in the transmission buffer.

【0102】すべてのreport制御メッセージを受信した
ことを確認するには以下の困難がある。 ・report制御メッセージは重みを持たないので、(PE
は重みゼロの時にreport制御メッセージを送信するの
で、重みを持たすことができない。)決定プロセスがす
べてのreport制御メッセージを受信したことを重み付け
によって確認することはできない。 ・report制御メッセージ送信の総数は不定であり、PE
によっても送信数は異なるので(何度も送信するPEが
あるかもしれないし、一度も送信しないPEがあるかも
しれない。)、決定プロセスが受信数を単純にカウント
したのでは不十分である。 ・PEは、すべてのreport制御メッセージを送信した後
にanswer制御メッセージを送信する。しかし、メッセー
ジの追い越しが起こりうるシステムでは、answer制御メ
ッセージがreport制御メッセージを追い越してしまうか
もしれない。このため、決定プロセスがすべてのPEか
らanswer制御メッセージを受信しても、ネットワークチ
ャネル上にはreport制御メッセージがまだ存在する可能
性がある。本方法では、各PEがreport制御メッセージ
の送信数を決定プロセスへ伝えることによってすべての
reportが受信されたことを確認する。
There are the following difficulties in confirming that all report control messages have been received. -Since the report control message has no weight, (PE
Sends a report control message when the weight is zero, so it cannot have a weight. ) It cannot be ascertained by weighting that the decision process has received all report control messages. -The total number of report control message transmissions is undefined,
Since the number of transmissions differs depending on the case (there may be PEs that transmit many times, or there may be PEs that never transmit), it is not enough for the decision process to simply count the number of receptions. -The PE sends an answer control message after sending all report control messages. However, in systems where message overtaking can occur, the answer control message may overtake the report control message. Thus, even though the decision process receives an answer control message from all PEs, there may still be a report control message on the network channel. In this method, each PE communicates to the decision process the number of report control messages sent,
Confirm that the report has been received.

【0103】〈具体例4の動作〉図14には、具体例4
の動作説明図を示す。record制御メッセージを受信した
PEは、送信しようとした通常メッセージを送信バッフ
ァに格納するとともに、そのコピーをreport制御メッセ
ージで決定プロセスに送信する。このとき、送信回数の
確認のために送信カウンタ12を+1する。重みがゼロ
になった決定プロセスはすべてのPEへ request制御メ
ッセージを送信する。以上の様子を図14(a)が示し
ている。また(b)に示すように、report制御メッセー
ジを受信した決定プロセスは、report受信カウンタを+
1して、report制御メッセージが運んだ通常メッセージ
のコピーを大域状態用バッファ3に格納する。一方、 r
equest制御メッセージを受信したPEは、自己の状態と
report送信カウンタの値をanswer制御メッセージで決定
プロセスに送る。こうして、決定プロセス側で、カウン
タの値の照合をして、全てのanswer制御メッセージの到
着を確認する。
<Operation of Embodiment 4> FIG.
FIG. The PE receiving the record control message stores the normal message to be transmitted in the transmission buffer, and transmits a copy of the normal message to the decision process using the report control message. At this time, the transmission counter 12 is incremented by 1 to confirm the number of transmissions. The decision process whose weight becomes zero sends a request control message to all PEs. FIG. 14A shows the above state. As shown in (b), the decision process that has received the report control message sets the report reception counter to +
First, a copy of the normal message carried by the report control message is stored in the global state buffer 3. On the other hand, r
The PE receiving the equest control message determines its own status.
Send the value of the report transmission counter to the decision process in the answer control message. In this way, the decision process checks the value of the counter and confirms the arrival of all answer control messages.

【0104】〈具体例4の効果〉この方法はこれまでの
具体例と同様に、すべてのネットワークチャネルに制御
メッセージを送信する必要はない。また、メッセージの
追い越しのあるシステムにも適用できる。送信メッセー
ジのコピーの決定プロセスへの送信が具体例3のような
一括ではなく分割して行われるので、ひとつのメッセー
ジの大きさが小さくてすむという利点がある。さらに、
PEが送信バッファのみを持てば良い点で、具体例3と
同様の利点がある。
<Effect of Embodiment 4> This method does not need to transmit a control message to all network channels, as in the previous embodiments. Also, the present invention can be applied to a system in which messages are overtaken. Since the transmission of the transmission message to the copy determination process is performed not in a lump as in the third embodiment but in a divided manner, there is an advantage that the size of one message can be small. further,
There is an advantage similar to that of the third embodiment in that the PE only needs to have the transmission buffer.

【0105】〈具体例5〉この例も、ネットワークチャ
ネルの状態を通常メッセージの送信側PEが求める方法
である。ネットワークチャネルの状態は、PE側が逐次
報告する。PEの状態は、決定プロセスからの要求を受
けた時の状態をPEが報告する。尚、この具体例の方法
は、具体例4の方法から、report送受信カウンタを省略
して、簡素化したものである。このため、report制御メ
ッセージの数を照合する事はできず、「メッセージの追
い越しのないシステム」にのみ適用可能である。
<Example 5> This example is also a method in which the state of the network channel is obtained by the PE on the transmitting side of the normal message. The status of the network channel is sequentially reported by the PE. The status of the PE is reported by the PE when it receives a request from the decision process. The method of this specific example is simplified from the method of the specific example 4 by omitting the report transmission / reception counter. For this reason, the number of report control messages cannot be collated, and is applicable only to "a system without message overtaking."

【0106】この具体例5の構成は、図13の説明図の
中からreport受信カウンタ11とreport送信カウンタ1
2とを除外したものである。決定プロセス1はすべての
PEへrecord制御メッセージを送る。PEはrecord制御
メッセージを受信すると、その後、通常メッセージを送
信しようとする度に決定プロセスにその通常メッセージ
の内容を報告していく。ネットワークチャネル上に通常
メッセージが存在しなくなったことを決定プロセスが検
出すると、すべてのPEへ request制御メッセージを送
る。PEは request制御メッセージを受信すると、その
時点の自分の状態を報告する。以上の報告内容の集合が
大域状態となる。「メッセージの追い越しのないこと」
を利用して、すべての報告が受信されたことを検出す
る。
The configuration of this specific example 5 is based on the report reception counter 11 and the report transmission counter 1 in the explanatory diagram of FIG.
2 is excluded. Decision process 1 sends a record control message to all PEs. After receiving the record control message, the PE reports the content of the normal message to the decision process every time the PE attempts to transmit the normal message. When the decision process detects that there is no longer a normal message on the network channel, it sends a request control message to all PEs. When receiving the request control message, the PE reports its own state at that time. A set of the above report contents becomes a global state. "No message overtaking"
To detect that all reports have been received.

【0107】決定プロセス1は大域状態用バッファ3を
持つ。各PEから送られてくる「PEの状態」と「ネッ
トワークチャネルの状態」をこのバッファに格納する。
このバッファの内容が「大域状態」となる。各PEは以
下のスイッチとバッファ6を持つ。 メッセージスイッチ:受信した通常メッセージの扱いと
通常メッセージの送信処理に係わるスイッチである。値
はrecorded、 ready及び notRecordedのいずれかであ
り、初期値は notRecordedである。 送信バッファ:(まだ)送信しない通常メッセージを一
時的にこのバッファに格納する。バッファ中のメッセー
ジには重みを付けない。重みは実際に送信する時に付け
る。バッファの内容が「ネットワークチャネルの状態」
となる。
The decision process 1 has a global state buffer 3. The “PE state” and the “network channel state” sent from each PE are stored in this buffer.
The contents of this buffer become "global state". Each PE has the following switches and buffers 6. Message switch: a switch related to handling of a received normal message and transmission processing of the normal message. The value is one of recorded, ready, and notRecorded. The initial value is notRecorded. Transmission buffer: Temporarily stores ordinary messages that are not transmitted (yet) in this buffer. The messages in the buffer are not weighted. Weights are assigned when actually transmitting. The buffer contents are "Network channel status"
Becomes

【0108】決定プロセスは以下の処理を行なう。 1.大域状態用バッファ3をクリアする。 2.すべてのPEへrecord制御メッセージを送る。reco
rd制御メッセージには重みを付け、自分の重みはその分
だけ減らす。 report制御メッセージを受信したら、メッセージが記録
している「(送信元PEが送信する)通常メッセージの
コピー」を大域状態用バッファ3に格納する。return制
御メッセージを受信したら、付いていた重みを自分の重
みに加える。重みを加えた結果がゼロでない場合は何も
行わない。重みを加えた結果ゼロになったならば、 req
uest制御メッセージをすべてのPEに送る。 request制
御メッセージには重みを付けない。尚、この時、すべて
のPEのメッセージスイッチはrecordedである。answer
制御メッセージを受信したら、メッセージが記録してい
る「(送信元)PEの状態」を大域状態用バッファに格
納する。
The determination process performs the following processing. 1. The global state buffer 3 is cleared. 2. Send record control message to all PEs. reco
The rd control message is weighted, and its own weight is reduced accordingly. When the report control message is received, the “copy of the normal message (transmitted by the source PE)” recorded in the message is stored in the global state buffer 3. Upon receiving the return control message, add the weight attached to your own weight. If the weighted result is not zero, do nothing. If the weighted result is zero, req
Send uest control message to all PEs. Request control messages are not weighted. At this time, the message switches of all PEs are recorded. answer
When the control message is received, the “state of the (source) PE” recorded in the message is stored in the global state buffer.

【0109】すべてのPEからanswer制御メッセージを
受信したら、以下の処理を行う。尚、この時ネットワー
クチャネル上にはメッセージが存在せず、すべてのPE
へのメッセージスイッチは readyである。 1.この時点における大域状態用バッファの内容が「大
域状態」である。 2.すべてのPEへ restart制御メッセージを送る。 すべてのPEから started制御メッセージを受信したら
処理は完了である。この時、すべてのPEのメッセージ
スイッチは notRecordedである。
When the answer control message is received from all PEs, the following processing is performed. At this time, no message exists on the network channel and all PEs
The message switch to is ready. 1. The contents of the global state buffer at this point are “global state”. 2. Send a restart control message to all PEs. The process is completed when the started control messages are received from all the PEs. At this time, the message switches of all PEs are notRecorded.

【0110】PEは、record制御メッセージを受信した
ら以下の処理を行う。尚、record制御メッセージを受信
するPEのメッセージスイッチは必ず notRecordedであ
る。 1.メッセージスイッチをrecordedに設定する。 2.送信バッファをクリアする。 3.自PEの重みとrecord制御メッセージに付いていた
重みの合計をreturn制御メッセージで決定プロセスへ送
る。 request制御メッセージを受信したら以下の処理を行な
う。尚、 request制御メッセージを受信するPEの重み
はゼロであり、メッセージスイッチはrecordedである。 1.メッセージスイッチを readyに設定する。 2.「自PEの状態」をanswerで決定プロセスへ送る。 restart制御メッセージを受信したら以下の処理を行
う。尚、 restart制御メッセージを受信するPEのメッ
セージスイッチは readyあるいは notRecordedである。 1. restart制御メッセージに付いていた重みを自PE
の重みに加える。 2.メッセージスイッチが readyならば notRecordedに
設定する。 3. started制御メッセージを決定プロセスへ送信す
る。 4.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。
When the PE receives the record control message, it performs the following processing. The message switch of the PE that receives the record control message is always notRecorded. 1. Set the message switch to recorded. 2. Clear the transmission buffer. 3. The sum of the weight of the own PE and the weight attached to the record control message is sent to the decision process in a return control message. When the request control message is received, the following processing is performed. The weight of the PE receiving the request control message is zero, and the message switch is recorded. 1. Set the message switch to ready. 2. The "state of own PE" is sent to the decision process by answer. Perform the following processing when the restart control message is received. The message switch of the PE receiving the restart control message is ready or notRecorded. 1. The weight attached to the restart control message is assigned to the own PE.
Weight. 2. If the message switch is ready, set to notRecorded. 3. Send a started control message to the decision process. 4. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly.

【0111】通常メッセージを受信した場合の処理はメ
ッセージスイッチの値によって異なる。recordedなら
ば、そのメッセージを通常通り処理する。ただし、付い
ていた重みはreturn制御メッセージによって決定プロセ
スへ送る。readyならば、以下の処理を行う。 1.そのメッセージを通常通り処理する。 2.メッセージスイッチを notRecordedに設定する。 3.送信バッファに通常メッセージが格納されているな
らば、それらを送信する。送信する通常メッセージには
重みを付け、自PEの重みはその分だけ減らす。 notRecordedならば、そのメッセージを通常通り処理す
る。
Processing when a normal message is received differs depending on the value of the message switch. If recorded, process the message as usual. However, the attached weight is sent to the decision process by a return control message. If ready, perform the following processing. 1. Process the message as usual. 2. Set the message switch to notRecorded. 3. If normal messages are stored in the transmission buffer, send them. The normal message to be transmitted is weighted, and the weight of the own PE is reduced accordingly. If notRecorded, process the message as usual.

【0112】通常メッセージの送信処理もメッセージス
イッチの値によって異なる。メッセージスイッチが not
Recordedならば通常メッセージを重みを付けて実際に送
信する。recordedならば送信せず送信バッファに格納す
る。そして、そのメッセージのコピーをreport制御メッ
セージで決定プロセスへ送る。report制御メッセージに
は重みを付けない。readyならば送信せず送信バッファ
に格納する。
The normal message transmission process also differs depending on the value of the message switch. Message switch is not
If it is Recorded, the message is usually sent with weight. If recorded, it is not transmitted and stored in the transmission buffer. Then, a copy of the message is sent to the decision process in a report control message. The report control message is not weighted. If it is ready, it is not transmitted and stored in the transmission buffer.

【0113】PEは、すべてのreport制御メッセージを
送信した後にanswer制御メッセージを送信する。このた
め、本方法が適用可能である。即ち、「メッセージの追
い越しのないシステム」では、「決定プロセスがすべて
のPEからanswer制御メッセージを受信した」ことは
「すべてのreport制御メッセージを受信した」ことを意
味する。
The PE sends an answer control message after sending all report control messages. Therefore, the method is applicable. That is, in the "system without message overtaking", "the decision process has received the answer control message from all PEs" means that "all the report control messages have been received".

【0114】〈具体例5の動作〉図15は、具体例5の
動作説明図である。record制御メッセージを受信したP
Eは送信しようとした通常メッセージを送信バッファに
格納するとともに、そのコピーをreport制御メッセージ
で決定プロセスに送信する。具体例4ではこのとき、送
信回数のカウントのために送信カウンタを操作したが、
この具体例5ではそのような処理は不要である。重みが
ゼロになった決定プロセスはすべてのPEへ request制
御メッセージを送信する。以上の様子を図15(a)が
示している。また(b)に示すように、report制御メッ
セージを受信した決定プロセスは、report制御メッセー
ジが運んだ通常メッセージのコピーを大域状態用バッフ
ァ3に格納する。一方、 request制御メッセージを受信
したPEは、自己の状態をanswer制御メッセージで決定
プロセスに送る。 request制御メッセージをanswer制御
メッセージが追い越さないとすれば、全てのanswer制御
メッセージの到着を確認して、大域状態決定処理を終了
する。
<Operation of Embodiment 5> FIG. 15 is an explanatory diagram of the operation of Embodiment 5. P that received the record control message
E stores the normal message to be transmitted in the transmission buffer and transmits a copy of the normal message to the decision process in a report control message. In the specific example 4, the transmission counter was operated at this time to count the number of transmissions.
In the specific example 5, such processing is unnecessary. The decision process whose weight becomes zero sends a request control message to all PEs. FIG. 15A shows the above state. Further, as shown in (b), the decision process that has received the report control message stores a copy of the normal message carried by the report control message in the global state buffer 3. On the other hand, the PE that has received the request control message sends its state to the decision process using an answer control message. If the answer control message does not overtake the request control message, the arrival of all answer control messages is confirmed, and the global state determination processing ends.

【0115】〈具体例5の効果〉この方法はメッセージ
の追い越しのないシステムであれば、具体例4と同様の
効果を得る。また、具体例5よりもカウンタ制御等の手
順を簡素化できる効果がある。
<Effect of Embodiment 5> This method can obtain the same effect as that of Embodiment 4 as long as the system does not overtake messages. Further, there is an effect that the procedure of the counter control and the like can be simplified as compared with the specific example 5.

【0116】〈具体例6〉この例も、重み付け方式を利
用して大域状態を決定する。これまでの例と同様に、通
常メッセージは通常処理を行うためのメッセージで、P
E群が互いに送受信する。また、制御メッセージは大域
状態を決定するためのメッセージで、決定プロセスとP
E群が互いに送受信する。決定プロセスとPEとメッセ
ージとはそれぞれ重みを持つ。決定プロセスの重みは負
の整数であり、他の二つは正の整数である。それぞれの
重みは「すべての重みの合計が一定値例えばゼロ」にな
るように初期設定する。各PEと決定プロセスは重みに
ついて以下の処理を行い、「すべての重みの合計がゼ
ロ」という状態を保つ。 1.メッセージを送信するときは、メッセージに重みを
付け、自分の重みはその分だけ減らす。 2.メッセージを受信すると、メッセージに付いていた
重みを自分の重みに加える。 この結果、「決定プロセスの重みゼロ」という状態は、
ネットワークチャネル上にメッセージが存在しないで、
かつすべてのPEの重みはゼロであることを意味する。
このため本方式によって「ネットワークチャネル上にメ
ッセージが存在しなくなったこと」を検出できる。
<Specific Example 6> In this example as well, the global state is determined using a weighting method. As in the previous examples, the normal message is a message for performing normal processing.
Group E transmits and receives each other. The control message is a message for determining the global state.
Group E transmits and receives each other. The decision process, the PE and the message each have a weight. The weight of the decision process is a negative integer and the other two are positive integers. Each weight is initially set so that “the sum of all weights becomes a constant value, for example, zero”. Each PE and the decision process perform the following processing on the weights, and keep the state that “the sum of all weights is zero”. 1. When sending a message, weight the message and reduce your weight by that amount. 2. When a message is received, the weight attached to the message is added to its own weight. As a result, the state of "zero weight for the decision process"
If there are no messages on the network channel,
And the weight of all PEs is zero.
Therefore, this method can detect "the message no longer exists on the network channel".

【0117】この具体例6では、重みに世代を導入する
ことにより大域状態を決定する。同じ世代の重みを持っ
た通常メッセージとPEの状態の集合が大域状態を構成
する。特定の世代の重みを持った通常メッセージとPE
の状態を報告させ、報告の完了を重み付け方式によって
検出する。
In the specific example 6, the global state is determined by introducing the generation into the weight. A set of normal messages and PE states having the same generation weight constitutes a global state. Normal message with specific generation weight and PE
, And the completion of the report is detected by the weighting method.

【0118】各部分の基本的な機能は次の通りである。
決定プロセスは自分の重みの世代を oldから newへ一つ
進め、すべてのPEへW=500 newの request制御メ
ッセージを送る。PEは、世代の進んだ(新しい世代 n
ewの)重みを持った request制御メッセージを受信する
と、その時点の自分の状態を決定プロセスへ報告する。
報告とともに自分の(前の世代 oldの)重みは返却し、
request制御メッセージが運んだ新しい世代 newの重み
を自分の新しい重みとする。その後前の世代 oldの重み
を持った通常メッセージを受信したら、そのメッセージ
のコピーを報告し、重みも返却する。前の世代の重みを
持ったメッセージとPEがどこにも存在しなくなったこ
とを、重み付け方式により決定プロセスが検出する。こ
の検出時点における各PEからの報告内容の集合が大域
状態となる。
The basic functions of each part are as follows.
The decision process advances its weight generation by one from old to new and sends a request control message of W = 500 new to all PEs. PE is an advanced generation (new generation n
When a weighted request control message is received, the current state of the request is reported to the decision process.
Return the weight of the (old generation old) with the report,
The weight of the new generation new carried by the request control message is taken as the new weight of the user. After that, when a normal message with the weight of the previous generation old is received, a copy of the message is reported, and the weight is also returned. The decision process detects, by means of the weighting scheme, that the message and PE having the weight of the previous generation no longer exist anywhere. The set of report contents from each PE at the time of this detection is in the global state.

【0119】以上の概略動作を実現するために、各部は
次のような構成とする。図16に、具体例6の方法説明
図を示す。この目的のために、決定プロセス1は大域状
態用バッファ3と、旧世代重みカウンタoldwとを持つ。
大域状態用バッファ3には、各PEから送られてくる
「PEの状態」と「通常メッセージのコピー」を集めて
格納する。このバッファの内容が「大域状態」となる。
旧世代重みカウンタoldwは、前の世代の重みを持ったメ
ッセージやPEが存在しなくなったことを検出するため
のカウンタである。
To realize the above-described general operation, each unit has the following configuration. FIG. 16 is a diagram for explaining the method of the specific example 6. For this purpose, the decision process 1 has a global state buffer 3 and an old generation weight counter oldw.
The global status buffer 3 collects and stores the “PE status” and “copy of normal message” sent from each PE. The contents of this buffer become "global state".
The old generation weight counter oldw is a counter for detecting that a message or PE having the weight of the previous generation no longer exists.

【0120】決定プロセス1は次のように動作する。処
理の開始にあたっては、以下の処理を行う。 1.大域状態用バッファ3をクリアする。 2.旧世代重みカウンタoldwに自分の重みを設定する。 3.自分の重みの世代を一つ進め、値はゼロに設定す
る。 4.すべてのPEへ request制御メッセージを送る。 r
equest制御メッセージにはW=500の重みを付け、自
分の重みはその分だけ減らす。なお、 request制御メッ
セージに付加した重みの世代はこの3番目の処理で old
から newへ一つ進んでいる。
[0120] Decision process 1 operates as follows. At the start of the process, the following process is performed. 1. The global state buffer 3 is cleared. 2. Set its own weight in the old generation weight counter oldw. 3. The generation of the weight is advanced by one, and the value is set to zero. 4. Send a request control message to all PEs. r
The equest control message is given a weight of W = 500, and its own weight is reduced accordingly. Note that the generation of the weight added to the request control message is old in the third processing.
From new to new.

【0121】決定プロセス1がreturn制御メッセージを
受信したら、以下の処理を行う。 1.メッセージに付いていた重みを旧世代重みカウンタ
oldwに加える。 2.メッセージが記録している「(送信元)PEの状
態」あるいは「送信元PEが受信した通常メッセージの
コピー」を大域状態用バッファ3に格納する。 旧世代重みカウンタoldwがゼロになったならば、その時
点における大域状態用バッファ3の内容が「大域状態」
である。なお、このとき、ネットワークチャネル上のメ
ッセージとPEはすべて新しい世代の重みを持ってい
る。前の世代の重みを持つメッセージやPEは存在しな
い。
When the decision process 1 receives the return control message, the following processing is performed. 1. The weight attached to the message is the old generation weight counter
Add to oldw. 2. The “state of the (source) PE” or the “copy of the normal message received by the source PE” recorded in the message is stored in the global state buffer 3. When the old generation weight counter oldw becomes zero, the content of the global state buffer 3 at that time is "global state".
It is. At this time, all messages and PEs on the network channel have the weight of the new generation. There is no message or PE with the weight of the previous generation.

【0122】各PEは次のように動作する。決定プロセ
ス1から request制御メッセージを受信したら「自PE
の重みの世代」と「 request制御メッセージの重みの世
代」を比較して以下の処理を行う。request制御メッセ
ージの重みの世代の方が新しいならば以下の処理を行
う。 1.「自PEの状態」と「自PEの重み」をreturn制御
メッセージで決定プロセスへ送る。 2.「自PEの重み」を「 request制御メッセージの重
み」に設定する。 一方、二つの世代が同じならば「 request制御メッセー
ジの重み」を「自PEの重み」に加える。
Each PE operates as follows. When the request control message is received from the decision process 1, the message “own PE
The following processing is performed by comparing the “weight generation of the request control message” with the “generation of the weight of the request control message”. If the generation of the weight of the request control message is newer, the following processing is performed. 1. The “state of the own PE” and the “weight of the own PE” are sent to the decision process in a return control message. 2. “Weight of own PE” is set to “weight of request control message”. On the other hand, if the two generations are the same, the “weight of the request control message” is added to the “weight of the own PE”.

【0123】通常メッセージを受信したら「自PEの重
みの世代」と「通常メッセージの重みの世代」を比較し
て以下の処理を行う。自PEの重みの世代の方が新しい
ならば「通常メッセージのコピー」と「通常メッセージ
の重み」をreturn制御メッセージで決定プロセスへ送
る。一方、二つの世代が同じならば「通常メッセージの
重み」を「自PEの重み」に加える。通常メッセージの
重みの世代の方が新しいならば以下の処理を行う。 1.「自PEの状態」と「自PEの重み」をreturn制御
メッセージで決定プロセスへ送る。 2.「自PEの重み」を「通常メッセージの重み」に設
定する。 いずれの場合も受信した通常メッセージは上記処理を行
った後通常通り処理する。図17〜図20は、具体例6
の動作説明図である。以下、図17〜図20に示す動作
を順に説明する。
When the normal message is received, the following processing is performed by comparing the “generation of the weight of the own PE” with the “generation of the weight of the normal message”. If the weight generation of the own PE is newer, “normal message copy” and “normal message weight” are sent to the decision process in a return control message. On the other hand, if the two generations are the same, the “weight of the normal message” is added to the “weight of the own PE”. If the generation of the weight of the normal message is newer, the following processing is performed. 1. The “state of the own PE” and the “weight of the own PE” are sent to the decision process in a return control message. 2. The “weight of the own PE” is set to “the weight of the normal message”. In any case, the received normal message is processed as usual after performing the above processing. 17 to 20 show a specific example 6.
It is operation | movement explanatory drawing of FIG. Hereinafter, the operations shown in FIGS. 17 to 20 will be sequentially described.

【0124】図17は、具体例6の動作説明図(その
1)である。まず、既に説明したように、決定プロセス
1が request制御メッセージをすべてのPEへ送信す
る。このときは、新しい世代の重みW=500を reque
st制御メッセージに付けて送信する。このとき、同時に
PEA は、通常メッセージMAをPEB へ送信し、PEB
は通常メッセージMB をPEC へ送信している。この
とき、PEA ,PEB は、通常メッセージMA ,MB に
対し古い世代の重みを付けている。
FIG. 17 is an operation explanatory diagram (part 1) of the embodiment 6. First, as described above, the decision process 1 sends a request control message to all PEs. In this case, the new generation weight W = 500 is requeued.
Sent with the st control message. At this time, the PEA simultaneously sends the normal message MA to the PEB,
Normally sends a message MB to the PEC. At this time, PEA and PEB assign the old generation weight to the normal messages MA and MB.

【0125】次の段階では、図18に示す状態になる。
即ち、PEA ,PEB には、それぞれ新しい重みを付け
た request制御メッセージが到着し、PEA ,PEB
は、新しい重みW=500を自己の重みとし、古い重み
W=200あるいはW=50をreturn制御メッセージと
ともに決定プロセス1へ送る。同時にPEA とPEB
は、自分の状態A0 とB0 とを決定プロセス1に報告す
る。
At the next stage, the state shown in FIG. 18 is obtained.
That is, request control messages with new weights arrive at PEA and PEB, respectively, and PEA and PEB
Sends the new weight W = 500 as its own weight and sends the old weight W = 200 or W = 50 to the decision process 1 together with the return control message. PEA and PEB at the same time
Reports its state A0 and B0 to decision process 1.

【0126】一方、PEB から送信されたメッセージM
B は、PEC へ到着し、PEC の状態がC0 からC1 に
変化している。更に、PEC の重みは100から150
に変化した。この重みは古い世代の重みである。PEC
には、まだ request制御メッセージが到着していない。
更に、PEB に対してPEA の送信したメッセージMA
もまだ到着していない。
On the other hand, message M transmitted from PEB
B arrives at PEC and the state of PEC has changed from C0 to C1. In addition, the PEC weight is between 100 and 150
Changed to This weight is the weight of the old generation. PEC
Has not yet received the request control message.
Furthermore, the message MA sent by PEA to PEB
Has not yet arrived.

【0127】図19に、次の状態を示す。request制御
メッセージは、PEC に到着した。ここで、PEC は自
分の状態C1 をreturn制御メッセージで決定プロセス1
へ報告した。このとき、古い世代の重みW=150も決
定プロセス1に送信した。また、PEC は新しい世代の
重みW=500を自己の重みとした。また、メッセージ
MA がPEB に到着し、PEB の状態はB0 からB1 に
変化した。PEB はメッセージMA の重みが古い世代の
重みであることから、メッセージMA と、その重みW=
100を決定プロセス1に送信した。
FIG. 19 shows the following state. The request control message has arrived at the PEC. Here, the PEC determines its state C1 by the return control message in the decision process 1.
Reported to. At this time, the weight W = 150 of the old generation was also transmitted to the decision process 1. Further, the PEC sets the weight W = 500 of the new generation as its own weight. The message MA arrives at PEB, and the state of PEB changes from B0 to B1. PEB has the weight of the message MA and the weight of the old generation.
100 was sent to decision process 1.

【0128】図20には、その後の状態を示す。決定プ
ロセス1には、PEB とPEC からreturn制御メッセー
ジが到着し、重みの加算が行われる。即ち、oldwに対し
各古い世代の重みが加算され、その合計がゼロになる。
これで大域状態の決定処理が完了する。決まった大域状
態は、PEA がA0 、PEB がB0 、PEC がC1 、C
HABがMA となる。
FIG. 20 shows the state after that. In the decision process 1, a return control message arrives from PEB and PEC, and weights are added. That is, the weight of each old generation is added to oldw, and the sum becomes zero.
This completes the global state determination process. The determined global state is that PEA is A0, PEB is B0, PEC is C1, C2.
HAB becomes MA.

【0129】〈具体例6の効果〉この具体例によれば、
すべてのネットワークチャネルに制御メッセージを送信
する必要はない。また、メッセージの追い越しのあるシ
ステムにも適用できる。更に、重みに世代を導入したこ
とによって、受信した通常メッセージが大域状態の構成
要素であるかどうかを判断する。この結果、メッセージ
の送受信処理を中断することなく大域状態を決定するこ
とができた。
<Effect of Embodiment 6> According to this embodiment,
It is not necessary to send control messages to all network channels. Also, the present invention can be applied to a system in which messages are overtaken. Furthermore, by introducing the generation to the weight, it is determined whether or not the received normal message is a component of the global state. As a result, the global state could be determined without interrupting the message transmission / reception processing.

【0130】〈具体例7〉具体例6は、「PEの状態」
と「通常メッセージのコピー」を request制御メッセー
ジに応答してすぐに決定プロセスへ報告する方法を示し
ている。PEが自分では状態を記録しない方法である。
具体例7では、「PEの状態」と「通常メッセージのコ
ピー」をPE自身が記録し、決定プロセスからの要求に
応じて報告する方法を提供する。各部分の基本的な機能
は次の通りである。
<Specific Example 7> Specific example 6 is based on the "state of PE".
And a "copy of normal message" in response to the request control message and immediately report to the decision process. This is a method in which the PE does not record the state by itself.
In the specific example 7, a method is provided in which the PE itself records “the state of the PE” and “copy of the normal message”, and reports the same in response to a request from the decision process. The basic functions of each part are as follows.

【0131】決定プロセスは自分の重みの世代を一つ進
め、すべてのPEへrecord制御メッセージを送る。PE
は、世代の進んだ(新しい世代の)重みを持ったrecord
制御メッセージを受信すると、その時点の自分の状態を
記録する。そして自分の(前の世代の)重みはreturn制
御メッセージに付加して決定プロセスへ返却し、record
制御メッセージが運んだ新しい世代の重みを自分の新し
い重みとする。その後前の世代の重みを持った通常メッ
セージを受信したら、そのメッセージのコピーを記録
し、重みは決定プロセスへ返却する。前の世代の重みを
持ったメッセージとPEが存在しなくなったことを、重
み付け方式により決定プロセスが検出する。この検出時
点における各PEの記録内容の集合が大域状態となる。
決定プロセスは request制御メッセージを送り、各PE
の記録を回収する。
The decision process advances the generation of its own weight by one, and sends a record control message to all PEs. PE
Is a record with advanced (new generation) weights
Upon receiving the control message, it records its own state at that time. Then, the weight of the own (previous generation) is added to the return control message and returned to the decision process.
Let the weight of the new generation carried by the control message be its new weight. Then, when a normal message with the weight of the previous generation is received, a copy of the message is recorded and the weight is returned to the decision process. The decision process detects that the message and PE having the weight of the previous generation no longer exist by the weighting method. The set of recorded contents of each PE at the time of this detection is in the global state.
The decision process sends a request control message to each PE
Collect records of

【0132】上記機能を持つために各部の構成は次の通
りとする。図21は、具体例7の方法説明図である。決
定プロセス1は以下のバッファとカウンタを持つ。大域
状態用バッファ3には、各PEから送られてくる「PE
の状態」と「通常メッセージのコピー」を格納する。こ
のバッファの内容が「大域状態」となる。旧世代重みカ
ウンタoldwは、前の世代の重みを持ったメッセージやP
Eが存在しなくなったことを検出するためのカウンタで
ある。各PEはPE状態用バッファ20を持つ。「自分
の状態」と「通常メッセージのコピー」をこのバッファ
に記録する。
To have the above functions, the configuration of each unit is as follows. FIG. 21 is an explanatory diagram of the method of the specific example 7. Decision process 1 has the following buffers and counters. The global state buffer 3 stores “PE” sent from each PE.
Status and a copy of a normal message are stored. The contents of this buffer become "global state". The old generation weight counter oldw is used to store a message or P with the weight of the previous generation.
This is a counter for detecting that E no longer exists. Each PE has a PE status buffer 20. Record your status and copy of normal message in this buffer.

【0133】決定プロセス1は次のように動作する。処
理の開始にあたっては以下の処理を行う。 1.大域状態用バッファをクリアする。 2.旧世代重みカウンタに自分の重みを設定する。 3.自分の重みの世代を一つ進め、値はゼロに設定す
る。 4.すべてのPEへrecord制御メッセージを送る。reco
rd制御メッセージには重みを付け、自分の重みはその分
だけ減らす。なお、record制御メッセージに付加した重
みの世代は処理3で一つ進んでいる。
Decision process 1 operates as follows. At the start of the process, the following process is performed. 1. Clear the global state buffer. 2. Set your own weight in the old generation weight counter. 3. The generation of the weight is advanced by one, and the value is set to zero. 4. Send record control message to all PEs. reco
The rd control message is weighted, and its own weight is reduced accordingly. The generation of the weight added to the record control message is advanced by one in process 3.

【0134】決定プロセス1は、return制御メッセージ
を受信したら、付いていた重みを旧世代カウンタに加え
る。重みを加えた結果がゼロでない場合は何も行わな
い。重みを加えた結果ゼロになったならば、 request制
御メッセージをすべてのPEに送る。 request制御メッ
セージには重みを付けない。answer制御メッセージを受
信したら、メッセージが記録している「(送信元)PE
の状態」と「(送信元PEが受信した)通常メッセージ
のコピー」を大域状態用バッファに格納する。
Upon receiving the return control message, the decision process 1 adds the attached weight to the old generation counter. If the weighted result is not zero, do nothing. If the weighting results in zero, a request control message is sent to all PEs. Request control messages are not weighted. When the answer control message is received, the message "(source) PE
Is stored in the global state buffer. ”And“ Copy of normal message (received by source PE) ”.

【0135】決定プロセス1がすべてのPEからanswer
制御メッセージを受信したら、処理は完了である。大域
状態用バッファの内容が「大域状態」である。なお、こ
のとき、ネットワークチャネル上のメッセージとPEは
すべて新しい世代の重みを持っている。前の世代の重み
を持つメッセージやPEは存在しない。
[0135] Decision process 1 is answered by all PEs.
When the control message is received, the processing is completed. The contents of the global state buffer are "global state". At this time, all messages and PEs on the network channel have the weight of the new generation. There is no message or PE with the weight of the previous generation.

【0136】PEは次のように動作する。record制御メ
ッセージを受信したら 「自PEの重みの世代」と「re
cord制御メッセージの重みの世代」を比較して以下の処
理を行う。record制御メッセージの重みの世代が新しい
ならば以下の処理を行う。 1.「自PEの重み」をreturn制御メッセージで決定プ
ロセスへ送る。 2.「自PEの状態」をPE状態用バッファに記録す
る。 3.「自PEの重み」を「record制御メッセージの重
み」に設定する。 二つの世代が同じならば「record制御メッセージの重
み」を「自PEの重み」に加える。
The PE operates as follows. When the record control message is received, “generation of weight of own PE” and “re
The following processing is performed by comparing the “cord control message weight generation”. If the weight generation of the record control message is new, the following processing is performed. 1. The “weight of the own PE” is sent to the decision process in a return control message. 2. The “state of the own PE” is recorded in the PE state buffer. 3. “Weight of own PE” is set to “weight of record control message”. If the two generations are the same, the “weight of the record control message” is added to the “weight of the own PE”.

【0137】通常メッセージを受信したら、「自PEの
重みの世代」と「通常メッセージの重みの世代」を比較
して以下の処理を行う。自PEの重みの世代が新しいな
らば以下の処理を行う。 1.「通常メッセージの重み」をreturn制御メッセージ
で決定プロセスへ送る。 2.「通常メッセージのコピー」をPE状態用バッファ
に記録する。 二つの世代が同じならば「通常メッセージの重み」を
「自PEの重み」に加える。
When the normal message is received, the “generation of the weight of the own PE” is compared with the “generation of the weight of the normal message”, and the following processing is performed. If the generation of the weight of the own PE is new, the following processing is performed. 1. The "normal message weight" is sent to the decision process in a return control message. 2. “Copy normal message” is recorded in the PE status buffer. If the two generations are the same, the “normal message weight” is added to the “own PE weight”.

【0138】通常メッセージの重みの世代が新しいなら
ば 以下の処理を行う。 1.「自PEの重み」をreturn制御メッセージで決定プ
ロセスへ送る。 2.「自PEの状態」をPE状態用バッファに記録す
る。 3.「自PEの重み」を「通常メッセージの重み」に設
定する。 いずれの処理の場合も受信した通常メッセージは上記処
理を行った後、通常通り処理する。request制御メッセ
ージを受信したらPE状態用バッファに記録している
「PEの状態」と「通常メッセージのコピー」をanswer
制御メッセージで決定プロセスへ送り、PE状態用バッ
ファはクリアする。
If the generation of the weight of the normal message is new, the following processing is performed. 1. The “weight of the own PE” is sent to the decision process in a return control message. 2. The “state of the own PE” is recorded in the PE state buffer. 3. The “weight of the own PE” is set to “the weight of the normal message”. In any case, the received normal message is processed as usual after performing the above processing. When the request control message is received, answer "PE status" and "Copy of normal message" recorded in the PE status buffer.
A control message is sent to the decision process and the PE status buffer is cleared.

【0139】図22〜図27に、具体例7の動作説明図
を示す。図22〜図27の具体例を順番に説明する。ま
ず、初めに図22に示す状態では、決定プロセス1が新
しい世代の重み500を持つrecord制御メッセージをP
EA 、PEB 、PEC へ送信した。このとき、PEA は
通常メッセージMA をPEB へ送信し、PEB は通常メ
ッセージMBをPEC へ送信した。これらのメッセージ
MA 、MB には、古い世代の重みW=100あるいはW
=50が付加されている。
FIGS. 22 to 27 are explanatory diagrams of the operation of the seventh embodiment. Specific examples of FIGS. 22 to 27 will be described in order. First, in the state shown in FIG. 22, the decision process 1 sends a record control message having a new generation weight 500 to P
Sent to EA, PEB, PEC. At this time, PEA transmitted the normal message MA to PEB, and PEB transmitted the normal message MB to PEC. These messages MA and MB have an old generation weight W = 100 or W
= 50 is added.

【0140】次の図23の状態で、record制御メッセー
ジは、PEA とPEB に到着した。PEA とPEB は自
分の重みをreturn制御メッセージで決定プロセス1に返
却する。これらの重みはいずれも古い世代の重みであ
る。また、PEA とPEB は、それぞれ自分の状態A0
とB0 をPE状態用バッファ20に記録した。メッセー
ジMB はPEC へ到着し、PEC の状態はC0 からC1
に変化している。また、PEC の重みは古い世代の重み
100から150に変化している。このとき、record制
御メッセージはまだPEC に到着していない。更に、P
EA から送信されたメッセージMA もまだPEB に到着
していない。
In the state shown in FIG. 23, the record control message arrives at PEA and PEB. PEA and PEB return their weights to decision process 1 in a return control message. These weights are all old generation weights. PEA and PEB have their own state A0 respectively.
And B0 were recorded in the PE state buffer 20. The message MB arrives at PEC and the state of PEC changes from C0 to C1.
Has changed. Also, the weight of PEC has changed from 100 of the old generation to 150. At this time, the record control message has not yet arrived at the PEC. Further, P
The message MA sent from EA has not yet arrived at PEB.

【0141】図24に、次の状態を示す。record制御メ
ッセージは、PEC に到着した。PEC は自分の重みを
return制御メッセージで決定プロセス1に返却し、自分
の状態C1 を状態用バッファ20に記録した。PEB は
メッセージMA を受信し、状態がB0 からB1 に変化し
た。このとき、メッセージMA に付いていた古い世代の
重みを決定プロセス1に対しreturn制御メッセージで返
却した。メッセージMA のコピーは、PEB の状態用バ
ッファ20に記録した。
FIG. 24 shows the following state. The record control message has arrived at the PEC. PECs use their weights
It returned to the decision process 1 with a return control message, and recorded its state C1 in the state buffer 20. PEB receives message MA, and the state changes from B0 to B1. At this time, the weight of the old generation attached to the message MA is returned to the decision process 1 by a return control message. A copy of the message MA was recorded in the PEB status buffer 20.

【0142】次の図25において、決定プロセス1は、
PEB とPEC からreturn制御メッセージを受信し、重
みの加算を行った。その結果、旧世代重みカウンタoldw
がゼロになった。そこで、各PEに対し状態バッファの
内容を返送するように request制御メッセージを送信し
た。図26では、各PEが request制御メッセージを受
信し、それぞれのPE状態用バッファに記録していた自
己のPEの状態と通常メッセージのコピーをanswer制御
メッセージで決定プロセス1に返信した。図27では、
こうして決定プロセス1がすべてのPEからanswer制御
メッセージを受信し、大域状態の決定処理が完了した。
そのときの大域状態は、PEA =A0 、PEB =B0 、
PEC =C1 、CHAB=MA である。
In the next FIG. 25, the decision process 1
Return control messages were received from PEB and PEC, and weights were added. As a result, the old generation weight counter oldw
Became zero. Therefore, a request control message was sent to each PE so as to return the contents of the status buffer. In FIG. 26, each PE receives the request control message, and returns the status of its own PE and the copy of the normal message recorded in the respective PE status buffers to the decision process 1 with the answer control message. In FIG.
Thus, the decision process 1 has received the answer control message from all PEs, and the global state decision processing has been completed.
The global state at that time is PEA = A0, PEB = B0,
PEC = C1, CHAB = MA.

【0143】〈具体例7の効果〉この具体例によれば、
すべてのネットワークチャネルに制御メッセージを送信
する必要はなく、メッセージの追い越しのあるシステム
にも適用できる。また、メッセージの送受信処理を中断
する必要がない。具体例6と異なり、本方法では、「P
Eの状態」と「通常メッセージのコピー」の決定プロセ
スへの報告は一度に行われる。ある時期に集中して大容
量のデータが送受信されるわけである。計算機システム
によっては、集中的な大容量通信向きのネットワークを
通常のメッセージ通信用とは別に持っているものもあ
る。本方法はこのようなシステムには特に向いている。
また、決定した大域状態を一箇所(決定プロセス)に集
める必要のない場合もある。この場合も本方法が適して
いる。
<Effect of Specific Example 7> According to this specific example,
It is not necessary to send a control message to all network channels, and the present invention can be applied to a system in which message overtaking is performed. Further, there is no need to interrupt the message transmission / reception processing. Unlike the specific example 6, in this method, “P
Reporting to the decision process of "state of E" and "copy of normal message" is done at once. A large amount of data is transmitted and received intensively at a certain time. Some computer systems have a network for intensive large-capacity communication separately from that for normal message communication. The method is particularly suitable for such systems.
In some cases, it is not necessary to collect the determined global states in one place (decision process). This method is also suitable in this case.

【0144】〈具体例8〉具体例6、7の説明でわかる
ように、どの場面においても重みの世代は高々2世代し
か存在しない。決定プロセスと「同じ世代」と「一つ前
の世代」の二つである。2つの世代が区別できれば、具
体例6、7で述べた方法によって大域状態を決定するこ
とができる。このために、重みの世代の表現のために3
世代を設ける。例えば0→1→2→0→1→…といった
要領で重みを区別する。
<Embodiment 8> As can be seen from the explanations of Embodiments 6 and 7, there are at most two generations of weight in any scene. The decision process is the same generation and the previous generation. If the two generations can be distinguished, the global state can be determined by the methods described in the specific examples 6 and 7. For this purpose, 3
Create a generation. For example, weights are distinguished in a manner such as 0 → 1 → 2 → 0 → 1 →.

【0145】重みの世代に関する処理は以下のようにす
る。重みの世代を一つ進める処理は、「重みが0ならば
1にする」、「重みが1ならば2にする」、「重みが2
ならば0にする」となる。重みの世代を比較する処理
は、「重みが0と1では1の方が新しい」、「重みが1
と2では2の方が新しい」、「重みが2と0では0の方
が新しい」となる。図28に、以上のような具体例8に
おける世代の変化の例を示した。
The processing relating to the generation of the weight is performed as follows. The processing to advance the generation of the weight by one is “set to 1 if the weight is 0”, “set to 2 if the weight is 1”, “set the weight to 2”.
Then, set to 0. " The process of comparing the generations of weights is “1 is newer when the weight is 0 and 1”, and “1
And 2 are newer ”and“ 0 is newer when the weight is 2 and 0 ”. FIG. 28 shows an example of the change of the generation in the specific example 8 as described above.

【0146】〈具体例8の効果〉この方法によれば、3
種類の記号しか必要としないので、2ビットというわず
かな情報量で具体例6及び7の世代を実現することがで
きる。
<Effect of Embodiment 8> According to this method, 3
Since only the kind of symbol is required, the generations of the specific examples 6 and 7 can be realized with a small information amount of 2 bits.

【0147】〈具体例9〜13〉具体例9〜13は、非
同期メッセージ通信によってプロセッサ間処理を行うマ
ルチプロセッサシステムにおいて、「チェックポイント
を設定し、設定したチェックポイントから処理を再実行
する」方法である。 (計算モデル)ここでは、次のような計算モデルを設定
する。 ・有限個のプロセッサ(以下、PEと略す)が論理的な
通信チャネル(ネットワークチャネル)で互いに結合し
ている。物理的な通信路については何も仮定しない。 ・PEは非同期メッセージ通信によって互いに通信す
る。 ・通信チャネル上でメッセージの追い越しの起こること
がある。メッセージが送信された順序に到着する保証は
ない。 ・システム全体を統括するクロックはなく、各PEとネ
ットワークチャネルはそれぞれのクロックに従い個別に
動く。 ・各PEは他の全てのPEへメッセージを送ることがで
きる。また、自分の状態と受信したメッセージとを内部
メモリへ記録することができる。 ・チェックポイントの設定と再実行の指示を出す特別な
プロセス(制御プロセスと呼ぶ)が存在する。制御プロ
セスと全てのPEは互いにメッセージ通信を行うことが
できる。
<Specific Examples 9 to 13> The specific examples 9 to 13 relate to a method of “setting a checkpoint and re-executing processing from the set checkpoint” in a multiprocessor system that performs inter-processor processing by asynchronous message communication. It is. (Calculation model) Here, the following calculation model is set. A finite number of processors (hereinafter abbreviated as PE) are connected to each other by a logical communication channel (network channel). No assumptions are made about the physical communication path. -PEs communicate with each other by asynchronous message communication. -Messages may be overtaken on the communication channel. There is no guarantee that messages will arrive in the order in which they were sent. -There is no clock that controls the entire system, and each PE and network channel operate individually according to their clocks. -Each PE can send a message to all other PEs. In addition, the user's status and the received message can be recorded in the internal memory. There is a special process (called a control process) that issues a checkpoint setting and re-execution instruction. The control process and all PEs can communicate with each other.

【0148】(チェックポイントの設定)この具体例に
おけるチェックポイントとは、「全てのPEの状態と全
ての通信チャネルの状態の辻褄のあった集合」である。
「ある瞬間における状態の集合」ではない。システム全
体を統括するクロックは存在しないので、各PEと通信
チャネルに共通な時刻も存在しないからである。ある通
信チャネルの状態とは、そのチャネルの送信側PEが自
分の状態をチェックポイントの構成要素として記録する
前に送信し、受信側PEが自分の状態をチェックポイン
トの構成要素として記録した後に受信したメッセージの
集合である。
(Setting of Checkpoint) The checkpoint in this specific example is "a consistent set of states of all PEs and states of all communication channels".
It is not a "set of states at a certain moment". This is because there is no clock for controlling the entire system, and there is no time common to each PE and the communication channel. The state of a certain communication channel means that the transmitting PE of the channel transmits before recording its own state as a checkpoint element, and the receiving PE receives after recording its own state as a checkpoint element. It is a set of messages.

【0149】図29は、メッセージ送受信とPEの状態
変化説明図である。図の(a)において、PEa ,PE
b ,PEc の状態はそれぞれA0 ,B0 ,C0 である。
(b)では、PEa ,PEb がそれぞれメッセージMa
b,Mbcを送信した。PEa ,PEb の状態はそれぞれ
メッセージ送信により変化した。(C)では、メッセー
ジを受信してPEb ,PEc の状態が変化した。
FIG. 29 is an explanatory diagram of message transmission / reception and PE state change. In (a) of the figure, PEa, PE
The states of b and PEc are A0, B0 and C0, respectively.
In (b), PEa and PEb are the respective messages Ma.
b, Mbc was sent. The states of PEa and PEb each changed due to message transmission. In (C), the state of PEb and PEc has changed after receiving the message.

【0150】図30には、正しいチェックポイントの例
説明図を示した。例えば、以下のいずれも正しいチェッ
クポイントである。下記は図30の一点鎖線に示す状態
である。 (a)PEa A0 ,PEb B0 ,PEc C0 (b)PEa A0 ,PEb B1 ,PEc C0 ,CHbc:
Mbc (c)PEa A1 ,PEb B1 ,PEc C0 ,CHab:
Mab,CHbc:Mbc (d)PEa A1 ,PEb B1 ,PEc C1 ,CHab:
Mab なお、PEa ,PEb ,PEc はPEの、CHab:,C
Hbc:は通信チャネルの状態を示す。CHbc:Mbcとい
うのは、チャネルCHbc上にメッセージMbcが存在する
という意味である。
FIG. 30 is a view for explaining an example of a correct check point. For example, any of the following are valid checkpoints: The following is the state shown by the dashed line in FIG. (A) PEa A0, PEb B0, PEc C0 (b) PEa A0, PEb B1, PEc C0, CHbc:
Mbc (c) PEa A1, PEb B1, PEc C0, CHab:
Mab, CHbc: Mbc (d) PEa A1, PEb B1, PEc C1, CHab:
Mab PEa, PEb, PEc are PE, CHab :, C
Hbc: indicates the state of the communication channel. CHbc: Mbc means that the message Mbc exists on the channel CHbc.

【0151】一方、以下は正しくないチェックポイント
である。図31には、正しくないチェックポイントの例
説明図を示す。 (e)PEa A0 ,PEb B0 ,PEc C1 ,CHbc:
Mbc (f)PEa A1 ,PEb B2 ,PEc C1 ,CHab:
Mab 上述したような正しいチェックポイントを求めることが
チェックポイントの設定である。
On the other hand, the following are incorrect checkpoints. FIG. 31 illustrates an example of an incorrect checkpoint. (E) PEa A0, PEb B0, PEc C1, CHbc:
Mbc (f) PEa A1, PEb B2, PEc C1, CHab:
Mab Finding the correct checkpoint as described above is the setting of the checkpoint.

【0152】(再実行)全てのPEの状態とメッセージ
を「設定済みチェックポイント」の状態に戻すことが再
実行である。これは、例えば、各PEが(チェックポイ
ントの構成要素のうちの)「自分の状態」と「自分への
通信チャネルの状態」を記録しておき、記録していた状
態へ制御プロセスからの指示によって戻すことで実現で
きる。 (チェックポイントの設定)処理の開始の指示は、制御
プロセスが全てのPEへ指示メッセージを送ることによ
って行うことができる。難しいのは、処理を開始してか
らである。 (送信が状態記録前/後の判別)制御プロセスから指示
メッセージを受信し、チェックポイントの構成要素とし
て自分の状態を記録したPEを考える。このPEが他の
PEからメッセージを受信したとき、そのメッセージ
が、以下のいずれであるかがわからなくてはならない。 (A)送信元が自分の状態を記録する前に送信されたメ
ッセージ (B)送信元が自分の状態を記録した後に送信されたメ
ッセージ (A)ならばチェックポイントの構成要素なので記録し
なければならない。一方、(B)ならばチェックポイン
トの構成要素ではないので記録してはいけない。
(Re-execution) Returning all PE states and messages to the state of "set checkpoint" is re-execution. This means, for example, that each PE records “its own state” (of the checkpoint components) and “the state of the communication channel to itself” and gives an instruction from the control process to the recorded state. It can be realized by returning. (Setting of checkpoint) The start of the process can be instructed by the control process sending an instruction message to all PEs. The difficulty is after the process is started. (Determination of transmission before / after state recording) Consider a PE that receives an instruction message from a control process and records its state as a component of a checkpoint. When this PE receives a message from another PE, it must know whether the message is: (A) A message sent before the sender records its state. (B) A message sent after the sender records its state. (A) If it is a checkpoint component, it must be recorded. No. On the other hand, in the case of (B), since it is not a component of the checkpoint, it must not be recorded.

【0153】(チェックポイント設定の終了検出)チェ
ックポイントの構成要素が全て記録されたことを検出で
きなければならない。この検出ができないと以下の不具
合がある。 ・設定された(はずの)チェックポイントを利用するこ
とができない。例えば、再実行処理を始めることができ
ない。 ・再びチェックポイントを設定することができない。 ・チェックポイント設定処理に使った制御用データ等を
解放することができない。 PEの状態が全て記録されたことは容易に検出できる。
制御プロセスが、全てのPEからその旨の連絡を受けれ
ばよいからである。難しいのは通信チャネルの状態であ
る。送信元PEが状態記録前に送信したメッセージの全
てが宛先PEに到着し記録されたことを検出できなけれ
ばならない。
(Detection of Checkpoint Setting End) It must be possible to detect that all the components of the checkpoint have been recorded. If this detection is not possible, there are the following problems. -The checkpoint that has been set (should be) cannot be used. For example, the re-execution process cannot be started. -Checkpoint cannot be set again. -The control data used for the checkpoint setting process cannot be released. It can be easily detected that all the states of the PE have been recorded.
This is because the control process only needs to be notified from all the PEs. Difficult is the condition of the communication channel. It must be possible to detect that all the messages transmitted by the source PE before the status recording arrive at the destination PE and are recorded.

【0154】(再実行) (送信が状態記録前/後の判別)制御プロセスから指示
メッセージを受信し、PEの状態を「設定済みチェック
ポイント」に戻したPEを考える。このPEが他のPE
からメッセージを受信したとき、そのメッセージが、以
下のいずれであるかがわからなくてはならない。 (A)送信元が自分の状態をチェックポイントに戻す前
に送信されたメッセージ (B)送信元が自分の状態をチェックポイントに戻した
後に送信されたメッセージ (A)のメッセージは処理をしてはいけない。一方、
(B)ならば処理する必要がある。
(Re-execution) (Determination of transmission before / after state recording) Consider a PE that has received an instruction message from the control process and returned the state of the PE to the “set checkpoint”. This PE is another PE
When a message is received from, it must know whether the message is: (A) A message sent before the sender returns its status to the checkpoint. (B) A message sent after the sender returns its status to the checkpoint. The message of (A) is processed. Do not. on the other hand,
If it is (B), it is necessary to process.

【0155】(再実行の開始の終了検出)再実行の開始
が完了したことを検出できなければならない。再実行の
開始の完了とは、以下の状態になることである。 ・全てのPEの状態が「設定済みチェックポイント」に
戻る。 ・「設定済みチェックポイント」に状態を戻す前のPE
が送信したメッセージはもう通信チャネルに存在しな
い。再実行の開始の完了が確認されていない状態では、
処理をしてはいけないメッセージが通信チャネルに存在
する可能性がある。このため再実行の開始の完了が検出
できないと以下の不具合がある。 ・再びチェックポイントを設定することができない。 ・再実行の開始処理に使った制御用データ等を解放する
ことができない。
(Detection of Start of Re-execution) It must be possible to detect that the start of re-execution has been completed. Completion of the start of the re-execution means the following state. -The status of all PEs returns to "set checkpoint". -PE before returning the status to "set checkpoint"
The message sent by is no longer on the communication channel. If the completion of the rerun has not been confirmed,
Messages that should not be processed may exist on the communication channel. Therefore, if the completion of the re-execution is not detected, the following problem occurs. -Checkpoint cannot be set again. -It is not possible to release the control data used for the re-execution start processing.

【0156】(比較技術)「送信された順序でメッセー
ジが受信されるモデル」において、「チェックポイント
の設定と処理の再実行」を行う方式が以下の文献に書か
れている。Higaki, H., Shima, K., Tachikawa, T. and
Takizawa, M.,“Asynchronous Recovery in Distribut
ed Systems, ”マルチメディア通信と分散処理ワークシ
ョップ論文集,pp.151-158,情報処理学会,1996.
しかしながら、これには以下の問題点がある。 ・「送信された順序でメッセージが受信される」ことを
仮定しているので、メッセージの追い越しのないシステ
ムにしか適用できない。 ・チェックポイントの設定と処理の再実行を行うために
各PEが持たなければならない情報の量はPE数に比例
する。このため、PEの数が増えるとそれにつれて持つ
べき情報が増えてしまう。 ・再実行の開始の完了を検出するために必要なメッセー
ジの数は通信チャネルの数に比例する。通信チャネルの
数は、一般に、PE数の2乗に比例する。このためプロ
セスの数が増えていくと莫大な数のメッセージが必要に
なる。
(Comparative technique) In the "model in which messages are received in the order of transmission", the following literature describes a method of performing "set checkpoint and re-execute processing". Higaki, H., Shima, K., Tachikawa, T. and
Takizawa, M., “Asynchronous Recovery in Distribut
ed Systems, "Transaction Workshop on Multimedia Communication and Distributed Processing, pp.151-158, Information Processing Society of Japan, 1996.
However, this has the following problems. -Assuming that "messages are received in the order in which they are sent", it is only applicable to systems that do not overtake messages. The amount of information that each PE must have to set a checkpoint and re-execute processing is proportional to the number of PEs. For this reason, as the number of PEs increases, information to be held increases. -The number of messages needed to detect the completion of the start of the re-execution is proportional to the number of communication channels. The number of communication channels is generally proportional to the square of the number of PEs. For this reason, as the number of processes increases, an enormous number of messages are required.

【0157】(以下の具体例の特徴)これに対して以下
の具体例は、次の特長を持つ処理方法を提供する。 ・メッセージの追い越しのあるシステムにも適用でき
る。 ・チェックポイントの設定と処理の再実行を行うために
各PEが持たなければならない情報の量はPEの数に係
わらず一定である。 ・PE数に比例する数のメッセージで再実行の開始の完
了を検出することができる。
(Characteristics of the following specific example) In contrast, the following specific example provides a processing method having the following characteristics. -It can also be applied to systems that pass messages. The amount of information that each PE must have in order to set a checkpoint and re-execute processing is constant regardless of the number of PEs. The completion of the start of re-execution can be detected with a number of messages proportional to the number of PEs.

【0158】(具体的な構成)この具体例では、ひとつ
のPEはチェックポイントをひとつだけ持つ方法を述べ
る。既にチェックポイントAが設定されている状況で更
にチェックポイントBを設定した場合、前のチェックポ
イントAはクリアされる。最初に行うのは「チェックポ
イントの設定」であるが、その後は「チェックポイント
の設定」と「再実行」はどんな順序に行ってもよい。同
時にふたつの処理が行われているような状況は認められ
ない。ある「チェックポイントの設定あるいは再実行」
は、それのすぐ前の「チェックポイントの設定あるいは
再実行」が完了したことを確認してから開始する。この
確認は重み付け方式によって行う。まず重み付け方式を
説明し、その後5つの具体例を述べる。説明においては
通常メッセージと制御メッセージを以下の意味で用い
る。 通常メッセージ:通常処理を行うためのメッセージ。P
E群が互いに送受信する。 制御メッセージ:チェックポイントの設定と再実行を行
うためのメッセージ。制御プロセスとPE群が互いに送
受信する。
(Specific Configuration) In this specific example, a method in which one PE has only one checkpoint will be described. If checkpoint B is further set while checkpoint A has already been set, previous checkpoint A is cleared. First, "set checkpoint" is performed, but after that, "set checkpoint" and "re-execute" may be performed in any order. A situation where two processes are being performed at the same time is not recognized. Certain "checkpoint setting or re-execution"
Starts after confirming that "checkpoint setting or re-execution" immediately before is completed. This check is performed by a weighting method. First, the weighting method will be described, and then five specific examples will be described. In the description, a normal message and a control message are used in the following meaning. Normal message: A message for performing normal processing. P
Group E transmits and receives each other. Control message: A message for setting and re-executing checkpoints. The control process and the PEs transmit and receive each other.

【0159】(重み付け方式)制御プロセスとPEとメ
ッセージのそれぞれは重みを持つ。それぞれの重みは
「全ての重みの合計が『ある定まった一定値』」になる
ように初期設定する。各PEと制御プロセスは重みにつ
いて以下の処理を行い、「全ての重みの合計が『ある定
まった一定値』」である状態を保つ。 ・メッセージを送信するときは、メッセージに重みを付
け、自分の重みはその分だけ減らす。 ・メッセージを受信すると、メッセージに付いていた重
みを自分の重みに加える。この結果、「制御プロセスの
重みが『ある定まった一定値』であること」は、ネット
ワークチャネル上にメッセージが存在しないことと、全
てのPEの重みはゼロであることが同時に成り立ってい
ることを意味する。このため本方式によって「ネットワ
ークチャネル上にメッセージが存在しなくなったこと」
を検出できる。
(Weighting Method) Each of the control process, the PE, and the message has a weight. Initially, each weight is set so that the sum of all weights is "a certain fixed value". Each PE and the control process perform the following processing on the weights, and maintain a state where the sum of all weights is “a certain fixed value”. When sending a message, weight the message and reduce its own weight. -When a message is received, the weight attached to the message is added to its own weight. As a result, "the weight of the control process is" a certain fixed value "" means that there is no message on the network channel and that the weight of all PEs is zero at the same time. means. For this reason, this method "the message no longer exists on the network channel"
Can be detected.

【0160】重みの割り付け方として、例えば以下のふ
たつが考えられる。 (a)重みの合計はゼロとする。制御プロセスの重みは
負の整数に、他のふたつは正の整数に設定する。 (b)重みの合計は1とする。それぞれの重みは0以上
1以下に設定する。 図32に、上記(a)を用いた重み付け方式の例を示
す。図において、(a)では、PEa がメッセージ(Me
ssage )を送信した。メッセージには重み150を付け
ている。PEc がメッセージを受信して重み150を加
算し900になった。PEb はリターン(return)で重
み500を全て制御プロセスに送った。制御プロセスは
リターンを受信して重みを加算して−1600になっ
た。
For example, the following two methods can be considered for assigning weights. (A) The sum of the weights is zero. The control process weight is set to a negative integer and the other two are set to positive integers. (B) The sum of the weights is 1. Each weight is set to 0 or more and 1 or less. FIG. 32 shows an example of the weighting method using the above (a). In the figure, in (a), PEa is a message (Me
ssage). The message is given a weight of 150. PEc receives the message and adds weight 150 to 900. PEb sent all weights 500 to the control process on return. The control process received the return and added the weight to -1600.

【0161】〈具体例9の構成〉ここでは基本的な方法
を述べる。チェックポイントの設定や再実行の開始時
に、処理の開始を告げる制御メッセージを制御プロセス
が全てのPEへ送る方法である。 (構成)制御プロセスとPE及びメッセージは重みを持
つ。重みの合計が『ある定まった一定値』となるように
それぞれの重みの初期設定を行う。重みは世代を持つ。
全ての重みを同じ世代に初期設定する。制御プロセスは
旧世代重みカウンタを持つ。旧世代重みカウンタは、前
の世代の重みを持ったメッセージやPEが存在しなくな
ったことを検出するために使う。各PEは以下のフラグ
とバッファを持つ。 状態フラグ:世代の異なる通常メッセージを受信したと
き、このフラグの値によって行う処理が決まる。Cある
いはRのいずれかの値を取る。 状態バッファ:「自分の状態」と「通常メッセージのコ
ピー」をこのバッファに記録する。このバッファの内容
の集合がチェックポイントを構成する。
<Structure of Embodiment 9> Here, a basic method will be described. This is a method in which the control process sends a control message notifying the start of processing to all PEs when setting a checkpoint or starting re-execution. (Configuration) The control process, the PE, and the message have weight. Initialization of each weight is performed so that the sum of the weights is “a certain fixed value”. Weights have generations.
Initialize all weights to the same generation. The control process has an old generation weight counter. The old generation weight counter is used to detect that a message or PE having the weight of the previous generation no longer exists. Each PE has the following flags and buffers. Status flag: When a normal message of a different generation is received, the processing to be performed is determined by the value of this flag. Take either the value of C or R. Status buffer: "My status" and "copy of normal message" are recorded in this buffer. The set of contents of this buffer constitutes a checkpoint.

【0162】(制御プロセスの動作) チェックポイントの設定 以下の処理によって、チェックポイントの設定を開始
し、設定の完了を確認する。 (設定の開始)以下の処理を行う。 1.チェックポイント(checkpoint)制御メッセージ
(以下checkpointと略す)を全てのPEへ送信し、全て
のPEからチェックポイント認識(ackCheckpoint)制
御メッセージ(以下ackCheckpoint と略す)を受信する
まで待つ。 2.旧世代重みカウンタに自分の重みを設定する。 3.自分の重みを『ある定まった一定値』に設定する。 4.自分の重みの世代をひとつ進める。 5.record制御メッセージ(以下recordと略す)を全て
のPEへ送信する。recordには重みを付け、自分の重み
はその分だけ減らす。recordの重みの世代は、旧世代重
みカウンタの重みの世代よりひとつ進んでいる。
(Operation of Control Process) Setting of Checkpoint The setting of the checkpoint is started by the following processing, and the completion of the setting is confirmed. (Start of setting) Perform the following processing. 1. A checkpoint (checkpoint) control message (hereinafter abbreviated as checkpoint) is transmitted to all the PEs, and waits until a checkpoint recognition (ackCheckpoint) control message (hereinafter abbreviated as ackCheckpoint) is received from all the PEs. 2. Set your own weight in the old generation weight counter. 3. Set your weight to "a certain fixed value". 4. Advance one generation of your weight. 5. A record control message (hereinafter abbreviated as record) is transmitted to all PEs. Record is weighted, and your weight is reduced accordingly. The generation of the weight of the record is one ahead of the generation of the weight of the old generation weight counter.

【0163】(設定の完了の確認)return制御メッセー
ジ(以下returnと略す)を受信するとreturnが運んだ重
みを旧世代重みカウンタへ加える。加えた結果、旧世代
重みカウンタの値が『ある定まった一定値』になったな
らばチェックポイントの設定が完了したことを確認でき
る。完了を確認した時点における各PEの状態バッファ
の内容の集合がチェックポイントを構成する。
(Confirmation of Setting Completion) Upon receiving a return control message (hereinafter abbreviated as “return”), the weight carried by return is added to the old generation weight counter. As a result, when the value of the old generation weight counter becomes “a certain fixed value”, it can be confirmed that the setting of the checkpoint is completed. A set of contents of the status buffer of each PE at the time of confirming completion constitutes a checkpoint.

【0164】(再実行)以下の処理によって、再実行を
開始し、再実行が開始されたことを確認する。 (再実行の開始)以下の処理を行う。 1.再実行準備(rollback)制御メッセージ(以下roll
backと略す)を全てのPEへ送信し、再実行準備認識
(ackRollback )制御メッセージ(以下ackRollback と
略す)を全てのPEから受信するまで待つ。 2.旧世代重みカウンタに自分の重みを設定する。 3.自分の重みを『ある定まった一定値』に設定する。 4.自分の重みの世代をひとつ進める。 5.再実行(reexecute )制御メッセージ(以下reexec
ute と略す)を全てのPEへ送信する。reexecute には
重みを付け、自分の重みはその分だけ減らす。reexecut
e の重みの世代は、旧世代重みカウンタの重みの世代よ
りひとつ進んでいる。 (再実行の完了の確認)returnを受信すると、returnが
運んだ重みを旧世代重みカウンタへ加える。加えた結
果、旧世代重みカウンタの値が『ある定まった一定値』
になったならば再実行の開始が完了したことを確認でき
る。
(Re-execution) Re-execution is started by the following processing, and it is confirmed that the re-execution has been started. (Start of re-execution) The following processing is performed. 1. Re-execution preparation (rollback) control message (hereinafter, roll
back to all PEs, and waits until a re-execution preparation recognition (ackRollback) control message (hereinafter abbreviated as ackRollback) is received from all PEs. 2. Set your own weight in the old generation weight counter. 3. Set your weight to "a certain fixed value". 4. Advance one generation of your weight. 5. Reexecute control message (hereinafter reexec)
ute) is sent to all PEs. Reexecute is weighted and your weight is reduced accordingly. reexecut
The weight generation of e is one ahead of the weight generation of the old generation weight counter. (Confirmation of completion of re-execution) When return is received, the weight carried by return is added to the old-generation weight counter. As a result of the addition, the value of the old generation weight counter becomes "a certain fixed value"
When it becomes, it can be confirmed that the start of re-execution has been completed.

【0165】(PEの動作)checkpointを受信すると、
状態フラグをCに設定し、ackCheckpoint を制御プロセ
スへ返信する。recordを受信すると、「recordが持って
いる重みの世代」と「自分の重みの世代」を比較し、以
下の処理を行う。「recordの重みの世代」が新しいなら
ば以下の処理を行う。 1.状態バッファをクリアする。 2.自分の状態を状態バッファに記録する。 3.自分の重みをreturnで制御プロセスへ送る。 4.自分の重みをrecordの重みで再設定する。この処理
によって自分の重みの世代はひとつ進む。 ふたつの世代が等しいならば、recordの重みを自分の重
みに加える。なお、これは、「recordを受信した他のP
Eが送信した通常メッセージ(重みの世代がひとつ進ん
でいる)」がrecordよりも先に到着していた場合であ
る。
(Operation of PE) When the checkpoint is received,
Set the status flag to C and return ackCheckpoint to the control process. When record is received, "the generation of the weight that record has" and "the generation of its own weight" are compared, and the following processing is performed. If the “record weight generation” is new, the following processing is performed. 1. Clear the status buffer. 2. Record your status in the status buffer. 3. Return your weight to the control process by return. 4. Reset your weight with the weight of record. By this processing, the generation of the own weight is advanced by one. If the two generations are equal, add the weight of record to your weight. It should be noted that this is the "other P that received the record.
This is a case where the normal message (the weight generation is advanced by one) transmitted by E arrives before record.

【0166】rollbackを受信すると、状態フラグをRに
設定し、ackRollback を制御プロセスへ送る。reexecut
e を受信すると、「reexecute が持っている重みの世
代」と「自分の重みの世代」を比較し、以下の処理を行
う。「reexecute の重みの世代」が新しいならば以下の
処理を行う。 1.自分の状態を状態バッファの内容で設定し直す。こ
れにより、状態バッファに記録されていた状態からの再
実行が始まる。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みをreexecute の重みで再設定する。この
処理によって自分の重みの世代はひとつ進む。 ふたつの世代が等しいならば、reexecute の重みを自分
の重みに加える。なお、これは、「reexecute を受信し
た他のPEが送信した通常メッセージ(重みの世代がひ
とつ進んでいる)」がreexecute よりも先に到着してい
た場合である。
When the rollback is received, the status flag is set to R, and ackRollback is sent to the control process. reexecut
When e is received, the "generation of the weight held by reexecute" is compared with the "generation of its own weight", and the following processing is performed. If the "reexecute weight generation" is new, perform the following processing. 1. Reset your state with the contents of the state buffer. Thus, re-execution from the state recorded in the state buffer starts. 2. Return your weight to the control process by return. 3. Reset your weight with the reexecute weight. By this processing, the generation of the own weight is advanced by one. If the two generations are equal, add the weight of reexecute to your weight. Note that this is the case where the “normal message (the weight generation is advanced by one) transmitted by another PE that has received the reexecute” has arrived before the reexecute.

【0167】通常メッセージを受信すると、「通常メッ
セージが持っている重みの世代」と「自分の重みの世
代」を比較し、以下の処理を行う。「自分の重みの世
代」が新しく状態フラグがCならば以下の処理を行う。
なお、これは、「recordをまだ受信していない他のPE
が送信した通常メッセージ(重みの世代は前のまま)」
が、recordを受信してチェックポイント設定を始めてい
るPEに到着した場合である。 1.通常メッセージの重みをreturnで制御プロセスへ送
る。 2.通常メッセージの内容を状態バッファに記録する。 3.通常メッセージを処理する。 「自分の重みの世代」が新しく状態フラグがRならば、
通常メッセージの重みをreturnで制御プロセスへ送る。
通常メッセージ自身は処理することなく捨てる。既に再
実行を始めているので、この通常メッセージを処理して
はいけない。なお、これは、「reexecute をまだ受信し
ていない他のPEが送信した通常メッセージ(重みの世
代は前のまま)」が、reexecute を受信して再実行を始
めているPEに到着した場合である。
When the normal message is received, the "generation of the weight of the normal message" is compared with the "generation of its own weight", and the following processing is performed. If the "own weight generation" is new and the status flag is C, the following processing is performed.
Note that this means that "other PEs that have not yet received the record
Normal message sent by (previous weight generation remains) "
Is a case where a record has been received and arrived at the PE that has begun setting a checkpoint. 1. Normally the weight of the message is sent to the control process by return. 2. Record the contents of the normal message in the status buffer. 3. Process normal messages. If “own weight generation” is new and status flag is R,
Normally the weight of the message is sent to the control process by return.
Normally, the message itself is discarded without processing. Do not process this regular message because you have already started the rerun. Note that this is a case where the “normal message transmitted by another PE that has not received the reexecute yet (the weight generation remains the same)” arrives at the PE that has received the reexecute and has begun re-execution. .

【0168】「通常メッセージの重みの世代」が新しく
状態フラグがCならば以下の処理を行う。なお、これ
は、「recordを受信した他のPEが送信した通常メッセ
ージ(重みの世代がひとつ進んでいる)」が、recordよ
りも先に到着した場合である。 1.状態バッファをクリアする。 2.自分の状態を状態バッファに記録する。 3.自分の重みをreturnで制御プロセスへ送る。 4.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 5.通常メッセージを処理する。
If the "normal message weight generation" is new and the status flag is C, the following processing is performed. This is the case where the “normal message (the weight generation is advanced by one) transmitted by another PE that has received the record” arrives before the record. 1. Clear the status buffer. 2. Record your status in the status buffer. 3. Return your weight to the control process by return. 4. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 5. Process normal messages.

【0169】「通常メッセージの重みの世代」が新しく
状態フラグがRならば以下の処理を行う。なお、これ
は、「reexecute を受信した他のPEが送信した通常メ
ッセージ(重みの世代がひとつ進んでいる)」が、reex
ecute よりも先に到着した場合である。 1.自分の状態を状態バッファの内容で設定し直す。こ
れにより、状態バッファに記録されていた状態からの再
実行が始まる。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 4.通常メッセージを処理する。 ふたつの世代が等しいならば以下の処理を行う。 1.通常メッセージの重みを自分の重みに加える。 2.通常メッセージを処理する。
If the "normal message weight generation" is new and the status flag is R, the following processing is performed. This is because “the normal message transmitted by another PE that received reexecute (the generation of the weight is advanced by one)” is the reex
This is when it arrives before ecute. 1. Reset your state with the contents of the state buffer. Thus, re-execution from the state recorded in the state buffer starts. 2. Return your weight to the control process by return. 3. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 4. Process normal messages. If the two generations are equal, the following processing is performed. 1. Usually adds the weight of the message to its own weight. 2. Process normal messages.

【0170】図33、34、35は、「チェックポイン
トの設定」の例説明図である。各図において、 ・Old=2200は旧世代重みカウンタの値が220
0であることを示す。 ・W=500n は「新しい世代の重み500」を示す。 ・W=800o は「前の世代の重み800」を示す。 ・record(B0)はB0 を状態バッファに記録したこと
を示す。 ・msgは通常メッセージを示す。
FIGS. 33, 34 and 35 are explanatory diagrams of an example of “setting of checkpoint”. In each figure: Old = 2200 means that the value of the old generation weight counter is 220
Indicates that it is 0. W = 500n indicates "new generation weight 500". W = 800o indicates "weight of previous generation 800". Record (B0) indicates that B0 has been recorded in the status buffer. Msg indicates a normal message.

【0171】図33の(a)において、制御プロセスは
recordを全てのPEへ送信した。次に図33の(b)に
おいて、PEb とPEc にrecordが到着した。PEb と
PEc はそれぞれ自分の状態を記録し、自分の重みを制
御プロセスに返却した。次に図34の(a)において、
PEa ,PEc は通常メッセージmsg1,2,3を送
信した。PEの状態は送信によって変化している。ms
g1,msg3は新しい世代の重みを持ち、msg2は
前の世代の重みを持つ。図34の(b)に進み、新しい
世代の重みを持ったmsg1が、まだ重みが前の世代で
あるPEa に到着した。PEa は状態を記録し、自分の
重みを制御プロセスに返却した。
In FIG. 33A, the control process is as follows.
Record was sent to all PEs. Next, in FIG. 33B, the record arrives at PEb and PEc. PEb and PEc each recorded their status and returned their weights to the control process. Next, in FIG.
PEa and PEc have transmitted the normal messages msg1,2,3. The state of the PE has changed due to the transmission. ms
g1 and msg3 have the weight of the new generation, and msg2 has the weight of the previous generation. Proceeding to (b) of FIG. 34, msg1 having the weight of the new generation arrives at PEa whose weight is still the previous generation. PEa recorded the state and returned its weight to the control process.

【0172】図35の(a)で、前の世代の重みを持っ
たmsg2が新しい世代の重みを持ったPEb に到着し
た。PEb はmsg2を記録し、msg2の重みを制御
プロセスに返却した。こうして、図35(b)におい
て、制御プロセスがreturnを受信し、重みの加算結果が
ゼロになり、チェックポイントの設定を完了したことが
確認された。こうして、PEと通信チャネルの状態の辻
褄のあった集合が得られた。
In FIG. 35A, msg2 having the weight of the previous generation has arrived at PEb having the weight of the new generation. PEb recorded msg2 and returned the weight of msg2 to the control process. Thus, in FIG. 35 (b), it was confirmed that the control process received the return, the result of the weight addition became zero, and the checkpoint setting was completed. Thus, a consistent set of the states of the PE and the communication channel was obtained.

【0173】図36は、具体例9のチェックポイント設
定例を時間軸方向に見た説明図である。図37は、具体
例9の再実行の例を図36と同様の形式で示す説明図で
ある。
FIG. 36 is an explanatory diagram of the check point setting example of the specific example 9 viewed in the time axis direction. FIG. 37 is an explanatory diagram showing an example of re-execution of the specific example 9 in the same format as that of FIG.

【0174】〈具体例9の効果〉この方法は以下の効果
を持つ。 ・メッセージの追い越しのあるシステムにも適用でき
る。 ・チェックポイントの設定と処理の再実行を行うために
各PEが特別に持たなければならない情報は「状態フラ
グの値」と「世代付きの重み」だけである。これらはP
Eの数に係わらず一定である。 ・再実行の開始の完了を検出するために必要なメッセー
ジはreturnである。このメッセージの送信数は、PEの
数と再実行処理を行っている間に受信する前の世代の重
みを持った通常メッセージの数との和である。いずれも
PE数に比例する。 ・状態フラグが取る値は、CあるいはRの2つだけなの
で、1ビットで実現できる。
<Effect of Embodiment 9> This method has the following effects. -It can also be applied to systems that pass messages. The information that each PE must have specially in order to set a checkpoint and re-execute the processing is only the “state flag value” and the “weight with generation”. These are P
It is constant regardless of the number of E. -The message required to detect the completion of the start of re-execution is "return". The number of transmitted messages is the sum of the number of PEs and the number of normal messages having the weight of the generation before being received during the re-execution processing. Each is proportional to the number of PEs. Since the status flag takes only two values, C and R, it can be realized with one bit.

【0175】〈具体例10〉具体例9で述べた方法で
は、チェックポイントの設定や再実行を開始する際に制
御プロセスがまずcheckpointあるいはrollbackを送信し
て各PEの状態フラグの値を設定する必要があった。こ
こでは、そのような状態フラグ値設定用メッセージが不
要な方法を述べる。
<Specific Example 10> In the method described in Specific Example 9, when setting a checkpoint or starting re-execution, the control process first transmits checkpoint or rollback to set the value of the status flag of each PE. Needed. Here, a method in which such a status flag value setting message is unnecessary will be described.

【0176】(構成)制御プロセスとPE及びメッセー
ジは重みを持つ。重みの合計が『ある定まった一定値』
となるようにそれぞれの重みの初期設定を行う。重みは
世代を持つ。全ての重みを同じ世代に初期設定する。制
御プロセスは旧世代重みカウンタを持つ。旧世代重みカ
ウンタは、前の世代の重みを持ったメッセージやPEが
存在しなくなったことを検出するために使う。各PEは
以下のフラグとバッファを持つ。 状態フラグ:世代の異なる通常メッセージを受信したと
き、このフラグの値によって行う処理が決まる。Cある
いはRのいずれかの値を取る。 状態バッファ:「自分の状態」と「通常メッセージのコ
ピー」をこのバッファに記録する。このバッファの内容
の集合がチェックポイントを構成する。 メッセージバッファ:自分の重みより新しい世代の重み
を持つ通常メッセージを格納する。初期化処理でクリア
する。
(Configuration) The control process, the PE, and the message have weights. The sum of the weights is "a certain fixed value"
Initialization of each weight is performed so that Weights have generations. Initialize all weights to the same generation. The control process has an old generation weight counter. The old generation weight counter is used to detect that a message or PE having the weight of the previous generation no longer exists. Each PE has the following flags and buffers. Status flag: When a normal message of a different generation is received, the processing to be performed is determined by the value of this flag. Take either the value of C or R. Status buffer: "My status" and "copy of normal message" are recorded in this buffer. The set of contents of this buffer constitutes a checkpoint. Message buffer: Stores a normal message having a newer generation weight than its own weight. Cleared by initialization processing.

【0177】(制御プロセスの動作) (チェックポイントの設定)以下の処理によって、チェ
ックポイントの設定を開始し、設定の完了を確認する。 (設定の開始)以下の処理を行う。 1.旧世代重みカウンタに自分の重みを設定する。 2.自分の重みを『ある定まった一定値』に設定する。 3.自分の重みの世代をひとつ進める。 4.recordを全てのPEへ送信する。recordには重みを
付け、自分の重みはその分だけ減らす。recordの重みの
世代は、旧世代重みカウンタの重みの世代よりひとつ進
んでいる。 (設定完了の確認)returnを受信するとreturnが運んだ
重みを旧世代重みカウンタへ加える。加えた結果、旧世
代重みカウンタの値が『ある定まった一定値』になった
ならばチェックポイントの設定が完了したことが確認で
きる。完了を確認した時点における各PEの状態バッフ
ァの内容の集合がチェックポイントを構成する。
(Operation of Control Process) (Setting of Checkpoint) Setting of a checkpoint is started by the following processing, and completion of the setting is confirmed. (Start of setting) Perform the following processing. 1. Set your own weight in the old generation weight counter. 2. Set your weight to "a certain fixed value". 3. Advance one generation of your weight. 4. Send record to all PEs. Record is weighted, and your weight is reduced accordingly. The generation of the weight of the record is one ahead of the generation of the weight of the old generation weight counter. (Confirmation of setting completion) When return is received, the weight carried by return is added to the old generation weight counter. As a result, when the value of the old generation weight counter becomes "a certain fixed value", it can be confirmed that the checkpoint setting is completed. A set of contents of the status buffer of each PE at the time of confirming completion constitutes a checkpoint.

【0178】(再実行)以下の処理によって、再実行を
開始し、再実行が開始されたことを確認する。 (再実行の開始)以下の処理を行う。 1.旧世代重みカウンタに自分の重みを設定する。 2.自分の重みを『ある定まった一定値』に設定する。 3.自分の重みの世代をひとつ進める。 4.reexecute を全てのPEへ送信する。reexecute に
は重みを付け、自分の重みはその分だけ減らす。reexec
ute の重みの世代は、旧世代重みカウンタの重みの世代
よりひとつ進んでいる。 (再実行の完了の確認)returnを受信すると、returnが
運んだ重みを旧世代重みカウンタへ加える。加えた結
果、旧世代重みカウンタの値が『ある定まった一定値』
になったならば再実行の開始が完了したことを確認でき
る。
(Re-execution) Re-execution is started by the following processing, and it is confirmed that the re-execution has been started. (Start of re-execution) The following processing is performed. 1. Set your own weight in the old generation weight counter. 2. Set your weight to "a certain fixed value". 3. Advance one generation of your weight. 4. Send reexecute to all PEs. Reexecute is weighted and your weight is reduced accordingly. reexec
The generation of the weight of ute is one ahead of the generation of the weight of the old generation weight counter. (Confirmation of completion of re-execution) When return is received, the weight carried by return is added to the old-generation weight counter. As a result of the addition, the value of the old generation weight counter becomes "a certain fixed value"
When it becomes, it can be confirmed that the start of re-execution has been completed.

【0179】(PEの動作)recordを受信すると以下の
処理を行う。なお、recordの重みの世代はPEの重みの
世代より新しい。 1.状態フラグをCに設定する。 2.状態バッファをクリアする。 3.自分の状態を状態バッファに記録する。 4.自分の重みをreturnで制御プロセスへ送る。 5.自分の重みをrecordの重みで再設定する。この処理
によって自分の重みの世代はひとつ進む。 6.メッセージバッファに通常メッセージが格納されて
いるならば、それらのそれぞれについて以下の処理を行
う。なお、この時点では、自分の重みと通常メッセージ
の重みの世代は等しい。 (a)通常メッセージの重みを自分の重みに加える。 (b)通常メッセージを処理する。 (c)メッセージバッファをクリアする。
(Operation of PE) When record is received, the following processing is performed. The record weight generation is newer than the PE weight generation. 1. Set the status flag to C. 2. Clear the status buffer. 3. Record your status in the status buffer. 4. Return your weight to the control process by return. 5. Reset your weight with the weight of record. By this processing, the generation of the own weight is advanced by one. 6. If normal messages are stored in the message buffer, the following processing is performed for each of them. At this point, the generation of the own weight and the weight of the normal message are equal. (A) Add the weight of the normal message to its own weight. (B) Process normal messages. (C) Clear the message buffer.

【0180】reexecute を受信すると以下の処理を行
う。なお、reexecute の重みの世代はPEの重みの世代
より新しい。 1.状態フラグをRに設定する。 2.自分の状態を状態バッファの内容で設定し直す。こ
れにより、状態バッファに記録されていた状態からの再
実行が始まる。 3.自分の重みをreturnで制御プロセスへ送る。 4.自分の重みをreexecute の重みで再設定する。この
処理によって自分の重みの世代はひとつ進む。 5.メッセージバッファに通常メッセージが格納されて
いるならば、それらのそれぞれについて以下の処理を行
う。なお、この時点では、自分の重みと通常メッセージ
の重みの世代は等しい。 (a)通常メッセージの重みを自分の重みに加える。 (b)通常メッセージを処理する。 (c)メッセージバッファをクリアする。
When the reexecute is received, the following processing is performed. The weight generation of reexecute is newer than the generation of PE weights. 1. Set the status flag to R. 2. Reset your state with the contents of the state buffer. Thus, re-execution from the state recorded in the state buffer starts. 3. Return your weight to the control process by return. 4. Reset your weight with the reexecute weight. By this processing, the generation of the own weight is advanced by one. 5. If normal messages are stored in the message buffer, the following processing is performed for each of them. At this point, the generation of the own weight and the weight of the normal message are equal. (A) Add the weight of the normal message to its own weight. (B) Process normal messages. (C) Clear the message buffer.

【0181】通常メッセージを受信すると、「通常メッ
セージが持っている重みの世代」と「自分の重みの世
代」を比較し、以下の処理を行う。「自分の重みの世
代」が新しく状態フラグがCならば以下の処理を行う。 1.通常メッセージの重みをreturnで制御プロセスへ送
る。 2.通常メッセージの内容を状態バッファに記録する。 3.通常メッセージを処理する。 「自分の重みの世代」が新しく状態フラグがRならば、
通常メッセージの重みをreturnで制御プロセスへ送る。
通常メッセージは処理することなく捨てる。通常メッセ
ージの重みの世代が新しいならば、その通常メッセージ
は処理せずにメッセージバッファに格納する。ふたつの
世代が等しいならば以下の処理を行う。 1.通常メッセージの重みを自分の重みに加える。 2.通常メッセージを処理する。
When the normal message is received, the "generation of the weight of the normal message" is compared with the "generation of its own weight", and the following processing is performed. If the "own weight generation" is new and the status flag is C, the following processing is performed. 1. Normally the weight of the message is sent to the control process by return. 2. Record the contents of the normal message in the status buffer. 3. Process normal messages. If “own weight generation” is new and status flag is R,
Normally the weight of the message is sent to the control process by return.
Normally messages are discarded without processing. If the generation of the weight of the normal message is new, the normal message is stored in the message buffer without processing. If the two generations are equal, the following processing is performed. 1. Usually adds the weight of the message to its own weight. 2. Process normal messages.

【0182】図38には、具体例10のチェックポイン
ト設定例を、時間軸方向に見た説明図を示す。図39
は、具体例10の再実行の例を、図38と同様の形式で
示す説明図である。
FIG. 38 is an explanatory diagram showing a check point setting example of the specific example 10 viewed in the time axis direction. FIG.
38 is an explanatory diagram showing an example of re-execution of the specific example 10 in the same format as in FIG.

【0183】〈具体例10の効果〉本方法は、状態フラ
グの設定をrecordあるいはreexecute 受信によって行っ
たものである。この結果、具体例9が示す方法とは異な
り、状態フラグ値設定用メッセージ(checkpoint,roll
back)は不要となった。recordあるいはreexecute を受
信したPEは、いつでも通常メッセージを送信し得る。
そして送信された通常メッセージは、「recordあるいは
reexecute をまだ受信していないPE」に到着する可能
性がある。「recordあるいはreexecuteをまだ受信して
いないPE」は状態フラグが正しくは設定されていない
ので受信した通常メッセージをどう処理していいのかわ
からない。具体例9が示す方法では、「まず状態フラグ
値設定用メッセージを送信して状態フラグの設定を行っ
てからrecordやreexecute を送信する」ことで上記状況
に対処した。本方法では「record及びreexecute より先
に到着してしまった通常メッセージの処理はrecordある
いはreexecute を受信するまで待たせる」ことで対処し
た。
<Effect of Embodiment 10> In the present method, the status flag is set by record or execute reception. As a result, unlike the method shown in the specific example 9, the status flag value setting message (checkpoint, roll
back) is no longer needed. The PE receiving the record or execute can send a normal message at any time.
And the sent normal message is "record or
It is possible to arrive at a PE that has not yet received a reexecute. "PEs that have not received record or reexecute" do not know how to process the received normal message because the status flag is not set correctly. In the method shown in the specific example 9, the above situation was dealt with by "transmitting a status flag value setting message, setting a status flag, and then transmitting record or execute". In this method, we dealt with the problem by "waiting for the processing of a normal message that arrives before the record and reexecute until the record or execute is received."

【0184】図40には、具体例10において、新しい
世代のメッセージを受信したときの処理説明図を示す。
(a)はチェックポイント設定時の説明図である。新し
い世代のmsgはメッセージバッファに格納して保持
し、その後のrecord受信によってチェックポイント設定
であることがわかり、自分の状態Aj を状態バッファに
記録し、自分の重みをreturnで返却した。(b)は再実
行の場合の説明図である。新しい世代のmsgをメッセ
ージバッファに格納した後にreexecute を受信し、再実
行であることがわかり、自分の状態を状態バッファの内
容で設定し直し、自分の重みをreturnで返却した。本方
法は以下の効果を備える。 ・メッセージの追い越しのあるシステムにも適用でき
る。 ・チェックポイントの設定と処理の再実行を行うために
各PEが特別に持たなければならない情報は「状態フラ
グの値」と「世代付きの重み」だけである。これらはP
Eの数に係わらず一定である。 ・再実行の開始の完了を検出するために必要なメッセー
ジはreturnである。このメッセージの送信数はPEの数
と再実行処理を行っている間に受信する「前の世代の重
みを持った通常メッセージ」の数との和である。いずれ
もPE数に比例する。 ・具体例9と異なり、状態フラグ値設定用メッセージ
(checkpoint,rollback)が不要である。 ・状態フラグが取る値はCあるいはRの2つだけなの
で、1ビットで実現できる。
FIG. 40 is an explanatory diagram of processing when a message of a new generation is received in the specific example 10.
(A) is an explanatory diagram at the time of setting a checkpoint. The new generation msg is stored and held in the message buffer, and the subsequent record reception indicates that a checkpoint has been set, records its state Aj in the state buffer, and returns its weight by return. (B) is an explanatory diagram in the case of re-execution. After storing a new generation of msg in the message buffer, I received a reexecute and found that it was a re-execution, reset my state with the contents of the state buffer, and returned my weight with return. The method has the following effects. -It can also be applied to systems that pass messages. The information that each PE must have specially in order to set a checkpoint and re-execute the processing is only the “state flag value” and the “weight with generation”. These are P
It is constant regardless of the number of E. -The message required to detect the completion of the start of re-execution is "return". The number of transmitted messages is the sum of the number of PEs and the number of “normal messages having the weight of the previous generation” received during the re-execution processing. Each is proportional to the number of PEs. Unlike the specific example 9, the status flag value setting message (checkpoint, rollback) is not required. Since the status flag takes only two values, C and R, it can be realized with one bit.

【0185】〈具体例11〉具体例9で述べた方法で
は、各PEが状態フラグを持ち、チェックポイントの設
定や再実行を開始する際に、制御プロセスが状態フラグ
値設定用メッセージ(checkpoint,rollback)を送信し
て状態フラグの値を設定する必要があった。具体例10
の方法では、状態フラグ値設定用メッセージは不要だ
が、状態フラグは必要であった。ここでは、状態フラグ
も状態フラグ値設定用メッセージも不要な方法を述べ
る。
<Embodiment 11> In the method described in Embodiment 9, each PE has a status flag, and when the setting of a checkpoint or the re-execution is started, the control process causes the status flag value setting message (checkpoint, rollback) to set the status flag value. Example 10
In the method described above, the message for setting the status flag value is unnecessary, but the status flag is required. Here, a method in which neither the status flag nor the status flag value setting message is required will be described.

【0186】(構成)制御プロセスとPE及びメッセー
ジは重みを持つ。重みの合計が『ある定まった一定値』
となるようにそれぞれの重みの初期設定を行う。重みは
世代を持つ。全ての重みを同じ世代に初期設定する。制
御プロセスは旧世代重みカウンタを持つ。旧世代重みカ
ウンタは、前の世代の重みを持ったメッセージやPEが
存在しなくなったことを検出するために使う。各PEは
状態バッファを持つ。このバッファには「自分の状態」
と「通常メッセージのコピー」を記録する。このバッフ
ァの内容の集合がチェックポイントを構成する。
(Structure) The control process, the PE, and the message have weight. The sum of the weights is "a certain fixed value"
Initialization of each weight is performed so that Weights have generations. Initialize all weights to the same generation. The control process has an old generation weight counter. The old generation weight counter is used to detect that a message or PE having the weight of the previous generation no longer exists. Each PE has a status buffer. This buffer contains "your state"
And "copy of normal message". The set of contents of this buffer constitutes a checkpoint.

【0187】(制御プロセスの動作) (チェックポイントの設定)以下の処理によって、チェ
ックポイントの設定を開始し、設定の完了を確認する。 (設定の開始)以下の処理を行う。 1.旧世代重みカウンタに自分の重みを設定する。 2.自分の重みを『ある定まった一定値』に設定する。 3.自分の重みの世代をひとつ進める。 4.recordを全てのPEへ送信する。recordには重みを
付け、自分の重みはその分だけ減らす。recordの重みの
世代は、旧世代重みカウンタの重みの世代よりひとつ進
んでいる。 (設定の完了の確認)returnを受信するとreturnが運ん
だ重みを旧世代重みカウンタへ加える。加えた結果、旧
世代重みカウンタの値が『ある定まった一定値』になっ
たならばチェックポイントの設定が完了したことが確認
できる。完了を確認した時点における各PEの状態バッ
ファの内容の集合がチェックポイントを構成できる。
(Operation of Control Process) (Check Point Setting) Check point setting is started by the following processing, and completion of setting is confirmed. (Start of setting) Perform the following processing. 1. Set your own weight in the old generation weight counter. 2. Set your weight to "a certain fixed value". 3. Advance one generation of your weight. 4. Send record to all PEs. Record is weighted, and your weight is reduced accordingly. The generation of the weight of the record is one ahead of the generation of the weight of the old generation weight counter. (Confirmation of completion of setting) When return is received, the weight carried by return is added to the old generation weight counter. As a result, when the value of the old generation weight counter becomes "a certain fixed value", it can be confirmed that the checkpoint setting is completed. A set of contents of the status buffer of each PE at the time of confirming completion can constitute a checkpoint.

【0188】(再実行)以下の処理によって、再実行を
開始し、再実行が開始されたことを確認する。 (再実行の開始)以下の処理を行う。 1.旧世代重みカウンタに自分の重みを設定する。 2.自分の重みを『ある定まった一定値』に設定する。 3.自分の重みの世代をふたつ進める。 4.reexecute を全てのPEへ送信する。reexecute に
は重みを付け、自分の重みはその分だけ減らす。reexec
ute の重みの世代は、旧世代重みカウンタの重みの世代
よりふたつ進んでいる。 (再実行の完了の確認)returnを受信すると、returnが
運んだ重みを旧世代重みカウンタへ加える。加えた結
果、旧世代重みカウンタの値が『ある定まった一定値』
になったならば再実行の開始が完了したことを確認でき
る。
(Re-execution) Re-execution is started by the following processing, and it is confirmed that the re-execution has been started. (Start of re-execution) The following processing is performed. 1. Set your own weight in the old generation weight counter. 2. Set your weight to "a certain fixed value". 3. Advance two generations of your own weight. 4. Send reexecute to all PEs. Reexecute is weighted and your weight is reduced accordingly. reexec
The generation of the weight of ute is ahead of the generation of the weight of the old generation weight counter by two. (Confirmation of completion of re-execution) When return is received, the weight carried by return is added to the old-generation weight counter. As a result of the addition, the value of the old generation weight counter becomes "a certain fixed value"
When it becomes, it can be confirmed that the start of re-execution has been completed.

【0189】(PEの動作)recordを受信すると、「re
cordが持っている重みの世代」と「自分の重みの世代」
を比較し、以下の処理を行う。「recordの重みの世代」
が新しいならば以下の処理を行う。 1.状態バッファをクリアする。 2.自分の状態を状態バッファに記録する。 3.自分の重みをreturnで制御プロセスへ送る。 4.自分の重みをrecordの重みで再設定する。この処理
によって自分の重みの世代はひとつ進む。 ふたつの世代が等しいならば、recordの重みを自分の重
みに加える。reexecute を受信すると、「reexecute が
持っている重みの世代」と「自分の重みの世代」を比較
し、以下の処理を行う。「reexecute の重みの世代」が
新しいならば以下の処理を行う。 1.自分の状態を状態バッファの内容で設定し直す。こ
れにより、状態バッファに記録されていた状態からの再
実行が始まる。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みをreexecute の重みで再設定する。この
処理によって自分の重みの世代はふたつ進む。 ふたつの世代が等しいならば、reexecute の重みを自分
の重みに加える。
(Operation of PE) When record is received, "re
The generation of weight that cord has and the generation of its own weight
And performs the following processing. "Generation of record weights"
If is new, the following processing is performed. 1. Clear the status buffer. 2. Record your status in the status buffer. 3. Return your weight to the control process by return. 4. Reset your weight with the weight of record. By this processing, the generation of the own weight is advanced by one. If the two generations are equal, add the weight of record to your weight. When the reexecute is received, the “generation of the weight that reexecute has” and the “generation of its own weight” are compared, and the following processing is performed. If the "reexecute weight generation" is new, perform the following processing. 1. Reset your state with the contents of the state buffer. Thus, re-execution from the state recorded in the state buffer starts. 2. Return your weight to the control process by return. 3. Reset your weight with the reexecute weight. By this processing, the generation of the own weight advances by two. If the two generations are equal, add the weight of reexecute to your weight.

【0190】通常メッセージを受信すると、「通常メッ
セージが持っている重みの世代」と「自分の重みの世
代」を比較し、以下の処理を行う。「自分の重みの世
代」が1世代分新しいならば以下の処理を行う。 1.通常メッセージの重みをreturnで制御プロセスへ送
る。 2.通常メッセージの内容を状態バッファに記録する。 3.通常メッセージを処理する。 「自分の重みの世代」が2世代分新しいならば、通常メ
ッセージの重みをreturnで制御プロセスへ送る。通常メ
ッセージ自身は処理することなく捨てる。
When a normal message is received, the "generation of the weight of the normal message" is compared with the "generation of its own weight", and the following processing is performed. If the “own weight generation” is newer by one generation, the following processing is performed. 1. Normally the weight of the message is sent to the control process by return. 2. Record the contents of the normal message in the status buffer. 3. Process normal messages. If the "generation of own weight" is new by two generations, the weight of the normal message is sent to the control process by return. Normally, the message itself is discarded without processing.

【0191】「通常メッセージの重みの世代」が1世代
分新しいならば以下の処理を行う。 1.状態バッファをクリアする。 2.自分の状態を状態バッファに記録する。 3.自分の重みをreturnで制御プロセスへ送る。 4.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 5.通常メッセージを処理する。 「通常メッセージの重みの世代」が2世代分新しいなら
ば以下の処理を行う。 1.自分の状態を状態バッファの内容で設定し直す。こ
れにより、状態バッファに記録されていた状態からの再
実行が始まる。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はふたつ進む。 4.通常メッセージを処理する。 ふたつの世代が等しいならば以下の処理を行う。 1.通常メッセージの重みを自分の重みに加える。 2.通常メッセージを処理する。
If the "generation of the weight of the normal message" is newer by one generation, the following processing is performed. 1. Clear the status buffer. 2. Record your status in the status buffer. 3. Return your weight to the control process by return. 4. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 5. Process normal messages. If the "normal message weight generation" is newer by two generations, the following processing is performed. 1. Reset your state with the contents of the state buffer. Thus, re-execution from the state recorded in the state buffer starts. 2. Return your weight to the control process by return. 3. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight advances by two. 4. Process normal messages. If the two generations are equal, the following processing is performed. 1. Usually adds the weight of the message to its own weight. 2. Process normal messages.

【0192】図41には、具体例11の新しい世代の通
常メッセージを受信したときの説明図を示す。(a)は
チェックポイント設定処理の説明図である。世代がiで
あるPEに、世代がi+1のmsgが到着したためチェ
ックポイント設定であることがわかった。一方、(b)
は再実行処理の説明図である。世代がiであるPEに、
世代がi+2のmsgが到着して再実行であることがわ
かった。
FIG. 41 is an explanatory diagram of the specific example 11 when a new generation normal message is received. (A) is an explanatory diagram of a checkpoint setting process. Since the msg of the generation i + 1 arrived at the PE of the generation i, it was found that the checkpoint was set. On the other hand, (b)
FIG. 9 is an explanatory diagram of a re-execution process. For the PE whose generation is i,
It was found that the msg of generation i + 2 arrived and was re-executed.

【0193】〈具体例11の効果〉世代の異なる通常メ
ッセージをPEが受信したとき、「チェックポイント設
定」と「再実行」のいずれを行うべきか判断できなけれ
ばならない。具体例9、10が示す方法では、PEに状
態フラグを持たせ、制御プロセスからのメッセージによ
ってフラグの値を設定することで判断を行っていた。こ
れに対して本方法は世代の変化のさせ方で対処した。
「チェックポイント設定」と「再実行」で世代の進める
大きさを変える(チェックポイント設定ならばひとつ、
再実行ならばふたつ進める)ことにより、いずれである
のかを世代だけで判断できるようにしたのである。
<Effect of Specific Example 11> When a PE receives a normal message of a different generation, it must be able to determine whether to perform "checkpoint setting" or "re-execution". In the methods shown in the specific examples 9 and 10, the PE is provided with a status flag, and the determination is made by setting the value of the flag by a message from the control process. On the other hand, this method dealt with how to change the generation.
Change the size of the generation by "checkpoint setting" and "re-execute".
By re-executing the process, two steps can be performed) so that only the generation can determine which one is the re-execution.

【0194】この結果、本方法は以下の特長を持つ。 ・メッセージの追い越しのあるシステムにも適用でき
る。 ・チェックポイントの設定と処理の再実行を行うために
各PEが特別に持たなければならない情報は「世代付き
の重み」だけである。これらはPEの数に係わらず一定
である。 ・再実行の開始の完了を検出するために必要なメッセー
ジはreturnである。このメッセージの送信数はPEの数
と再実行処理を行っている間に受信する前の世代の重み
を持った通常メッセージの数の和である。いずれもPE
数に比例する。 ・具体例9と異なり、状態を示すフラグをPEが持つ必
要がなく、フラグの値を変化させるメッセージも必要な
い。
As a result, the present method has the following features. -It can also be applied to systems that pass messages. The only information that each PE must have specially in order to set a checkpoint and re-execute processing is the "weight with generation". These are constant regardless of the number of PEs. -The message required to detect the completion of the start of re-execution is "return". The number of transmitted messages is the sum of the number of PEs and the number of normal messages having the weight of the generation before reception during the re-execution processing. Both are PE
It is proportional to the number. Unlike the specific example 9, the PE does not need to have the flag indicating the state, and there is no need to change the flag value.

【0195】〈具体例12〉具体例9、10で述べた方
法ではどの場面においても重みの世代は高々2世代しか
存在しない。制御プロセスと「同じ世代」と「ひとつ前
の世代」のふたつである。このため、3つの世代があれ
ば、具体例9、10で述べた方法によってチェックポイ
ントの設定と再実行を行うことができる。 (構成)重みの世代として3世代のみを設ける。例えば
0→1→2→0→1→…である。 (動作)重みの世代に関する処理は以下のようにする。 重みの世代を進める処理:「0ならば1にする」「1な
らば2にする」「2ならば0にする」 重みの世代を比較する処理:「0と1では1の方が新し
い」「1と2では2の方が新しい」「2と0では0の方
が新しい」
<Embodiment 12> In the methods described in Embodiments 9 and 10, there are only two generations of weight at most in any scene. The control process is the same generation and the previous generation. Therefore, if there are three generations, checkpoint setting and re-execution can be performed by the methods described in the specific examples 9 and 10. (Configuration) Only three generations are provided as weight generations. For example, 0 → 1 → 2 → 0 → 1 →. (Operation) The processing related to the generation of the weight is performed as follows. Processing to advance the generation of weights: "If 0, set to 1""1 if set to 2""2 if set to 0" Processing to compare weight generation: "1 is newer between 0 and 1""2 is newer in 1 and 2""0 is newer in 2 and 0"

【0196】図42に、重みの世代の変化の様子を示
す。図42は、具体例12の重みの世代の変化の様子を
示す説明図である。例えば、制御プロセスが(1)の状
態でrecordを送信するとき、世代を1つ進めて(2)の
状態になる。チェックポイントの設定が完了するとPE
やメッセージの世代も新しくなっており(3)の状態で
ある。次に再実行あるいは再びチェックポイントの設定
を開始すると、制御プロセスは世代をひとつ進めて
(4)の状態になる。その後、再実行の開始あるいはチ
ェックポイント設定完了の確認された段階では、PEや
メッセージの世代も新しくなっており、(5)の状態で
ある。なお、重みの世代は0、1、2以外に、任意の数
や記号で指定できる。
FIG. 42 shows how the weight generation changes. FIG. 42 is an explanatory diagram illustrating a state of a change in the weight generation in the specific example 12. For example, when the control process transmits record in the state of (1), the generation is advanced by one and the state becomes the state of (2). When the checkpoint setting is completed, PE
The message generation is also new and is in the state (3). Next, when re-execution or checkpoint setting is started again, the control process advances the generation by one and enters the state (4). After that, at the stage when the re-execution is started or the checkpoint setting is completed, the generations of the PE and the message are also new and are in the state (5). The generation of the weight can be designated by any number or symbol other than 0, 1, and 2.

【0197】〈具体例12の効果〉重みの世代が3世代
だけで済む。これは2ビットだけで済むということであ
る。
<Effect of Specific Example 12> Only three generations need to be weighted. This means that only two bits are needed.

【0198】〈具体例13〉具体例11で述べた方法で
は、具体例9、10と同じように、どの場面においても
重みの世代は高々2世代しか存在しない。ただし具体例
9、10とは異なり、次の2つのパターンが存在する。 ・制御プロセスと「同じ世代」と「ひとつ前の世代」 ・制御プロセスと「同じ世代」と「ふたつ前の世代」 1あるいは2世代離れたふたつの世代について新旧を判
断するためには全部で5つの世代が必要である。5つの
世代を用意することにより、具体例11で述べた方法に
よってチェックポイントの設定と再実行を行うことがで
きる。
<Thirteenth Embodiment> In the method described in the eleventh embodiment, as in the ninth and tenth embodiments, there are at most two generations of weight in any scene. However, unlike the specific examples 9 and 10, the following two patterns exist. -"Same generation" and "one previous generation" with the control process-"Same generation" and "two previous generations" with the control process A total of five to judge the new or old for two generations one or two generations apart One generation is needed. By preparing five generations, checkpoint setting and re-execution can be performed by the method described in the specific example 11.

【0199】(構成)重みの世代として5世代のみを設
ける。例えば、 0→1→2→3→4→0→1→2→… である。 (動作)重みの世代に関する処理を以下に示す。 重みの世代をひとつ進める処理:「0ならば1にする」
「1ならば2にする」「2ならば3にする」「3ならば
4にする」「4ならば0にする」 重みの世代をふたつ進める処理:「0ならば2にする」
「1ならば3にする」「2ならば4にする」「3ならば
0にする」「4ならば1にする」 重みの世代を比較する処理:「0と1では1の方が1世
代新しい」「1と2では2の方が1世代新しい」「2と
3では3の方が1世代新しい」「3と4では4の方が1
世代新しい」「4と0では0の方が1世代新しい」「0
と2では2の方が2世代新しい」「1と3では3の方が
2世代新しい」「2と4では4の方が2世代新しい」
「3と0では0の方が2世代新しい」「4と1では1の
方が2世代新しい」
(Configuration) Only five generations are provided as weight generations. For example, 0 → 1 → 2 → 3 → 4 → 0 → 1 → 2 →. (Operation) The processing relating to the generation of weights is described below. Processing to advance weight generation by one: "If 0, set to 1"
"If 1 then 2""2 if 3""3 if 4""4 if 0" Processing to advance two weight generations: "If 0, then 2"
"3 if 1""4 if 2""0 if 3""1 if 4" Processing to compare weight generations: "1 between 0 and 1 is 1""Newgeneration""2 is 1 generation new in 1 and 2""3 is 1 generation new in 2 and 3""4 is 1 in 3 and 4"
"New generation""0 is one generation newer in 4 and 0""0
In 2 and 4, 2 is newer by 2 generations. "In 1 and 3, 3 is newer by 2 generations.""In 2 and 4, 4 is newer by 2 generations."
"In 3 and 0, 0 is 2 generations newer""4 and 1 is 2 generations newer"

【0200】図43に、重みの世代の変化の様子の例を
示す。図43は、具体例13の重みの世代の変化の様子
を示す説明図である。例えば、制御プロセスが(1)の
状態でrecordを送信するとき、世代をひとつ進めて
(2)の状態になる。チェックポイントの設定が完了す
るとPEやメッセージの世代が新しくなっており(3)
の状態である。今度は再実行を開始すると、制御プロセ
スは世代をふたつ進めて(4)の状態になる。これでP
Eは通常メッセージをreexecute より先に受信しても再
実行開始の状態とチェックポイント設定状態を区別でき
る。再実行の開始を制御プロセスが確認したときには、
PEやメッセージの世代もふたつ進んでおり(5)の状
態になっている。以下、同様にして例えば(6)(7)
(8)(9)という世代の変化が起きる。なお、重みの
世代は0,1,2,3,4といった数を使わなくてもよ
い。任意の数及び記号でよい。
FIG. 43 shows an example of how the weight generation changes. FIG. 43 is an explanatory diagram showing how the weight generation changes in Example 13. For example, when the control process transmits record in the state of (1), the generation is advanced by one and the state becomes (2). When the checkpoint setting is completed, the PE and message generations are new (3)
It is a state of. When re-execution is started this time, the control process advances the generation by two, and enters the state (4). This is P
E can distinguish between the re-execution start state and the checkpoint setting state even if the normal message is received before the re-execute. When the control process confirms that the rerun has started,
The generations of PEs and messages are also advanced by two, and are in the state of (5). Hereinafter, similarly, for example, (6) and (7)
(8) The generation change of (9) occurs. Note that the generation of weights does not have to use numbers such as 0, 1, 2, 3, and 4. Any number and symbol may be used.

【0201】〈具体例13の効果〉重みの世代が5世代
だけで済む。これは3ビットだけで済むということであ
る。なお、以上の具体例9〜13は、いずれも次のよう
な共通の効果を持っている。 ・メッセージの追い越しのあるシステムにも適用でき
る。 ・チェックポイントの設定と処理の再実行を行うため
に、各PEが持たなければならない情報の量はPEの数
に係わらず一定である。 ・再実行の開始の完了を検出するために必要なメッセー
ジの数はPEの数に比例する。
<Effect of Specific Example 13> Only five generations need to be weighted. This means that only three bits are needed. Note that the above specific examples 9 to 13 all have the following common effects. -It can also be applied to systems that pass messages. The amount of information that each PE must have in order to set a checkpoint and re-execute processing is constant regardless of the number of PEs. -The number of messages needed to detect the completion of the start of re-execution is proportional to the number of PEs.

【0202】〈具体例14〜19〉ひとつのPEが複数
のチェックポイントを持つ方法を述べる。すでにチェッ
クポイントAが設定されている状況でさらにチェックポ
イントBを設定した場合、AがクリアされることなくB
が設定される。最初に行なうのは「チェックポイントの
設定」であるが、その後は「チェックポイントの設定」
と「再実行」はどんな順序に行なってもよい。同時にふ
たつの処理が行なわれているような状況は認められな
い。ある「チェックポイントの設定あるいは再実行」
は、それのすぐ前の「チェックポイントの設定あるいは
再実行」が完了したことを確認してから開始する。この
確認は重み付け方式によって行なう。
<Specific Examples 14 to 19> A method in which one PE has a plurality of check points will be described. If checkpoint A is already set and checkpoint B is set, A will not be cleared and B
Is set. The first thing to do is "set checkpoints", but then "set checkpoints"
And "re-execute" may be performed in any order. A situation where two processes are being performed at the same time is not recognized. Certain "checkpoint setting or re-execution"
Starts after confirming that "checkpoint setting or re-execution" immediately before is completed. This confirmation is performed by a weighting method.

【0203】〈具体例14〉ここではチェックポイント
の設定や再実行の開始時に、処理の開始を告げる制御メ
ッセージを制御プロセスがすべてのPEへ送る基本的な
方法を説明する。各チェックポイントは識別のためのID
を持つ。このIDは設定時に指定する。再実行を行なう時
は、一般に複数のチェックポイントが設定されているの
で、再実行を開始するチェックポイントをIDで指定す
る。
<Example 14> Here, a basic method in which the control process sends a control message notifying the start of processing to all PEs when setting a checkpoint or starting re-execution will be described. Each checkpoint is an ID for identification
have. This ID is specified at the time of setting. When performing re-execution, since a plurality of check points are generally set, the check point at which re-execution is started is designated by ID.

【0204】(構成)具体例9の構成と同様であるが、
各PEは具体例9の状態バッファの代りにチェックポイ
ントを格納する状態レコードを持つ。状態レコードは、
以下のふたつのフィールドからなり、設定するチェック
ポイント、あるいは、再実行を始めるチェックポイント
を示すcheckpointIDを記録するIDレジスタを持つ。 IDフィールド:チェックポイントのID(以下、checkpoi
ntIDと略す)を示す。 状態フィールド:「自分の状態」と「通常メッセージの
コピー」がこのフィールドに記録され、この内容の集合
がチェックポイントを構成する。状態レコードが割り付
けられた段階では、クリアされている。
(Structure) The structure is the same as that of the ninth embodiment.
Each PE has a status record for storing a checkpoint instead of the status buffer of the ninth embodiment. The status record is
It consists of the following two fields and has an ID register that records the checkpoint to be set or the checkpointID indicating the checkpoint to start re-executing. ID field: Checkpoint ID (hereinafter, checkpoi
ntID). Status field: "My status" and "copy of normal message" are recorded in this field, and the set of contents constitutes a checkpoint. When the status record is allocated, it is cleared.

【0205】(制御プロセスの動作) (チェックポイントの設定) (設定の開始) 1.設定するチェックポイントのID(checkpointIDと呼
ぶ)を決定する。 2.checkpoint制御メッセージ(以下checkpointと略
す)をすべてのPEへ送信する。checkpointはcheckpoi
ntIDを引数として持つ。 3.すべてのPEからackCheckpoint制御メッセージ
(以下ackCheckpointと略す)を受信するまで待つ。こ
の後、具体例9で説明した(設定の開始)2から5の処
理を同様に行う。 (設定の完了の確認)具体例9と同様に行うため、説明
を省略する。
(Operation of Control Process) (Setting of Checkpoint) (Start of Setting) Determine the checkpoint ID to be set (called checkpointID). 2. A checkpoint control message (hereinafter abbreviated as checkpoint) is transmitted to all PEs. checkpoint is checkpoi
It has ntID as an argument. 3. It waits until an ackCheckpoint control message (hereinafter abbreviated as ackCheckpoint) is received from all PEs. Thereafter, the processing of 2 to 5 described in the specific example 9 (start of setting) is performed in the same manner. (Confirmation of Setting Completion) Since confirmation is performed in the same manner as in Example 9, the description is omitted.

【0206】(再実行)それまでに設定しているチェッ
クポイントのどれからでも再実行を始めることができ
る。checkpointIDを指定することによって、再実行開始
チェックポイントを示す。 (再実行の開始) 1.再実行を始めるチェックポイントを決定し、そのチ
ェックポイントを示すcheckpointIDを求める。 2.rollback制御メッセージ(以下rollbackと略す)を
すべてのPEへ送信する。rollbackは、チェックポイン
トを示すcheckpointIDを引数として持つ。 3.ackRollback制御メッセージ(以下ackRollbackと略
す)をすべてのPEから受信するまで待つ。この後、具
体例9で説明した(再実行の開始)2から5の処理を同
様に行う。 (再実行の完了の確認)具体例9と同様に行うため、説
明を省略する。
(Re-execution) Re-execution can be started from any of the checkpoints that have been set. Specify the checkpointID to indicate the re-execution start check point. (Start of re-execution) A checkpoint to start re-execution is determined, and a checkpointID indicating the checkpoint is obtained. 2. A rollback control message (hereinafter abbreviated as rollback) is transmitted to all PEs. rollback has checkpointID indicating a checkpoint as an argument. 3. It waits until an ackRollback control message (hereinafter abbreviated as ackRollback) is received from all PEs. Thereafter, the processing of 2 to 5 described in the specific example 9 (start of re-execution) is performed in the same manner. (Confirmation of completion of re-execution) Since it is performed in the same manner as in the ninth embodiment, the description is omitted.

【0207】(PEの動作) a:checkpointを受信すると以下の処理を行なう。 1.状態フラグをCに設定する。 2.checkpointが運んだcheckpointIDをIDレジスタに記
録する。 3.状態レコードを新しく割り付け、IDフィールドにch
eckpointIDを記録する。 4.ackCheckpointを制御プロセスへ返信する。
(Operation of PE) a: When a checkpoint is received, the following processing is performed. 1. Set the status flag to C. 2. The checkpoint ID carried by checkpoint is recorded in the ID register. 3. Allocate a new status record, ch to ID field
Record the eckpointID. 4. Return ackCheckpoint to the control process.

【0208】b:recordを受信すると、「recordが持っ
ている重みの世代」と「自分の重みの世代」を比較し、
以下の3通りのいずれかの処理を行なう。 「recordの重みの世代」が新しい 1.IDレジスタが示す状態レコードの状態フィールドに
自分の状態を記録する。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みをrecordの重みで再設定する。この処理
によって自分の重みの世代はひとつ進む。 ふたつの世代が等しい 1.recordの重みを自分の重みに加える。 「自分の重みの世代」が新しい 1.recordの重みをreturnで制御プロセスに送る。
B: When record is received, “the generation of the weight that record has” and “the generation of its own weight” are compared.
One of the following three processes is performed. New generation of record weight Record your status in the status field of the status record indicated by the ID register. 2. Return your weight to the control process by return. 3. Reset your weight with the weight of record. By this processing, the generation of the own weight is advanced by one. Two generations are equal Add the weight of record to your own weight. “Generation of own weight” is new Send the weight of record to the control process by return.

【0209】c:rollbackを受信すると以下の処理を行
なう。 1.状態フラグをRに設定する。 2.rollbackが運んだcheckpointIDをIDレジスタに記録
する。 3.ackRollbackを制御プロセスへ送る。
C: When rollback is received, the following processing is performed. 1. Set the status flag to R. 2. The checkpointID carried by rollback is recorded in the ID register. 3. Send ackRollback to the control process.

【0210】d: reexecuteを受信すると、「 reexecu
teが持っている重みの世代」と「自分の重みの世代」を
比較し、以下の3通りのいずれかの処理を行なう。 「 reexecuteの重みの世代」が新しい 1.IDレジスタが示す状態レコードの状態フィールドの
内容で自分の状態を設定し直す。これにより、指定され
たチェックポイントからの再実行が始まる。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みを reexecuteの重みで再設定する。この
処理によって自分の重みの世代はひとつ進む。 ふたつの世代が等しい reexecuteの重みを自分の重みに加える。 「自分の重みの世代」が新しい 1. reexecuteの重みをreturnで制御プロセスに送る。
D: When reexecute is received, "reexecu
The weight generation of te ”is compared with the“ own weight generation ”, and one of the following three processes is performed. “Reexecute weight generation” is new Reset your status with the contents of the status field of the status record indicated by the ID register. Thus, re-execution from the specified check point starts. 2. Return your weight to the control process by return. 3. Reset your weight with the reexecute weight. By this processing, the generation of the own weight is advanced by one. Two generations equal Add reexecute weight to their own weight. “Generation of own weight” is new Send the reexecute weight to the control process by return.

【0211】e:通常メッセージを受信すると、「通常
メッセージが持っている重みの世代」と「自分の重みの
世代」を比較し、以下の5通りの処理のいずれかを行な
う。 「自分の重みの世代」が新しく状態フラグがC 1.通常メッセージの重みをreturnで制御プロセスへ送
る。 2.IDレジスタが示す状態レコードの状態フィールドに
通常メッセージの内容を記録する。 3.通常メッセージを処理する。 「自分の重みの世代」が新しく状態フラグがR 具体例9と同様に通常メッセージの重みをreturnで制御
プロセスへ送る。通常メッセージ自身は処理することな
く捨てる。既に再実行を始めているので、この通常メッ
セージを処理してはいけない。 「通常メッセージの重みの世代」が新しく状態フラグ
がC 1.IDレジスタが示す状態レコードの状態フィールドに
自分の状態を記録する。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 4.通常メッセージを処理する。 「通常メッセージの重みの世代」が新しく状態フラグ
がR 1.IDレジスタが示す状態レコードの状態フィールドの
内容で自分の状態を設定し直す。これにより、指定され
たチェックポイントからの再実行が始まる。 2.自分の重みをreturnで制御プロセスへ送る。 3.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 4.通常メッセージを処理する。 ふたつの世代が等しい 具体例9と同様に以下の処理を行う。 1.通常メッセージの重みを自分の重みに加える。 2.通常メッセージを処理する。
E: When a normal message is received, the "generation of the weight of the normal message" is compared with the "generation of its own weight", and one of the following five processes is performed. The “own weight generation” is new and the status flag is C1. Normally the weight of the message is sent to the control process by return. 2. The content of the normal message is recorded in the status field of the status record indicated by the ID register. 3. Process normal messages. The “own weight generation” is new and the status flag is R. As in the ninth embodiment, the weight of the normal message is sent to the control process by return. Normally, the message itself is discarded without processing. Do not process this regular message because you have already started the rerun. The "normal message weight generation" is new and the status flag is C1. Record your status in the status field of the status record indicated by the ID register. 2. Return your weight to the control process by return. 3. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 4. Process normal messages. The “normal message weight generation” is new and the status flag is R1. Reset your status with the contents of the status field of the status record indicated by the ID register. Thus, re-execution from the specified check point starts. 2. Return your weight to the control process by return. 3. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 4. Process normal messages. The following processes are performed in the same manner as in the ninth embodiment. 1. Usually adds the weight of the message to its own weight. 2. Process normal messages.

【0212】図44〜図49に処理例を示す。図44
(a)において、-2200oの重みW(oは前の世代の重み
を表わす)を持つ制御プロセスが、すべてのPE(500o
の重みWを持つPEa、800oの重みWを持つPEb、900o
の重みWを持つPEc)へcheckpoint(checkpointID=i
d1)を送信している。図44(b)において、checkpoi
ntIDを記録したPEは各々ackCheckpointを制御プロセ
スへ返信する。図45(a)において、制御プロセス
が、500nの重みWを持つrecordをすべてのPEへ送信し
ている。このrecord送信により、制御プロセスの重みW
は-1500nとなった。図45(b)において、recordが到
着したPEbおよびPEcはrecordの重みWの世代が新し
いため、checkpointIDがid1である状態バッファに自分
の状態(PEbはB0、PEcはC0)を記録し、自分の重み
(PEbは800o、PEcは900o)をreturnで制御プロセス
へ送る。さらに、各々自分の重みをrecordの500n重みW
で再設定して自分の重みの世代をひとつ進める。
FIGS. 44 to 49 show processing examples. FIG.
In (a), the control process having a weight W of -2200o (o represents the weight of the previous generation) is performed for all PEs (500o
PEa with weight W of 900, PEb with weight W of 800o, 900o
Checkpoint (checkpointID = i)
d1) is sent. In FIG. 44 (b), checkpoi
Each PE recording the ntID returns an ackCheckpoint to the control process. In FIG. 45A, the control process transmits a record having a weight W of 500n to all PEs. By transmitting this record, the weight W of the control process is obtained.
Became -1500n. In FIG. 45 (b), since the generation of the weight W of the record is new, the PEb and PEc in which the record has arrived record their states (B0 for PEb and C0 for PEc) in the state buffer with the checkpoint ID of id1. (PEo is 800o, PEc is 900o) is sent to the control process by return. Further, each of the weights is set to the 500n weight W of the record.
And reset the weight by one.

【0213】図46(a)では、通常メッセージmsg1〜
msg3を送信したPEaおよびPEcは送信により状態が
変化している。図46(b)では、新しい世代の重みW
を持つmsg1が前の世代の重みWを持つPEaに到着した
ことにより、PEaは状態を記録して自分の重みを制御
プロセスへ返信する。図47(a)では、前の世代の重
みWを持つmsg2が新しい世代の重みWを持つPEbに到
着したことにより、PEbはmsg2の内容を記録してmsg2
の重みWを制御プロセスへ返信する。図47(b)で
は、制御プロセスがreturnを受信して重みの加算を行っ
た結果ゼロになったため、チェックポイントの設定が完
了したことが確認された。
In FIG. 46A, the normal messages msg1 to
The state of PEa and PEc that transmitted msg3 has changed due to transmission. In FIG. 46B, the weight W of the new generation
Arrives at the PEa having the weight W of the previous generation, the PEa records the state and returns its own weight to the control process. In FIG. 47A, the msg2 having the weight W of the previous generation has arrived at the PEb having the weight W of the new generation.
Is returned to the control process. In FIG. 47B, since the control process receives the return and adds the weight, the result becomes zero, and thus it is confirmed that the checkpoint setting is completed.

【0214】図48は具体例14のチェックポイント設
定例を時間軸方向に見た説明図であり、図49は具体例
14の再実行の例を図48同様に時間軸方向に見た説明
図である。
FIG. 48 is an explanatory diagram of the checkpoint setting example of the specific example 14 viewed in the time axis direction, and FIG. 49 is an explanatory diagram of the re-execution example of the specific example 14 viewed in the time axis direction as in FIG. It is.

【0215】(効果)具体例9の効果に加えて、ひとつ
のPEが複数のチェックポイントを持つことができる。
また、チェックポイントの設定と処理の再実行を行なう
ために各PEが特別に持たなければならない情報は「状
態レコードのIDフィールドとIDレジスタに記憶するchec
kpointID」と、「状態フラグの値」、それに「世代付き
の重み」だけである。これらはPEの数に係わらず一定
である。
(Effect) In addition to the effect of the ninth embodiment, one PE can have a plurality of check points.
The information that each PE must have specially in order to set a checkpoint and re-execute processing is described in “ID field of status record and chec stored in ID register.
kpointID "," state flag value ", and" weight with generation ". These are constant regardless of the number of PEs.

【0216】〈具体例15〉具体例14で述べた方法で
は、チェックポイントの設定や再実行を開始する際に制
御プロセスがまずcheckpointあるいはrollbackを送信し
て各PEの状態フラグの値を設定する必要があった。こ
こでは、そのような状態フラグ値設定用メッセージが不
要な方法を述べる。
<Example 15> In the method described in Example 14, when setting a checkpoint or starting re-execution, the control process first transmits checkpoint or rollback to set the value of the status flag of each PE. Needed. Here, a method in which such a status flag value setting message is unnecessary will be described.

【0217】(構成)具体例14で述べた構成に加え
て、各PEはメッセージバッファを持つ。 (制御プロセスの動作) (チェックポイントの設定) (設定の開始) 1.recordをすべてのPEへ送信する。recordはcheckp
ointIDを運ぶ。recordには重みを付け、自分の重みはそ
の分だけ減らす。 (設定の完了の確認)具体例9と同様に行うため、説明
を省略する。
(Configuration) In addition to the configuration described in the embodiment 14, each PE has a message buffer. (Operation of control process) (Setting of checkpoint) (Start of setting) Send record to all PEs. record is checkp
Carry ointID. Record is weighted, and your weight is reduced accordingly. (Confirmation of Setting Completion) Since confirmation is performed in the same manner as in Example 9, the description is omitted.

【0218】(再実行)具体例14と同様に行うため、
説明を省略する。 (再実行の開始)以下の処理を行なう。 1.再実行を始めるチェックポイントを決定し、そのチ
ェックポイントを示すcheckpointIDを求める。この後、
具体例9で説明した(再実行の開始)2から5の処理を
同様に行う。 (再実行の完了の確認)具体例9と同様に行うため、説
明を省略する。 (PEの動作) a:recordを受信すると以下の処理を行なう。尚、reco
rdの重みの世代はPEの重みの世代より新しい。 1.状態フラグをCに設定する。 2.recordが運んだcheckpointIDをIDレジスタに記録す
る。 3.状態レコードを新しく割り付け、IDフィールドにch
eckpointIDを、状態フィールドに自分の状態を記録す
る。 4.自分の重みをreturnで制御プロセスへ送る。 5.自分の重みをrecordの重みで再設定する。この処理
によって自分の重みの世代はひとつ進む。 6.メッセージバッファに通常メッセージが格納されて
いるならば、それらのそれぞれについて以下の処理を行
なう。尚、この時点では、自分の重みと通常メッセージ
の重みの世代は等しい。 (a)通常メッセージの重みを自分の重みに加える。 (b)通常メッセージを処理する。 (c)メッセージバッファをクリアする。
(Re-execution) In order to perform the same operation as in the embodiment 14,
Description is omitted. (Start of re-execution) The following processing is performed. 1. A checkpoint to start re-execution is determined, and a checkpointID indicating the checkpoint is obtained. After this,
The processing of 2 to 5 described in the specific example 9 (start of re-execution) is similarly performed. (Confirmation of completion of re-execution) Since it is performed in the same manner as in the ninth embodiment, the description is omitted. (Operation of PE) When a: record is received, the following processing is performed. In addition, reco
The rd weight generation is newer than the PE weight generation. 1. Set the status flag to C. 2. Record the checkpointID carried by record in the ID register. 3. Allocate a new status record, ch to ID field
Record your status in the status field with the eckpointID. 4. Return your weight to the control process by return. 5. Reset your weight with the weight of record. By this processing, the generation of the own weight is advanced by one. 6. If normal messages are stored in the message buffer, the following processing is performed for each of them. At this point, the generation of the own weight and the weight of the normal message are equal. (A) Add the weight of the normal message to its own weight. (B) Process normal messages. (C) Clear the message buffer.

【0219】b: reexecuteを受信すると以下の処理を
行なう。尚、 reexecuteの重みの世代はPEの重みの世
代より新しい。 1.状態フラグをRに設定する。 2. reexecuteが運んだcheckpointIDが示す状態レコー
ドの状態フィールドの内容で自分の状態を設定し直す。
これにより、指定されたチェックポイントからの再実行
が始まる。 3.自分の重みをreturnで制御プロセスへ送る。 4.自分の重みを reexecuteの重みで再設定する。この
処理によって自分の重みの世代はひとつ進む。 5.メッセージバッファに通常メッセージが格納されて
いるならば、それらのそれぞれについて以下の処理を行
なう。尚、この時点では、自分の重みと通常メッセージ
の重みの世代は等しい。 (a)通常メッセージの重みを自分の重みに加える。 (b)通常メッセージを処理する。 (c)メッセージバッファをクリアする。
B: When reexecute is received, the following processing is performed. The regeneration weight generation is newer than the PE weight generation. 1. Set the status flag to R. 2. Reset your own status with the contents of the status field of the status record indicated by checkpointID carried by reexecute.
Thus, re-execution from the specified check point starts. 3. Return your weight to the control process by return. 4. Reset your weight with the reexecute weight. By this processing, the generation of the own weight is advanced by one. 5. If normal messages are stored in the message buffer, the following processing is performed for each of them. At this point, the generation of the own weight and the weight of the normal message are equal. (A) Add the weight of the normal message to its own weight. (B) Process normal messages. (C) Clear the message buffer.

【0220】c:通常メッセージを受信すると、「通常
メッセージが持っている重みの世代」と「自分の重みの
世代」を比較し、以下の4通りの処理のいずれかを行な
う。 「自分の重みの世代」が新しく状態フラグがC 1.通常メッセージの重みをreturnで制御プロセスへ送
る。 2.IDレジスタが示す状態レコードの状態フィールドに
通常メッセージの内容を記録する。 3.通常メッセージを処理する。 「自分の重みの世代」が新しく状態フラグがR 1.通常メッセージの重みをreturnで制御プロセスへ送
る。通常メッセージは処理することなく捨てる。 通常メッセージの重みの世代が新しい 1.その通常メッセージは処理せずにメッセージバッフ
ァに格納する。 ふたつの世代が等しいならば以下の処理を行なう。 1.通常メッセージの重みを自分の重みに加える。 2.通常メッセージを処理する。
C: When a normal message is received, the "generation of the weight of the normal message" is compared with the "generation of its own weight", and one of the following four processes is performed. The “own weight generation” is new and the status flag is C1. Normally the weight of the message is sent to the control process by return. 2. The content of the normal message is recorded in the status field of the status record indicated by the ID register. 3. Process normal messages. The “generation of own weight” is new and the status flag is R1. Normally the weight of the message is sent to the control process by return. Normally messages are discarded without processing. New generation of normal message weight The normal message is stored in the message buffer without processing. If the two generations are equal, the following processing is performed. 1. Usually adds the weight of the message to its own weight. 2. Process normal messages.

【0221】図50および図51に処理例を示す。図5
0は具体例15のチェックポイント設定例を時間軸方向
に見た説明図であり、図51は具体例15の再実行の例
を図50同様に時間軸方向に見た説明図である。
FIGS. 50 and 51 show processing examples. FIG.
0 is an explanatory diagram of the check point setting example of the specific example 15 as viewed in the time axis direction, and FIG. 51 is an explanatory diagram of a rerun example of the specific example 15 as viewed in the time axis direction as in FIG.

【0222】(効果)recordあるいは reexecuteを受信
したPEは、いつでも通常メッセージを送信することが
でき、送信された通常メッセージは、「recordあるいは
reexecuteをまだ受信していないPE」に到着する可能
性がある。「recordあるいは reexecuteをまだ受信して
いないPE」は状態フラグが正しくは設定されていない
ので受信した通常メッセージをどう処理していいのかわ
からない。チェックポイント設定と再実行のいずれを行
なえばいいのかがわからないのである。本方法では「re
cord及び reexecuteより先に到着してしまった通常メッ
セージの処理はrecordあるいは reexecuteを受信するま
で待たせる」(図52参照)ことにより具体例14が示
す方法とは異なり、状態フラグ値設定用メッセージ(ch
eckpoint、rollback)は不要となる効果を奏する。チェ
ックポイントの設定と処理の再実行を行なうために各P
Eが特別に持たなければならない情報は「状態レコード
のIDフィールドとIDレジスタに記憶するcheckpointID」
と、「状態フラグの値」、それに世代付きの重みだけで
ある。これらはPEの数に係わらず一定である。
(Effect) The PE receiving record or reexecute can transmit a normal message at any time, and the transmitted normal message is “record or reexecute”.
It is possible to arrive at a PE that has not yet received a reexecute. The “PE that has not received record or reexecute” does not know how to process the received normal message because the status flag is not set correctly. You don't know if you should checkpoint or rerun. In this method, "re
The processing of the normal message that has arrived before the cord and reexecute is made to wait until a record or reexecute is received ”(see FIG. 52). ch
eckpoint, rollback) have an unnecessary effect. Each P to set checkpoints and re-execute processing
The information that E must have specially is "checkpointID stored in the ID field and ID register of the status record"
, The “state flag value”, and the weight with generation. These are constant regardless of the number of PEs.

【0223】〈具体例16〉具体例15で述べた方法で
は、record及び reexecuteより先に到着してしまった通
常メッセージの処理はrecordあるいは reexecuteを受信
するまで待たせる必要があったが、そのような通常メッ
セージを受信しても処理を待たせる必要のない方法を述
べる。
<Embodiment 16> In the method described in Embodiment 15, processing of a normal message that has arrived before record and reexecute has to be made to wait until record or reexecute is received. A method that does not need to wait for processing even if a normal message is received will be described.

【0224】(構成)各PEは具体例9の状態フラグに
代わって状態スイッチを持つ。 状態スイッチ:通常メッセージを送信する時の処理と、
世代の異なる通常メッセージを受信した時の処理が、こ
のスイッチの値によって決まり、C、C′、R、R′の
いずれかの値を取る。初期値はCである。
(Configuration) Each PE has a status switch in place of the status flag of the ninth embodiment. Status switch: Processing when sending a normal message,
Processing when a normal message of a different generation is received is determined by the value of this switch, and takes one of the values C, C ', R, and R'. The initial value is C.

【0225】(制御プロセスの動作) (チェックポイントの設定) (設定の開始) 1.設定するチェックポイントを示すcheckpointIDを決
定する。この後、具体例9で説明した(設定の開始)2
から5の処理を同様に行う。 (設定の完了の確認)具体例9と同様に行うため、説明
を省略する。 (設定完了確認後の処理)再実行の完了を確認したら c
ompleted制御メッセージ(以下 completedと略す)をす
べてのPEへ送信する。 completedには重みを付け、自
分の重みはその分だけ減らす。
(Operation of Control Process) (Setting of Checkpoint) (Start of Setting) Determine checkpointID indicating the checkpoint to be set. Thereafter, the description of the specific example 9 (start of setting) 2
To 5 are similarly performed. (Confirmation of Setting Completion) Since confirmation is performed in the same manner as in Example 9, the description is omitted. (Process after confirming the completion of setting) After confirming the completion of re-execution c
Send an ompleted control message (hereinafter abbreviated as completed) to all PEs. Weight completed and reduce your weight accordingly.

【0226】(再実行) (再実行の開始) 具体例14と同様に行うため、説明を省略する。 (再実行の完了の確認) 具体例9と同様に行うため、説明を省略する。 (再実行完了確認後の処理)再実行の完了を確認したら
completedをすべてのPEへ送信する。 completedには
重みを付け、自分の重みはその分だけ減らす。
(Re-execution) (Start of re-execution) Since the process is performed in the same manner as in Example 14, the description is omitted. (Confirmation of Completion of Re-execution) Since the re-execution is performed in the same manner as in Example 9, the description is omitted. (Process after completion of re-execution) After confirming completion of re-execution
Send completed to all PEs. Weight completed and reduce your weight accordingly.

【0227】(PEの動作) a:recordを受信すると、「recordが持っている重みの
世代」と「自分の重みの世代」を比較し、以下の3通り
の処理のいずれかを行なう。 「recordの重みの世代」が新しい 1.状態スイッチをC′に設定する。 2.recordが運んだcheckpointIDをIDレジスタに記録す
る。 3.状態レコードを新しく割り付け、IDフィールドにch
eckpointIDを、状態フィールドに自分の状態を記録す
る。 4.自分の重みをreturnで制御プロセスへ送る。 5.自分の重みをrecordの重みで再設定する。この処理
によって自分の重みの世代はひとつ進む。 ふたつの世代が等しい 1.recordの重みを自分の重みに加える。 「自分の重みの世代」が新しい 1.recordの重みをreturnで制御プロセスに送る。
(Operation of PE) When a: record is received, “the generation of the weight held by record” is compared with “the generation of its own weight”, and one of the following three processes is performed. New generation of record weight Set the status switch to C '. 2. Record the checkpointID carried by record in the ID register. 3. Allocate a new status record, ch to ID field
Record your status in the status field with the eckpointID. 4. Return your weight to the control process by return. 5. Reset your weight with the weight of record. By this processing, the generation of the own weight is advanced by one. Two generations are equal Add the weight of record to your own weight. “Generation of own weight” is new Send the weight of record to the control process by return.

【0228】b: reexecuteを受信すると、「 reexecu
teが持っている重みの世代」と「自分の重みの世代」を
比較し、以下の3通りのいずれかの処理を行なう。 「 reexecuteの重みの世代」が新しい 1.状態スイッチをR′に設定する。 2. reexecuteが運んだcheckpointIDをIDレジスタに記
録する。 3.checkpointIDが示す状態レコードの状態フィールド
の内容で自分の状態を設定し直す。これにより、指定さ
れたチェックポイントからの再実行が始まる。 4.自分の重みをreturnで制御プロセスへ送る。 5.自分の重みを reexecuteの重みで再設定する。この
処理によって自分の重みの世代はひとつ進む。 ふたつの世代が等しい 1. reexecuteの重みを自分の重みに加える。 「自分の重みの世代」が新しい 1.recordの重みをreturnで制御プロセスに送る。
B: When reexecute is received, “reexecu
The weight generation of te ”is compared with the“ own weight generation ”, and one of the following three processes is performed. “Reexecute weight generation” is new Set the status switch to R '. 2. Record the checkpointID carried by reexecute in the ID register. 3. Reset your status using the contents of the status field of the status record indicated by checkpointID. Thus, re-execution from the specified check point starts. 4. Return your weight to the control process by return. 5. Reset your weight with the reexecute weight. By this processing, the generation of the own weight is advanced by one. Two generations are equal Add the reexecute weight to your weight. “Generation of own weight” is new Send the weight of record to the control process by return.

【0229】c: completedを受信すると、状態スイッ
チの値に応じて以下の処理を行なう。尚、 completed
は、状態スイッチがC′あるいはR′の時のみに受信す
る。 状態スイッチがC′ 1.状態スイッチをCに設定する。 状態スイッチがR′ 1.状態スイッチをRに設定する。
C: When completed is received, the following processing is performed according to the value of the state switch. In addition, completed
Is received only when the status switch is at C 'or R'. If the status switch is C ' Set the status switch to C. If the status switch is R'1. Set the status switch to R.

【0230】d:通常メッセージを受信すると、「通常
メッセージが持っている重みの世代」と「自分の重みの
世代」を比較し、以下の5通りの処理のいずれかを行な
う。 「自分の重みの世代」が新しく状態スイッチがC′ 1.通常メッセージの重みをreturnで制御プロセスへ送
る。 2.IDレジスタが示す状態レコードの状態フィールドに
通常メッセージの内容を記録する。 3.通常メッセージを処理する。 「自分の重みの世代」が新しく状態スイッチがR′ 1.通常メッセージの重みをreturnで制御プロセスへ送
る。通常メッセージは処理することなく捨てる。 「通常メッセージの重みの世代」が新しく「通常メッ
セージの状態スイッチ」がC′ 1.状態スイッチをC′に設定する。 2.通常メッセージが運んだcheckpointIDをIDレジスタ
に記録する。 3.状態レコードを新しく割り付け、IDフィールドにch
eckpointIDを、状態フィールドに自分の状態を記録す
る。 4.自分の重みをreturnで制御プロセスへ送る。 5.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 6.通常メッセージを処理する。 「通常メッセージの重みの世代」が新しく「通常メッ
セージの状態スイッチ」がR′ 1.状態スイッチをR′に設定する。 2.通常メッセージが運んだcheckpointIDをIDレジスタ
に記録する。 3.checkpointIDが示す状態レコードの状態フィールド
の内容で自分の状態を設定し直す。これにより、指定さ
れたチェックポイントからの再実行が始まる。 4.自分の重みをreturnで制御プロセスへ送る。 5.自分の重みを通常メッセージの重みで再設定する。
この処理によって自分の重みの世代はひとつ進む。 6.通常メッセージを処理する。 ふたつの世代が等しい 1.通常メッセージの重みを自分の重みに加える。 2.通常メッセージを処理する。
D: When a normal message is received, the "generation of the weight of the normal message" is compared with the "generation of its own weight", and one of the following five processes is performed. The “generation of own weight” is new and the state switch is C ′ Normally the weight of the message is sent to the control process by return. 2. The content of the normal message is recorded in the status field of the status record indicated by the ID register. 3. Process normal messages. The "own weight generation" is new and the state switch is R'1. Normally the weight of the message is sent to the control process by return. Normally messages are discarded without processing. The “normal message weight generation” is new and the “normal message state switch” is C ′ 1. Set the status switch to C '. 2. The checkpointID carried by the normal message is recorded in the ID register. 3. Allocate a new status record, ch to ID field
Record your status in the status field with the eckpointID. 4. Return your weight to the control process by return. 5. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 6. Process normal messages. The "normal message weight generation" is new and the "normal message state switch" is R'1. Set the status switch to R '. 2. The checkpointID carried by the normal message is recorded in the ID register. 3. Reset your status using the contents of the status field of the status record indicated by checkpointID. Thus, re-execution from the specified check point starts. 4. Return your weight to the control process by return. 5. Reset your own weight to the weight of the normal message.
By this processing, the generation of the own weight is advanced by one. 6. Process normal messages. Two generations are equal Usually adds the weight of the message to its own weight. 2. Process normal messages.

【0231】(通常メッセージの送信)状態スイッチが
C′あるいはR′ならば、状態スイッチの値(C′ある
いはR′)とIDレジスタが記録しているcheckpointIDの
ふたつをメッセージに付加して送る。
(Normal message transmission) If the status switch is C 'or R', two values of the status switch value (C 'or R') and the checkpoint ID recorded in the ID register are added to the message and transmitted.

【0232】図53および図54に処理例を示す。図5
3は具体例16のチェックポイント設定例を時間軸方向
に見た説明図であり、図54は具体例16の再実行の例
を図53同様に時間軸方向に見た説明図である。
FIGS. 53 and 54 show processing examples. FIG.
3 is an explanatory diagram of the checkpoint setting example of the specific example 16 viewed in the time axis direction, and FIG. 54 is an explanatory diagram of the re-execution example of the specific example 16 viewed in the time axis direction as in FIG.

【0233】(効果)本方法では、(状態スイッチが
C′あるいはR′の時に送信される)通常メッセージ
は、状態スイッチの値とcheckpointIDをも運ぶ。「チェ
ックポイント設定と再実行のいずれを行なうか」の情報
とcheckpointIDは、recordあるいは reexecuteだけでな
く通常メッセージによってもPEに伝わるのである。こ
の結果、具体例15が示す方法とは異なり、どんな通常
メッセージも直ちに処理することができるようになり、
さらにメッセージバッファも不要であるという効果を奏
する。チェックポイントの設定と処理の再実行を行なう
ために各PEが特別に持たなければならない情報は「状
態レコードのIDフィールドとIDレジスタに記憶するchec
kpointID」と、「状態スイッチの値」、それに「世代付
きの重み」だけである。これらはPEの数に係わらず一
定である。
(Effect) In this method, the normal message (sent when the status switch is C 'or R') also carries the value of the status switch and the checkpointID. The information of "whether to perform checkpoint setting or re-execution" and the checkpoint ID are transmitted to the PE not only by record or reexecute but also by a normal message. As a result, unlike the method shown in Embodiment 15, any ordinary message can be immediately processed,
Further, there is an effect that a message buffer is not required. The information that each PE must have specially in order to set checkpoints and re-execute processing is described in "chec to store in ID field and ID register of status record.
There are only "kpointID", "value of state switch", and "weight with generation". These are constant regardless of the number of PEs.

【0234】〈具体例17〉具体例14〜16で述べた
方法では、すべてのPEはreturnを直接制御プロセスへ
送っている。このため、特定の短い時間内に制御プロセ
スへの通信が集中し、制御プロセスの受信チャネルが混
んでしまうおそれがある。ここでは、具体例14〜16
で述べた方法と比べて「制御プロセスが受信するreturn
の数が少なくて済む」ことが期待できる方法を示す。
<Embodiment 17> In the methods described in Embodiments 14 to 16, all PEs send the return directly to the control process. For this reason, communication to the control process concentrates within a specific short time, and the reception channel of the control process may be crowded. Here, specific examples 14 to 16
"Return received by the control process
Need to be small ".

【0235】(概要)return通信経路を設け、各PEは
この経路に沿ってreturnを送信する。return通信経路の
例を図55に示す。具体例14〜16で述べた方法とは
異なり、いくつものPEがreturnを制御プロセスへでは
なく他のPEへ送る。returnを受信したPEは以下の処
理を行なう。 (a)その後確実に自分でreturnを送信するのであれば、r
eturnが運んだ重みを一旦自分のところに蓄えておき、
自分からreturnを送信する時いっしょに送る。 (b)その後自分からreturnを送信しないかもしれない時
は、受信したreturnをそのままフォワードする。 上記(a)が行なわれると、複数のreturn(の運ぶ重み)
がひとつにまとまって送信される(返却される)。この
ため、制御プロセスが受信するreturnの数が少なくて済
むことが期待できる。
(Summary) A return communication path is provided, and each PE transmits a return along this path. FIG. 55 shows an example of the return communication path. Unlike the method described in the specific examples 14 to 16, several PEs send a return to another PE instead of the control process. The PE receiving the return performs the following processing. (a) After that, if you are sure to send a return yourself, r
Once the weights carried by eturn are stored in my place,
Send it when you send a return from yourself. (b) If it may not be possible to send a return from itself, the received return is forwarded as is. When the above (a) is performed, multiple returns (weights carried)
Are sent together (returned). For this reason, it can be expected that the number of returns received by the control process may be small.

【0236】(構成)PEはreturn送信先レジスタを持
つ。これは「returnを送信する宛先」を示す。図55の
例における各PEのreturn送信先レジスタの内容を以下
に示す。 PE−送信先レジスタの内容 PEa−制御プロセス PEb−PEa PEc−PEd PEd−PEa PEe−PEb PEf−PEb
(Configuration) The PE has a return destination register. This indicates "destination to send return". The contents of the return destination register of each PE in the example of FIG. 55 are shown below. PE-Content of destination register PEa-Control process PEb-PEa PEc-PEd PEd-PEa PEe-PEb PEf-PEb

【0237】(動作) (returnを送信しようとした時のPEの処理)return送
信先レジスタが示す宛先へreturnを送る。 (returnを受信した時のPEの処理)「returnが運んだ
重みの世代」と「自分の重みの世代」とを比較し、以下
の処理を行なう。図56および図57を参照して説明す
る。
(Operation) (Processing of PE when trying to send return) Return is sent to the destination indicated by the return destination register. (Process of PE when return is received) The "generation of weight carried by return" is compared with the "generation of own weight", and the following processing is performed. This will be described with reference to FIGS. 56 and 57.

【0238】図56(a)に示すようにふたつの世代が
等しいならば、図56(b)に示すようにreturnが運ん
だ重みを自分の重みに加える。ふたつの世代が等しい場
合は、概要で述べた(a)に対応する。returnが運ぶ重み
は「前の世代」である。従って、「受信したreturnの運
ぶ重みの世代」と「自分の重みの世代」が等しいという
ことは、自分の重みはまだ「前の世代」であることを示
している。このため、この後「新しい世代のrecordある
いは reexecuteor通常メッセージ」を必ず受信し、自分
の重みを運ぶreturnを送信することになる。図57
(a)に示すように「自分の重みの世代」が新しいなら
ば(概要で述べた(b)に対応する)、図57(b)に示
すようにreturn送信先レジスタが示すPEへ、そのretu
rnをそのまま送る。
If the two generations are equal as shown in FIG. 56 (a), the weight carried by return is added to its own weight as shown in FIG. 56 (b). If the two generations are equal, this corresponds to (a) described in the overview. The weight carried by return is the "previous generation". Therefore, the fact that the "generation of the weight carried by the received return" is equal to the "generation of the own weight" indicates that the own weight is still the "previous generation". Therefore, after this, a "new generation record or reexecuteor normal message" is always received, and a return carrying its own weight is transmitted. Fig. 57
If the “own weight generation” is new as shown in (a) (corresponding to (b) described in the outline), the PE is indicated by the return destination register as shown in FIG. 57 (b). retu
Send rn as it is.

【0239】また、具体例14で述べた方法に本方法を
適用した時のチェックポイント設定の処理例を図58に
示す。図58(a)に示すreturn通信経路を用いた場
合、チェックポイント設定処理は図58(b)のように
行われる。
FIG. 58 shows an example of a checkpoint setting process when the present method is applied to the method described in the fourteenth embodiment. When the return communication path shown in FIG. 58A is used, the checkpoint setting process is performed as shown in FIG.

【0240】(効果)図58の例では、制御プロセスが
受信するreturnの数が減少している。具体例14で述べ
た方法では4つのreturnを制御プロセスが受信していた
が、本方法では2つのreturnで済んでいる。このように
具体例14〜16で述べた方法と比べて「制御プロセス
が受信するreturnの数が少なくて済む」ことが期待でき
るという効果を奏する。
(Effect) In the example of FIG. 58, the number of returns received by the control process is reduced. In the method described in the specific example 14, four returns are received by the control process, but in the present method, only two returns are required. As described above, an effect that “the number of returns received by the control process can be reduced” can be expected as compared with the method described in the specific examples 14 to 16.

【0241】〈具体例18〉具体例17で述べた方法で
は、タイミングによっては、制御プロセスが受信するre
turnの数が具体例14で述べた方法と比べて全く減少し
ないことがある。実際、図58の例において、PEbか
らreturnを受信するより前にrecordをPaが受信した場合
は、具体例14で述べた方法と同じ4つのreturnを制御
プロセスは受信していた。ここでは、具体例14〜16
で述べた方法と比べて「タイミングに依らず制御プロセ
スが受信するreturnの数が少なくて済む」方法を示す。
<Embodiment 18> In the method described in Embodiment 17, depending on the timing, the control process receives
The number of turns may not decrease at all as compared with the method described in the embodiment 14. In fact, in the example of FIG. 58, when Pa receives record before receiving return from PEb, the control process has received the same four returns as in the method described in Example 14. Here, specific examples 14 to 16
This shows a method that “the number of returns received by the control process can be reduced irrespective of timing” as compared with the method described in “1.

【0242】(概要)return通信経路を設け、各PEは
この経路に沿ってreturnを送信する。PEは、自分へre
turnを送信してくるPEを知っている。それらすべての
PEからreturnを受信するまでは自分からreturnを送信
しない。 (構成)PEは以下のレジスタとカウンタ、スイッチ、
テーブルを持つ。 return送信先レジスタ:returnを送信する宛先PEを示
す(具体例17と同じ)。 返却重みカウンタ:返却すべき重みを格納する。ゼロに
初期設定する。 return送信スイッチ:notReady、ready、doneのいずれ
かかの値を取る。通信路の末端にありreturnを受信する
ことのないPEはdoneに初期設定する。それ以外のPE
はnotReadyに初期設定する。 return受信テーブル:以下のふたつのフィールドを持
つ。 return送信元PE:自分へreturnを送信してくるPEを
示す。 受信フラグ:notReceived、receivedのいずれかの値を
取る。対応するreturn送信元PEからreturnを受信して
いるかどうかを示す。notReceivedに初期設定する。
(Summary) A return communication path is provided, and each PE transmits a return along this path. PE re
Know the PE that sends the turn. Do not send a return from yourself until a return is received from all of those PEs. (Structure) PE has the following registers, counters, switches,
Have a table. return destination register: indicates the destination PE to which the return is transmitted (same as that of the specific example 17) Return weight counter: Stores the weight to be returned. Initialize to zero. return transmission switch: Takes any value of notReady, ready, and done. The PE which is at the end of the communication path and does not receive the return is initialized to done. Other PE
Initializes to notReady. return receiving table: It has the following two fields. return transmission source PE: indicates a PE that transmits a return to itself. Receive flag: Takes any value of notReceived and received. Indicates whether a return has been received from the corresponding return source PE. Initialize to notReceived.

【0243】図55の例におけるPEbの初期設定時のr
eturn受信テーブルを以下に示す。 通信路の末端にありreturnを受信することのないPE
(図55ではPcとPe、Pf)は返却重みカウンタとreturn
受信テーブルを持つ必要はない。
In the example of FIG. 55, r at the time of initial setting of PEb
The eturn reception table is shown below. PE at the end of the communication path that does not receive a return
(Pc and Pe, Pf in FIG. 55) are the return weight counter and return
There is no need to have a receiving table.

【0244】(動作)自分の重みの世代より新しい世代
の重みを持つrecord、 reexecuteあるいは通常メッセー
ジを受信し、受信したメッセージの重みで自分の重みを
再設定した時は、返却重みカウンタとreturn送信スイッ
チ、return受信テーブルも初期設定する。尚、既にretu
rn受信によって初期設定が行なわれている時は、自分の
重みの再設定のみを行い、その他の初期設定は行なわな
い。
(Operation) When a record, reexecute, or normal message having a newer generation weight than its own weight is received and its own weight is reset with the weight of the received message, a return weight counter and return transmission are performed. The switch and return receiving table are also initialized. In addition, already retu
When initialization is performed by rn reception, only the reset of its own weight is performed, and other initialization is not performed.

【0245】(returnを送信しようとした時のPEの処
理) a:return送信スイッチがdone return送信先レジスタが示す宛先へreturnを送る。 b:return送信スイッチがready 「returnで返却しようとした重み」を返却重みカウンタ
に足し込む。 c:return送信スイッチがnotReady return受信テーブルの受信フラグの値に応じて以下の処
理を行なう。 受信フラグの値がすべてreceived 1.「returnで返却しようとする重み」と「返却重みカ
ウンタが格納している重み」の合計を運ぶreturnを、re
turn送信先レジスタが示すPEへ送る。 2.return送信スイッチをdoneにセットする。 ひとつ以上の受信フラグがnotReceived 1.return送信スイッチをreadyにセットする。 2.「returnで返却しようとした重み」を返却重みカウ
ンタに足し込む。
(Processing of PE when trying to transmit return) a: Return The transmission switch sends a return to the destination indicated by the destination register. b: The return transmission switch adds ready “weight to be returned by return” to the return weight counter. c: The return transmission switch performs the following processing according to the value of the reception flag in the notReady return reception table. The values of the reception flags are all received. The return that carries the sum of the "weight to be returned by return" and the "weight stored in the return weight counter" is re
Turn Send to PE indicated by destination register. 2. Set return return switch to done. One or more receive flags are notReceived Set the return send switch to ready. 2. "Weight to be returned by return" is added to the return weight counter.

【0246】(returnを受信した時のPEの処理)retu
rn送信スイッチの値に応じて以下の処理を行なう。 a:return送信スイッチがdone 「returnが運んだ重みの世代」と「自分の重みの世代」
を比較し、以下の処理を行なう。 ふたつの世代が等しい 1.返却重みカウンタとreturn送信スイッチ、return受
信テーブルを初期設定する。 2.returnが運んだ重みを返却重みカウンタに足し込
む。 3.return受信テーブルの、受信したreturnの送信元P
Eに対応する受信フラグをreceivedにセットする。 「自分の重みの世代」が新しい return送信先レジスタが示すPEへ、そのreturnをその
まま送る。
(Processing of PE when return is received) retu
The following processing is performed according to the value of the rn transmission switch. a: Return sending switch is done "generation of weight carried by return" and "generation of own weight"
And performs the following processing. Two generations are equal Initialize the return weight counter, return transmission switch, and return reception table. 2. The weight carried by return is added to the return weight counter. 3. Source P of the received return in the return reception table
The reception flag corresponding to E is set to received. The "own weight generation" sends the return as it is to the PE indicated by the new return destination register.

【0247】b:return送信スイッチがready 1.returnが運んだ重みを返却重みカウンタに足し込
む。 2.return受信テーブルの、受信したreturnの送信元P
Eに対応する受信フラグをreceivedにセットする。 3.セットした結果、受信フラグの値がすべてreceived
になったならば以下の処理を行なう。 4.「返却重みカウンタが格納している重み」を運ぶre
turnを、return送信先レジスタが示すPEへ送る。 5.return送信スイッチをdoneにセットする。
B: return transmission switch is ready The weight carried by return is added to the return weight counter. 2. Source P of the received return in the return reception table
The reception flag corresponding to E is set to received. 3. As a result of setting, the values of the reception flags are all received
If it becomes, the following processing is performed. 4. Carrying the "weight stored in the return weight counter"
Turn is sent to the PE indicated by the return destination register. 5. Set return return switch to done.

【0248】c:return送信スイッチがnotReady 1.returnが運んだ重みを返却重みカウンタに足し込
む。 2.return受信テーブルの、受信したreturnの送信元P
Eに対応する受信フラグをreceivedにセットする。
C: return transmission switch is notReady The weight carried by return is added to the return weight counter. 2. Source P of the received return in the return reception table
The reception flag corresponding to E is set to received.

【0249】return送受信処理の例を図59および図6
0に示す。800nの重みWを持つrecordの受信(図59
(a))により、PEの重みWの再設定、返却重みカウ
ンタRWとreturn送信スイッチとreturn受信テーブルとが
初期設定される。新しい世代の重みを持つrecordを受信
したことによりPEはreturnを送信しようとするが、re
turn送信スイッチがnotReadyであり notReceivedの受信
フラグがあるため、return送信スイッチを readyにセッ
トし、returnで返却しようとした重みW(前の世代の自
分の重みW=500o )をRWに足し込んだ結果、重みWは50
0oになる。PEbおよびPEcからreturnを受信する(図
59(b))と、returnが運んだ重みを返却重みカウン
タRWに足し込み、return受信テーブルの受信したreturn
の送信元PEに対応する受信フラグRFs をreceivedにセ
ットし、返却重みカウンタRWが格納している重みを運ぶ
returnをreturn送信先レジスタが示すPEへ送り、retu
rn送信スイッチをdoneにセットする(図59(c))。
FIGS. 59 and 6 show examples of the return transmission / reception processing.
0 is shown. Receiving a record having a weight W of 800n (FIG. 59)
According to (a)), the reset of the PE weight W, the return weight counter RW, the return transmission switch, and the return reception table are initialized. The PE tries to send a return by receiving a record with the weight of the new generation.
Since the turn transmission switch is notReady and there is a reception flag of notReceived, the return transmission switch is set to ready, and the weight W to be returned by return (own weight W of the previous generation W = 500o) is added to RW. As a result, the weight W is 50
It becomes 0o. When return is received from PEb and PEc (FIG. 59 (b)), the weight carried by return is added to the return weight counter RW, and the return received in the return reception table is returned.
Set the received flag RFs corresponding to the source PE of received to received, and carry the weight stored in the return weight counter RW.
send return to the PE indicated by the return destination register, and return
The rn transmission switch is set to done (FIG. 59 (c)).

【0250】PEb から400oの重みWを持つreturnの受
信(図60(a))により、返却重みカウンタRWとretu
rn送信スイッチとreturn受信テーブルとを初期設定し、
返却重みカウンタRWにreturnが運んだ重みW(400o)が
足し込まれ、PEb に対応する受信フラグRFs がreceiv
edにセットされる。800nの重みWを持つrecordの受信を
するが、既にreturn受信によって初期設定が行なわれて
いるため自分の重みのみ再設定を行い、その他の初期設
定は行なわない(図60(b))。PEcから300o の重
みWを持つreturnを受信する(図60(c))と、retu
rnが運んだ重みを返却重みカウンタRWに足し込み、retu
rn受信テーブルの受信したreturnの送信元PEに対応す
る受信フラグRFs をreceivedにセットし、返却重みカウ
ンタRWが格納している重みを運ぶreturnをreturn送信先
レジスタが示すPEへ送り、return送信スイッチをdone
にセットする(図60(d))。
Upon reception of a return having a weight W of 400 ° from PEb (FIG. 60 (a)), return weight counter RW and return
rn Initialize the transmission switch and return reception table,
The weight W (400o) carried by return is added to the return weight counter RW, and the reception flag RFs corresponding to PEb is received.
Set to ed. A record having a weight W of 800n is received. However, since initialization has already been performed by return reception, only the own weight is reset, and other initialization is not performed (FIG. 60 (b)). When a return having a weight W of 300o is received from PEc (FIG. 60 (c)), return
Add the weight carried by rn to the return weight counter RW, and retu
rn Set the reception flag RFs corresponding to the source PE of the return received in the reception table to received, send the return carrying the weight stored in the return weight counter RW to the PE indicated by the return destination register, and return transmission switch The done
(FIG. 60D).

【0251】(効果)具体例14〜16で述べた方法と
比べて、制御プロセスが受信するreturnの数が少なくて
済む。
(Effect) The number of returns received by the control process may be smaller than the methods described in the specific examples 14 to 16.

【0252】〈具体例19〉具体例18で述べた方法で
は「どのPEからreturnを受信するか」の情報をPEが
持つ必要があった。ここでは「最低いくつのreturnを受
信するか」の情報によって具体例18と同じ効果を得ら
れる方法を示す。 (概要)通信経路を設け、各PEはこの経路に沿ってre
turnを送信する。PEは、自分が受信するreturnの最低
数を知っている。その最低数だけのreturnを受信するま
では自分からreturnを送信しない。
<Embodiment 19> In the method described in the embodiment 18, it is necessary for the PE to have information of "from which PE the return is received". Here, a method of obtaining the same effect as that of the specific example 18 by the information of “how many returns are received” will be described. (Summary) A communication path is provided, and each PE follows this path.
Send turn. The PE knows the minimum number of returns it receives. Do not send a return from yourself until you receive the minimum number of returns.

【0253】(構成)PEは、具体例18のreturn受信
テーブルに代えて未受信returnの数を示すreturn受信カ
ウンタを持つ。「自分が受信するreturnの最低数」に初
期設定される。図55のreturn通信経路の例における各
PEの初期設定時のreturn受信カウンタを以下に示す。
(Structure) The PE has a return reception counter indicating the number of unreceived returns instead of the return reception table of the eighteenth embodiment. Initially set to "Minimum number of returns to receive". The return reception counter at the time of initial setting of each PE in the example of the return communication path in FIG. 55 is shown below.

【0254】(動作)自分の重みの世代より新しい世代
の重みを持つrecord、 reexecuteあるいは通常メッセー
ジを受信し、受信したメッセージの重みで自分の重みを
再設定した時は、返却重みカウンタとreturn送信スイッ
チ、return受信カウンタも初期設定する。尚、既にretu
rn受信によって初期設定が行なわれている時は、自分の
重みの再設定のみを行い、その他の初期設定は行なわな
い。
(Operation) When a record, reexecute, or normal message having a newer generation weight than its own weight is received and its own weight is reset by the weight of the received message, a return weight counter and return transmission are performed. The switch and return reception counter are also initialized. In addition, already retu
When initialization is performed by rn reception, only the reset of its own weight is performed, and other initialization is not performed.

【0255】(returnを送信しようとした時のPEの処
理) a.return送信スイッチがdone return送信先レジスタが示す宛先へreturnを送る。 b:return送信スイッチがready 「returnで返却しようとした重み」を返却重みカウンタ
に足し込む。 c:return送信スイッチがnotReady return受信カウンタの値に応じて以下の処理を行なう。 return受信カウンタの値がゼロ 1.「returnで返却しようとする重み」と「返却重みカ
ウンタが格納している重み」の合計を運ぶreturnを、re
turn送信先レジスタが示すPEへ送る。 2.return送信スイッチをdoneにセットする。 return受信カウンタの値がゼロでない 1.return送信スイッチをreadyにセットする。 2.「returnで返却しようとした重み」を返却重みカウ
ンタに足し込む。
(Process of PE When Attempting to Transmit Return) a. The return transmission switch transmits the return to the destination indicated by the done return transmission destination register. b: The return transmission switch adds ready “weight to be returned by return” to the return weight counter. c: The return transmission switch performs the following processing according to the value of the notReady return reception counter. return The value of the reception counter is zero. The return that carries the sum of the "weight to be returned by return" and the "weight stored in the return weight counter" is re
Turn Send to PE indicated by destination register. 2. Set return return switch to done. return The value of the reception counter is not zero. Set the return send switch to ready. 2. "Weight to be returned by return" is added to the return weight counter.

【0256】(returnを受信した時のPEの処理)retu
rn送信スイッチの値に応じて以下の処理を行なう。 a.return送信スイッチがdone 「returnが運んだ重みの世代」と「自分の重みの世代」
を比較し、以下の処理を行なう。 ふたつの世代が等しい 1.返却重みカウンタとreturn送信スイッチ、return受
信カウンタを初期設定する。 2.returnが運んだ重みを返却重みカウンタに足し込
む。 3.return受信カウンタを-1する。 「自分の重みの世代」が新しい return送信先レジスタが示すPEへ、そのreturnをその
まま送る。
(Processing of PE when return is received) retu
The following processing is performed according to the value of the rn transmission switch. a. return transmission switch is done "generation of weight carried by return" and "generation of own weight"
And performs the following processing. Two generations are equal Initialize the return weight counter, return transmission switch, and return reception counter. 2. The weight carried by return is added to the return weight counter. 3. return Decrements the reception counter by one. The "own weight generation" sends the return as it is to the PE indicated by the new return destination register.

【0257】b.return送信スイッチがready 1.returnが運んだ重みを返却重みカウンタに足し込
む。 2.return受信カウンタを-1する。 3.-1した結果、受信カウンタの値がゼロになったなら
ば、「返却重みカウンタが格納している重み」を運ぶre
turnを、return送信先レジスタが示すPEへ送る。retu
rn送信スイッチをdoneにセットする。
B. return Send switch is ready The weight carried by return is added to the return weight counter. 2. return Decrease the reception counter by one. 3. If the value of the reception counter becomes zero as a result of -1, carrying the "weight stored in the return weight counter"
Turn is sent to the PE indicated by the return destination register. retu
rn Set the transmission switch to done.

【0258】c.return送信スイッチがnotReady 1.returnが運んだ重みを返却重みカウンタに足し込
む。 2.return受信カウンタを-1する。
C. return Send switch is notReady The weight carried by return is added to the return weight counter. 2. return Decrements the reception counter by one.

【0259】return送受信処理の例を図61および図6
2に示す。800nの重みWを持つrecordの受信(図61
(a))により、PEの重みWの再設定、返却重みカウ
ンタRWとreturn送信スイッチとreturn受信カウンタとが
初期設定される。returnを受信する(図61(b))
と、returnが運んだ重みを返却重みカウンタRWに足し込
み、return受信カウンタから1を減ずる。returnを2回
受信したため、減算が2回行なわれた結果、受信カウン
タがゼロになったため、返却重みカウンタRWが格納して
いる重み(1200o )を運ぶreturnをreturn送信先レジス
タが示すPEへ送り、return送信スイッチをdoneにセッ
トする(図61(c))。
FIGS. 61 and 6 show examples of the return transmission / reception processing.
It is shown in FIG. Receiving a record with a weight W of 800n (FIG. 61)
By (a)), the resetting of the PE weight W, the return weight counter RW, the return transmission switch, and the return reception counter are initialized. Receiving return (Fig. 61 (b))
Then, the weight carried by return is added to the return weight counter RW, and 1 is subtracted from the return reception counter. Since the return has been received twice and the subtraction has been performed twice, the reception counter has become zero. Therefore, the return carrying the weight (1200o) stored in the return weight counter RW is sent to the PE indicated by the return destination register. , The return transmission switch is set to done (FIG. 61 (c)).

【0260】400oの重みWを持つreturnの受信(図62
(a))により、返却重みカウンタRWとreturn送信スイ
ッチとreturn受信カウンタとを初期設定し、返却重みカ
ウンタRWにreturnが運んだ重みW(400o)が足し込ま
れ、PEb に対応する受信フラグRFs がreceivedにセッ
トされる。800nの重みWを持つrecordの受信により、P
Eの重みWのみ再設定される(図62(b))。300oの
重みWを持つreturnを受信する(図62(c))と、re
turnが運んだ重みを返却重みカウンタRWに足し込み、re
turn受信カウンタから1を減ずる。この結果、受信カウ
ンタがゼロになるため、返却重みカウンタRWが格納して
いる重み(1200o )を運ぶreturnをreturn送信先レジス
タが示すPEへ送り、return送信スイッチをdoneにセッ
トする(図62(d))。
Receiving return having weight W of 400o (FIG. 62)
According to (a)), the return weight counter RW, the return transmission switch, and the return reception counter are initialized, the weight W (400o) carried by the return is added to the return weight counter RW, and the reception flag RFs corresponding to PEb is added. Is set to received. By receiving a record with a weight W of 800n, P
Only the weight W of E is reset (FIG. 62 (b)). When a return having a weight W of 300o is received (FIG. 62 (c)), re
The weight carried by turn is added to the return weight counter RW, and re
Subtract 1 from the turn reception counter. As a result, the reception counter becomes zero, so a return carrying the weight (1200o) stored in the return weight counter RW is sent to the PE indicated by the return destination register, and the return transmission switch is set to done (FIG. 62 ( d)).

【0261】(効果)具体例14〜16で述べた方法と
比べて、制御プロセスが受信するreturnの数が少なくて
済む。さらに具体例18で述べた方法と比べて、最低い
くつのreturnを受信するかの情報を持つだけで良い。
(Effect) The number of returns received by the control process may be smaller than the methods described in the specific examples 14 to 16. Further, as compared with the method described in the embodiment 18, it is only necessary to have information on at least how many returns are received.

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

【図1】本発明の大域状態決定方法の説明図である。FIG. 1 is an explanatory diagram of a global state determination method according to the present invention.

【図2】マルチプロセッサシステムの概念図である。FIG. 2 is a conceptual diagram of a multiprocessor system.

【図3】メッセージ送受信とPEの状態変化の例説明図
である。
FIG. 3 is an explanatory diagram of an example of message transmission / reception and a state change of a PE.

【図4】具体例1の動作説明図(その1)である。FIG. 4 is an explanatory diagram (part 1) of the operation of the specific example 1.

【図5】具体例1の動作説明図(その2)である。FIG. 5 is an operation explanatory diagram (part 2) of the first specific example;

【図6】具体例1の動作説明図(その3)である。FIG. 6 is an operation explanatory diagram (part 3) of the first specific example;

【図7】具体例1の動作説明図(その4)である。FIG. 7 is an operation explanatory diagram (part 4) of the first specific example;

【図8】具体例1の動作説明図(その5)である。FIG. 8 is an operation explanatory view (part 5) of the specific example 1;

【図9】具体例2による状態決定方法説明図である。FIG. 9 is an explanatory diagram of a state determination method according to a specific example 2.

【図10】具体例2の動作説明図である。FIG. 10 is an operation explanatory diagram of a specific example 2.

【図11】具体例3の方法の説明図である。FIG. 11 is an explanatory diagram of a method of a specific example 3.

【図12】具体例3の動作説明図である。FIG. 12 is an operation explanatory diagram of a specific example 3.

【図13】具体例4の方法を示す説明図である。FIG. 13 is an explanatory diagram showing a method of Example 4;

【図14】具体例4の動作説明図である。FIG. 14 is an explanatory diagram of an operation in a specific example 4.

【図15】具体例5の動作説明図である。FIG. 15 is an operation explanatory diagram of the specific example 5;

【図16】具体例6の方法説明図である。FIG. 16 is an explanatory diagram of a method according to a specific example 6.

【図17】具体例6の動作説明図(その1)である。FIG. 17 is an operation explanatory diagram (part 1) of the specific example 6;

【図18】具体例6の動作説明図(その2)である。FIG. 18 is an operation explanatory diagram (part 2) of the specific example 6.

【図19】具体例6の動作説明図(その3)である。FIG. 19 is an operation explanatory diagram (part 3) of the specific example 6;

【図20】具体例6の動作説明図(その4)である。FIG. 20 is an operation explanatory diagram (part 4) of the specific example 6;

【図21】具体例7の方法説明図である。FIG. 21 is an explanatory diagram of a method according to the seventh embodiment.

【図22】具体例7の動作説明図(その1)である。FIG. 22 is an operation explanatory diagram (part 1) of the specific example 7;

【図23】具体例7の動作説明図(その2)である。FIG. 23 is an operation explanatory diagram (part 2) of the specific example 7;

【図24】具体例7の動作説明図(その3)である。FIG. 24 is an operation explanatory diagram (part 3) of the specific example 7;

【図25】具体例7の動作説明図(その4)である。FIG. 25 is an operation explanatory diagram (part 4) of the specific example 7;

【図26】具体例7の動作説明図(その5)である。FIG. 26 is an operation explanatory diagram (part 5) of the specific example 7;

【図27】具体例7の動作説明図(その6)である。FIG. 27 is an explanatory view (part 6) of the operation of the specific example 7;

【図28】具体例8における世代の変化の例を示す図で
ある。
FIG. 28 is a diagram illustrating an example of a change in generation in a specific example 8.

【図29】メッセージ送受信とPEの状態変化の例説明
図である。
FIG. 29 is an explanatory diagram of an example of message transmission / reception and PE state change.

【図30】正しいチェックポイントの例説明図である。FIG. 30 is an explanatory diagram of an example of a correct check point.

【図31】正しくないチェックポイントの例説明図であ
る。
FIG. 31 is an explanatory diagram of an example of an incorrect check point.

【図32】重み付け方式の例説明図である。FIG. 32 is an explanatory diagram of an example of a weighting method.

【図33】具体例9の「チェックポイントの設定」の例
説明図(1/3)である。
FIG. 33 is an explanatory diagram (1/3) of the example 9 of “set checkpoint”;

【図34】具体例9の「チェックポイントの設定」の例
説明図(2/3)である。
FIG. 34 is an explanatory diagram (2/3) of “set checkpoint” in specific example 9;

【図35】具体例9の「チェックポイントの設定」の例
説明図(3/3)である。
FIG. 35 is an explanatory view (3/3) of “set checkpoint” in the specific example 9;

【図36】具体例9の「チェックポイントの設定」の例
説明図である。
FIG. 36 is an explanatory diagram of an example of “set checkpoint” in specific example 9;

【図37】具体例9の「再実行」の例説明図である。FIG. 37 is an explanatory diagram of an example of “re-execution” of the specific example 9;

【図38】具体例10の「チェックポイントの設定」の
例説明図である。
FIG. 38 is an explanatory diagram of an example of “set checkpoint” in specific example 10;

【図39】具体例10の「再実行」の例説明図である。FIG. 39 is an explanatory diagram of an example of “re-execution” of the specific example 10.

【図40】具体例10の新しい世代の通常メッセージを
受信した時の処理説明図である。
FIG. 40 is an explanatory diagram of processing when a new generation normal message of the specific example 10 is received.

【図41】具体例11の新しい世代の通常メッセージを
受信したときの処理説明図である。
FIG. 41 is an explanatory diagram of processing when a new generation normal message of the specific example 11 is received.

【図42】具体例12における重みの世代の変化の様子
説明図である。
FIG. 42 is an explanatory diagram showing how the generation of weights changes in specific example 12.

【図43】具体例13における重みの世代の変化の様子
説明図である。
FIG. 43 is an explanatory diagram of how the generation of the weight changes in specific example 13.

【図44】具体例14のチェックポイントの設定の例説
明図(その1)である。
FIG. 44 is an explanatory diagram (part 1) of an example of setting checkpoints in specific example 14;

【図45】具体例14のチェックポイントの設定の例説
明図(その2)である。
FIG. 45 is an explanatory diagram (part 2) of an example of setting checkpoints in specific example 14;

【図46】具体例14のチェックポイントの設定の例説
明図(その3)である。
FIG. 46 is a diagram (part 3) illustrating an example of setting checkpoints in specific example 14;

【図47】具体例14のチェックポイントの設定の例説
明図(その4)である。
FIG. 47 is a diagram (part 4) of an example of setting checkpoints in specific example 14;

【図48】具体例14のチェックポイントの設定の例説
明図である。
FIG. 48 is an explanatory diagram of an example of setting a check point in the specific example 14.

【図49】具体例14の再実行の例説明図である。FIG. 49 is an explanatory diagram of an example of re-execution of specific example 14;

【図50】具体例15のチェックポイントの設定の例説
明図である。
FIG. 50 is an explanatory diagram of an example of setting checkpoints in specific example 15;

【図51】具体例15の再実行の例説明図である。FIG. 51 is an explanatory diagram of an example of re-execution of specific example 15;

【図52】具体例15の新しい世代の通常メッセージを
受信した時の処理説明図である。
FIG. 52 is an explanatory diagram of processing when a new generation normal message is received according to specific example 15;

【図53】具体例16のチェックポイントの設定の例説
明図である。
FIG. 53 is an explanatory diagram of an example of setting checkpoints in specific example 16;

【図54】具体例16の再実行の例説明図である。FIG. 54 is an explanatory diagram of an example of re-execution of specific example 16;

【図55】具体例17の通信経路の例説明図である。FIG. 55 is an explanatory diagram of an example of a communication path in specific example 17;

【図56】具体例17のreturn受信時の処理の例説明図
である。
FIG. 56 is an explanatory diagram of an example of processing at the time of return reception in the specific example 17;

【図57】具体例17のreturn受信時の処理の例説明図
である。
FIG. 57 is an explanatory diagram of an example of a process at the time of return reception in the specific example 17;

【図58】具体例17のチェックポイントの設定の例説
明図である。
FIG. 58 is an explanatory diagram of an example of setting a checkpoint in the specific example 17;

【図59】具体例18のreturn送受信処理の例説明図で
ある。
FIG. 59 is an explanatory diagram of a return transmission / reception process of the specific example 18;

【図60】具体例18のreturn送受信処理の例説明図で
ある。
FIG. 60 is an explanatory diagram of an example of the return transmission / reception process of the specific example 18.

【図61】具体例19のreturn送受信処理の例説明図で
ある。
FIG. 61 is an explanatory diagram of an example of the return transmission / reception process of the specific example 19;

【図62】具体例19のreturn送受信処理の例説明図で
ある。
FIG. 62 is an explanatory diagram of an example of the return transmission / reception process of the specific example 19;

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

1 決定プロセス 3 大域状態用バッファ 5 状態バッファ 6 送信バッファ 7 受信バッファ W1、W2、W3、W4、X 重み Reference Signs List 1 decision process 3 global state buffer 5 state buffer 6 transmission buffer 7 reception buffer W1, W2, W3, W4, X weight

Claims (23)

【特許請求の範囲】[Claims] 【請求項1】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは求めた大域状態を格納するための大域状
態用バッファを持ち、 各プロセッサは、 どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、自己の状態を保存する状態バッファ
と、受信した通常メッセージを格納する受信バッファ
と、送信を保留中の通常メッセージを格納する送信バッ
ファとを持ち、メッセージスイッチはバッファになにも
格納していないことを示すノットレコーデット( notRe
corded)に初期設定され、 決定プロセスは、 大域状態用バッファをクリアし、通常メッセージの送信
を保留するよう指示するレコード(record)制御メッセ
ージを全てのプロセッサへ所定の重みを付けて送信し、
その重みの分だけ自己の重みを減らし、 プロセッサは、 レコード(record)制御メッセージを受信すると、自己
の状態を状態バッファに格納し、自己の重みとレコード
(record)制御メッセージについていた重みの合計とを
リターン(return)制御メッセージに付けて決定プロセ
スへ送り、 メッセージスイッチを通常メッセージの送信を保留する
状態を示すレコーデッド(recorded)に設定し、受信バ
ッファと送信バッファとをクリアして、 その後、メッセージスイッチがレコーデッド(recorde
d)となったプロセッサは、 通常メッセージを受信するとその通常メッセージのコピ
ーを受信バッファに格納するとともに、そのつど、その
通常メッセージに付いていた重みをリターン(return)
制御メッセージに付けて決定プロセスに送信し、送信す
る通常メッセージは送信を保留して送信バッファに格納
し、 決定プロセスは、 プロセッサからリターン(return)制御メッセージを受
信すると、これに付いていた重みを自分の重みに加え
て、その結果が前記全ての重みを加算したときの一定値
となった場合には、格納データ要求のためのリクエスト
( request)制御メッセージを全てのプロセッサに送
り、 各プロセッサは、 リクエスト( request)制御メッセージを受信すると、
自己の状態バッファの内容と受信バッファの内容とを、
アンサー(answer)制御メッセージで決定プロセスへ送
り、メッセージスイッチを格納データ送信完了を示すレ
ディ( ready)に設定し、 決定プロセスは、アンサー(answer)制御メッセージを
受信すると、そのアンサー(answer)制御メッセージが
運んだ状態バッファの内容と受信バッファの内容とを大
域状態用バッファに格納し、全てのプロセッサからアン
サー(answer)制御メッセージを受信したら、動作の再
開を指示するリスタート( restart)制御メッセージに
重みを付けて全てのプロセッサへ送り、その重み分だけ
自己の重みを減らし、 各プロセッサは、 リスタート( restart)制御メッセージを受信すると、
そのリスタート( restart)制御メッセージに付いてい
た重みを自己の重みに加え、送信バッファに通常メッセ
ージが格納されているならばそれらを送信し、メッセー
ジスイッチがレディ( ready)ならば、メッセージスイ
ッチをノットレコーデット( notRecorded)に設定し、
動作を再開したことを示すスターテッド( started)制
御メッセージを決定プロセスに送信し、 決定プロセスは、 全てのプロセッサからスターテッド( started)制御メ
ッセージを受信したら処理を完了して、大域状態用バッ
ファの内容を決定することを特徴とする大域状態決定方
法。
In a multiprocessor system for performing inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is Each processor has a global state buffer for storing the obtained global state, and each processor has a message switch indicating which control message corresponds to the state, a state buffer for saving its own state, and a received normal message. And a transmission buffer for storing a normal message pending transmission, and the message switch uses a not record (notReRecord) indicating that nothing is stored in the buffer.
Initialized to corded), the decision process sends a record control message with a given weight to all processors, clearing the global state buffer and instructing normal message transmission to be suspended,
When the processor receives the record control message, it stores its state in a state buffer, and calculates the sum of its own weight and the weight associated with the record control message. Is sent to the decision process with a return control message, the message switch is set to "recorded" indicating that the normal message transmission is suspended, the reception buffer and the transmission buffer are cleared, and then the message Switch is Recorded (recorde
Upon receiving the normal message, the processor in d) stores a copy of the normal message in the reception buffer, and returns the weight attached to the normal message each time.
The control message is transmitted to the decision process, and the normal message to be transmitted is suspended and stored in a transmission buffer. When the return process message is received from the processor, the decision process determines the weight attached to the return control message. When the result becomes a constant value obtained by adding all the weights in addition to the own weight, a request control message for a stored data request is sent to all the processors, and each processor , Upon receiving a request control message,
The contents of its own status buffer and the contents of the receive buffer are
An answer (answer) control message is sent to the decision process, the message switch is set to ready indicating that the stored data has been transmitted, and the decision process receives the answer (answer) control message, and the answer (answer) control message Stores the contents of the status buffer and the contents of the receive buffer carried in the global state buffer, and, upon receiving answer (answer) control messages from all the processors, generates a restart (restart) control message instructing restart of operation. Weights are sent to all processors, and their weights are reduced by that weight. When each processor receives a restart control message,
The weight added to the restart control message is added to its own weight. If the normal message is stored in the transmission buffer, the message is transmitted. If the message switch is ready, the message switch is transmitted. Set to NotRecorded,
A started (started) control message indicating that the operation has been resumed is transmitted to the decision process, and the decision process completes the process when the started (started) control message is received from all processors, and the global state buffer is returned. A method for determining a global state, comprising determining contents.
【請求項2】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは求めた大域状態を格納するための大域状
態用バッファを持ち、 各プロセッサは、 どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとを持ち、メッセージスイッチはバ
ッファになにも格納していないことを示すノットレコー
デット( notRecorded)に初期設定され、 決定プロセスは、 大域状態用バッファをクリアし、通常メッセージの送信
を保留するよう指示するレコード(record)制御メッセ
ージを全てのプロセッサへ所定の重みを付けて送信し、
その重みの分だけ自己の重みを減らし、 プロセッサは、 レコード(record)制御メッセージを受信すると、自己
の重みとレコード(record)制御メッセージについてい
た重みの合計と、自己の状態とをリターン(return)制
御メッセージで決定プロセスに送信し、 メッセージスイッチを、通常メッセージの送信を保留す
る状態を示すレコーデッド(recorded)に設定し、送信
バッファをクリアして、 その後、メッセージスイッチがレコーデッド(recorde
d)となったプロセッサは、 通常メッセージを受信すると、 その通常メッセージのコピーとこれに付いていた重みを
そのつどリターン(return)制御メッセージに付けて決
定プロセスに送信し、送信する通常メッセージは送信を
保留して送信バッファに格納し、 決定プロセスは、 プロセッサからリターン(return)制御メッセージを受
信すると、そのリターン(return)制御メッセージが運
んだ各プロセッサの状態あるいは通常メッセージのコピ
ーを大域状態用バッファに格納し、リターン(return)
制御メッセージに付いていた重みを自分の重みに加え
て、その結果が前記全ての重みを加算したときの一定値
となった場合には、プロシード( proceed)制御メッセ
ージを全てのプロセッサに送り、 各プロセッサは、 プロシード( proceed)制御メッセージを受信すると、
プロシーデッド( proceeded)制御メッセージを決定プ
ロセスへ送り、メッセージスイッチをレディ(ready)
に設定し、 決定プロセスは、全てのプロセッサからプロシーデッド
( proceeded)制御メッセージを受信すると、動作の再
開を指示するリスタート( restart)制御メッセージに
重みを付けて全てのプロセッサへ送り、その重み分だけ
自己の重みを減らし、 各プロセッサは、 リスタート( restart)制御メッセージを受信すると、
そのリスタート( restart)制御メッセージに付いてい
た重みを自己の重みに加え、メッセージスイッチがレデ
ィ( ready)ならばノットレコーデット( notRecorde
d)に設定し、動作を再開したことを示すスターテッド
( started)制御メッセージを決定プロセスに送信し
て、送信バッファに通常メッセージが格納されているな
らばそれらを送信し、 決定プロセスは、 全てのプロセッサからスターテッド( started)制御メ
ッセージを受信したら処理を完了して、大域状態用バッ
ファの内容を決定することを特徴とする大域状態決定方
法。
2. In a multiprocessor system for performing inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is Each processor has a global state buffer for storing the obtained global state, and each processor includes a message switch for indicating which control message corresponds to the state corresponding to the control message, and a transmission buffer for storing a normal message pending transmission. And the message switch is initialized to notRecorded, indicating that nothing is stored in the buffer, and the decision process clears the global state buffer and instructs it to suspend normal message transmission. Send a record control message to all processors with a predetermined weight,
When the processor receives the record control message, the processor returns its own weight, the sum of the weights attached to the record control message, and its own state. The control message is sent to the decision process, the message switch is set to "recorded" indicating that the normal message transmission is suspended, the transmission buffer is cleared, and then the message switch is set to "recorded".
When receiving the normal message, the processor in d) sends a copy of the normal message and the weight attached thereto to the return process message each time to the decision process, and transmits the normal message to be transmitted. When a return control message is received from a processor, the decision process returns a copy of the state of each processor or a copy of the normal message carried by the return control message to the global state buffer. And return
When the weight added to the control message is added to its own weight and the result becomes a constant value when all the weights are added, a proceed control message is sent to all processors, and When the processor receives the proceed control message,
Sends a proceeded control message to the decision process, ready message switch
When the decision process receives a proceeded control message from all the processors, the decision process assigns a weight to the restart control message instructing the restart of the operation and sends the weighted restart control message to all the processors. Only reduce the weight of its own, each processor receives a restart control message,
The weight attached to the restart control message is added to its own weight. If the message switch is ready, not record (notRecorde)
set to d) and send a started control message to the decision process indicating that the operation has been resumed, and if a normal message is stored in the transmit buffer, send them. Receiving a started control message from the processor, and completing the processing to determine the contents of the global state buffer.
【請求項3】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは求めた大域状態を格納するための大域状
態用バッファを持ち、 各プロセッサは、 どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとを持ち、メッセージスイッチはバ
ッファになにも格納していないことを示すノットレコー
デット( notRecorded)に初期設定され、 決定プロセスは、 大域状態用バッファをクリアし、通常メッセージの送信
を保留するよう指示するレコード(record)制御メッセ
ージを全てのプロセッサへ所定の重みを付けて送信し、
その重みの分だけ自己の重みを減らし、 プロセッサは、 レコード(record)制御メッセージを受信すると、自己
の重みとレコード(record)制御メッセージについてい
た重みの合計をリターン(return)制御メッセージに付
けて決定プロセスに送信し、 メッセージスイッチを、通常メッセージの送信を保留す
る状態を示すレコーデッド(recorded)に設定し、送信
バッファをクリアして、 その後、メッセージスイッチがレコーデッド(recorde
d)となったプロセッサは、 通常メッセージを受信すると、 その通常メッセージに付いていた重みをそのつどリター
ン(return)制御メッセージに付けて決定プロセスに送
信し、送信する通常メッセージは送信を保留して送信バ
ッファに格納し、 決定プロセスは、 プロセッサからリターン(return)制御メッセージを受
信すると、リターン(return)制御メッセージに付いて
いた重みを自分の重みに加えて、その結果が前記全ての
重みを加算したときの一定値となった場合には、リクエ
スト( request)制御メッセージを全てのプロセッサに
送り、 各プロセッサは、 リクエスト( request)制御メッセージを受信すると、
自己の状態と送信バッファの内容とをアンサー(answe
r)制御メッセージで決定プロセスへ送り、メッセージ
スイッチをレディ( ready)に設定し、 決定プロセスは、アンサー(answer)制御メッセージを
受信すると、そのアンサー(answer)制御メッセージが
運んだプロセッサの状態と送信バッファの内容とを大域
状態用バッファに格納し、全てのプロセッサからアンサ
ー(answer)制御メッセージを受信すると、動作の再開
を指示するリスタート( restart)制御メッセージに重
みを付けて全てのプロセッサへ送り、その重み分だけ自
己の重みを減らし、 各プロセッサは、 リスタート( restart)制御メッセージを受信すると、
そのリスタート( restart)制御メッセージに付いてい
た重みを自己の重みに加え、メッセージスイッチがレデ
ィ( ready)ならばノットレコーデット( notRecorde
d)に設定し、動作を再開したことを示すスターテッド
( started)制御メッセージを決定プロセスに送信し
て、送信バッファに通常メッセージが格納されているな
らばそれらを送信し、 決定プロセスは、 全てのプロセッサからスターテッド( started)制御メ
ッセージを受信したら処理を完了して、大域状態用バッ
ファの内容を決定することを特徴とする大域状態決定方
法。
3. In a multiprocessor system for performing inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is Each processor has a global state buffer for storing the obtained global state, and each processor includes a message switch for indicating which control message corresponds to the state corresponding to the control message, and a transmission buffer for storing a normal message pending transmission. And the message switch is initialized to notRecorded, indicating that nothing is stored in the buffer, and the decision process clears the global state buffer and instructs it to suspend normal message transmission. Send a record control message to all processors with a predetermined weight,
When the processor receives the record control message, the processor determines the sum of its own weight and the weight attached to the record control message by adding the return control message to the return control message. Send to the process, set the message switch to "recorded" to indicate that normal message transmission is suspended, clear the transmit buffer, and then switch to the "recorded" state.
When receiving the normal message, the processor in d) transmits the weight attached to the normal message to the decision process with the return control message added thereto, and suspends the transmission of the normal message to be transmitted. When the return control message is received from the processor, the weight added to the return control message is added to its own weight, and the result adds all the weights. When the value becomes a certain value at the time of the request, a request (request) control message is sent to all the processors. When each processor receives the request (control) message,
Answer (answe)
r) send a control message to the decision process, set the message switch to ready, and the decision process receives the answer (answer) control message and sends the state and transmission of the processor carried by the answer control message When the contents of the buffer and the contents of the buffer are stored in the global state buffer and an answer (answer) control message is received from all the processors, the restart control message instructing the restart of the operation is weighted and sent to all the processors. , Reduce its own weight by that weight, and when each processor receives a restart control message,
The weight attached to the restart control message is added to its own weight. If the message switch is ready, not record (notRecorde)
set to d) and send a started control message to the decision process indicating that the operation has been resumed, and if a normal message is stored in the transmit buffer, send them. Receiving a started control message from the processor, and completing the processing to determine the contents of the global state buffer.
【請求項4】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは求めた大域状態を格納するための大域状
態用バッファとメッセージ受信数を数える受信カウンタ
とを持ち、 各プロセッサは、 どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとメッセージ送信数を数える送信カ
ウンタとを持ち、メッセージスイッチはバッファになに
も格納していないことを示すノットレコーデット( not
Recorded)に初期設定され、 決定プロセスは、 大域状態用バッファと受信カウンタとをクリアし、通常
メッセージの送信を保留するよう指示するレコード(re
cord)制御メッセージを全てのプロセッサへ所定の重み
を付けて送信し、その重みの分だけ自己の重みを減ら
し、 プロセッサは、 レコード(record)制御メッセージを受信すると、自己
の重みとレコード(record)制御メッセージについてい
た重みの合計をリターン(return)制御メッセージに付
けて決定プロセスに送信し、 メッセージスイッチを、通常メッセージの送信を保留す
る状態を示すレコーデッド(recorded)に設定し、送信
バッファと送信カウンタをクリアして、 その後、メッセージスイッチがレコーデッド(recorde
d)となったプロセッサは、 通常メッセージを受信すると、 その通常メッセージに付いていた重みをそのつどリター
ン(return)制御メッセージで決定プロセスに送信し、
送信する通常メッセージは送信を保留して送信バッファ
に格納するとともに、その通常メッセージのコピーをレ
ポート(report)制御メッセージで決定プロセスに送
り、送信カウンタをインクリメントし、 決定プロセスは、 プロセッサからレポート(report)制御メッセージを受
信すると、そのレポート(report)制御メッセージが運
んだ通常メッセージのコピーを大域状態用バッファに格
納して受信カウンタをインクリメントし、リターン(re
turn)制御メッセージを受信すると、そのリターン(re
turn)制御メッセージに付いていた重みを自分の重みに
加えて、その結果が前記全ての重みを加算したときの一
定値となった場合には、リクエスト( request)制御メ
ッセージを全てのプロセッサに送り、 各プロセッサは、 リクエスト( request)制御メッセージを受信すると、
送信カウンタの内容と自己の状態をアンサー(answer)
制御メッセージで決定プロセスへ送り、メッセージスイ
ッチをレディ( ready)に設定し、 決定プロセスは、プロセッサからアンサー(answer)制
御メッセージを受信すると、そのアンサー(answer)制
御メッセージが運んだプロセッサの状態を大域状態用バ
ッファに格納し、そのアンサー(answer)制御メッセー
ジが運んだ送信カウンタの数だけ受信カウンタを減算
し、全てのプロセッサからアンサー(answer)制御メッ
セージを受信して、受信カウンタの値がもとのクリアさ
れた状態になると、動作の再開を指示するリスタート
( restart)制御メッセージに重みを付けて全てのプロ
セッサへ送り、その重み分だけ自己の重みを減らし、 各プロセッサは、 リスタート( restart)制御メッセージを受信すると、
そのリスタート( restart)制御メッセージに付いてい
た重みを自己の重みに加え、メッセージスイッチがレデ
ィ( ready)ならばノットレコーデット( notRecorde
d)に設定し、動作を再開したことを示すスターテッド
( started)制御メッセージを決定プロセスに送信し
て、送信バッファに通常メッセージが格納されているな
らばそれらを送信し、 決定プロセスは、 全てのプロセッサからスターテッド( started)制御メ
ッセージを受信したら処理を完了して、大域状態用バッ
ファの内容を決定することを特徴とする大域状態決定方
法。
4. In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, there is no clock for controlling the entire system, and each processor and the network channel There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is Each processor has a global state buffer for storing the obtained global state and a reception counter for counting the number of received messages.Each processor has a message switch that indicates which control message corresponds to the state, and a pending transmission state. The message switch has a transmission buffer for storing a normal message and a transmission counter for counting the number of message transmissions, and the message switch does not record (not not) to indicate that nothing is stored in the buffer.
Recorded), the decision process clears the global state buffer and the receive counter, and indicates that the record (re
cord) A control message is transmitted to all processors with a predetermined weight, and its weight is reduced by the weight. When the processor receives the record control message, the processor receives its own weight and record. The sum of the weights attached to the control message is sent to the decision process with the return control message, the message switch is set to “recorded” indicating that the normal message transmission is suspended, the transmission buffer and the transmission counter are set. And then switch the message switch to record
Upon receiving the normal message, the processor in d) sends the weight attached to the normal message to the decision process in a return control message each time,
The normal message to be transmitted is suspended and stored in a transmission buffer, a copy of the normal message is sent to a decision process in a report control message, a transmission counter is incremented, and the decision process is executed by the processor. ) When the control message is received, a copy of the normal message carried by the report control message is stored in the global state buffer, the reception counter is incremented, and the return (re)
turn) control message, the return (re
turn) When the weight attached to the control message is added to its own weight and the result becomes a constant value when all the weights are added, a request control message is sent to all processors. When each processor receives a request control message,
Answer the contents of the transmission counter and its status (answer)
The control message is sent to the decision process and the message switch is set to ready. When the decision process receives an answer control message from the processor, the decision process globally describes the state of the processor carried by the answer control message. Stored in the status buffer, decremented the reception counter by the number of transmission counters carried by the answer (answer) control message, received answer (answer) control messages from all processors, and based on the value of the reception counter Is cleared, the restart control message instructing restart of operation is weighted and sent to all processors, and the weight of the processor is reduced by that weight. ) When a control message is received,
The weight attached to the restart control message is added to its own weight. If the message switch is ready, not record (notRecorde)
set to d) and send a started control message to the decision process indicating that the operation has been resumed, and if a normal message is stored in the transmit buffer, send them. Receiving a started control message from the processor, and completing the processing to determine the contents of the global state buffer.
【請求項5】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは求めた大域状態を格納するための大域状
態用バッファを持ち、 各プロセッサは、 どの制御メッセージに対応する状態にあるかを示すメッ
セージスイッチと、送信を保留中の通常メッセージを格
納する送信バッファとを持ち、メッセージスイッチはバ
ッファになにも格納していないことを示すノットレコー
デット( notRecorded)に初期設定され、 決定プロセスは、 大域状態用バッファをクリアし、通常メッセージの送信
を保留するよう指示するレコード(record)制御メッセ
ージを全てのプロセッサへ所定の重みを付けて送信し、
その重みの分だけ自己の重みを減らし、 プロセッサは、 レコード(record)制御メッセージを受信すると、自己
の重みとレコード(record)制御メッセージについてい
た重みの合計をリターン(return)制御メッセージに付
けて決定プロセスに送信し、 メッセージスイッチを、通常メッセージの送信を保留す
る状態を示すレコーデッド(recorded)に設定し、送信
バッファをクリアして、 その後、メッセージスイッチがレコーデッド(recorde
d)となったプロセッサは、 通常メッセージを受信すると、 その通常メッセージに付いていた重みをそのつどリター
ン(return)制御メッセージに付けて決定プロセスに送
信し、送信する通常メッセージは送信を保留して送信バ
ッファに格納するとともに、その通常メッセージのコピ
ーをレポート(report)制御メッセージで決定プロセス
に送り、 決定プロセスは、 プロセッサからレポート(report)制御メッセージを受
信すると、そのレポート(report)制御メッセージが運
んだ通常メッセージのコピーを大域状態用バッファに格
納し、リターン(return)制御メッセージを受信する
と、そのリターン(return)制御メッセージに付いてい
た重みを自分の重みに加えて、その結果が前記全ての重
みを加算したときの一定値となった場合には、リクエス
ト( request)制御メッセージを全てのプロセッサに送
り、 各プロセッサは、 リクエスト( request)制御メッセージを受信すると、
自己の状態をアンサー(answer)制御メッセージととも
に決定プロセスへ送り、メッセージスイッチをレディ
( ready)に設定し、 決定プロセスは、プロセッサからアンサー(answer)制
御メッセージを受信すると、そのアンサー(answer)制
御メッセージとともに受信したプロセッサの状態を大域
状態用バッファに格納し、全てのプロセッサからアンサ
ー(answer)制御メッセージを受信すると、動作の再開
を指示するリスタート( restart)制御メッセージに重
みを付けて全てのプロセッサへ送り、その重み分だけ自
己の重みを減らし、 各プロセッサは、 リスタート( restart)制御メッセージを受信すると、
そのリスタート( restart)制御メッセージに付いてい
た重みを自己の重みに加え、メッセージスイッチがレデ
ィ( ready)ならばノットレコーデット( notRecorde
d)に設定し、動作を再開したことを示すスターテッド
( started)制御メッセージを決定プロセスに送信し
て、送信バッファに通常メッセージが格納されているな
らばそれらを送信し、 決定プロセスは、 全てのプロセッサからスターテッド( started)制御メ
ッセージを受信したら処理を完了して、大域状態用バッ
ファの内容を決定することを特徴とする大域状態決定方
法。
5. In a multiprocessor system for performing inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, and there is no clock for controlling the entire system. There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is Each processor has a global state buffer for storing the obtained global state, and each processor includes a message switch for indicating which control message corresponds to the state corresponding to the control message, and a transmission buffer for storing a normal message pending transmission. And the message switch is initialized to notRecorded, indicating that nothing is stored in the buffer, and the decision process clears the global state buffer and instructs it to suspend normal message transmission. Send a record control message to all processors with a predetermined weight,
When the processor receives the record control message, the processor determines the sum of its own weight and the weight attached to the record control message by adding the return control message to the return control message. Send to the process, set the message switch to "recorded" to indicate that normal message transmission is suspended, clear the transmit buffer, and then switch to the "recorded" state.
When receiving the normal message, the processor in d) transmits the weight attached to the normal message to the decision process with the return control message added thereto, and suspends the transmission of the normal message to be transmitted. A copy of the normal message is stored in the transmit buffer and a copy of the normal message is sent to the decision process in a report control message. When the decision process receives the report control message from the processor, the decision process carries the report control message. When a copy of the normal message is stored in the global state buffer and a return (return) control message is received, the weight attached to the return (return) message is added to its own weight, and the result becomes If the weighted value becomes a constant value, the request (Request) sends a control message to all the processors, each processor receives the request (request) control message,
Sends its state with the answer control message to the decision process, sets the message switch to ready, and when the decision process receives an answer control message from the processor, the answer control message And the state of the received processor is stored in the global state buffer, and when an answer (answer) control message is received from all the processors, a weight is assigned to the restart control message instructing the restart of the operation and all the processors are weighted. And the processor reduces its own weight by that weight. When each processor receives the restart control message,
The weight attached to the restart control message is added to its own weight. If the message switch is ready, not record (notRecorde)
set to d) and send a started control message to the decision process indicating that the operation has been resumed, and if a normal message is stored in the transmit buffer, send them. Receiving a started control message from the processor, and completing the processing to determine the contents of the global state buffer.
【請求項6】 請求項1,2,3,4または5におい
て、 メッセージスイッチがレディ( ready)であるプロセッ
サが、他のプロセッサから通常メッセージを受信したと
きは、自己のメッセージスイッチをノットレコーデット
( notRecorded)にして、通常動作を再開することを特
徴とする大域状態決定方法。
6. The processor according to claim 1, wherein the processor whose message switch is ready receives its normal message switch from another processor, and resets its own message switch to a not record. (NotRecorded) and resume normal operation.
【請求項7】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは、求めた大域状態を格納するための大域
状態用バッファと、旧世代の重みをカウントする旧世代
重みカウンタとを持ち、 決定プロセスは、 大域状態用バッファをクリアし、旧世代重みカウンタに
自己の重みを設定し、自己の重みを前記一定値に設定し
世代をひとつ進め、状態を通知するよう指示するリクエ
スト( request)制御メッセージを全てのプロセッサへ
所定の重みを付けて送信し、その重みの分だけ自己の重
みを減らし、 各プロセッサは、 リクエスト( request)制御メッセージを受信すると、
そのリクエスト( request)制御メッセージの重みの世
代と自己の重みの世代とを比較して、リクエスト( req
uest)制御メッセージの重みの世代が新しいならば、自
己の状態と自己の重みとをリターン(return)制御メッ
セージに付けて決定プロセスへ送り、リクエスト( req
uest)制御メッセージの重みを自己の重みに設定し、両
者が同一ならばリクエスト( request)制御メッセージ
の重みを自己の重みに加え、 通常メッセージを受信すると、その通常メッセージの重
みの世代と自己の重みの世代とを比較して、両者が同一
ならば通常メッセージの重みを自己の重みに加え、自己
の重みの世代が新しいならば通常メッセージのコピーと
通常メッセージの重みとをリターン(return)制御メッ
セージに付けて決定プロセスへ送り、通常メッセージの
世代が新しいならば、自己の状態と重みをリターン(re
turn)制御メッセージで決定プロセスへ送り、通常メッ
セージの重みを自己の重みに設定し、 決定プロセスがリターン(return)制御メッセージを受
信すると、リターン(return)制御メッセージに付いて
いた重みを旧世代重みカウンタに加え、リターン(retu
rn)制御メッセージに付加された各プロセッサの状態と
通常メッセージのコピーを大域状態用バッファに格納
し、 旧世代重みカウンタの値が前記一定値になったらそのと
きの大域状態用バッファの内容を大域状態に決定するこ
とを特徴とする大域状態決定方法。
7. In a multiprocessor system for performing inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, there is no clock for controlling the entire system, and each processor and the network channel There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is A global state buffer for storing the obtained global state, and an old generation weight counter for counting the weight of the old generation.The decision process clears the global state buffer, and stores the A weight is set, the self weight is set to the constant value, the generation is advanced by one, and a request control message instructing to notify a state is transmitted to all processors with a predetermined weight, and the weight is transmitted. Each processor reduces its weight by the amount it receives, and when each processor receives a request control message,
The request (request) control message weight generation is compared with its own weight generation, and the request (req
uest) If the generation of the weight of the control message is new, the self state and the self weight are attached to a return control message and sent to the decision process, and the request (req
uest) The weight of the control message is set to its own weight. If both are the same, the weight of the request control message is added to its own weight. When a normal message is received, the generation of the weight of the normal message and its own Comparing the generation of the weight, if both are the same, add the weight of the normal message to its own weight, and if the generation of its own weight is newer, control the return of the copy of the normal message and the weight of the normal message (return) Attached to the message and sent to the decision process. Normally, if the generation of the message is new, return its state and weight (re
turn) control message sent to the decision process, the normal message weight is set to its own weight, when the decision process receives the return (return) control message, the weight attached to the return (return) control message is the old generation weight In addition to the counter, return (retu
rn) The state of each processor added to the control message and a copy of the normal message are stored in the global state buffer, and when the value of the old generation weight counter reaches the constant value, the contents of the global state buffer at that time are globally stored. A global state determination method, characterized by determining a state.
【請求項8】 非同期メッセージ通信によってプロセッ
サ間処理を行うマルチプロセッサシステムにおいて、 有限個のプロセッサがネットワークチャネルを介して接
続され、 システム全体を統括するクロックは存在せず、各プロセ
ッサとネットワークチャネルとはそれぞれ独自のクロッ
クにより制御されて動作し、 システムの大域状態を決定する処理を行う決定プロセス
が存在し、 各プロセッサが他のプロセッサに対して送信する通常メ
ッセージの持つ重みと前記プロセッサの重みとの総和を
相殺する重みをこの決定プロセスが持ち、これら全ての
重みを加算したとき一定値となるようにシステムが制御
され、 大域状態を求めるために決定プロセスと各プロセッサと
が互いに送受信するメッセージを制御メッセージと呼
び、 決定プロセスは、求めた大域状態を格納するための大域
状態用バッファと、旧世代の重みをカウントする旧世代
重みカウンタとを持ち、 決定プロセスは、 大域状態用バッファをクリアし、旧世代重みカウンタに
自己の重みを設定し、自己の重みを前記一定値に設定し
世代をひとつ進め、状態を保存するよう指示するレコー
ド(record)制御メッセージを全てのプロセッサへ所定
の重みを付けて送信し、その重みの分だけ自己の重みを
減らし、 各プロセッサは、自己の状態を格納する状態用バッファ
を持つとともに、 レコード(record)制御メッセージを受信すると、その
レコード(record)制御メッセージの重みの世代と自己
の重みの世代とを比較して、レコード(record)制御メ
ッセージの重みの世代が新しいならば、自己の状態を状
態用バッファへ格納し、自己の重みをリターン(retur
n)制御メッセージに付けて決定プロセスへ送り、レコ
ード(record)制御メッセージの重みを自己の重みに設
定し、両者が同一ならばレコード(record)制御メッセ
ージの重みを自己の重みに加え、 通常メッセージを受信すると、その通常メッセージの重
みの世代と自己の重みの世代とを比較して、両者が同一
ならば通常メッセージの重みを自己の重みに加え、自己
の重みの世代が新しいならば通常メッセージのコピーを
状態用バッファへ格納し、通常メッセージの重みをリタ
ーン(return)制御メッセージに付けて決定プロセスへ
送り、通常メッセージの世代が新しいならば、自己の状
態を状態用バッファへ格納し、自己の重みをリターン
(return)制御メッセージで決定プロセスへ送り、通常
メッセージの重みを自己の重みに設定し、 決定プロセスがリターン(return)制御メッセージを受
信すると、リターン(return)制御メッセージに付いて
いた重みを旧世代重みカウンタに加え、 旧世代重みカウンタの値が前記一定値になったら、 決定プロセスがリクエスト( request)制御メッセージ
を全てのプロセッサへ送り、 各プロセッサはリクエスト( request)制御メッセージ
を受信すると、状態用バッファに格納していた自己の状
態と通常メッセージのコピーとをアンサー(answer)制
御メッセージで決定プロセスへ送り、状態用バッファは
クリアし、 決定プロセスは、 アンサー(answer)制御メッセージに付加された各プロ
セッサの状態と通常メッセージのコピーを大域状態用バ
ッファに格納し、 全てのプロセッサからアンサー(answer)制御メッセー
ジを受信したら、 そのときの大域状態用バッファの内容を大域状態に決定
することを特徴とする大域状態決定方法。
8. In a multiprocessor system that performs inter-processor processing by asynchronous message communication, a finite number of processors are connected via a network channel, there is no clock for controlling the entire system, and each processor and the network channel are connected to each other. There is a decision process that operates under the control of a unique clock, and performs a process of determining the global state of the system. The weight of the normal message transmitted by each processor to another processor is different from the weight of the processor. This decision process has weights to cancel the sum, and the system is controlled so that when all these weights are added, the system is controlled to be a constant value, and the decision process and the messages transmitted and received between each processor to determine the global state are controlled Call the message, the decision process is A global state buffer for storing the obtained global state, and an old generation weight counter for counting the weight of the old generation.The decision process clears the global state buffer, and stores the A weight is set, the own weight is set to the constant value, the generation is advanced by one, and a record control message instructing to save the state is transmitted to all processors with a predetermined weight, and the weight is transmitted. Each processor has its own state buffer that stores its own state. When a processor receives a record control message, it generates the weight of the record control message and its own weight. If the generation of the weight of the record control message is newer, the own state is stored in the state buffer, and the Return your weight (retur
n) The control message is sent to the decision process, and the weight of the record control message is set to its own weight. If both are the same, the weight of the record control message is added to its own weight. , The normal message weight generation is compared with its own weight generation, and if both are the same, the normal message weight is added to its own weight. Is stored in the status buffer, the weight of the normal message is appended to the return control message, and sent to the decision process. If the normal message generation is newer, its state is stored in the status buffer. Is sent to the decision process in a return control message, and the weight of the normal message is set to its own weight. When the source receives the return control message, the weight attached to the return control message is added to the old generation weight counter, and when the value of the old generation weight counter reaches the constant value, the decision process is executed. request) sends a control message to all processors. When each processor receives a request control message, each processor determines its own status stored in the status buffer and a copy of the normal message by an answer control message. Process, clears the status buffer, and the decision process stores in the global status buffer a copy of each processor's status and a normal message attached to the answer control message, and the answer from all processors. ) When the control message is received, for the current global state A global state determination method, comprising determining the contents of a buffer to a global state.
【請求項9】 請求項7または8において、 各重みに付加する世代として、相対的に順序が明らかに
なっている3種以上の記号を用いることを特徴とする大
域状態決定方法。
9. The global state determination method according to claim 7, wherein three or more symbols whose order is relatively clear are used as generations to be added to each weight.
【請求項10】 有限個のプロセッサ群(以下、PE群
と書く)がネットワークを介して互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
作し、 各PEは他のPEへのメッセージを送ることができ、自
分の状態と受信したメッセージを記録することができ、 チェックポイントの設定の指示を出す特別なプロセス
(制御プロセスと呼ぶ)が存在し、 制御プロセスと全てのPEは互いにメッセージ通信を行
うことができ、 通常処理を行うためにPE群が互いに送受信するメッセ
ージを通常メッセージと呼び、 チェックポイントの設定を行うために制御プロセスとP
E群が互いに送受信するメッセージを制御メッセージと
呼び、 制御プロセスとPE及びメッセージは重みを持ち、全て
の重みの合計は所定の一定値をとり、 重みは世代を持ち、全ての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態バッファを持ち、 制御プロセスは、チェックポイント設定を行うために、
チェックポイント(checkpoint)制御メッセージ(以下
checkpointと書く)を全てのPEへ送信し、 全てのPEからチェックポイント認識(ackCheckpoint
)制御メッセージ(以下ackCheckpoint と書く)を受
信するまで待ち、 旧世代重みカウンタに自分の重みを設定し、自分の重み
をある定まった一定値に設定し、自分の重みの世代をひ
とつ進め、 レコード(record)制御メッセージ(以下recordと書
く)を全てのPEへ送信し、recordには重みを付け、自
分の重みはその分だけ減らし、 PEは、checkpointを受信すると、状態バッファをクリ
アし、ackCheckpointを制御プロセスへ返信し、 recordを受信すると、「recordが持っている重みの世
代」と「自分の重みの世代」を比較し、 「recordの重みの世代」が新しいならば、自分の状態を
状態バッファに記録し、自分の重みをreturn制御メッセ
ージ(以下returnと書く)で制御プロセスへ送り、自分
の重みをrecordの重みで再設定し、 ふたつの世代が等しいならばrecordの重みを自分の重み
に加え、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しいならば、通常メッセージ
の重みをreturnで制御プロセスへ送り、通常メッセージ
の内容を状態バッファに記録し、通常メッセージを処理
し、 「通常メッセージの重みの世代」が新しいならば、自分
の重みをreturnで制御プロセスへ送り、自分の状態を状
態バッファに記録し、自分の重みを通常メッセージの重
みで再設定し、通常メッセージを処理し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理し、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
チェックポイントの設定が完了したことが確認され、 完了を確認した時点における各PEの状態バッファの内
容の集合がチェックポイントを構成するものとしたこと
を特徴とするチェックポイント設定方法。
10. A finite number of processors (hereinafter referred to as PEs) are connected to each other via a network. The PEs communicate with each other by asynchronous message communication, and there is no clock for controlling the whole system. The PEs and network channels operate independently according to their clocks, and each PE can send messages to other PEs, record their status and received messages, and provide instructions for setting checkpoints. There is a special process (called a control process) that issues a message. The control process and all PEs can perform message communication with each other. Messages that are sent and received by PEs for normal processing are called normal messages. Control process and P to set points
The messages transmitted and received by the group E are called control messages. The control process, the PE and the messages have weights, the sum of all weights takes a predetermined constant value, the weights have generations, and all the weights have the same generation. Initialize, the control process has an old generation weight counter, each PE has a state buffer, and the control process has to checkpoint
Checkpoint control message (below)
Checkpoint is sent to all PEs, and checkpoint recognition (ackCheckpoint) is sent from all PEs.
) Wait until a control message (hereinafter referred to as ackCheckpoint) is received, set its own weight in the old generation weight counter, set its own weight to a certain fixed value, advance its own weight by one generation, (Record) Sends a control message (hereinafter referred to as record) to all PEs, assigns a weight to the record, and reduces its own weight by that amount. When the PE receives the checkpoint, the PE clears the status buffer and clears the ackCheckpoint. Is returned to the control process, and when record is received, the "generation of the weight that record has" and "the generation of its own weight" are compared, and if the "generation of the weight of record" is new, Record in the state buffer, send its own weight to the control process with a return control message (hereinafter referred to as "return"), reset its own weight with the weight of record, and if the two generations are equal, the weight of record When the PE receives a normal message, the PE compares the “generation of the weight that the normal message has” with the “generation of its own weight”, and if the “generation of its own weight” is new, For example, return the weight of the normal message to the control process by return, record the contents of the normal message in the status buffer, process the normal message, and if the "generation of the weight of the normal message" is new, return its own weight by return. Sends to the control process, records its state in the state buffer, resets its own weight with the weight of the normal message, processes the normal message, and if the two generations are equal, the weight of the normal message is its own weight In addition, when the control process receives the return, the control process adds the weight carried by the return to the old generation weight counter, and as a result, the old generation weight counter is added. If the value of the counter reaches a certain fixed value, it is confirmed that the checkpoint setting is completed, and the set of the contents of the status buffer of each PE at the time of confirming the completion constitutes the checkpoint. A checkpoint setting method characterized in that:
【請求項11】 有限個のプロセッサ群(以下、PE群
と書く)がネットワークを介して互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
作し、 各PEは他のPEへのメッセージを送ることができ、自
分の状態と受信したメッセージを記録することができ、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスと全てのPEは互いにメッセージ通信を行
うことができ、 通常処理を行うためにPE群が互いに送受信するメッセ
ージを通常メッセージと呼び、 チェックポイントの設定と再実行を行うために制御プロ
セスとPE群が互いに送受信するメッセージを制御メッ
セージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、全て
の重みの合計は所定の一定値をとり、 重みは世代を持ち、全ての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態フラグと状態バッファを持ち、状態フラグ
はチェックポイント設定中を表すC及び再実行中を表す
Rのいずれかの値のみをとり、 制御プロセスは、チェックポイント設定を行うために、
チェックポイント(checkpoint)制御メッセージ(以下
checkpointと書く)を全てのPEへ送信し、 全てのPEからチェックポイント認識(ackCheckpoint
)制御メッセージ(以下ackCheckpoint と書く)を受
信するまで待ち、 旧世代重みカウンタに自分の重みを設定し、自分の重み
をある定まった一定値に設定し、自分の重みの世代をひ
とつ進め、 レコード(record)制御メッセージ(以下recordと書
く)を全てのPEへ送信し、recordには重みを付け、自
分の重みはその分だけ減らし、 PEは、checkpointを受信すると、状態フラグをCに設
定し、ackCheckpointを制御プロセスへ返信し、 recordを受信すると、「recordが持っている重みの世
代」と「自分の重みの世代」を比較し、 「recordの重みの世代」が新しいならば、状態バッファ
をクリアし、自分の状態を状態バッファに記録し、自分
の重みをreturn制御メッセージ(以下returnと書く)で
制御プロセスへ送り、自分の重みをrecordの重みで再設
定し、 ふたつの世代が等しいならばrecordの重みを自分の重み
に加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
チェックポイントの設定が完了したことが確認され、 制御プロセスは、再実行を行うために、 再実行準備(rollback)制御メッセージ(以下rollback
と書く)を全てのPEへ送信し、再実行準備認識(ackR
ollback )制御メッセージ(以下ackRollbackと書く)
を全てのPEから受信するまで待ち、 旧世代重みカウンタに自分の重みを設定し、自分の重み
をある定まった一定値に設定し、自分の重みの世代をひ
とつ進め、 再実行(reexecute )制御メッセージ(以下reexecute
と書く)を全てのPEへ送信し、reexecute には重みを
付け、自分の重みはその分だけ減らし、 PEは、rollbackを受信すると、状態フラグをRに設定
し、ackRollback を制御プロセスへ送り、 reexecute を受信すると、「reexecute が持っている重
みの世代」と「自分の重みの世代」を比較し、 「reexecute の重みの世代」が新しいならば、自分の状
態を状態バッファの内容で設定し直し、自分の重みをre
turnで制御プロセスへ送り、自分の重みをreexecute の
重みで再設定し、 ふたつの世代が等しいならば、reexecute の重みを自分
の重みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
再実行の開始が完了したことを確認でき、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しく状態フラグがCならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
通常メッセージの内容を状態バッファに記録し、通常メ
ッセージを処理し、 「自分の重みの世代」が新しく状態フラグがRならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
通常メッセージは処理することなく捨て、 「通常メッセージの重みの世代」が新しく状態フラグが
Cならば、状態バッファをクリアし、自分の状態を状態
バッファに記録し、自分の重みをreturnで制御プロセス
へ送り、自分の重みを通常メッセージの重みで再設定
し、通常メッセージを処理し、 「通常メッセージの重みの世代」が新しく状態フラグが
Rならば、自分の状態を状態バッファの内容で設定し直
し、自分の重みをreturnで制御プロセスへ送り、自分の
重みを通常メッセージの重みで再設定し、通常メッセー
ジを処理し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理することを特
徴とするチェックポイント設定と再実行方法。
11. A finite number of processors (hereinafter referred to as PEs) are connected to each other via a network. The PEs communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. PEs and network channels operate independently according to their clocks, each PE can send messages to other PEs, record their status and received messages, set checkpoints and re-execute There is a special process (referred to as a control process) that issues an instruction of the following. The control process and all PEs can perform message communication with each other. The control process and PEs send and receive each other to set up and re-execute checkpoints The control process, the PE and the message have weights, the sum of all weights takes a predetermined constant value, the weight has a generation, and all weights are initialized to the same generation, and the control The process has an old generation weight counter, each PE has a status flag and a status buffer, and the status flag takes only one of C indicating that a checkpoint is being set and R indicating that the process is being re-executed. To set a checkpoint,
Checkpoint control message (below)
Checkpoint is sent to all PEs, and checkpoint recognition (ackCheckpoint) is sent from all PEs.
) Wait until a control message (hereinafter referred to as ackCheckpoint) is received, set its own weight in the old generation weight counter, set its own weight to a certain fixed value, advance its own weight by one generation, (Record) Sends a control message (hereinafter referred to as record) to all PEs, assigns a weight to the record, and reduces its own weight by that amount. When the PE receives the checkpoint, the PE sets the status flag to C. AckCheckpoint is returned to the control process, and when record is received, the "generation of the weight of record" is compared with the "generation of its own weight". If the "generation of the weight of record" is new, the status buffer , Record its own state in the state buffer, send its own weight to the control process with a return control message (hereinafter referred to as return), reset its own weight with the weight of record, If the generations are equal, the weight of record is added to its own weight, and when the control receives the return, the control process adds the weight carried by return to the old generation weight counter, and as a result, the value of the old generation weight counter is determined. When the value reaches a certain value, it is confirmed that the checkpoint setting has been completed, and the control process executes a re-execution preparation (rollback) control message (hereinafter referred to as “rollback”) in order to perform re-execution.
Is sent to all PEs and re-execution preparation recognition (ackR
ollback) control message (hereinafter ackRollback)
Wait until all the PEs receive it, set their own weight in the old generation weight counter, set their own weight to a certain fixed value, advance their own weight by one generation, and execute again (reexecute) control Message (hereafter reexecute
) To all PEs, weight reexecute and reduce their weights by that amount. When the PE receives the rollback, the PE sets the status flag to R, sends ackRollback to the control process, When reexecute is received, "reexecute's weight generation" is compared with "own weight generation", and if "reexecute weight generation" is new, its own state is set with the contents of the state buffer. Fix, re-weight yourself
Turn to send to the control process, reset its own weight with the reexecute weight, and if the two generations are equal, add the reexecute weight to their own weight.When the control process receives the return, return carries When the weight is added to the old generation weight counter and the value of the old generation weight counter becomes a certain fixed value, it can be confirmed that the re-execution has been started. , Compare the “generation of the weight that the normal message has” with the “generation of its own weight”, and if the “generation of its own weight” is new and the status flag is C,
Normally the weight of the message is sent to the control process by return,
Record the contents of the normal message in the status buffer, process the normal message, and if the "own weight generation" is new and the status flag is R,
Normally the weight of the message is sent to the control process by return,
Normal messages are discarded without processing. If the "normal message weight generation" is new and the status flag is C, the status buffer is cleared, its status is recorded in the status buffer, and its own weight is returned to the control process. And reset its own weight with the weight of the normal message, process the normal message, and if the "generation of the weight of the normal message" is new and the status flag is R, set its own status with the contents of the status buffer. Fix, send own weight to control process by return, reset own weight with normal message weight, process normal message, add normal message weight to own weight if two generations are equal A checkpointing and re-execution method characterized by processing a normal message.
【請求項12】 有限個のプロセッサ群(以下、PE群
と書く)がネットワークを介して互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
作し、 各PEは他のPEへのメッセージを送ることができ、自
分の状態と受信したメッセージを記録することができ、 チェックポイントの設定の指示を出す特別なプロセス
(制御プロセスと呼ぶ)が存在し、 制御プロセスと全てのPEは互いにメッセージ通信を行
うことができ、 通常処理を行うためにPE群が互いに送受信するメッセ
ージを通常メッセージと呼び、 チェックポイントの設定を行うために制御プロセスとP
E群が互いに送受信するメッセージを制御メッセージと
呼び、 制御プロセスとPE及びメッセージは重みを持ち、全て
の重みの合計は所定の一定値をとり、 重みは世代を持ち、全ての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態バッファとメッセージバッファを持ち、メ
ッセージバッファは初期化処理でクリアし、 制御プロセスは、チェックポイント設定を行うために、 旧世代重みカウンタに自分の重みを設定し、自分の重み
をある定まった一定値に設定し、自分の重みの世代をひ
とつ進め、 レコード(record)制御メッセージ(以下、recordと書
く)をすべてのPEへ送信し、recordには重みを付け、
自分の重みはその分だけ減らし、 PEはrecordを受信すると、状態バッファをクリアし、
自分の状態を状態バッファに記録し、自分の重みをretu
rn制御メッセージ(以下returnと書く)で制御プロセス
へ送り、自分の重みをrecordの重みで再設定し、メッセ
ージバッファに通常メッセージが格納されているなら
ば、それらのメッセージに対して、メッセージの重みを
自分の重みに加えてから処理することを行い、メッセー
ジバッファをクリアし、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しいならば、通常メッセージ
の重みをreturnで制御プロセスへ送り、通常メッセージ
の内容を状態バッファに記録し、通常メッセージを処理
し、 「通常メッセージの重みの世代」が新しいならば、通常
メッセージをメッセージバッファに格納し、 ふたつの世代が等しいならば通常メッセージの重みを自
分の重みに加え、通常メッセージを処理し、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
チェックポイントの設定が完了したことが確認され、 完了を確認した時点における各PEの状態バッファの内
容の集合がチェックポイントを構成するものとしたこと
を特徴とするチェックポイント設定方法。
12. A finite number of processors (hereinafter referred to as PEs) are connected to each other via a network. The PEs communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. The PEs and network channels operate independently according to their clocks, and each PE can send messages to other PEs, record their status and received messages, and provide instructions for setting checkpoints. There is a special process (called a control process) that issues a message. The control process and all PEs can perform message communication with each other. Messages that are sent and received by PEs for normal processing are called normal messages. Control process and P to set points
The messages transmitted and received by the group E are called control messages. The control process, the PE and the messages have weights, the sum of all weights takes a predetermined constant value, the weights have generations, and all the weights have the same generation. Initialization, the control process has an old generation weight counter, each PE has a status buffer and a message buffer, the message buffer is cleared by initialization processing, and the control process uses the old generation weight to checkpoint. Set your own weight in the counter, set your own weight to a certain fixed value, advance your weight by one generation, and send a record control message (hereafter, record) to all PEs And weight the record,
Its weight is reduced by that amount, and when the PE receives record, it clears the status buffer,
Record your state in the state buffer and retu your weight
rn Control message (hereinafter referred to as "return") is sent to the control process, and its own weight is reset by the weight of record. If normal messages are stored in the message buffer, the message weight is applied to those messages. Is added to its own weight and then processed, and the message buffer is cleared. When the PE receives the normal message, the PE compares the "generation of the weight that the normal message has" with the "generation of its own weight" If the “own weight generation” is new, the normal message weight is sent to the control process by return, the contents of the normal message are recorded in the status buffer, the normal message is processed, and the “normal message weight generation” is returned. Is newer, the normal message is stored in the message buffer, and if the two generations are equal, the normal message weight is The control process processes the normal message in addition to the weight of the minute, and upon receiving the return, the control process adds the weight carried by the return to the old generation weight counter, and as a result, the value of the old generation weight counter is a fixed constant value. , It is confirmed that the setting of the checkpoint is completed, and the set of contents of the status buffer of each PE at the time of confirming the completion constitutes a checkpoint. .
【請求項13】 有限個のプロセッサ群(以下、PE群
と書く)がネットワークを介して互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
作し、 各PEは他のPEへのメッセージを送ることができ、自
分の状態と受信したメッセージを記録することができ、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスと全てのPEは互いにメッセージ通信を行
うことができ、 通常処理を行うためにPE群が互いに送受信するメッセ
ージを通常メッセージと呼び、 チェックポイントの設定と再実行を行うために制御プロ
セスとPE群が互いに送受信するメッセージを制御メッ
セージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、全て
の重みの合計は所定の一定値をとり、 重みは世代を持ち、全ての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態フラグと状態バッファ、それにメッセージ
バッファを持ち、状態フラグはチェックポイント設定中
を表すC及び再実行を表すRのいずれかの値のみを取
り、メッセージバッファは初期化処理でクリアし、 制御プロセスは、チェックポイント設定を行うために、 旧世代重みカウンタに自分の重みを設定し、自分の重み
をある定まった一定値に設定し、自分の重みの世代をひ
とつ進め、 レコード(record)制御メッセージ(以下、recordと書
く)をすべてのPEへ送信し、recordには重みを付け、
自分の重みはその分だけ減らし、 PEはrecordを受信すると、状態フラグをCに設定し、
状態バッファをクリアし、自分の状態を状態バッファに
記録し、自分の重みをreturn制御メッセージ(以下retu
rnと書く)で制御プロセスへ送り、自分の重みをrecord
の重みで再設定し、メッセージバッファに通常メッセー
ジが格納されているならば、それらのメッセージに対し
て、メッセージの重みを自分の重みに加えてから処理す
ることを行い、メッセージバッファをクリアし、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
チェックポイントの設定が完了したことが確認され、 制御プロセスは、再実行を行うために、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 再実行(reexecute )制御メッセージ(以下reexecute
と書く)を全てのPEへ送信し、reexecute には重みを
付け、自分の重みはその分だけ減らし、 PEは、reexecute を受信すると、状態フラグをRに設
定し、自分の状態を状態バッファの内容で設定し直し、
自分の重みをreturnで制御プロセスへ送り、自分の重み
をreexecute の重みで再設定し、 メッセージバッファに通常メッセージが格納されている
ならば、それらのメッセージに対して、メッセージの重
みを自分の重みに加えてから処理することを行い、メッ
セージバッファをクリアし、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
再実行の開始が完了したことを確認でき、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しく状態フラグがCならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
通常メッセージの内容を状態バッファに記録し、通常メ
ッセージを処理し、 「自分の重みの世代」が新しく状態フラグがRならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
通常メッセージは処理することなく捨て、 「通常メッセージの重みの世代」が新しいならば、通常
メッセージをメッセージバッファに格納し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理することを特
徴とするチェックポイント設定と再実行方法。
13. A finite number of processors (hereinafter referred to as PEs) are connected to each other via a network. The PEs communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. PEs and network channels operate independently according to their clocks, each PE can send messages to other PEs, record their status and received messages, set checkpoints and re-execute There is a special process (referred to as a control process) that issues an instruction of the following. The control process and all PEs can perform message communication with each other. The control process and PEs send and receive each other to set up and re-execute checkpoints The control process, the PE and the message have weights, the sum of all weights takes a predetermined constant value, the weight has a generation, and all weights are initialized to the same generation, and the control The process has an old-generation weight counter, each PE has a status flag, a status buffer, and a message buffer. The status flag takes only one of the values C indicating that a checkpoint is being set and R indicating re-execution. The buffer is cleared by initialization processing, and the control process sets its own weight in the old generation weight counter, sets its own weight to a certain fixed value, and sets its own weight to perform checkpoint setting. Advance the generation by one, send a record control message (hereafter, record) to all PEs, assign a weight to the record,
The weight is reduced by that amount, and when the PE receives record, it sets the status flag to C,
Clears the status buffer, records its status in the status buffer, and returns its weight to the return control message
rn)) and send it to the control process to record your weight
If the normal message is stored in the message buffer, the message weight is added to its own weight and then processed, and the message buffer is cleared. Upon receiving the return, the control process adds the weight carried by the return to the old generation weight counter, and when the value of the old generation weight counter reaches a certain fixed value, the checkpoint setting is completed. It is confirmed that the control process sets its own weight in the old generation weight counter, sets its own weight to a constant value, advances the generation of its own weight by one, and performs the re-execution ( reexecute) control message (hereinafter reexecute
Is sent to all PEs, and the reexecute is weighted and its own weight is reduced by that amount. When the reexecute is received, the PE sets the status flag to R and sets its status to the status buffer. Set again with the content,
Send your weight to the control process with return, reset your weight with the weight of execute, and if normal messages are stored in the message buffer, change the weight of the message to those weights for those messages After receiving the return, the control process adds the weight carried by return to the old generation weight counter, and as a result, there is a value of the old generation weight counter. When the fixed value is reached, it is possible to confirm that the re-execution has started. When the PE receives the normal message, the PE determines the "generation of the weight that the normal message has" and the "generation of its own weight". If the "own weight generation" is new and the status flag is C,
Normally the weight of the message is sent to the control process by return,
Record the contents of the normal message in the status buffer, process the normal message, and if the "own weight generation" is new and the status flag is R,
Normally the weight of the message is sent to the control process by return,
Normal messages are discarded without processing, if the "normal message weight generation" is newer, the normal message is stored in the message buffer, and if the two generations are equal, the normal message weight is added to its own weight, A checkpointing and re-execution method characterized by processing a normal message.
【請求項14】 有限個のプロセッサ群(以下、PE群
と書く)がネットワークを介して互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
作し、 各PEは他のPEへのメッセージを送ることができ、自
分の状態と受信したメッセージを記録することができ、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスと全てのPEは互いにメッセージ通信を行
うことができ、 通常処理を行うためにPE群が互いに送受信するメッセ
ージを通常メッセージと呼び、 チェックポイントの設定と再実行を行うために制御プロ
セスとPE群が互いに送受信するメッセージを制御メッ
セージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、全て
の重みの合計は所定の一定値をとり、 重みは世代を持ち、全ての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 制御プロセスは、チェックポイント設定を行うために、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 レコード(record)制御メッセージ(以下recordと書
く)を全てのPEへ送信し、recordには重みを付け、自
分の重みはその分だけ減らし、 PEは、recordを受信すると、「recordが持っている重
みの世代」と「自分の重みの世代」を比較し、 「recordの重みの世代」が新しいならば、状態バッファ
をクリアし、自分の状態を状態バッファに記録し、自分
の重みをreturn制御メッセージ(以下returnと書く)で
制御プロセスへ送り、自分の重みをrecordの重みで再設
定し、 ふたつの世代が等しいならば、recordの重みを自分の重
みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
チェックポイントの設定が完了したことが確認され、 制御プロセスは、再実行を行うために、 旧世代重みカウンタに自分の重みを設定し、自分の重み
をある定まった一定値に設定し、自分の重みの世代をふ
たつ進め、 再実行(reexecute )制御メッセージ(以下reexecute
と書く)を全てのPEへ送信し、reexecute には重みを
付け、自分の重みはその分だけ減らし、 PEは、reexecute を受信すると、「reexecute が持っ
ている重みの世代」と「自分の重みの世代」を比較し、 「reexecute の重みの世代」が新しいならば、自分の状
態を状態バッファの内容で設定し直し、自分の重みをre
turnで制御プロセスへ送り、自分の重みをreexecute の
重みで再設定し、 ふたつの世代が等しいならば、reexecute の重みを自分
の重みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値がある定まった一定値になったならば
再実行の開始が完了したことを確認でき、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が1世代新しいならば、通常メッ
セージの重みをreturnで制御プロセスへ送り、通常メッ
セージの内容を状態バッファに記録し、通常メッセージ
を処理し、 「自分の重みの世代」が2世代分新しいならば、通常メ
ッセージの重みをreturnで制御プロセスへ送り、通常メ
ッセージは処理することなく捨て、 「通常メッセージの重みの世代」が1世代分新しいなら
ば、状態バッファをクリアし、自分の状態を状態バッフ
ァに記録し、自分の重みをreturnで制御プロセスへ送
り、自分の重みを通常メッセージの重みで再設定し、通
常メッセージを処理し、 「通常メッセージの重みの世代」が2世代分新しいなら
ば、自分の状態を状態バッファの内容で設定し直し、自
分の重みをreturnで制御プロセスへ送り、自分の重みを
通常メッセージの重みで再設定し、通常メッセージを処
理し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理することを特
徴とするチェックポイント設定と再実行方法。
14. A finite number of processors (hereinafter referred to as PEs) are connected to each other via a network. The PEs communicate with each other by asynchronous message communication, and there is no clock for controlling the entire system. PEs and network channels operate independently according to their clocks, each PE can send messages to other PEs, record their status and received messages, set checkpoints and re-execute There is a special process (referred to as a control process) that issues an instruction of the following. The control process and all PEs can perform message communication with each other. The control process and PEs send and receive each other to set up and re-execute checkpoints The control process, the PE and the message have weights, the sum of all weights takes a predetermined constant value, the weight has a generation, and all weights are initialized to the same generation, and the control The process has an old generation weight counter, and the control process sets its own weight to the old generation weight counter, sets its own weight to a constant value, and sets one Proceeding and sending a record control message (hereinafter referred to as “record”) to all PEs, assigning a weight to the record and reducing its own weight by that amount, and the PE receives “record, Compare the current generation of weight with the generation of own weight.If the new generation of record is new, clear the status buffer and record your status in the status buffer. Sends its own weight to the control process with a return control message (hereinafter referred to as "return"), resets its own weight with the weight of record, and if the two generations are equal, adds the weight of record to its own weight and When the process receives the return, the process adds the weight carried by the return to the old generation weight counter, and when the old generation weight counter reaches a certain fixed value, the checkpoint setting is completed. The control process sets its own weight in the old generation weight counter, sets its own weight to a certain fixed value, advances its own weight by two generations, and executes Execution (reexecute) control message (hereinafter reexecute)
Is sent to all PEs, and the reexecute is weighted, and its own weight is reduced by that amount. When the PE receives the reexecute, the PE executes "the generation of the weight that reexecute has" and "its own weight." Generation), and if the "reexecute weight generation" is newer, reset its own state with the contents of the state buffer and re-set its own weight.
Turn to send to the control process, reset its own weight with the reexecute weight, and if the two generations are equal, add the reexecute weight to their own weight.When the control process receives the return, return carries When the weight is added to the old generation weight counter and the value of the old generation weight counter becomes a certain fixed value, it can be confirmed that the re-execution has been started. , Compare the "generation of the weight that the normal message has" with the "generation of its own weight". If the "generation of its own weight" is newer by one generation, send the weight of the normal message to the control process by return, Record the content of the normal message in the status buffer, process the normal message, and if the "own weight generation" is newer by two generations, send the weight of the normal message to the control process by return Normal messages are discarded without processing. If the "normal message weight generation" is newer by one generation, the status buffer is cleared, its status is recorded in the status buffer, and its own weight is returned to the control process. Send, reset its own weight with the weight of the normal message, process the normal message, and if the "generation of the weight of the normal message" is newer by two generations, reset its own state with the contents of the state buffer, Return your weight to the control process with return, reset your weight with the weight of the normal message, process the normal message, and if the two generations are equal, add the weight of the normal message to your weight, A checkpointing and re-execution method characterized by processing a message.
【請求項15】 請求項10または12において、 重みの世代としてA、B、Cの3種類の世代を設け、 重みの世代を進める処理を、AならばBにする、Bなら
ばCにする、CならばAにする処理であるとし、 重みの世代の新旧を、AとBではBの方が新しい、Bと
CではCの方が新しい、CとAではAの方が新しい、と
定めたことを特徴とするチェックポイント設定方法。
15. The method according to claim 10, wherein three types of generations of A, B, and C are provided as weight generations, and the process of advancing the weight generation is B if A, and C if B. , C, it is assumed to be the processing of A, and the new and old of the weight generation, B is newer in A and B, C is newer in B and C, A is newer in C and A, A checkpoint setting method characterized by having been determined.
【請求項16】 請求項11または13において、 重みの世代としてA、B、Cの3種類の世代を設け、 重みの世代を進める処理を、AならばBにする、Bなら
ばCにする、CならばAにする処理であるとし、 重みの世代の新旧を、AとBではBの方が新しい、Bと
CではCの方が新しい、CとAではAの方が新しい、と
定めたことを特徴とするチェックポイント設定と再実行
方法。
16. The method according to claim 11, wherein three types of generations of A, B, and C are provided as weight generations, and the processing of advancing the weight generation is B if A, and C if B. , C, it is assumed to be the processing of A, and the new and old of the weight generation, B is newer in A and B, C is newer in B and C, A is newer in C and A, Checkpoint setting and re-execution method characterized by the defined.
【請求項17】 請求項14において、 重みの世代として、A、B、C、D、Eの5種類の世代
を設け、重みの世代をひとつ進める処理を、AならばB
にする、BならばCにする、CならばDにする、Dなら
ばEにする、EならばAにする処理であるとし、 重みの世代をふたつ進める処理を、AならばCにする、
BならばDにする、CならばEにする、DならばAにす
る、EならばBにする処理であるとし、 重みの世代の新旧を、AとBではBの方が1世代新し
い、BとCではCの方が1世代新しい、CとDではDの
方が1世代新しい、DとEではEの方が1世代新しい、
EとAではAの方が1世代新しい、AとCではCの方が
2世代新しい、BとDではDの方が2世代新しい、Cと
EではEの方が2世代新しい、DとAではAの方が2世
代新しい、EとBではBの方が2世代新しいと定めたこ
とを特徴とするチェックポイント設定と再実行方法。
17. The method according to claim 14, wherein five types of generations of A, B, C, D, and E are provided as weight generations, and the process of advancing the weight generation by one is performed.
, B for C, C for D, D for E, E for A, and A for C to advance the weight generation by two. ,
It is assumed that the processing is B for D, C for E, D for A, and E for B, and that the weight generation is new and old. , B and C have C one generation newer, C and D have D one generation new, D and E have E one generation newer,
In E and A, A is one generation newer, in A and C, C is two generations newer, in B and D, D is two generations newer, and in C and E, E is two generations newer, D and A checkpoint setting and re-execution method, wherein A is determined to be two generations newer for A, and B is determined to be two generations newer for E and B.
【請求項18】 有限個のプロセッサ (以下、PEと
書く) が論理的な通信チャネルで互いに結合してお
り、 PE群は非同期メッセージ通信によって互いに通信し、 通信チャネル上でメッセージの追い越しの起こることが
あり、 メッセージが送信された順序に到着する保証はなく、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
き、 各PEは他のすべてのPEへメッセージを送ることがで
き、自分の状態と受信したメッセージを記録することが
でき、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスとすべてのPEは互いにメッセージ通信を
行なうことができ、 通常処理を行なうためにPE群が互いに送受信するメッ
セージを通常メッセージと呼び、 チェックポイントの設定と再実行を行なうために制御プ
ロセスとPE群が互いに送受信するメッセージを制御メ
ッセージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、すべ
ての重みの合計は一定値を取り、 重みは世代を持ち、すべての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態フラグと状態レコード、IDレジスタを持
ち、状態レコードはIDフィールドと状態フィールドから
なり、状態フラグはCあるいはRのいずれかの値を取
り、状態フィールドは割り付けた段階ではクリアされて
おり、 制御プロセスは、チェックポイント設定を行なうため
に、設定するチェックポイントのID(checkpointIDと呼
ぶ)を決定し、checkpoint制御メッセージ(以下checkp
ointと略す)をすべてのPEへ送信し、checkpointはch
eckpointIDを引数として持ち、 すべてのPEからackCheckpoint制御メッセージ(以下a
ckCheckpointと書く)を受信するまで待ち、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 record制御メッセージ(以下recordと略す)をすべての
PEへ送信し、recordには重みを付け、自分の重みはそ
の分だけ減らし、 PEは、checkpointを受信すると、状態フラグをCに設
定し、checkpointが運んだcheckpointIDをIDレジスタに
記録し、状態レコードを新しく割り付け、IDフィールド
にcheckpointIDを記録し、ackCheckpointを制御プロセ
スへ返信し、 recordを受信すると、「recordが持っている重みの世
代」と「自分の重みの世代」を比較し、 「recordの重みの世代」が新しいならば、IDレジスタが
示す状態レコードの状態フィールドに自分の状態を記録
し、自分の重みをreturn制御メッセージ(以下returnと
書く)で制御プロセスへ送り、自分の重みをrecordの重
みで再設定し、 ふたつの世代が等しいならば、recordの重みを自分の重
みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値が一定値になったならばチェックポイ
ントの設定が完了したことが確認され、完了を確認した
時点における各PEの状態フィールドの集合がチェック
ポイントを構成し、 制御プロセスは、再実行を行なうために、再実行を始め
るチェックポイントを決定し、 そのチェックポイントを示すcheckpointIDを求め、roll
back制御メッセージ(以下rollbackと書く)をすべての
PEへ送信し、rollbackはcheckpointIDを引数として持
ち、 ackRollback制御メッセージ(以下ackRollbackと書く)
をすべてのPEから受信するまで待ち、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 r
eexecute制御メッセージ(以下 reexecuteと書く)をす
べてのPEへ送信し、 reexecuteには重みを付け、自分
の重みはその分だけ減らし、 PEは、rollbackを受信すると、状態フラグをRに設定
し、rollbackが運んだcheckpointIDをIDレジスタに記録
し、ackRollbackを制御プロセスへ送り、 reexecuteを受信すると、「 reexecuteが持っている重
みの世代」と「自分の重みの世代」を比較し、 「 reexecuteの重みの世代」が新しいならば、IDレジス
タが示す状態レコードの状態フィールドの内容で自分の
状態を設定し直し、自分の重みをreturnで制御プロセス
へ送り、自分の重みを reexecuteの重みで再設定し、 ふたつの世代が等しいならば、 reexecuteの重みを自分
の重みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値が一定値になったならば再実行の開始
が完了したことを確認でき、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しく状態フラグがCならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
IDレジスタが示す状態レコードの状態フィールドに通常
メッセージの内容を記録し、通常メッセージを処理し、 「自分の重みの世代」が新しく状態フラグがRならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
通常メッセージは処理することなく捨て、 「通常メッセージの重みの世代」が新しく状態フラグが
Cならば、IDレジスタが示す状態レコードの状態フィー
ルドに自分の状態を記録し、自分の重みをreturnで制御
プロセスへ送り、自分の重みを通常メッセージの重みで
再設定し、通常メッセージを処理し、 「通常メッセージの重みの世代」が新しく状態フラグが
Rならば、IDレジスタが示す状態レコードの状態フィー
ルドの内容で自分の状態を設定し直し、自分の重みをre
turnで制御プロセスへ送り、自分の重みを通常メッセー
ジの重みで再設定し、通常メッセージを処理し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理することを特
徴とするチェックポイント設定と再実行方法。
18. A finite number of processors (hereinafter, referred to as PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous message communication, and overtaking of a message occurs on the communication channel. There is no guarantee that messages will arrive in the order in which they were sent, there is no clock governing the entire system, each PE and network channel will operate independently according to their own clocks, and each PE will send messages to all other PEs. There is a special process (called a control process) that can send, record its status and received messages, and issue checkpointing and re-execution instructions. The control process and all PEs PEs can send and receive messages to each other for normal processing. A message transmitted and received by the control process and the PE group to perform checkpoint setting and re-execution is called a control message. The control process, the PE and the message have a weight, and all weights are The sum has a constant value, the weight has a generation, all weights are initialized to the same generation, the control process has an old generation weight counter, each PE has a status flag, a status record, an ID register, and a status record. Consists of an ID field and a status field. The status flag takes a value of either C or R, and the status field is cleared at the stage of allocation. The control process performs a check to set a checkpoint. Determine the point ID (called checkpointID) and checkpoint control message (hereinafter ch eckp
oint) to all PEs and checkpoint
It has eckpointID as an argument, and ackCheckpoint control messages (hereinafter a
ckCheckpoint), set its own weight in the old generation weight counter, set its own weight to a certain value, advance its own weight by one, and record control message (hereinafter abbreviated as record) Is sent to all PEs, the record is weighted, and its own weight is reduced by that amount. When the PE receives the checkpoint, the PE sets the status flag to C and records the checkpoint ID carried by the checkpoint in the ID register. Then, allocate a new status record, record the checkpoint ID in the ID field, return the ackCheckpoint to the control process, and when receiving the record, compare the `` generation of the weight that record has '' with the `` generation of your own weight ''. If the "generation of record weight" is new, record its own state in the state field of the state record indicated by the ID register, and write its own weight in the return control message (hereinafter referred to as "return"). To the control process, resets its own weight to the weight of record, and if the two generations are equal, adds the weight of record to its own weight.The control process receives the return and returns the weight carried by return. Is added to the old generation weight counter.As a result, if the value of the old generation weight counter becomes a constant value, it is confirmed that the checkpoint setting is completed, and the status field of each PE at the time of confirming the completion is checked. The set constitutes a checkpoint, and the control process determines the checkpoint to start the re-execution, finds the checkpoint ID indicating the check point, and performs a roll.
Sends a back control message (hereinafter referred to as rollback) to all PEs, and rollback has a checkpointID as an argument, and an ackRollback control message (hereinafter referred to as ackRollback)
Waits until all PEs have received it, sets its own weight in the old generation weight counter, sets its weight to a constant value, advances its weight by one generation, r
Sends an eexecute control message (hereinafter referred to as reexecute) to all PEs, weights the reexecute, and reduces its own weight by that amount. When the PE receives the rollback, the PE sets the status flag to R, Records the checkpointID carried by the user in the ID register, sends ackRollback to the control process, and when reexecute is received, compares the "generation of the weight that reexecute has" with the "generation of its own weight", and If the `` generation '' is new, reset its own state with the contents of the state field of the state record indicated by the ID register, send its own weight to the control process with return, reset its own weight with the weight of reexecute, If the two generations are equal, add the weight of reexecute to their own weight, and when the control receives the return, add the weight carried by return to the old generation weight counter and add the result When the value of the old generation weight counter reaches a certain value, it is possible to confirm that the re-execution has been started. When the PE receives the normal message, the PE determines, "the generation of the weight that the normal message has" and "own own". Weight generation ”, and if“ own weight generation ”is new and the status flag is C,
Normally the weight of the message is sent to the control process by return,
Record the content of the normal message in the status field of the status record indicated by the ID register, process the normal message, and if the "own weight generation" is new and the status flag is R,
Normally the weight of the message is sent to the control process by return,
Discard the normal message without processing it. If the "normal message weight generation" is new and the status flag is C, record your status in the status field of the status record indicated by the ID register, and control your weight with return. To the process, reset its own weight with the weight of the normal message, process the normal message, and if the "normal message weight generation" is new and the status flag is R, the status field of the status record indicated by the ID register Reset your state with the contents and re-weight yourself
Turn to send to the control process, reset its own weight with the weight of the normal message, process the normal message, and if the two generations are equal, add the weight of the normal message to its own weight and process the normal message Checkpoint setting and re-execution method characterized by the above-mentioned.
【請求項19】 有限個のプロセッサ(以下、PEと書
く)が論理的な通信チャネルで互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 通信チャネル上でメッセージの追い越しの起こることが
あり、 メッセージが送信された順序に到着する保証はなく、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
き、 各PEは他のすべてのPEへメッセージを送ることがで
き、自分の状態と受信したメッセージを記録することが
でき、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスとすべてのPEは互いにメッセージ通信を
行なうことができ、 通常処理を行なうためにPE群が互いに送受信するメッ
セージを通常メッセージと呼び、 チェックポイントの設定と再実行を行なうために制御プ
ロセスとPE群が互いに送受信するメッセージを制御メ
ッセージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、すべ
ての重みの合計は一定値を取り、 重みは世代を持ち、すべての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態フラグと状態レコード、IDレジスタ、メッ
セージバッファを持ち、状態レコードはIDフィールドと
状態フィールドからなり、状態フラグはCあるいはRの
いずれかの値を取り、状態フィールドは割り付けた段階
ではクリアされており、メッセージバッファは初期化処
理でクリアし、 制御プロセスは、チェックポイント設定を行なうため
に、設定するチェックポイントを示すcheckpointIDを決
定し、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 recordをすべてのPEへ送信し、recordはcheckpointID
を引数として持ち、recordには重みを付け、自分の重み
はその分だけ減らし、 PEは、recordを受信すると、状態フラグをCに設定
し、recordが運んだcheckpointIDをIDレジスタに記録
し、状態レコードを新しく割り付け、IDフィールドにch
eckpointIDを、状態フィールドに自分の状態を記録し、
自分の重みをreturnで制御プロセスへ送り、自分の重み
をrecordの重みで再設定し、メッセージバッファに通常
メッセージが格納されているならば、それらの重みを自
分の重みに加えてからそれらを処理し、メッセージバッ
ファをクリアし、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値が一定値になったならばチェックポイ
ントの設定が完了したことが確認され、完了を確認した
時点における各PEの状態フィールドの集合がチェック
ポイントを構成し、 制御プロセスは、再実行を行なうために、再実行を始め
るチェックポイントを決定し、そのチェックポイントを
示すcheckpointIDを求め、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 r
eexecuteをすべてのPEへ送信し、 reexecuteはcheckp
ointIDを引数として持ち、 reexecuteには重みを付け、
自分の重みはその分だけ減らし、 PEは、 reexecuteを受信すると、状態フラグをRに設
定し、 reexecuteが運んだcheckpointIDが示す状態レコ
ードの状態フィールドの内容で自分の状態を設定し直
し、自分の重みをreturnで制御プロセスへ送り、自分の
重みを reexecuteの重みで再設定し、メッセージバッフ
ァに通常メッセージが格納されているならば、それらの
重みを自分の重みに加えてからそれらを処理し、メッセ
ージバッファをクリアし、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値が一定値になったならば再実行の開始
が完了したことを確認でき、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しく状態フラグがCならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
IDレジスタが示す状態レコードの状態フィールドに通常
メッセージの内容を記録し、通常メッセージを処理し、 「自分の重みの世代」が新しく状態フラグがRならば、
通常メッセージの重みをreturnで制御プロセスへ送り、
通常メッセージは処理することなく捨て、 「通常メッセージの重みの世代」が新しいならば、その
通常メッセージは処理せずにメッセージバッファに格納
し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理することを特
徴とするチェックポイント設定と再実行方法。
19. A finite number of processors (hereinafter referred to as PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous message communication, and overtaking of a message occurs on the communication channel. There is no guarantee that messages will arrive in the order in which they were sent, there is no clock governing the entire system, each PE and network channel will operate independently according to their own clocks, and each PE will send messages to all other PEs. There is a special process (called a control process) that can send, record its status and received messages, and issue checkpointing and re-execution instructions. The control process and all PEs PEs can send and receive messages to each other for normal processing. A message is called a normal message, a message sent and received by the control process and the PE group for setting and re-executing a checkpoint is called a control message. The control process, the PE and the message have a weight, and the sum of all weights Takes a constant value, weights have generations, all weights are initialized to the same generation, control process has old generation weight counter, each PE has status flag and status record, ID register, message buffer, The status record consists of an ID field and a status field. The status flag takes either the value of C or R. The status field is cleared at the stage of allocation, the message buffer is cleared by initialization, and the control process Checkpoint to set, to set checkpoint To determine the checkpointID that shows, to set up their own weight to the old generation weight counter, set their own weight at a constant value, advanced one generation of their own weight, and sends the record to all of the PE, record the checkpointID
, The record is weighted, and its own weight is reduced by that amount. When the PE receives the record, the PE sets the status flag to C, records the checkpointID carried by the record in the ID register, Allocate new record, ch to ID field
Record your status in the status field with the eckpointID,
Return your weight to the control process with return, reset your weight with the weight of record, and if the message buffer contains normal messages, add those weights to your own weight and process them When the return is received, the control process adds the weight carried by return to the old generation weight counter, and if the addition results in a value of the old generation weight counter becoming a constant value, the control process checkspoints. Is completed, the set of status fields of each PE at the time of confirming the completion constitutes a checkpoint, and the control process determines a checkpoint to start re-execution in order to perform re-execution. , Find a checkpointID indicating the checkpoint, set its own weight in the old generation weight counter, set its own weight to a certain value, Promoting the generation of minute of weight one, r
Send eexecute to all PEs, reexecute checkp
ointID as an argument, weight reexecute,
When the PE receives the reexecute, the PE sets the status flag to R, and resets its own status with the contents of the status field of the status record indicated by the checkpointID carried by the reexecute. Send the weight to the control process with return, reset its own weight with the reexecute weight, and if the message buffer normally contains messages, add those weights to your own weight and process them, When the message buffer is cleared and the control process receives the return, the control process adds the weight carried by the return to the old generation weight counter, and starts the re-execution if the value of the old generation weight counter becomes a constant value as a result. When the PE receives the normal message, the PE compares the “generation of the weight that the normal message has” with the “generation of its own weight”. If "My weight of generation" is a new state flag is C,
Normally the weight of the message is sent to the control process by return,
Record the content of the normal message in the status field of the status record indicated by the ID register, process the normal message, and if the "own weight generation" is new and the status flag is R,
Normally the weight of the message is sent to the control process by return,
The normal message is discarded without processing, and if the "normal message weight generation" is new, the normal message is stored in the message buffer without processing, and if the two generations are equal, the normal message weight is set to Checkpoint setting and re-execution method characterized by processing a normal message in addition to the weight of the checkpoint.
【請求項20】 有限個のプロセッサ(以下、PEと書
く)が論理的な通信チャネルで互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 通信チャネル上でメッセージの追い越しの起こることが
あり、 メッセージが送信された順序に到着する保証はなく、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
き、 各PEは他のすべてのPEへメッセージを送ることがで
き、自分の状態と受信したメッセージを記録することが
でき、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスとすべてのPEは互いにメッセージ通信を
行なうことができ、 通常処理を行なうためにPE群が互いに送受信するメッ
セージを通常メッセージと呼び、 チェックポイントの設定と再実行を行なうために制御プ
ロセスとPE群が互いに送受信するメッセージを制御メ
ッセージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、すべ
ての重みの合計は一定値を取り、 重みは世代を持ち、すべての重みを同じ世代に初期設定
し、 制御プロセスは旧世代重みカウンタを持ち、 各PEは状態スイッチと状態レコード、IDレジスタを持
ち、状態レコードはIDフィールドと状態フィールドから
なり、状態スイッチはC、C′、R、R′のいずれかの
値を取り、初期値はCであり、状態フィールドは割り付
けた段階ではクリアされており、 制御プロセスは、チェックポイント設定を行なうため
に、設定するチェックポイントを示すcheckpointIDを決
定し、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、re
cordをすべてのPEへ送信し、recordはcheckpointIDを
引数として持ち、recordには重みを付け、自分の重みは
その分だけ減らし、 PEは、recordを受信すると、「recordが持っている重
みの世代」と「自分の重みの世代」を比較し、 「recordの重みの世代」が新しいならば、状態フラグを
C′に設定し、recordが運んだcheckpointIDをIDレジス
タに記録し、状態レコードを新しく割り付け、IDフィー
ルドにcheckpointIDを、状態フィールドに自分の状態を
記録し、自分の重みをreturnで制御プロセスへ送り、自
分の重みをrecordの重みで再設定し、 ふたつの世代が等しいならば、recordの重みを自分の重
みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値が一定値になったならばチェックポイ
ントの設定が完了したことが確認され、完了を確認した
時点における各PEの状態フィールドの集合がチェック
ポイントを構成し、 制御プロセスは、チェックポイント設定の完了を確認す
ると、 completed制御メッセージ(以下 completedと略
す)をすべてのPEへ送信し、 completedには重みを付
け、自分の重みはその分だけ減らし、 制御プロセスは、再実行を行なうために、再実行を始め
るチェックポイントを決定し、そのチェックポイントを
示すcheckpointIDを求め、 旧世代重みカウンタに自分の重みを設定し、自分の重み
を一定値に設定し、自分の重みの世代をひとつ進め、 r
eexecuteをすべてのPEへ送信し、 reexecuteはcheckp
ointIDを引数として持ち、 reexecuteには重みを付け、
自分の重みはその分だけ減らし、 PEは、 reexecuteを受信すると、「 reexecuteが持っ
ている重みの世代」と「自分の重みの世代」を比較し、 「 reexecuteの重みの世代」が新しいならば、状態フラ
グをR′に設定し、 reexecuteが運んだcheckpointIDを
IDレジスタに記録し、checkpointIDが示す状態レコード
の状態フィールドの内容で自分の状態を設定し直し、自
分の重みをreturnで制御プロセスへ送り、自分の重みを
reexecuteの重みで再設定し、 ふたつの世代が等しいならば、 reexecuteの重みを自分
の重みに加え、 制御プロセスは、returnを受信すると、returnが運んだ
重みを旧世代重みカウンタへ加え、加えた結果、旧世代
重みカウンタの値が一定値になったならば再実行の開始
が完了したことを確認でき、 制御プロセスは、再実行開始の完了を確認すると、 com
pleted制御メッセージ(以下 completedと略す)をすべ
てのPEへ送信し、 completedには重みを付け、自分の
重みはその分だけ減らし、 PEは、 completedを受信すると、状態スイッチがC′
ならば、Cに設定し、状態スイッチがR′ならば、Rに
設定し、 PEは、通常メッセージを受信すると、「通常メッセー
ジが持っている重みの世代」と「自分の重みの世代」を
比較し、 「自分の重みの世代」が新しく状態スイッチがC′なら
ば、通常メッセージの重みをreturnで制御プロセスへ送
り、IDレジスタが示す状態レコードの状態フィールドに
通常メッセージの内容を記録し、通常メッセージを処理
し、 「自分の重みの世代」が新しく状態スイッチがR′なら
ば、通常メッセージの重みをreturnで制御プロセスへ送
り、通常メッセージは処理することなく捨て、 「通常メッセージの重みの世代」が新しく「通常メッセ
ージの状態フラグ」がC′ならば、状態スイッチをC′
に設定し、通常メッセージが運んだcheckpointIDをIDレ
ジスタに記録し、状態レコードを新しく割り付け、IDフ
ィールドにcheckpointIDを、状態フィールドに自分の状
態を記録し、自分の重みをreturnで制御プロセスへ送
り、自分の重みを通常メッセージの重みで再設定し、通
常メッセージを処理し、 「通常メッセージの重みの世代」が新しく「通常メッセ
ージの状態フラグ」がR′ならば、状態スイッチをR′
に設定し、通常メッセージが運んだcheckpointIDをIDレ
ジスタに記録し、checkpointIDが示す状態レコードの状
態フィールドの内容で自分の状態を設定し直し、自分の
重みをreturnで制御プロセスへ送り、自分の重みを通常
メッセージの重みで再設定し、通常メッセージを処理
し、 ふたつの世代が等しいならば、通常メッセージの重みを
自分の重みに加え、通常メッセージを処理し、 PEは、通常メッセージを送信する時、状態スイッチが
C′あるいはR′ならば、状態スイッチの値と、IDレジ
スタが記録しているcheckpointIDを通常メッセージに付
けて送ることを特徴とするチェックポイント設定と再実
行方法。
20. A finite number of processors (hereinafter, referred to as PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous message communication, and overtaking of a message occurs on the communication channel. There is no guarantee that messages will arrive in the order in which they were sent, there is no clock governing the entire system, each PE and network channel will operate independently according to their own clocks, and each PE will send messages to all other PEs. There is a special process (called a control process) that can send, record its status and received messages, and issue checkpointing and re-execution instructions. The control process and all PEs PEs can send and receive messages to each other for normal processing. A message is called a normal message, a message sent and received by the control process and the PE group for setting and re-executing a checkpoint is called a control message. The control process, the PE and the message have a weight, and the sum of all weights Takes a constant value, weights have generations, all weights are initialized to the same generation, the control process has an old generation weight counter, each PE has a state switch and a state record, an ID register, and the state record is It consists of an ID field and a status field. The status switch takes one of the values C, C ', R, and R', the initial value is C, the status field is cleared at the stage of allocation, and the control process To set the checkpoint, determine the checkpointID indicating the checkpoint to be set, and Set its own weight in the counter, set its own weight to a constant value, advance its own weight by one generation, re
Sends cord to all PEs, record has checkpointID as an argument, weights record, reduces its own weight by that amount, and PE receives the record, and says, "Generation of the weight that record has "And" own weight generation ". If the" record weight generation "is new, set the status flag to C ', record the checkpointID carried by record in the ID register, and update the status record. Assign the checkpoint ID in the ID field, record your status in the status field, send your weight to the control process with return, reset your weight with the weight of record, and if the two generations are equal, record When the control process receives the return, the control process adds the weight carried by the return to the old generation weight counter, and checks if the value of the old generation weight counter becomes a constant value as a result. It is confirmed that the setting of the point has been completed, and a set of the status fields of each PE at the time of confirming the completion constitutes a checkpoint. When the control process confirms the completion of the checkpoint setting, a complete control message (hereinafter, completed) Is sent to all PEs, completed is given a weight, its own weight is reduced by that amount, and the control process determines a checkpoint to start the re-execution and performs a check Find the checkpoint ID indicating the point, set its own weight in the old generation weight counter, set its own weight to a constant value, advance the generation of its own weight by one, r
Send eexecute to all PEs, reexecute checkp
ointID as an argument, weight reexecute,
When the PE receives the reexecute, the PE compares “the generation of the weight that reexecute has” and “the generation of its own weight”. If the “generation of the weight of reexecute” is new, , Set the status flag to R 'and checkpointID carried by reexecute
Record it in the ID register, reset its own status with the contents of the status field of the status record indicated by checkpointID, send its weight to the control process by return, and
resets with the reexecute weight, if the two generations are equal, adds the reexecute weight to its own weight, and upon receiving the return, the control process adds the weight carried by return to the old generation weight counter and adds As a result, when the value of the old generation weight counter becomes a constant value, it can be confirmed that the re-execution has been started. When the control process confirms the completion of the re-execution start, com
Sends a pleted control message (hereinafter abbreviated as completed) to all PEs, weights completed, reduces its own weight by that amount, and when the PE receives completed, the state switch sets C ′
Then, if the status switch is R ', then set it to R. When the PE receives the normal message, the PE sets "the generation of the weight that the normal message has" and "the generation of its own weight". If the "generation of own weight" is new and the status switch is C ', the weight of the normal message is sent to the control process by return, and the content of the normal message is recorded in the status field of the status record indicated by the ID register. If the normal message is processed and the "own weight generation" is new and the state switch is R ', the weight of the normal message is sent to the control process by return, and the normal message is discarded without processing. If the "generation" is new and the "normal message status flag" is C ', the status switch is set to C'.
Record the checkpointID carried by the normal message in the ID register, allocate a new status record, record the checkpoint ID in the ID field, record your status in the status field, send your weight to the control process by return, If the weight is reset to the normal message weight, the normal message is processed, and if the “normal message weight generation” is new and the “normal message status flag” is R ′, the status switch is set to R ′.
The checkpointID carried by the normal message is recorded in the ID register, the state is reset using the contents of the state field of the state record indicated by the checkpointID, the weight is sent to the control process by return, and the weight is If the two generations are equal, add the weight of the normal message to its own weight, process the normal message, and process the normal message. If the status switch is C 'or R', the value of the status switch and the checkpoint ID recorded in the ID register are sent to a normal message and transmitted.
【請求項21】 有限個のプロセッサ(以下、PEと書
く)が論理的な通信チャネルで互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 通信チャネル上でメッセージの追い越しの起こることが
あり、 メッセージが送信された順序に到着する保証はなく、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
き、 各PEは他のすべてのPEへメッセージを送ることがで
き、自分の状態と受信したメッセージを記録することが
でき、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスとすべてのPEは互いにメッセージ通信を
行なうことができ、 PEは、returnの送信先を示すreturn送信先レジスタを
持ち、 return送信先レジスタが示す宛先へreturnを送信し、 returnを受信すると、「returnが運んだ重みの世代」と
「自分の重みの世代」を比較し、 ふたつの世代が等しいならば、return送信先レジスタが
示す宛先へ、受信したreturnをそのまま送信し、 「自分の重みの世代」が新しいならば、returnが運んだ
重みを自分の重みに加えることを特徴とするチェックポ
イント設定と再実行方法。
21. A finite number of processors (hereinafter referred to as PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous message communication, and overtaking of a message occurs on the communication channel. There is no guarantee that messages will arrive in the order in which they were sent, there is no clock governing the entire system, each PE and network channel will operate independently according to their own clocks, and each PE will send messages to all other PEs. There is a special process (called a control process) that can send, record its status and received messages, and issue checkpointing and re-execution instructions. The control process and all PEs The PE can perform message communication with each other, and the PE has a return destination register indicating the return destination. Return, send return to the destination indicated by the destination register, and when return is received, compare "generation of weight carried by return" with "generation of own weight" .If the two generations are equal, return Checkpoint setting and re-execution characterized by sending the received return to the destination indicated by the destination register as is and adding the weight carried by return to the own weight if the "own weight generation" is new Method.
【請求項22】 有限個のプロセッサ(以下、PEと書
く)が論理的な通信チャネルで互いに結合しており、 PE群は非同期メッセージ通信によって互いに通信し、 通信チャネル上でメッセージの追い越しの起こることが
あり、 メッセージが送信された順序に到着する保証はなく、 システム全体を統括するクロックはなく、各PEとネッ
トワークチャネルはそれぞれのクロックに従い個別に動
き、 各PEは他のすべてのPEへメッセージを送ることがで
き、自分の状態と受信したメッセージを記録することが
でき、 チェックポイントの設定と再実行の指示を出す特別なプ
ロセス(制御プロセスと呼ぶ)が存在し、 制御プロセスとすべてのPEは互いにメッセージ通信を
行なうことができ、 通常処理を行なうためにPE群が互いに送受信するメッ
セージを通常メッセージと呼び、 チェックポイントの設定と再実行を行なうために制御プ
ロセスとPE群が互いに送受信するメッセージを制御メ
ッセージと呼び、 制御プロセスとPE及びメッセージは重みを持ち、すべ
ての重みの合計は一定値を取り、 重みは世代を持ち、すべての重みを同じ世代に初期設定
し、 PEは、return送信先レジスタと返却重みカウンタ、re
turn送信スイッチ、return受信テーブルを持ち、 return受信テーブルはreturn送信元PEと受信フラグか
らなり、 返却重みカウンタはゼロに初期設定し、 return送信スイッチはnotReady、 ready、doneのいずれ
かかの値を取り、 returnを受信することのないPEはdoneに初期設定し、
それ以外のPEはnotReadyに初期設定し、 受信フラグは notReceived、receivedのいずれかの値を
取り、 notReceivedに初期設定し、 PEが、自分の重みの世代より新しい世代の重みを持つ
record、 reexecuteあるいは通常メッセージを受信し、
受信したメッセージの重みで自分の重みを再設定した時
は、返却重みカウンタとreturn送信スイッチ、return受
信テーブルを初期設定し、 PEがreturnを送信しようとした時、そのPEのreturn
送信スイッチがdoneならば、return送信先レジスタが示
す宛先へreturnを送り、 そのPEのreturn送信スイッチが readyならば、「retu
rnで返却しようとした重み」を却重みカウンタに足し込
み、 そのPEのreturn送信スイッチがnotReadyで、return受
信テーブルの受信フラグの値がすべてreceivedならば、
「returnで返却しようとする重み」と「返却重みカウン
タが格納している重み」の合計を運ぶreturnを、return
送信先レジスタが示すPEへ送り、return送信スイッチ
をdoneにセットし、 そのPEのreturn送信スイッチがnotReadyで、return受
信テーブルのひとつ以上の受信フラグが notReceivedな
らば、return送信スイッチを readyにセットし、「retu
rnで返却しようとした重み」を返却重みカウンタに足し
込み、 PEがreturnを受信した時、return送信スイッチがdone
で「returnが運んだ重みの世代」と「自分の重みの世
代」が等しいならば、返却重みカウンタとreturn送信ス
イッチ、return受信テーブルを初期設定し、returnが運
んだ重みを返却重みカウンタに足し込み、return受信テ
ーブルの、受信したreturnの送信元PEに対応する受信
フラグをreceivedにセットし、 return送信スイッチがdoneで「returnが運んだ重みの世
代」より「自分の重みの世代」が新しいならば、return
送信先レジスタが示すPEへ、そのreturnをそのまま送
り、 return送信スイッチが readyならば、returnが運んだ重
みを返却重みカウンタに足し込み、return受信テーブル
の、受信したreturnの送信元PEに対応する受信フラグ
をreceivedにセットし、セットした結果、受信フラグの
値がすべてreceivedになったならば返却重みカウンタが
格納している重みを運ぶreturnを、return送信先レジス
タが示すPEへ送り、return送信スイッチをdoneにセッ
トし、 return送信スイッチがnotReadyならば、returnが運んだ
重みを返却重みカウンタに足し込み、return受信テーブ
ルの、受信したreturnの送信元PEに対応する受信フラ
グをreceivedにセットすることを特徴とするチェックポ
イント設定と再実行方法。
22. A finite number of processors (hereinafter referred to as PEs) are connected to each other by a logical communication channel, and the PEs communicate with each other by asynchronous message communication, and overtaking of a message occurs on the communication channel. There is no guarantee that messages will arrive in the order in which they were sent, there is no clock governing the entire system, each PE and network channel will operate independently according to their own clocks, and each PE will send messages to all other PEs. There is a special process (called a control process) that can send, record its status and received messages, and issue checkpointing and re-execution instructions. The control process and all PEs PEs can send and receive messages to each other for normal processing. A message is called a normal message, a message sent and received by the control process and the PE group for setting and re-executing a checkpoint is called a control message. The control process, the PE and the message have a weight, and the sum of all weights Takes a constant value, the weight has a generation, all weights are initialized to the same generation, and the PE has a return destination register and a return weight counter, re
It has a turn transmission switch and a return reception table. The return reception table consists of the return source PE and the reception flag.The return weight counter is initialized to zero, and the return transmission switch sets any value of notReady, ready, or done. Take, PEs that do not receive return initialize to done,
The other PEs are initialized to notReady, the receive flag takes either the value of notReceived or received, and initialized to notReceived, and the PE has a newer generation weight than its own weight generation
record, reexecute or normal message received,
When the weight of the received message resets its own weight, the return weight counter, the return transmission switch, and the return reception table are initialized. When the PE tries to transmit the return, the return of the PE
If the transmission switch is done, return is sent to the destination indicated by the return transmission destination register. If the return transmission switch of the PE is ready, "retu
rn to return with rn) to the rejection weight counter, if the return transmission switch of that PE is notReady and the values of the reception flags in the return reception table are all received,
The return that carries the sum of the "weight to be returned by return" and the "weight stored in the return weight counter" is return
Send to the PE indicated by the transmission destination register, set the return transmission switch to done, and if the return transmission switch of that PE is notReady and one or more reception flags in the return reception table are notReceived, set the return transmission switch to ready. , "Retu
rn to return with "rn" to the return weight counter, and when the PE receives the return, the return transmission switch is done.
If `` the generation of weight carried by return '' is equal to `` the generation of own weight '', initialize the return weight counter, return transmission switch, and return reception table, and add the weight carried by return to the return weight counter. In the return reception table, set the reception flag corresponding to the source PE of the received return to received, and set the return transmission switch to done so that "own weight generation" is newer than "return weight carried generation". Then return
The return is sent as it is to the PE indicated by the destination register, and if the return transmission switch is ready, the weight carried by the return is added to the return weight counter, and the return reception table corresponds to the source PE of the received return. Set the receive flag to received, and if all the values of the receive flags are set to received, send the return carrying the weight stored in the return weight counter to the PE indicated by the return destination register, and send the return. Set the switch to done, and if the return transmission switch is notReady, add the weight carried by return to the return weight counter, and set the reception flag corresponding to the source PE of the received return in the return reception table to received Checkpoint setting and re-execution method characterized by the above-mentioned.
【請求項23】 PEは、return送信先レジスタと返却
重みカウンタ、return送信スイッチ、return受信カウン
タを持ち、 返却重みカウンタはゼロに初期設定し、 return送信スイッチはnotReady、 ready、doneのいずれ
かかの値を取り、 returnを受信することのないPEはdoneに初期設定し、
それ以外のPEはnotReadyに初期設定し、 受信カウンタは「受信するreturnの最低数」に初期設定
し、 PEが、自分の重みの世代より新しい世代の重みを持つ
record、 reexecuteあるいは通常メッセージを受信し、
受信したメッセージの重みで自分の重みを再設定した時
は、返却重みカウンタとreturn送信スイッチ、return受
信カウンタを初期設定し、 PEがreturnを送信しようとした時、そのPEのreturn
送信スイッチがdoneならば、return送信先レジスタが示
す宛先へreturnを送り、 そのPEのreturn送信スイッチが readyならば、「retu
rnで返却しようとした重み」を返却重みカウンタに足し
込み、そのPEのreturn送信スイッチがnotReadyでretu
rn受信カウンタの値がゼロならば、「returnで返却しよ
うとする重み」と「返却重みカウンタが格納している重
み」の合計を運ぶreturnを、return送信先レジスタが示
すPEへ送り、return送信スイッチをdoneにセットし、 そのPEのreturn送信スイッチがnotReadyでreturn受信
カウンタの値がゼロでないならば、return送信スイッチ
を readyにセットし、「returnで返却しようとした重
み」を返却重みカウンタに足し込み、 PEがreturnを受信した時、return送信スイッチがdone
で「returnが運んだ重みの世代」と「自分の重みの世
代」が等しいならば、返却重みカウンタとreturn送信ス
イッチ、return受信カウンタを初期設定し、returnが運
んだ重みを返却重みカウンタに足し込み、return受信カ
ウンタを-1し、 return送信スイッチがdoneで「returnが運んだ重みの世
代」より「自分の重みの世代」が新しいならば、return
送信先レジスタが示すPEへ、そのreturnをそのまま送
り、 return送信スイッチが readyならば、returnが運んだ重
みを返却重みカウンタに足し込み、return受信カウンタ
を-1し、-1した結果、受信カウンタの値がゼロになった
ならば返却重みカウンタが格納している重みを運ぶretu
rnを、return送信先レジスタが示すPEへ送り、return
送信スイッチをdoneにセットし、 return送信スイッチがnotReadyならば、returnが運んだ
重みを返却重みカウンタに足し込み、return受信カウン
タを-1することを特徴とするチェックポイント設定と再
実行方法。
23. The PE has a return destination register, a return weight counter, a return transmission switch, and a return reception counter. The return weight counter is initialized to zero, and the return transmission switch is one of notReady, ready, and done. The PE that does not receive a return is initialized to done,
The other PEs are initialized to notReady, the reception counter is initialized to "the minimum number of returns to receive", and the PE has a newer generation weight than its own.
record, reexecute or normal message received,
When the weight of the received message resets its own weight, the return weight counter, the return transmission switch, and the return reception counter are initialized, and when the PE tries to transmit the return, the return of the PE returns.
If the transmission switch is done, return is sent to the destination indicated by the return transmission destination register. If the return transmission switch of the PE is ready, "retu
rn to be returned with rn ”is added to the return weight counter, and the return transmission switch of that PE returns
rn If the value of the reception counter is zero, send a return carrying the sum of the "weight to be returned by return" and the "weight stored in the return weight counter" to the PE indicated by the return destination register, and send the return Set the switch to done, if the return transmission switch of the PE is notReady and the value of the return reception counter is not zero, set the return transmission switch to ready, and set the "weight to return on return" to the return weight counter. When the PE receives the return, the return switch is set to done.
If `` the generation of weight carried by return '' is equal to `` the generation of own weight '', initialize the return weight counter, return transmission switch, and return reception counter, and add the weight carried by return to the return weight counter. Return return counter is decremented by 1. If the return transmission switch is done and "own weight generation" is newer than "return weight generation", return
The return is sent to the PE indicated by the destination register as it is, and if the return transmission switch is ready, the weight carried by return is added to the return weight counter, the return reception counter is decremented by 1, and the result of the decrement is -1. If the value of is zero, retu carries the weight stored in the return weight counter
sends rn to the PE indicated by the return destination register, and returns
A checkpoint setting and re-execution method, wherein the transmission switch is set to done, and if the return transmission switch is notReady, the weight carried by return is added to the return weight counter, and the return reception counter is decremented by one.
JP9136028A 1996-05-10 1997-05-09 Method for macro state determination, check point setting and re-execution Pending JPH10187568A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9136028A JPH10187568A (en) 1996-05-10 1997-05-09 Method for macro state determination, check point setting and re-execution

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP14091896 1996-05-10
JP29813196 1996-10-22
JP8-140918 1996-10-22
JP8-298131 1996-10-22
JP9136028A JPH10187568A (en) 1996-05-10 1997-05-09 Method for macro state determination, check point setting and re-execution

Publications (1)

Publication Number Publication Date
JPH10187568A true JPH10187568A (en) 1998-07-21

Family

ID=27317195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9136028A Pending JPH10187568A (en) 1996-05-10 1997-05-09 Method for macro state determination, check point setting and re-execution

Country Status (1)

Country Link
JP (1) JPH10187568A (en)

Similar Documents

Publication Publication Date Title
US5802267A (en) Method for checkpointing in computer system under distributed processing environment
US20070073693A1 (en) Transaction and task scheduler
JPH06110740A (en) Method and means for measuring channel-using time
JP2007286860A (en) Data transfer method and information processor
JPH0296849A (en) Accurate one-time semantics in tp cueing system
JPH05197604A (en) Multiprocessor computer and operating method thereof
US10565135B2 (en) Information processing device, information processing method, main processor core, program, information processing method, and sub processor core
US7216252B1 (en) Method and apparatus for machine check abort handling in a multiprocessing system
US5386560A (en) Execution of page data transfer by PT processors and issuing of split start and test instructions by CPUs coordinated by queued tokens
JP3135714B2 (en) Checkpoint restart method
WO2023216636A1 (en) Transaction processing method and apparatus, and electronic device
JP4305007B2 (en) System switching system, processing method therefor, and processing program therefor
US20030014558A1 (en) Batch interrupts handling device, virtual shared memory and multiple concurrent processing device
JPH10187568A (en) Method for macro state determination, check point setting and re-execution
JPH06274354A (en) Method and system for control of operation of destructive hardware
JPWO2006001051A1 (en) Multiprocessor device and control method thereof
EP0445954A2 (en) Synchronising concurrent processes in a computer system
JPH0519179B2 (en)
EP4068096A1 (en) Data processing program, information processing system, and data processing method
JPH04213126A (en) Software test system
JPH0713943A (en) Parallel computer
JP2003131893A (en) Arithmetic processing system, task control method in a computer system and storage medium
JP2919457B1 (en) Duplexing device I / O control method and program recording medium therefor
CN112115082A (en) DMA controller and data transmission method thereof
JPH07114522A (en) Multiprocessor system