JP3077669B2 - Process Stop Method for Distributed Memory Multiprocessor System - Google Patents

Process Stop Method for Distributed Memory Multiprocessor System

Info

Publication number
JP3077669B2
JP3077669B2 JP10143780A JP14378098A JP3077669B2 JP 3077669 B2 JP3077669 B2 JP 3077669B2 JP 10143780 A JP10143780 A JP 10143780A JP 14378098 A JP14378098 A JP 14378098A JP 3077669 B2 JP3077669 B2 JP 3077669B2
Authority
JP
Japan
Prior art keywords
node
stop
thread
nodes
inter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP10143780A
Other languages
Japanese (ja)
Other versions
JPH1145229A (en
Inventor
敦久 大谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP10143780A priority Critical patent/JP3077669B2/en
Publication of JPH1145229A publication Critical patent/JPH1145229A/en
Application granted granted Critical
Publication of JP3077669B2 publication Critical patent/JP3077669B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、プロセス停止方式
に関し、特に、ネットワークに接続された複数のノード
を含み、各ノードが並列処理を行うスレッド群を保持す
る、分散メモリ型マルチプロセッサシステムにおいて実
行されるチェックポイント処理におけるプロセス停止方
式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a process stopping method, and more particularly to a process stopping method for a distributed memory type multiprocessor system including a plurality of nodes connected to a network, each of which holds a group of threads for performing parallel processing. The present invention relates to a process stop method in the checkpoint processing performed.

【0002】[0002]

【従来の技術】特開平8−263317号公報には、チ
ェックポイント処理における同期制御(排他制御)に関
係する複数のプロセスの停止順序を制御するためのチェ
ックポイント/リスタート処理システムが開示されてい
る。
2. Description of the Related Art Japanese Unexamined Patent Publication No. Hei 8-263317 discloses a checkpoint / restart processing system for controlling the stop order of a plurality of processes related to synchronous control (exclusive control) in checkpoint processing. I have.

【0003】また、特開平2−287858号公報に
は、分散処理システムにおけるリスタートシステムが開
示されている。このリスタートシステムにおいては、あ
るプロセッサ中の通信制御部が他のプロセッサ群とデー
タの送受信を行う際には必ず、該通信制御部にそのよう
な処理を行わせるプログラムがチェックポイントデータ
としてセーブされる。
[0003] Japanese Patent Application Laid-Open No. 2-287858 discloses a restart system in a distributed processing system. In this restart system, whenever a communication control unit in a certain processor transmits and receives data to and from another processor group, a program that causes the communication control unit to perform such processing is saved as checkpoint data. You.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、特開平
8−263317号公報記載の技術は、密結合型マルチ
プロセッサシステムに適用されるもので、分散メモリ型
マルチプロセッサシステムに適用されるものではない。
分散メモリ型マルチプロセッサシステムにおいて個々の
プロセッサは、他のプロセッサ群のいずれのプロセスか
らもアクセスできない固有の(ローカル)メモリを保持
している。もし、特開平8−263317号公報記載の
チェックポイント/リスタート処理システムをこの分散
メモリ型マルチプロセッサシステムに適用したとする
と、異なるプロセッサ群上の複数のプロセスはチェック
ポイント処理のための同期処理を実行することができな
い可能性がある。なぜならば、あるプロセッサ中のある
プロセス(同期処理の一方)が停止状態である場合、メ
モリを共有していない他のプロセッサ群上のプロセス群
は先のプロセスが停止状態であることを認識することが
できないからである。そのような状況においては、他の
プロセッサ群上のプロセス群は、その停止状態のプロセ
スからの(返却されるはずのない)応答を待ち続けてし
まうという問題点がある。
However, the technique described in Japanese Patent Application Laid-Open No. 8-263317 is applied to a tightly-coupled multiprocessor system, not to a distributed memory multiprocessor system.
In a distributed memory type multiprocessor system, each processor has a unique (local) memory that cannot be accessed by any process of another processor group. If the checkpoint / restart processing system described in Japanese Patent Application Laid-Open No. 8-263317 is applied to this distributed memory multiprocessor system, a plurality of processes on different processor groups perform synchronous processing for checkpoint processing. May not be able to do so. This is because, when a certain process (one of the synchronous processes) in a certain processor is stopped, the processes on the other processors not sharing the memory recognize that the previous process is stopped. Is not possible. In such a situation, there is a problem that the processes on the other processors continue to wait for a response (which should not be returned) from the stopped process.

【0005】また、特開平2−287858号公報記載
の技術においては、チェックポイントデータを任意のタ
イミングでセーブできないという問題点がある。さら
に、チェックポイントデータをセーブする頻度が並列処
理の性能を低下させる要因となる可能性がある。
The technique described in Japanese Patent Application Laid-Open No. 2-287858 has a problem that checkpoint data cannot be saved at an arbitrary timing. Further, the frequency of saving the checkpoint data may be a factor that degrades the performance of the parallel processing.

【0006】本発明の目的は、分散メモリ型マルチプロ
セッサシステムのノード数が多い場合でも、ノード間で
データの送受信を行なう並列処理プロセスに対して、効
率的にチェックポイント採取のための停止処理を行える
ようにする分散メモリ型マルチプロセッサシステムにお
けるプロセスの停止方式を提供することにある。
SUMMARY OF THE INVENTION It is an object of the present invention to provide a process for stopping checkpoint collection efficiently in a parallel processing process for transmitting / receiving data between nodes even when the number of nodes in a distributed memory type multiprocessor system is large. It is an object of the present invention to provide a method of stopping a process in a distributed memory type multiprocessor system which enables the process to be performed.

【0007】本発明の他の目的は、分散メモリ型マルチ
プロセッサシステム上において、ノード間でデータの送
受信を行なう並列処理プロセスの通常の処理において
は、同プロセスの性能を低下させないように、チェック
ポイント/リスタートの機能を実現する分散メモリ型マ
ルチプロセッサシステムにおけるプロセスの停止方式を
提供することにある。
[0007] Another object of the present invention is to checkpoint a normal processing of a parallel processing process for transmitting and receiving data between nodes on a distributed memory type multiprocessor system so as not to lower the performance of the process. Another object of the present invention is to provide a method for stopping a process in a distributed memory type multiprocessor system that realizes the function of / restart.

【0008】本発明のさらに他の目的は、分散メモリ型
マルチプロセッサシステム上において、ノード間でデー
タの送受信を行なう並列処理プロセスに対して、任意の
時点で、チェックポイント採取が行えるようにする分散
メモリ型マルチプロセッサシステムにおけるプロセスの
停止方式を提供することにある。
Still another object of the present invention is to provide a distributed memory type multiprocessor system in which a checkpoint can be collected at any time for a parallel processing process of transmitting and receiving data between nodes. An object of the present invention is to provide a method for stopping a process in a memory type multiprocessor system.

【0009】[0009]

【課題を解決するための手段】本発明の第1の分散メモ
リ型マルチプロセッサシステムにおけるプロセス停止方
式は、複数のノードを相互結合網により結合し、各ノー
ドに並列処理の対象のスレッドを備える分散メモリ型マ
ルチプロセッサシステムにおいて、前記各ノードが並列
処理の対象のスレッドを管理する管理プロセスを備え、
全ノードのいずれかにチェックポイント要求コマンドが
入力された場合に、ノード番号の最も若い前記ノードの
管理プロセスが、自ノード内の前記スレッドに対して停
止要求を行ない、自ノード内のスレッドが停止した後、
次のノード番号を有する前記ノードの管理プロセスに停
止要求を行ない、並列処理の対象の全ノードのスレッド
が停止するまで待ち合わせることを特徴とする分散メモ
リ型マルチプロセッサシステムにおけるプロセス停止方
式であって、前記スレッドは、ノード間でのデータの送
受信処理の同期をとるためのノード間同期手段と、停止
要求が発行されているかどうかを示す情報を格納するチ
ェックポイント情報と、他のノードに対してデータの送
受信を行なう送受信手段と、自ノードの前記管理プロセ
スに対して自スレッドが停止したことを通知した後自ス
レッドを停止させる停止手段とを備え、前記ノード間同
期手段は、ノード間のデータ送受信において、データ送
受信の同期処理がタイムオーバーになった場合に、前記
チェックポイント情報に基づいて停止要求が発行されて
いるかどうかを調べ、停止要求が発行されていれば、自
ノードのノード番号と相手ノードのノード番号を比較
し、自ノードのノード番号の方が若い場合に、前記停止
手段により自スレッドの停止を行なうことを特徴とす
る。
According to a first aspect of the present invention, there is provided a distributed memory type multiprocessor system in which a plurality of nodes are connected by an interconnection network, and each node has a thread to be processed in parallel. In a memory-type multiprocessor system, the node includes a management process for managing a thread to be processed in parallel,
When a checkpoint request command is input to any of the nodes, the management process of the node with the lowest node number issues a stop request to the thread in the own node, and the thread in the own node stops. After doing
A distributed memo requesting a stop request to a management process of the node having the next node number and waiting until threads of all nodes to be processed in parallel are stopped.
How to Stop Processes in Re-type Multiprocessor System
Wherein the thread transmits data between nodes.
Inter-node synchronization means for synchronizing reception processing, and stop
A key that stores information indicating whether a request has been issued.
Check point information and data transmission to other nodes.
Transmitting / receiving means for receiving, and the management process of the own node.
After notifying that the thread has stopped,
Stopping means for stopping red, and
In the data transmission and reception between nodes,
If the reception synchronization process times out,
Stop request issued based on checkpoint information
Check if a stop request has been issued.
Compare the node number of the node with the node number of the partner node
If the own node has a lower node number,
Stopping own thread by means
You.

【0010】本発明の第2の分散メモリ型マルチプロセ
ッサシステムにおけるプロセス停止方式は、第1の分散
メモリ型マルチプロセッサシステムにおけるプロセス停
止方式において、前記管理プロセスが、停止要求に基づ
いて自ノード内のスレッドに対して停止要求を行なうノ
ード内停止要求手段と、自ノード内の全スレッドが停止
するまで待ち合わせるノード内停止待ち合わせ手段と、
自ノード内の全スレッドから停止通知を受けた場合に、
次のノード番号のノードの管理プロセスに対して停止要
求を行なうノード間停止要求手段とを備えることを特徴
とする。
[0010] A second aspect of the present invention is a process stop method in the first distributed memory type multiprocessor system, wherein the management process is executed in a local node based on a stop request. In-node stop request means for issuing a stop request to a thread, and in-node stop waiting means for waiting until all threads in the own node are stopped,
When a stop notification is received from all threads in the own node,
Inter-node stop request means for issuing a stop request to the management process of the node having the next node number.

【0011】本発明の第3の分散メモリ型マルチプロセ
ッサシステムにおけるプロセス停止方式は、第2の分散
メモリ型マルチプロセッサシステムにおけるプロセス停
止方式において、前記管理プロセスが、全ノードのスレ
ッドが停止するまで待ち合わせるノード間停止待ち合わ
せ手段と、全ノードのスレッドが停止した後、各ノード
に全ノードのスレッドが停止したことを通知するノード
間停止手段とを備えることを特徴とする。
According to a third aspect of the present invention, in the process stop method of the second distributed memory type multiprocessor system, the management process waits until threads of all nodes stop. It is characterized by comprising inter-node stop waiting means and inter-node stop means for notifying each node that threads of all nodes have stopped after threads of all nodes have stopped.

【0012】本発明の第4の分散メモリ型マルチプロセ
ッサシステムにおけるプロセス停止方式は、第2の分散
メモリ型マルチプロセッサシステムにおけるプロセス停
止方式において、前記管理プロセスが、前記並列処理プ
ロセスのスレッドが存在する前記ノードのノード番号を
記述したノード番号表を備え、前記管理プロセスの前記
ノード間停止要求手段は、前記ノード番号表によって次
に若いノード番号のノードの管理プロセスに対して停止
要求を行なうことを特徴とする。
According to a fourth aspect of the present invention, there is provided a process stop method in the distributed memory type multiprocessor system, wherein the management process is a thread of the parallel processing process in the process stop method in the second distributed memory type multiprocessor system. A node number table describing a node number of the node, wherein the inter-node stop request means of the management process issues a stop request to a management process of a node having a next lower node number according to the node number table. Features.

【0013】本発明の第5の分散メモリ型マルチプロセ
ッサシステムにおけるプロセス停止方式は、第3の分散
メモリ型マルチプロセッサシステムにおけるプロセス停
止方式において、前記管理プロセスが、前記並列処理プ
ロセスのスレッドが存在する前記ノードのノード番号を
記述したノード番号表を備え、前記スレッドの前記ノー
ド間同期手段は、前記ノード番号表によって自ノードの
ノード番号と相手ノードのノード番号を比較することを
特徴とする。
According to a fifth aspect of the present invention, there is provided a process stop method in the distributed memory type multiprocessor system, wherein the management process is a thread of the parallel processing process in the process stop method in the third distributed memory type multiprocessor system. A node number table describing the node number of the node is provided, and the inter-node synchronization means of the thread compares the node number of its own node with the node number of the partner node according to the node number table.

【0014】本発明の第6の分散メモリ型マルチプロセ
ッサシステムにおけるプロセス停止方式は、第3の分散
メモリ型マルチプロセッサシステムにおけるプロセス停
止方式において、ノード間のデータの送受信において、
送信終了の情報と受信終了の情報をセットするノード間
通信情報を備え、前記ノード間同期手段は、所定時間内
に前記ノード間通信情報に前記送信終了及び受信終了の
情報がセットされている場合に同期を確立し、所定時間
内にセットされない場合に、前記チェックポイント情報
に基づいて停止要求が発行されているかどうかを調べ、
停止要求が発行されていれば、自ノードのノード番号と
相手ノードのノード番号を比較し、自ノードのノード番
号の方が若い場合に、前記停止手段により自スレッドの
停止を行なうことを特徴とする。
According to a sixth aspect of the present invention, there is provided a process stop method in a distributed memory type multiprocessor system, wherein the process stop method in the third distributed memory type multiprocessor system comprises the steps of:
The inter-node communication means for setting the information of the transmission end and the information of the reception end, wherein the inter-node synchronization means sets the transmission end and the reception end information in the inter-node communication information within a predetermined time. Establish synchronization, if not set within a predetermined time, check whether a stop request has been issued based on the checkpoint information,
If a stop request has been issued, the node number of the own node and the node number of the partner node are compared, and if the node number of the own node is smaller, the own means stops the own thread. I do.

【0015】[0015]

【0016】[0016]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して詳細に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0017】本発明の対象となるハードウェアは、1つ
のプロセッサと1つのローカルメモリの組を1つのノー
ドとして、または複数のプロセッサが1つのメモリを共
有するという共有メモリ型マルチプロセッサを1つのノ
ードとして、複数のノードが相互結合網により結合され
ている分散メモリ型マルチプロセッサシステムである。
また、データの送受信時の同期または排他制御のため
に、各ノードから参照できるノード間通信領域を持つこ
とを前提とする。
The hardware which is the object of the present invention is a single memory and a shared memory multiprocessor in which a plurality of processors share one memory as one node. Is a distributed memory type multiprocessor system in which a plurality of nodes are connected by an interconnection network.
In addition, it is assumed that there is an inter-node communication area that can be referred to from each node for synchronization or exclusive control during data transmission / reception.

【0018】図1に、本発明の実施の形態による分散メ
モリ型マルチプロセッサシステムの全体構成を示す。図
1において、本システムは、マスタースレッドが存在す
るノードであるマスターノード10と、マスタースレッ
ドが存在するノード以外のスレーブスレッドのみが存在
するスレーブノード20と、ノード間通信領域30を備
えて構成される。
FIG. 1 shows an overall configuration of a distributed memory type multiprocessor system according to an embodiment of the present invention. In FIG. 1, the system includes a master node 10 that is a node where a master thread exists, a slave node 20 where only slave threads other than the node where the master thread exists, and an inter-node communication area 30. You.

【0019】マスターノード10は、マスタースレッド
50aと、マスターノード内のスレッドを管理する管理
プロセス60aを含む。
The master node 10 includes a master thread 50a and a management process 60a for managing threads in the master node.

【0020】スレーブノード20は、スレーブスレッド
50bと、スレーブノード内のスレッドを管理する管理
プロセス60bを含む。
The slave node 20 includes a slave thread 50b and a management process 60b for managing threads in the slave node.

【0021】マスターノード10及びスレーブノード2
0のマスタースレッド50a及びスレーブスレッド50
bは、それぞれノード間でのデータの送受信を行なう送
信手段50−1及び受信手段50−2と、データの送受
信時に送信手段50−1及び受信手段50−2から使わ
れる、相手ノードとの同期をとるためのノード間同期手
段50−3と、安全な停止位置であると判断された時
に、管理プロセス60a、60bに停止通知を行なった
後、スレッドを停止させる停止手段50−4と、チェッ
クポイント情報50−5を含む。
Master node 10 and slave node 2
0 master thread 50a and slave thread 50
b denotes a transmission unit 50-1 and a reception unit 50-2 for transmitting and receiving data between nodes, and a synchronization between the transmission unit 50-1 and the reception unit 50-2 used for transmission / reception of data. And a stopping means 50-4 for stopping the thread after notifying the management processes 60a and 60b when it is determined that the position is a safe stopping position. Point information 50-5 is included.

【0022】マスターノード10及びスレーブノード2
0内の管理プロセス60a、60bは、それぞれ自ノー
ドに停止要求が発行された時に、管理するスレッドに対
してチェックポイント要求フラグを設定することによっ
て停止要求を行なうノード内停止要求手段60−1と、
停止要求を行なったスレッドが停止するまで待ち合わせ
るノード内停止待ち合わせ手段60−2と、管理プロセ
ス60a、60bが管理するスレッドから停止通知を受
けた後、ノード番号が次のノードの管理プロセスに対し
て停止要求が発行されたことを通知するノード間停止要
求手段60−3と、全ノード内の停止対象のスレッドが
停止するまで待ち合わせるノード間停止待ち合わせ手段
60−4と、全ノード内の停止対象のスレッドが停止し
た後、各ノードの管理プロセスに全ノードが停止したこ
とを通知するノード間停止手段60−5と、並列処理プ
ロセスの起動時に、ユーザによって指定された最大使用
ノード数に基づいて作られる、並列処理プロセスのスレ
ッドが存在するノードのノード番号を格納するノード番
号表60−6を含む。
Master node 10 and slave node 2
0, the management processes 60a and 60b each execute a stop request by setting a checkpoint request flag for a managing thread when a stop request is issued to the own node. ,
After receiving the stop notification from the in-node stop waiting means 60-2 which waits until the thread which has issued the stop request and the threads managed by the management processes 60a and 60b, the node number is changed to the management process of the next node. An inter-node stop requesting unit 60-3 for notifying that a stop request has been issued, an inter-node stop waiting unit 60-4 for waiting until threads to be stopped in all nodes are stopped, After the thread has stopped, the inter-node stopping means 60-5 for notifying the management process of each node that all nodes have stopped, and a process based on the maximum number of used nodes specified by the user when starting the parallel processing process. And a node number table 60-6 storing the node number of the node where the thread of the parallel processing process exists. .

【0023】ノード間通信領域30は、送信手段50−
1及び受信手段50−2によるノード間のデータ送受信
において、ノード間同期手段50−3が両者の同期をと
るために用いるノード間通信情報30−1を含む。
The inter-node communication area 30 includes a transmitting unit 50-
1 and the receiving means 50-2 transmit and receive data between nodes, and the inter-node synchronizing means 50-3 includes inter-node communication information 30-1 used for synchronizing the two.

【0024】本発明の実施形態の特徴は、マスターノー
ド10とスレーブノード20間でデータの送受信を行な
っている時に停止要求が発行された場合、送信手段50
−1及び受信手段50−2から使われるノード間同期手
段50−3が、相手ノードが既にチェックポイントによ
る停止要求により停止しているかどうかを自ノード内で
判断できるように構成したことにある。
A feature of the embodiment of the present invention is that, when a stop request is issued during data transmission / reception between the master node 10 and the slave node 20, the transmitting means 50
-1 and the inter-node synchronizing means 50-3 used by the receiving means 50-2 are configured to be able to determine in their own node whether or not the partner node has already been stopped by a stop request by a checkpoint.

【0025】次に、図1及び図2を参照して、上述のよ
うに構成される本発明の実施の形態の動作について説明
する。
Next, the operation of the embodiment of the present invention configured as described above will be described with reference to FIGS.

【0026】図1の構成では、スレーブノード20が1
つの場合を示しているが、実際には複数のスレーブノー
ドが存在する場合も想定している。
In the configuration shown in FIG.
However, it is assumed that there are actually a plurality of slave nodes.

【0027】並列処理プロセスの起動時において、最初
に、現在使用できる最も若い番号のノードをマスターノ
ード10とし、このマスターノード10に管理プロセス
60aが生成される。この管理プロセス60aは、ユー
ザによって指定された最大使用ノード数に基づいて、ス
レーブノードとして使用する全てのノードを決定し、そ
れらのノード及びマスターノード10のノード番号をノ
ード番号表60−6に記述する。
At the time of starting the parallel processing process, first, the node with the lowest number that can be currently used is set as the master node 10, and the management process 60a is generated in this master node 10. The management process 60a determines all nodes to be used as slave nodes based on the maximum number of nodes used by the user, and describes the node numbers of these nodes and the master node 10 in the node number table 60-6. I do.

【0028】次に、マスターノード10内の管理プロセ
ス60aは、ノード番号表60−6に記載されているス
レーブノード20内の管理プロセス60bとの接続を確
立し、ノード番号表60−6をスレーブノード20の管
理プロセス60bのノード番号表60−6へ複写する。
そして、マスターノード10及びスレーブノード20の
管理プロセス60a、60bによって、並列処理プロセ
スのマスタースレッド50a、スレーブスレッド50b
がそれぞれ生成され、ノード間でのデータの送受信を行
ないながら計算を進める。
Next, the management process 60a in the master node 10 establishes a connection with the management process 60b in the slave node 20 described in the node number table 60-6, and sets the node number table 60-6 as a slave. It is copied to the node number table 60-6 of the management process 60b of the node 20.
Then, the master thread 50a and the slave thread 50b of the parallel processing process are managed by the management processes 60a and 60b of the master node 10 and the slave node 20.
Are generated, and the calculation proceeds while transmitting and receiving data between the nodes.

【0029】その後、利用者から入力されたチェックポ
イント要求コマンドにより、この並列処理プロセスにチ
ェックポイントが要求されると、チェックポイントの処
理が開始される。
Thereafter, when a checkpoint is requested for this parallel processing by a checkpoint request command input by the user, the checkpoint processing is started.

【0030】図4を参照すると、チェックポイント要求
コマンドが利用者によりノードiに入力されると、その
チェックポイント要求コマンドはそのチェックポイント
要求コマンドを送る相手のマスターノード0を決定する
ために、ノードiのノード間停止要求手段60−3に入
力される。ノードiのノード間停止要求手段60−3
は、ノード番号表60−6を参照してマスターノード0
の管理プロセスへ、チェックポイント要求コマンドを指
示する信号を送る。ノードiは、並列処理システムにお
けるプロセス群を常に監視する特別ノードである。ノー
ドiは、マスターノード0と区別されてもされなくても
良い。ノードiがマスターノード0と同一の場合には、
チェックポイント要求コマンドは利用者によりマスター
ノード0へ入力される。
Referring to FIG. 4, when a checkpoint request command is input to the node i by the user, the checkpoint request command is used to determine the master node 0 to which the checkpoint request command is sent. It is inputted to the inter-node stop request means 60-3 of i. Inter-node stop request means 60-3 of node i
Is the master node 0 with reference to the node number table 60-6.
A signal instructing a checkpoint request command is sent to the management process. The node i is a special node that constantly monitors a process group in the parallel processing system. Node i may or may not be distinguished from master node 0. If node i is the same as master node 0,
The checkpoint request command is input to the master node 0 by the user.

【0031】マスターノード10の管理プロセス60a
のノード間停止要求手段60−3を介してチェックポイ
ントによる停止要求が通知されると、この管理プロセス
60aは、ノード内停止要求手段60−1によりマスタ
ースレッド50aに対して停止要求を行ない、ノード内
停止待ち合わせ手段60−2により、マスタースレッド
50aが停止するまで待ち合わせる。
Management process 60a of master node 10
When the stop request by the check point is notified via the inter-node stop request unit 60-3, the management process 60a issues a stop request to the master thread 50a by the intra-node stop request unit 60-1, and It waits until the master thread 50a stops by the internal stop waiting means 60-2.

【0032】ノード内停止要求手段60−1からの停止
要求を受けたマスタースレッド50aは、他のノードと
データの送受信中でなければ、停止要求を認識した時点
(例えば、割り込み処理の終了時)で、停止手段50−
4により管理プロセス60aに対し停止通知を行なって
停止する。
The master thread 50a, which has received the stop request from the intra-node stop request unit 60-1, recognizes the stop request unless data is being transmitted / received to / from another node (for example, at the end of interrupt processing). Then, the stopping means 50-
4, a stop notification is sent to the management process 60a, and the process is stopped.

【0033】この後、停止要求を受けたマスターノード
10の管理プロセス60aは、ノード間停止要求手段6
0−3を用いて、ノード番号表60−6からマスターノ
ード10の次に若いノード番号のノードがスレーブノー
ド20であることを調べ、スレーブノード20の管理プ
ロセス60bに対して停止要求を行なう。そして、マス
ターノード10の管理プロセス60aは、ノード間停止
待ち合わせ手段60−4により、チェックポイント対象
の並列処理プロセス内の全ノードのスレッドが停止する
まで待ち合わせる。
Thereafter, the management process 60a of the master node 10 which has received the stop request becomes the inter-node stop request means 6
Using 0-3, it is checked from the node number table 60-6 that the node having the next lowest node number after the master node 10 is the slave node 20, and a stop request is issued to the management process 60b of the slave node 20. Then, the management process 60a of the master node 10 waits until the threads of all the nodes in the checkpoint target parallel processing process are stopped by the inter-node stop waiting means 60-4.

【0034】マスターノード10から停止要求を受けた
スレーブノード20の管理プロセス60bは、ノード内
停止要求手段60−1を用いてスレーブノード20内の
スレーブスレッド50bに対して停止要求を行ない、ノ
ード内停止待ち合わせ手段60−2により、スレーブス
レッド50bが停止するまで待ち合わせる。
The management process 60b of the slave node 20, which has received the stop request from the master node 10, issues a stop request to the slave thread 50b in the slave node 20 by using the in-node stop request means 60-1. The stop waiting means 60-2 waits until the slave thread 50b stops.

【0035】この時、スレーブスレッド50bが、他の
ノードとデータの送受信中でなければ、マスタースレッ
ド50aと同様に、上記停止要求を認識した時点で、停
止手段50−4により、管理プロセス60bに対し停止
通知を行なって停止する。
At this time, if the slave thread 50b is not transmitting / receiving data to / from another node, the stopping means 50-4 recognizes the management process 60b by the stopping means 50-4 at the time of recognizing the stop request, similarly to the master thread 50a. On the other hand, a stop notification is issued and the operation is stopped.

【0036】次に、上記スレーブスレッド50bが、デ
ータの送受信中の場合について、説明する。
Next, a case where the slave thread 50b is transmitting and receiving data will be described.

【0037】図2は、マスタースレッド50aとスレー
ブスレッド50bがデータの送受信を行なっている場合
であって、マスタースレッド50aは、受信手段50−
2により受信処理を始める前に既に停止要求を受けて停
止中で、スレーブスレッド50bは、停止要求を受ける
前に送信手段50−1により送信処理を開始したが、マ
スタースレッド50aが既に停止しているので、送信処
理を終わることができない場合の動作の一例を示してい
る。
FIG. 2 shows a case where the master thread 50a and the slave thread 50b are transmitting and receiving data.
The slave thread 50b has already stopped receiving the stop request before starting the receiving process by the step 2, and the slave thread 50b has started the transmission process by the transmitting means 50-1 before receiving the stop request, but the master thread 50a has already stopped and has stopped. Therefore, an example of the operation when the transmission process cannot be completed is shown.

【0038】データの送受信中のスレッドは、ノード間
の同期をとるために、ノード間同期手段50−3によ
り、あらかじめ設定された一定時間のループをしながら
相手ノードのスレッドが、送信手段50−1または受信
手段50−2によりデータの送受信処理を始めたかどう
かをノード間通信情報30−1内のフラグを繰り返し参
照して調べる。
In order to synchronize the nodes during transmission and reception of data, the inter-node synchronization means 50-3 causes the thread of the partner node to execute a loop for a predetermined period of time while the thread of the partner node transmits the data to the transmission means 50-. 1 or whether the reception means 50-2 has started data transmission / reception processing is checked by repeatedly referring to the flag in the inter-node communication information 30-1.

【0039】このループ中にノード間の同期がとれたこ
とが確認できた場合は、送信手段50−1または受信手
段50−2によるデータの送受信が終わった時点で、停
止手段50−4により、スレーブノード20の管理プロ
セス60bに停止通知を行ない停止する。
When it is confirmed that the synchronization between the nodes has been achieved during this loop, when the transmission / reception of data by the transmitting means 50-1 or the receiving means 50-2 is completed, the stopping means 50-4 causes A stop notification is sent to the management process 60b of the slave node 20 to stop.

【0040】しかし、この一定時間のループ中にノード
間の同期がとれず、タイムオーバーになることがある。
このため、ノード間同期手段50−3では、図2のよう
に相手側のノード(マスターノード10)のノード番号
が自ノード(スレーブノード20)のノード番号より若
い場合、相手側のノードのスレッドは停止要求により既
に停止している可能性があるので、停止要求が発行され
ているかどうかを確認し、発行されている場合は、デー
タの送受信処理内で、停止手段50−4により、スレー
ブノード20の管理プロセス60bに停止通知を行ない
停止する。
However, during this fixed time loop, the nodes may not be synchronized with each other, resulting in a time over.
Therefore, if the node number of the partner node (master node 10) is smaller than the node number of its own node (slave node 20) as shown in FIG. May have already been stopped by the stop request, it is checked whether or not the stop request has been issued. A stop notification is sent to the 20 management processes 60b to stop.

【0041】相手側のノードのノード番号より自ノード
のノード番号の方が若い場合は、相手ノードのスレッド
が停止している可能性はないので、データの送受信処理
内では停止せず、相手ノードのスレッドとの同期がとれ
るまでさらに待ち合わせる。そして、送信手段50−1
または受信手段50−2によるデータの送受信処理が終
了した時点で、停止手段50−4により、スレーブノー
ド20の管理プロセス60bに停止通知を行ない停止す
る。
If the node number of the own node is smaller than the node number of the partner node, there is no possibility that the thread of the partner node has stopped. Wait for more threads to synchronize. And transmitting means 50-1
Alternatively, when the data transmission / reception processing by the receiving unit 50-2 ends, the stop unit 50-4 sends a stop notification to the management process 60b of the slave node 20 and stops.

【0042】以上のどれかの処理によって、停止通知を
受けたスレーブスレッド50bの管理プロセス60b
は、ノード番号表60−6を参照して、次のスレーブス
レッドがある場合は、ノード間停止要求手段60−3に
より、次に若いノード番号のノードの管理プロセスに対
して、さらに停止要求を行ない、ノード間停止待ち合わ
せ手段60−4により、チェックポイント対象プロセス
内の全ノードのスレッドが停止するまで待ち合わせる。
The management process 60b of the slave thread 50b having received the stop notification by any of the above processes
Referring to the node number table 60-6, if there is a next slave thread, the inter-node stop request unit 60-3 issues a further stop request to the management process of the node with the next lowest node number. The process waits until threads of all nodes in the checkpoint target process are stopped by the inter-node stop waiting means 60-4.

【0043】次のスレーブスレッドがない場合は、スレ
ーブノード20の管理プロセス60bが、マスターノー
ド10の管理プロセス50aにノード間停止通知手段6
0−5により、全ノードのスレッドが停止したことを通
知する。さらに、マスターノード20から順次全ノード
にノード間停止通知手段60−5により、全ノードのス
レッドが停止したことを通知する。
When there is no next slave thread, the management process 60b of the slave node 20 sends the inter-node stop notification means 6 to the management process 50a of the master node 10.
By 0-5, it notifies that threads of all nodes have stopped. Further, the master node 20 sequentially notifies all the nodes that the threads of all the nodes have been stopped by the inter-node stop notification unit 60-5.

【0044】これによって、各マスターノード10及び
スレーブノード20の管理プロセス60a、60bは、
リスタートファイルの作成処理に移ることができる。
Thus, the management processes 60a, 60b of each master node 10 and slave node 20
The process can proceed to the creation of a restart file.

【0045】リスタート時の処理については、上記の処
理によって、チェックポイントの停止時にノード間での
同期のずれが生じていないことが保証されているので、
例えば、特開平8−263317号公報のような分散メ
モリ型マルチプロセッサシステムを対象としないチェッ
クポイント/リスタートの処理方式から、容易に実現可
能である。つまり、マスターノード10の管理プロセス
60aがスレーブノード20の管理プロセス60bとの
接続を確立し、その管理プロセスへリスタート要求が発
行されたことを通知する。そして、各ノード内の管理プ
ロセスは、特開平8−263317号公報に記述された
りスタートの処理方式をノード毎に適用し、スレーブノ
ード20の管理プロセス60bは、管理するノードのり
スタートが終了した時点で、マスターノード10の管理
プロセス60aへ通知することにより実現できる。
Regarding the processing at the time of restart, the above processing guarantees that no synchronization deviation occurs between nodes when the checkpoint is stopped.
For example, a checkpoint / restart processing method which does not target a distributed memory type multiprocessor system as disclosed in Japanese Patent Laid-Open No. 8-263317 can be easily realized. That is, the management process 60a of the master node 10 establishes a connection with the management process 60b of the slave node 20, and notifies the management process that a restart request has been issued. The management process in each node is described in Japanese Patent Application Laid-Open No. 8-263317 or a start processing method is applied to each node. The management process 60b of the slave node 20 determines when the start of node management to be managed ends. Thus, it can be realized by notifying the management process 60a of the master node 10.

【0046】図3は、送信手段50−1及び受信手段5
0−2によるデータの送受信処理で使用されるノード間
同期手段50−3の処理内容を説明するフローチャート
である。
FIG. 3 shows transmission means 50-1 and reception means 5
It is a flowchart explaining the processing content of the inter-node synchronization means 50-3 used in the data transmission / reception processing by 0-2.

【0047】チェックポイント要求が発行されていな
い、通常の並列処理プロセスの処理ににおけるデータの
送受信処理では、図3に従って以下のような処理が行な
われる。
In a data transmission / reception process in a normal parallel processing process in which a checkpoint request has not been issued, the following process is performed according to FIG.

【0048】送信側のノードでは、送信手段50−1か
らノード間同期手段50−3によって、ノード間通信情
報30−1に送信データが用意できたことを示すフラグ
をセットし、同時にノード間通信情報30−1を参照し
て(ステップ301)、受信側ノードによって受信終了
フラグがセットされているかどうかをチェックする(ス
テップ302)。
In the transmitting node, the transmitting means 50-1 to the inter-node synchronizing means 50-3 set a flag indicating that the transmission data has been prepared in the inter-node communication information 30-1. With reference to the information 30-1 (step 301), it is checked whether or not the reception end flag is set by the receiving node (step 302).

【0049】受信終了フラグがセットされていない場合
は、受信側のノードとの同期がまだとれていないので、
一定の時間が経過してタイムオーバーになっているかど
うかを判定し(ステップ303)、タイムオーバーにな
っていなければ、再びノード間通信情報30−1を参照
して、ノード間の同期が取れるまで、ステップ301〜
303の処理を繰り返すことにより待ち合わせる。
If the reception end flag has not been set, since synchronization with the receiving node has not yet been achieved,
It is determined whether or not the time is over after a certain time has elapsed (step 303). If the time is not over, the process returns to the inter-node communication information 30-1 until the nodes are synchronized. 301-
The process waits by repeating the process of step 303.

【0050】受信側のノードにおいては、受信手段50
−2からノード間同期手段50−3によって、ノード間
通信情報30−1を参照して(ステップ301)、送信
データが用意できたことを示すフラグがセットされてい
るかどうかをチェックする(ステップ302)。フラグ
がセットされていない場合は、送信側のノードと同様
に、送信側との同期がまだとれていないので、一定の時
間が経過してタイムオーバーになっているかどうかを判
定し(ステップ303)、タイムオーバーになっていな
ければ、再びノード間通信情報30−1を参照して、同
期が取れるまで、ステップ301〜303の処理を繰り
返して待ち合わせる。
In the receiving node, the receiving means 50
-2, the inter-node synchronization means 50-3 refers to the inter-node communication information 30-1 (step 301) to check whether a flag indicating that the transmission data is ready is set (step 302). ). If the flag has not been set, as with the node on the transmitting side, since synchronization with the transmitting side has not yet been established, it is determined whether or not time has passed after a certain period of time has elapsed (step 303). If the time is not over, the processing of steps 301 to 303 is repeated and waited until the synchronization is obtained by referring to the inter-node communication information 30-1 again.

【0051】次に、送信側または受信側のどちらかのノ
ードが、同期待ちで上記のステップ301〜303の処
理を繰り返している時に、チェックポイントの停止要求
が発行された場合は、以下ような処理を行なう。例え
ば、図2に示したように、受信側のマスタースレッド5
0aが、受信手段50−2により受信処理を始める前に
チェックポイントにより停止した場合、送信側のスレー
ブスレッド50bのノードは、ステップ301〜303
の処理を繰り返しているうちにタイムオーバーになる。
Next, when a request to stop a checkpoint is issued while either the node on the transmission side or the node on the reception side repeats the processing of steps 301 to 303 while waiting for synchronization, the following occurs. Perform processing. For example, as shown in FIG.
If 0a is stopped by the checkpoint before the receiving unit 50-2 starts the receiving process, the node of the slave thread 50b on the transmitting side performs steps 301 to 303.
The time runs out while repeating the process.

【0052】この後、スレーブノード20の管理プロセ
ス60bからノード内停止要求手段60−1によって、
チェックポイント要求フラグがチェックポイント情報5
0−5に設定されているかどうかを調べる(ステップ3
04)。チェックポイント要求フラグが設定されていれ
ば、ノード番号表60−6を参照して受信側ノードのノ
ード番号と送信側ノードのノード番号を比較し(ステッ
プ305)、送信側ノードのノード番号の方が若い場合
は、既にチェックポイントにより停止していると判断で
きるので、停止手段50−4によりスレーブノード20
の管理プロセス60bに通知を行ない停止する(ステッ
プ306)。
Thereafter, from the management process 60b of the slave node 20 by the intra-node stop requesting means 60-1,
Checkpoint request flag is checkpoint information 5
It is checked whether 0-5 has been set (step 3
04). If the checkpoint request flag is set, the node number of the receiving node is compared with the node number of the transmitting node with reference to the node number table 60-6 (step 305). Is younger, it can be determined that the slave node 20 has already been stopped at the checkpoint.
The process is notified to the management process 60b and stopped (step 306).

【0053】上記の実施の形態では、マスタースレッド
10が存在するノードを最も若いノード番号に配置し、
若いノード番号のノードから順に停止要求行なうので、
現在停止要求が発行されているノードのスレッドは、ど
のノードのスレッドが既に停止していて、どのノードが
停止していないかを知ることができる。このため、適切
な停止位置であるかどうかを自ノード内で判断すること
ができる。
In the above embodiment, the node where the master thread 10 exists is located at the lowest node number,
Since stop requests are issued in order from the node with the youngest node number,
The thread of the node to which the stop request is currently issued can know which thread of the node has already stopped and which node has not stopped. For this reason, it can be determined within the own node whether or not the stop position is appropriate.

【実施例】次に、本発明の具体的な実施例について詳細
に説明する。
Next, specific examples of the present invention will be described in detail.

【0054】この実施例では、マスターノード10がノ
ード番号0、スレーブノード20がノード番号1にそれ
ぞれ割り当てられているものとする。
In this embodiment, it is assumed that the master node 10 is assigned to the node number 0 and the slave node 20 is assigned to the node number 1.

【0055】図2は、マスターノード10のマスタース
レッド50aとスレーブノード20のスレーブスレッド
50bがデータの送受信をしようとしている場合で、マ
スタースレッド50aは、受信手段50−2により受信
処理を始める前に既に停止要求を受けて停止中で、スレ
ーブスレッド50bは、停止要求を受ける前に送信手段
50−1により送信処理を開始したが、マスタースレッ
ド50aが既に停止しているので、送信処理を終わるこ
とができない場合の動作例を示している。
FIG. 2 shows a case where the master thread 50a of the master node 10 and the slave thread 50b of the slave node 20 are going to transmit and receive data. The slave thread 50b is already stopped after receiving the stop request, and the transmission process is started by the transmission unit 50-1 before receiving the stop request. However, since the master thread 50a has already stopped, the slave thread 50b ends the transmission process. It shows an operation example in the case where it cannot be performed.

【0056】この場合、スレーブスレッド50bは、ノ
ード間の同期をとるために、ノード間同期手段50−3
により、あらかじめ設定された一定時間のループをしな
がらマスタースレッド50aが、受信手段50−2によ
りデータの受信処理を始めたかどうかをノード間通信情
報30−1内のフラグを繰り返し参照して調べる。
In this case, the slave thread 50b uses the inter-node synchronization means 50-3 to synchronize the nodes.
Thus, the master thread 50a repeatedly checks the flag in the inter-node communication information 30-1 to determine whether or not the receiving means 50-2 has started the data receiving process while performing a loop for a predetermined period of time.

【0057】しかし、マスタースレッド50aは、既に
チェックポイントの停止要求により停止しており、受信
処理を始めることはない。このため、図3に示したよう
に、ステップ301〜303のステップを繰り返してい
る間にタイムオーバーを起こして、ステップ304へ進
み、スレーブスレッド50b内のチェックポイント情報
50−5を参照して、チェックポイント要求フラグが設
定されていることを確認する。
However, the master thread 50a has already been stopped by a checkpoint stop request, and does not start receiving processing. For this reason, as shown in FIG. 3, a time-out occurs while repeating the steps 301 to 303, and the process proceeds to step 304, where the check is performed by referring to the checkpoint information 50-5 in the slave thread 50b. Check that the point request flag is set.

【0058】次に、ステップ305において、受信側の
ノードであるマスターノード50aはノード番号0、送
信側のノードであるスレーブスノード50bはノード番
号1に割り当てられているので、受信側ノードのノード
番号の方が若いため、スレーブスレッド50bは、マス
ターノード50aは既に停止していると判断し、ステッ
プ309で停止手段50−4によりスレーブスレッド5
0bの管理プロセス60bに停止通知を行ない停止す
る。
Next, in step 305, the master node 50a as the receiving node is assigned the node number 0, and the slave node 50b as the transmitting node is assigned the node number 1. Since the number is younger, the slave thread 50b judges that the master node 50a has already stopped, and in step 309, the stopping means 50-4 stops the slave thread 5a.
0b is notified to the management process 60b and the operation is stopped.

【0059】以上好ましい実施の形態と実施例をあげて
本発明を説明したが、本発明は必ずしも上記実施の形態
及び実施例の内容に限定されるものではない。本発明の
実施の形態では、2ノードで、スレーブスレッドが1ス
レッドの場合の並列処理プロセスについて説明したが、
複数のスレーブノードを有する場合にも適用でき、ノー
ド数の制限はない。
Although the present invention has been described with reference to the preferred embodiments and examples, the present invention is not necessarily limited to the contents of the above embodiments and examples. In the embodiment of the present invention, the parallel processing process in the case of two nodes and one slave thread has been described.
The present invention can be applied to a case having a plurality of slave nodes, and there is no limitation on the number of nodes.

【0060】また、各ノード内のスレッド数について
も、マスターノード、スレーブノード共に複数のスレッ
ドを有する場合にも適用でき、スレッド数に制限はな
い。ただし、管理プロセスは、スレッド数が増加しても
各ノードに1つでよい。この場合、管理プロセスは、そ
のノード内の全てのスレッドから停止手段50−4によ
り、停止通知を受けた後、ノード間停止要求手段60−
3により、次のノードの管理プロセスへ停止通知が発行
されたことを通知する。
The number of threads in each node can be applied to a case where both the master node and the slave node have a plurality of threads, and the number of threads is not limited. However, one management process may be provided for each node even if the number of threads increases. In this case, after receiving the stop notification from all the threads in the node by the stop unit 50-4, the management process starts the inter-node stop request unit 60-
3 notifies the management process of the next node that the stop notification has been issued.

【0061】さらに、ノード間のデータの送受信につい
ても、任意のノード間での送受信中の場合について適用
できる。
Further, the transmission and reception of data between nodes can be applied to the case where transmission and reception are being performed between arbitrary nodes.

【0062】[0062]

【発明の効果】以上説明したように本発明の分散メモリ
型マルチプロセッサシステムにおけるプロセス停止方式
によれば、以下に述べる効果が得られる。
As described above, according to the process stop method in the distributed memory type multiprocessor system of the present invention, the following effects can be obtained.

【0063】第1に、最若番ノードから順に停止処理を
行なうため、データの送受信処理内のノード間同期手段
で、相手ノードが既に停止しているかどうかを通信等の
手段で相手ノードの状態を調べることなく、知ることが
できるので、自ノードが停止できるかどうかを自ノード
内で判断することができるため、多くのノードを有する
分散メモリ型マルチプロセッサシステムにおいて、多く
のスレッドを有する並列処理プロセス内で、データの送
受信を行なっている時にチェックポイントのための停止
要求が発行された場合でも、高々ノード数に比例したオ
ーダーの手間で停止させることができるため、効率的に
停止処理を行なうことができる。
First, in order to perform stop processing sequentially from the youngest node, the inter-node synchronization means in the data transmission / reception processing determines whether or not the other node has already been stopped by means of communication or the like. Can be determined without checking, so that it is possible to judge whether the own node can be stopped or not in the own node. Therefore, in a distributed memory type multiprocessor system having many nodes, parallel processing having many threads Even if a stop request for a checkpoint is issued during data transmission / reception in the process, the stop can be performed with the trouble of the order at most proportional to the number of nodes, so that the stop process is performed efficiently. be able to.

【0064】第2に、チェックポイント要求が発行され
た時のみ、停止処理を含むチェックポイントの処理を行
なうため、分散メモリ型マルチプロセッサシステムにお
いて動作する並列処理プロセスの通常の処理に、チェッ
クポイントのための停止処理が影響を与えることがなく
性能の低下がない。
Second, the checkpoint processing including the stop processing is performed only when the checkpoint request is issued. Therefore, the checkpoint processing is performed in the normal processing of the parallel processing process operating in the distributed memory type multiprocessor system. There is no reduction in performance because the stopping process does not have any effect.

【0065】第3に、チェックポイント要求は、外部コ
マンドによって発行されるため、分散メモリ型マルチプ
ロセッサシステムにおいて動作する並列処理プロセスに
対して、任意の時点でチェックポイント採取を行える。
Third, since a checkpoint request is issued by an external command, a checkpoint can be collected at any time for a parallel processing process operating in a distributed memory type multiprocessor system.

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

【図1】 本発明の実施の形態における分散メモリ型マ
ルチプロセッサシステムの全体構成を示すブロック図で
ある。
FIG. 1 is a block diagram showing an overall configuration of a distributed memory multiprocessor system according to an embodiment of the present invention.

【図2】 本発明の実施の形態におけるノード間のデー
タ送受信中の具体的な操作を説明する図である。
FIG. 2 is a diagram illustrating a specific operation during data transmission and reception between nodes according to the embodiment of the present invention.

【図3】 本発明の実施の形態におけるノード間同期手
段の具体的な処理内容を説明するフローチャートであ
る。
FIG. 3 is a flowchart illustrating specific processing contents of an inter-node synchronization unit according to the embodiment of the present invention.

【図4】 本発明の実施の形態における特別ノードとマ
スターノードとの関係を示すブロック図である。
FIG. 4 is a block diagram illustrating a relationship between a special node and a master node according to the embodiment of the present invention.

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

10 マスターノード 20 スレーブノード 30 ノード間通信領域 30−1 ノード間通信情報 50a マスタースレッド 50b スレーブスレッド 50−1 送信手段 50−2 受信手段 50−3 ノード間同期手段 50−4 停止手段 50−5 チェックポイント情報 60a、60b 管理プロセス 60−1 ノード内停止要求手段 60−2 ノード内停止待ち合わせ手段 60−3 ノード間停止要求手段 60−4 ノード間停止待ち合わせ手段 60−5 ノード間停止通知手段 60−6 ノード番号表 Reference Signs List 10 master node 20 slave node 30 inter-node communication area 30-1 inter-node communication information 50a master thread 50b slave thread 50-1 transmitting means 50-2 receiving means 50-3 inter-node synchronizing means 50-4 stopping means 50-5 check Point information 60a, 60b Management process 60-1 Node stop request means 60-2 Node stop waiting means 60-3 Node stop request means 60-4 Node stop waiting means 60-5 Node stop notification means 60-6 Node number table

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 15/177 681 G06F 9/46 360 ──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 7 , DB name) G06F 15/177 681 G06F 9/46 360

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 複数のノードを相互結合網により結合
し、各ノードに並列処理の対象のスレッドを備える分散
メモリ型マルチプロセッサシステムにおいて、 前記各ノードが並列処理の対象のスレッドを管理する管
理プロセスを備え、 全ノードのいずれかにチェックポイント要求コマンドが
入力された場合に、ノード番号の最も若い前記ノードの
管理プロセスが、自ノード内の前記スレッドに対して停
止要求を行ない、自ノード内のスレッドが停止した後、
次のノード番号を有する前記ノードの管理プロセスに停
止要求を行ない、 並列処理の対象の全ノードのスレッドが停止するまで
ち合わせることを特徴とする分散メモリ型マルチプロセ
ッサシステムにおけるプロセス停止方式であって、 前記スレッドは、 ノード間でのデータの送受信処理の同期をとるためのノ
ード間同期手段と、 停止要求が発行されているかどうかを示す情報を格納す
るチェックポイント情報と、 他のノードに対してデータの送受信を行なう送受信手段
と、 自ノードの前記管理プロセスに対して自スレッドが停止
したことを通知した後自スレッドを停止させる停止手段
とを備え、 前記ノード間同期手段は、 ノード間のデータ送受信において、データ送受信の同期
処理がタイムオーバーになった場合に、前記チェックポ
イント情報に基づいて停止要求が発行されているかどう
かを調べ、停止要求が発行されていれば、自ノードのノ
ード番号と相手ノードのノード番号を比較し、自ノード
のノード番号の方が若い場合に、前記停止手段により自
スレッドの停止を行なうことを特徴とする。
In a distributed memory type multiprocessor system in which a plurality of nodes are connected by an interconnection network and each node has a thread to be processed in parallel, a management process in which each node manages a thread to be processed in parallel When a checkpoint request command is input to any of the nodes, the management process of the node with the smallest node number issues a stop request to the thread in the own node, and After the thread has stopped,
It issues a stop request to the management process of the node having the next node number, and waits until threads of all nodes to be processed in parallel are stopped.
Distributed memory type multi-processor
A process stop method in Ssashisutemu, the thread, Roh for synchronizing transmission and reception of data between the nodes
It stores inter- node synchronization means and information indicating whether a stop request has been issued.
Transmission / reception means for transmitting / receiving checkpoint information and data to / from another node
And the own thread stops for the management process of the own node
Stop means to stop own thread after notifying that
With the door, the node synchronization means, in the data transmission and reception between nodes, the data transmission and reception synchronization
If the process times out,
Whether a stop request has been issued based on the point information
And if a stop request has been issued,
Node number and the node number of the partner node.
If the node number is smaller,
The thread is stopped.
【請求項2】 前記管理プロセスが、 停止要求に基づいて自ノード内のスレッドに対して停止
要求を行なうノード内停止要求手段と、 自ノード内の全スレッドが停止するまで待ち合わせるノ
ード内停止待ち合わせ手段と、 自ノード内の全スレッドから停止通知を受けた場合に、
次のノード番号のノードの管理プロセスに対して停止要
求を行なうノード間停止要求手段とを備えることを特徴
とする請求項1に記載の分散メモリ型マルチプロセッサ
システムにおけるプロセス停止方式。
2. The in-node stop requesting means for the management process issuing a stop request to a thread in the own node based on a stop request, and the in-node stop waiting means for waiting until all the threads in the own node stop. And, when the stop notification is received from all the threads in the own node,
2. A process stop method in a distributed memory type multiprocessor system according to claim 1, further comprising inter-node stop request means for issuing a stop request to a management process of a node having a next node number.
【請求項3】 前記管理プロセスが、 全ノードのスレッドが停止するまで待ち合わせるノード
間停止待ち合わせ手段と、 全ノードのスレッドが停止した後、各ノードに全ノード
のスレッドが停止したことを通知するノード間停止手段
とを備えることを特徴とする請求項2に記載の分散メモ
リ型マルチプロセッサシステムにおけるプロセス停止方
式。
3. The inter-node stop waiting means wherein the management process waits until threads of all nodes are stopped, and a node which notifies each node that the threads of all nodes have stopped after the threads of all nodes have stopped. 3. A process stopping method in a distributed memory type multiprocessor system according to claim 2, further comprising an inter-stop means.
【請求項4】 前記管理プロセスが、 前記並列処理プロセスのスレッドが存在する前記ノード
のノード番号を記述したノード番号表を備え、 前記管理プロセスの前記ノード間停止要求手段は、前記
ノード番号表によって次に若いノード番号のノードの管
理プロセスに対して停止要求を行なうことを特徴とする
請求項2に記載の分散メモリ型マルチプロセッサシステ
ムにおけるプロセス停止方式。
4. The management process includes a node number table describing a node number of the node in which the thread of the parallel processing process exists, and the inter-node stop request unit of the management process uses the node number table. 3. The process stop method in the distributed memory type multiprocessor system according to claim 2, wherein a stop request is issued to a management process of a node having the next lowest node number.
【請求項5】 前記管理プロセスが、 前記並列処理プロセスのスレッドが存在する前記ノード
のノード番号を記述したノード番号表を備え、 前記スレッドの前記ノード間同期手段は、前記ノード番
号表によって自ノードのノード番号と相手ノードのノー
ド番号を比較することを特徴とする請求項3に記載の分
散メモリ型マルチプロセッサシステムにおけるプロセス
停止方式。
5. The management process includes a node number table describing a node number of the node in which the thread of the parallel processing process exists, and the inter-node synchronization unit of the thread includes a self-node according to the node number table. 4. The process stop method in the distributed memory type multiprocessor system according to claim 3 , wherein the node number of the other node is compared with the node number of the partner node.
【請求項6】 ノード間のデータの送受信において、送
信終了の情報と受信終了の情報をセットするノード間通
信情報を備え、 前記ノード間同期手段は、所定時間内に前記ノード間通
信情報に前記送信終了及び受信終了の情報がセットされ
ている場合に同期を確立し、所定時間内にセットされな
い場合に、前記チェックポイント情報に基づいて停止要
求が発行されているかどうかを調べ、停止要求が発行さ
れていれば、自ノードのノード番号と相手ノードのノー
ド番号を比較し、自ノードのノード番号の方が若い場合
に、前記停止手段により自スレッドの停止を行なうこと
を特徴とする請求項3に記載の分散メモリ型マルチプロ
セッサシステムにおけるプロセス停止方式。
6. In the transmission / reception of data between nodes, there is provided inter-node communication information for setting transmission end information and reception end information, and wherein the inter-node synchronization means sets the inter-node communication information within a predetermined time. Synchronization is established when the transmission end and reception end information are set, and when it is not set within a predetermined time, it is checked whether or not a stop request has been issued based on the checkpoint information. 4. The method according to claim 3 , wherein the node number of the own node is compared with the node number of the partner node, and if the node number of the own node is smaller, the own means stops the own thread. 3. A process stop method in the distributed memory type multiprocessor system according to 1.
JP10143780A 1997-05-30 1998-05-26 Process Stop Method for Distributed Memory Multiprocessor System Expired - Fee Related JP3077669B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10143780A JP3077669B2 (en) 1997-05-30 1998-05-26 Process Stop Method for Distributed Memory Multiprocessor System

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP9-158017 1997-05-30
JP15801797 1997-05-30
JP10143780A JP3077669B2 (en) 1997-05-30 1998-05-26 Process Stop Method for Distributed Memory Multiprocessor System

Publications (2)

Publication Number Publication Date
JPH1145229A JPH1145229A (en) 1999-02-16
JP3077669B2 true JP3077669B2 (en) 2000-08-14

Family

ID=26475421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10143780A Expired - Fee Related JP3077669B2 (en) 1997-05-30 1998-05-26 Process Stop Method for Distributed Memory Multiprocessor System

Country Status (1)

Country Link
JP (1) JP3077669B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233805A1 (en) * 2006-04-02 2007-10-04 Mentor Graphics Corp. Distribution of parallel operations
US8468287B2 (en) 2007-08-22 2013-06-18 Nec Corporation Information processor and information processing method
KR101656693B1 (en) * 2014-12-11 2016-09-12 고려대학교 산학협력단 Apparatus and method for simulating computational fluid dynamics using Hadoop platform
JP7066486B2 (en) * 2018-03-30 2022-05-13 キヤノン株式会社 Electronic devices, control methods and programs for electronic devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6385942A (en) * 1986-09-30 1988-04-16 Toshiba Corp Supporting device for debugging of parallel program
JPH02264352A (en) * 1989-04-05 1990-10-29 Hitachi Ltd Multi-processor synchronizing system
JPH02287858A (en) * 1989-04-28 1990-11-27 Toshiba Corp Restarting system for distributed processing system
JP2687860B2 (en) * 1993-12-28 1997-12-08 日本電気株式会社 System start / stop control system for distributed processing system
JP3154942B2 (en) * 1995-09-11 2001-04-09 株式会社東芝 Distributed checkpoint generation method and computer system to which the method is applied

Also Published As

Publication number Publication date
JPH1145229A (en) 1999-02-16

Similar Documents

Publication Publication Date Title
US6192391B1 (en) Process stop method and apparatus for a distributed memory multi-processor system
EP0618532B1 (en) Deadlock detecting device
US6314114B1 (en) Distributed resource management
US5546582A (en) Extension of two phase commit protocol to distributed participants
US5991793A (en) Resource allocation method in computer system
JP2583027B2 (en) Apparatus, system and method for processing transaction messages
US5371886A (en) System for managing unit-of-work identifiers when a chained, distributed, two phase commit transaction system is severed
JPS63238634A (en) Decentralized multiplex processing transaction processing system
JPH04232545A (en) System and apparatus for achieving agreement of writing time for distributed type computer database
JPH0415840A (en) Distributed data base control device
US5553298A (en) Method and apparatus for mutual exclusion in self-directed distributed systems
JP3077669B2 (en) Process Stop Method for Distributed Memory Multiprocessor System
JPH09179816A (en) Data processing system (asymmetry bus arbitration protocol)
JP2701806B2 (en) File synchronization method
JPS58169659A (en) Shared lock control system
JP2001022720A (en) Multiprocessor system
JP2693460B2 (en) Distributed network system
JPS603027A (en) Resource control system of computer processing system
JPH0690703B2 (en) Global detection system
CN117311913A (en) Distributed transaction processing method, device, equipment and storage medium
CN117827385A (en) Transaction management method for database cluster, readable storage medium and computer device
JPH09190417A (en) Multi-processor system
JPH0318958A (en) Multiprocessor system
JPS5975354A (en) Processor device
JP2555386B2 (en) Electronic computer system

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000516

LAPS Cancellation because of no payment of annual fees