JP2000215182A - Cluster type parallel computer system and inter- processor barrier synchronizing method - Google Patents

Cluster type parallel computer system and inter- processor barrier synchronizing method

Info

Publication number
JP2000215182A
JP2000215182A JP11012443A JP1244399A JP2000215182A JP 2000215182 A JP2000215182 A JP 2000215182A JP 11012443 A JP11012443 A JP 11012443A JP 1244399 A JP1244399 A JP 1244399A JP 2000215182 A JP2000215182 A JP 2000215182A
Authority
JP
Japan
Prior art keywords
barrier synchronization
node
barrier
value
synchronization
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.)
Granted
Application number
JP11012443A
Other languages
Japanese (ja)
Other versions
JP3482897B2 (en
Inventor
Hiroyuki Araki
宏之 荒木
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 JP01244399A priority Critical patent/JP3482897B2/en
Publication of JP2000215182A publication Critical patent/JP2000215182A/en
Application granted granted Critical
Publication of JP3482897B2 publication Critical patent/JP3482897B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a barrier synchronizing method for a cluster type parallel computer to attain the effective participation of an optional processor without hierarchizing the intra-node and inter-node networks after discriminating them from each other. SOLUTION: The number of processors 21 which participate in the barrier synchronization is stored as the initial value in an internal register 12 of a barrier synchronization management part 10 of a barrier synchronizing device 1 which is connected to an inter-node network 3. Then the initial value is copied to a synchronizing counter 11, and the value of the counter 11 is subtracted by one for every barrier synchronization request 40 given from each processor 21 participating in the barrier synchronization. When the value of the counter 11 is set a 0, a barrier synchronization formation notification 41 is issued to every node 2. Based on the notification 41, the bit of a state register 22 of the node 2 is inverted and every intra-node processor 21 can detect the formation of the barrier synchronization by comparing the inverted bit value with the bit value set before the request 40 is issued.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、複数プロセッサを
持つノードからなるクラスタ型並列計算機システムに関
し、特に、ノード間にまたがり、かつ、ノード内の複数
のプロセッサが参加するプロセッサ間バリア同期に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cluster-type parallel computer system including nodes having a plurality of processors, and more particularly to a barrier synchronization between processors which spans between nodes and in which a plurality of processors in the nodes participate.

【0002】[0002]

【従来の技術】従来のプロセッサ間バリア同期方法の一
例が、特開平7-234841号公報に記載されている。以下、
同公報を引用しながら、従来の技術について説明する。
2. Description of the Related Art An example of a conventional inter-processor barrier synchronization method is described in Japanese Patent Application Laid-Open No. Hei 7-234841. Less than,
The prior art will be described with reference to the publication.

【0003】並列計算機システムでは、各要素プロセッ
サ同士が一定の処理を終えたことを互いに確認し合いな
がら共同して処理を進めてゆくための同期機構が不可欠
である。この要請に応えるものとして、同期をとるべき
全てのプロセッサがプログラムのバリアと呼ばれる一定
の段階に到達したことが保証されてはじめて、各々次の
段階に進めるようなバリア同期と呼ばれる手法が知られ
ている。
In a parallel computer system, a synchronization mechanism is indispensable for advancing the processing jointly while mutually confirming that each element processor has completed a certain processing. In response to this demand, a technique called barrier synchronization has been known in which all processors to be synchronized have reached a certain stage called a program barrier, and then advance to the next stage. I have.

【0004】同上公報記載の「並列処理計算機」におい
ては、ノード間接続網に接続されたバリア同期制御装置
14(図7に示す)を有し、図8に示すように、各ノードP
内には同期制御部32を有する。バリア同期制御装置14
は、各ノードPの同期制御部32からのバリア同期確認信
号52を入力するANDゲート60およびグループフェーズレ
ジスタ58を持つ。また、各ノードPの同期制御部32は図
9に示すように、プロセッサフェーズレジスタ61および
バリア同期制御装置14内のグループフェーズレジスタ58
からのグループフェーズ信号56が入力する一致判定回路
62を持っている。
In the "parallel processing computer" described in the above publication, a barrier synchronization control device connected to an inter-node connection network
14 (shown in FIG. 7), and as shown in FIG.
A synchronization control unit 32 is provided therein. Barrier synchronization control device 14
Has an AND gate 60 and a group phase register 58 for inputting the barrier synchronization confirmation signal 52 from the synchronization control unit 32 of each node P. As shown in FIG. 9, the synchronization control unit 32 of each node P includes a processor phase register 61 and a group phase register 58 in the barrier synchronization control device 14.
Judgment circuit that receives the group phase signal 56 from
Has 62.

【0005】初期状態においては、各ノードPのプロセ
ッサフェーズレジスタ60が「0」、バリア同期制御装置1
4のグループフェーズレジスタ58が「1」である状態にし
ておく。同期を行なうに当って、同期に参加する各ノー
ドPでは、プログラムがバリアに到達すると命令実行機
構30がプロセッサフェーズレジスタ61のビットを反転し
「1」にする。ビットの反転が起こると、一致判定回路6
2によりグループフェーズレジスタ58とプロセッサフェ
ーズレジスタ61の値との比較結果が「真」となり、バリ
ア同期制御装置14内のANDゲート60に送られる。参加す
る各ノードPからの信号が全て「真」になると、ANDゲ
ート60の出力は「真」になり、バリア成立信号54が
「真」になって各ノードPへ配信されバリア同期が成立
する。
In the initial state, the processor phase register 60 of each node P is set to "0" and the barrier synchronization control device 1
The state of the fourth group phase register 58 is “1”. In performing the synchronization, at each node P participating in the synchronization, when the program reaches the barrier, the instruction execution mechanism 30 inverts the bit of the processor phase register 61 to “1”. When bit inversion occurs, the match determination circuit 6
The result of the comparison between the value of the group phase register 58 and the value of the processor phase register 61 becomes “true”, which is sent to the AND gate 60 in the barrier synchronization control device 14. When all the signals from the participating nodes P become “true”, the output of the AND gate 60 becomes “true”, the barrier establishment signal 54 becomes “true”, and is delivered to each node P to establish barrier synchronization. .

【0006】同時に、バリア同期制御装置14はグループ
フェーズレジスタ58のビットを反転し「0」にする。反
転されたビットは各ノードPの同期制御部32に送られ、
一致判定回路60により、今度はすでに「1」になってい
るプロセッサフェーズレジスタ61の値と不一致が検出さ
れて「偽」がバリア同期制御装置32に送られ、次回のバ
リア同期待ちの状態になる。
At the same time, the barrier synchronization control device 14 inverts the bit of the group phase register 58 to "0". The inverted bit is sent to the synchronization control unit 32 of each node P,
The match determination circuit 60 detects a mismatch with the value of the processor phase register 61 which is already “1”, and sends “false” to the barrier synchronization control device 32 to wait for the next barrier synchronization. .

【0007】なお、図9におけるANDゲート64は、本発
明とは直接に関係しないため、その説明は省略し、一致
判定回路62における出力はそのままANDゲート64の出力
とした。
Since the AND gate 64 in FIG. 9 is not directly related to the present invention, its description is omitted, and the output of the coincidence determining circuit 62 is the output of the AND gate 64 as it is.

【0008】[0008]

【発明が解決しようとする課題】しかしながら、上述し
た従来の技術では、ノード内にバリアに参加する複数の
プロセッサが存在しているときに、バリア同期をノード
内とノード間とに階層化する必要があり処理が複雑にな
るという問題点がある。その理由は、プロセッサフェー
ズレジスタ60を個々の参加プロセッサが更新すると、ビ
ットの反転が複数回起き、バリア同期が破綻するか、あ
るいは最初にビットを反転したプロセッサの状態だけを
もってノード間のバリア同期の成立となり、やはり破綻
するかのいずれかになるためである。
However, in the above-described conventional technique, when a plurality of processors participating in a barrier exist in a node, it is necessary to hierarchically synchronize barrier synchronization between the inside of the node and between the nodes. There is a problem that processing becomes complicated. The reason is that when each participating processor updates the processor phase register 60, bit inversion occurs multiple times and barrier synchronization breaks down, or barrier synchronization between nodes is determined only by the state of the processor that first inverted the bit. This is because it will be established and it will either fail.

【0009】したがって、本発明の目的は、クラスタ間
にまたがるプロセッサ間同期を階層化することなく高速
にできるクラスタ型並列計算機システムおよびプロセッ
サ間バリア同期方法を提供することにある。
It is therefore an object of the present invention to provide a cluster-type parallel computer system and an inter-processor barrier synchronization method which can achieve high-speed inter-processor synchronization across clusters without hierarchization.

【0010】[0010]

【課題を解決するための手段】本発明のクラスタ型並列
計算機システムは、一つ以上のプロセッサを有するノー
ドがノード間ネットワークで結合されているクラスタ型
並列計算機システムにおいて、前記ノード間ネットワー
クに接続されたバリア同期手段に、バリア同期に参加す
るノード内プロセッサ数を記憶する手段と、その値が初
期値としてコピーされ、バリア同期に参加する各プロセ
ッサからのバリア同期要求毎に1つ減算されるカウント
手段と、該カウント値が0になった時点でバリア同期成
立通知を前記ノードに対して発行する手段と、同時に前
記コピーを再び行う手段とを有し、ノード内の各プロセ
ッサは、このバリア同期成立通知により、ノード上の状
態レジスタの割り当てられたビットが反転するのを確認
することによりバリア同期の成立を検出することを特徴
とする。
SUMMARY OF THE INVENTION A cluster type parallel computer system according to the present invention is a cluster type parallel computer system in which nodes having at least one processor are connected by an inter-node network. Means for storing the number of processors in a node participating in barrier synchronization in the barrier synchronization means, and a count that is copied as an initial value and is decremented by one for each barrier synchronization request from each processor participating in barrier synchronization. Means, a means for issuing a barrier synchronization establishment notification to the node when the count value becomes 0, and means for simultaneously performing the copy again. Validation is confirmed by confirming that the assigned bit of the status register on the node is inverted by the notification of establishment. (A) detecting establishment of synchronization.

【0011】また、本発明のプロセッサ間バリア同期方
法は、一つ以上のプロセッサを有するノードがノード間
ネットワークで結合されているクラスタ型並列計算機シ
ステムにおけるプロセッサ間バリア同期方法において、
バリア同期に参加するプロセッサ数を初期値として保持
する手順と、前記初期値をカウント手段にに設定する手
順と、前記バリア同期に参加するプロセッサからの同期
要求に従い前記カウント手段の値を1つ減算する手順
と、前記カウント手段の値が0になった時点でバリア同
期の成立を検出する手順と、バリア同期の成立を前記バ
リア同期に参加するプロセッサを一つ以上含むノードに
通知する手順と、バリア同期の成立に伴い前記カウント
手段に再び前記初期値を設定する手順と、前記バリア同
期に参加するプロセッサが、ノード内の状態レジスタの
値を読み手順と、前記バリア同期成立通知によって前記
状態レジスタの値を更新する手順とを有し、前記プロセ
ッサは該状態レジスタの更新によってバリア同期が成立
したことを検出することを特徴とする。
The present invention also provides a method for synchronizing barriers between processors in a cluster-type parallel computer system in which nodes having one or more processors are connected by an inter-node network.
A procedure for holding the number of processors participating in barrier synchronization as an initial value, a procedure for setting the initial value in the counting means, and subtracting one from the value of the counting means according to a synchronization request from the processor participating in the barrier synchronization. Procedure, a step of detecting the establishment of barrier synchronization when the value of the counting means becomes 0, and a procedure of notifying a node including one or more processors that participate in the barrier synchronization that barrier synchronization has been established, A step of setting the initial value in the counting means again with the establishment of the barrier synchronization, a step of reading the value of a state register in a node by a processor participating in the barrier synchronization, and the state register by the barrier synchronization establishment notification. The processor detects that the barrier synchronization has been established by updating the status register. And features.

【0012】本発明では、図9におけるプロセッサフェ
ーズレジスタ61に相当する部分を、ノード内の各プロセ
ッサは更新せず、図7のバリア同期制御装置14に相当す
る部分が、バリア同期が成立した時点で更新するように
したことを特徴としている。すなわち、バリア同期の要
求は、各プロセッサから直接にバリア同期制御装置に送
られ、ここで同期を判定して、ノード上の値を変更する
ので、ノード内にバリア同期に参加するプロセッサが複
数存在していても、正しくバリア同期を判定できるとい
う効果が得られるのである。
In the present invention, the part corresponding to the processor phase register 61 in FIG. 9 is not updated by each processor in the node, and the part corresponding to the barrier synchronization control device 14 in FIG. It is characterized in that it is updated with. That is, the barrier synchronization request is sent directly from each processor to the barrier synchronization control device, where the synchronization is determined and the value on the node is changed. Therefore, there are a plurality of processors participating in the barrier synchronization in the node. However, the effect that the barrier synchronization can be correctly determined can be obtained.

【0013】[0013]

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

【0014】図1を参照すると、本発明のクラスタ型並
列計算機システムの一実施例が示されている。
Referring to FIG. 1, there is shown an embodiment of a cluster type parallel computer system according to the present invention.

【0015】図1において、バリア同期装置1は、本シ
ステム中に一つ以上存在し、一つ以上バリア同期管理部
10と、ノード間ネットワーク3を介してからバリア同期
要求40を受け付け、また、同期の成立を通知するための
通信装置31と、バリア同期要求40に対応するバリア同期
管理部10を識別し、メッセージを振り分けるID選択部15
とを有する。さらに、各バリア同期管理部10は、バリア
同期用のカウンタ11と、その初期値を保持するレジスタ
12と、バリア同期成立判定部13と、減算器16とを有し、
各ノード2上の各プロセッサ21からのバリア同期要求40
にしたがって、バリア同期の成立を判定し、その同期通
知41を通信装置31を介して行なう。
In FIG. 1, one or more barrier synchronization devices 1 exist in the system, and one or more barrier synchronization management units are provided.
10, the barrier synchronization request 40 is received from the inter-node network 3, and the communication device 31 for notifying the establishment of the synchronization and the barrier synchronization management unit 10 corresponding to the barrier synchronization request 40 are identified, and the message ID selector 15 for sorting
And Further, each barrier synchronization management unit 10 includes a counter 11 for barrier synchronization and a register for holding the initial value.
12, has a barrier synchronization establishment determination unit 13, and a subtractor 16,
Barrier synchronization request 40 from each processor 21 on each node 2
, The establishment of barrier synchronization is determined, and the synchronization notification 41 is made via the communication device 31.

【0016】ノード2は、クラスタ型並列計算機システ
ムの構成要素であり、一つ以上のプロセッサ21を有する
演算用の計算機である。各ノード2は、バリア同期の状
態を得るための状態レジスタ22およびバリア同期装置1
との通信のための通信装置23を含む。
The node 2 is a component of the cluster-type parallel computer system, and is an arithmetic computer having one or more processors 21. Each node 2 includes a state register 22 for obtaining a state of barrier synchronization and a barrier synchronizer 1
Communication device 23 for communication with the

【0017】次に、図1のクラスタ型並列計算機システ
ムにおけるプロセッサ間同期の動作を図2により説明す
る。
Next, the operation of inter-processor synchronization in the cluster type parallel computer system of FIG. 1 will be described with reference to FIG.

【0018】バリア同期に先立ち、バリア同期に参加す
る各プロセッサ21は、バリア同期に参加するプロセッサ
21の同期グループを決定(ステップS200)し、ノード2
上のOSにグループ構成を与え、バリア同期管理部10の一
つを割り当てるように要求する(ステップS201)。
Prior to the barrier synchronization, each processor 21 participating in the barrier synchronization performs
21 synchronization groups are determined (step S200), and the node 2
The group configuration is given to the above OS, and a request is made to allocate one of the barrier synchronization management units 10 (step S201).

【0019】要求を受けたOSは、他ノード2のOSと調停
しバリア同期管理部10の空いているものを確保する(ス
テップS210)。次に、OSはバリア同期用IDを付与し(ス
テップS211)、バリア同期装置1にグループのプロセッ
サ数とバリア同期用IDを通知する(ステップS212)。最
後に、OSは状態レジスタ22の空いている1ビットをバリ
ア同期用IDにマッピングし、バリア同期グループの各プ
ロセッサ21に、割り当てられたバリア同期用IDと状態レ
ジスタ22のビット位置を通知する(ステップS213)。
The OS that has received the request arbitrates with the OS of the other node 2 to secure an available one in the barrier synchronization management unit 10 (step S210). Next, the OS gives the barrier synchronization ID (step S211), and notifies the barrier synchronization device 1 of the number of processors in the group and the barrier synchronization ID (step S212). Lastly, the OS maps one vacant bit of the status register 22 to the barrier synchronization ID, and notifies each processor 21 of the barrier synchronization group of the assigned barrier synchronization ID and the bit position of the status register 22 ( Step S213).

【0020】バリア同期装置1は、要求待ち中(ステッ
プS220)に、OSからの通知を受けると(ステップS212)、
通知されたバリア同期用IDに、空いているバリア同期管
理部10をマッピングし(ステップS221)、マッピングさ
れたバリア同期管理部10に初期値を渡し初期化を要求す
る(ステップS222)。
When the barrier synchronizer 1 receives a notification from the OS (step S212) while waiting for a request (step S220),
The vacant barrier synchronization management unit 10 is mapped to the notified barrier synchronization ID (step S221), and an initial value is passed to the mapped barrier synchronization management unit 10 to request initialization (step S222).

【0021】ステップS221でマッピングされたバリア同
期管理部10は、要求待ち中(ステップS230)に、初期化
要求を受け取ると、レジスタ12に渡された値を設定する
(ステップS231)。バリア同期管理部10は、レジスタ12
に初期値が設定されると、その値をカウンタ11にコピー
し(ステップS232)、バリア同期完了通知待ち(ステッ
プS230)となる。このとき、バリア同期管理部10はクラ
スタ間で一意に決定されねばならないが、状態レジスタ
22のどのビットと、割り当てられたバリア同期管理部10
とがマッピングされているかはノード2毎に異なってい
ても構わない。
When receiving the initialization request while waiting for the request (step S230), the barrier synchronization management unit 10 mapped in step S221 sets the value passed to the register 12 (step S231). The barrier synchronization management unit 10
Is set to the counter 11 (step S232), the process waits for a barrier synchronization completion notification (step S230). At this time, the barrier synchronization management unit 10 must be uniquely determined between clusters, but the status register
22 bits and the assigned barrier synchronization manager 10
Whether or not is mapped may be different for each node 2.

【0022】各プロセッサ21は計算処理(ステップS20
2)が進み同期点に到達したら(ステップS203)、バリ
ア同期の開始にあたって割り当てられた状態レジスタ22
のビット位置からその値を読み出す(ステップS204)。
次に、プロセッサ21は通信装置23を通してバリア同期装
置1にバリア同期要求40のメッセージを送信する(ステ
ップS205)。
Each processor 21 performs a calculation process (step S20).
When 2) advances and reaches the synchronization point (step S203), the state register 22 assigned at the start of barrier synchronization
The value is read from the bit position (step S204).
Next, the processor 21 transmits a message of the barrier synchronization request 40 to the barrier synchronization device 1 through the communication device 23 (Step S205).

【0023】バリア同期装置1では、要求待ち中(ステ
ップS220)に、各プロセッサ21からステップS205で送信
されたバリア同期要求40メッセージが到着すると、ID選
択部15が要求に対応するバリア同期管理部10を選び(ス
テップS223)、バリア同期要求40のメッセージを渡す
(ステップS222)。
In the barrier synchronization device 1, when a barrier synchronization request 40 message transmitted from each processor 21 in step S205 arrives while waiting for a request (step S220), the ID selection unit 15 transmits the barrier synchronization management unit corresponding to the request. 10 is selected (step S223), and the message of the barrier synchronization request 40 is passed (step S222).

【0024】バリア同期管理部10では、要求待ち中(ス
テップS230)に、バリア同期要求40のメッセージが渡さ
れると、減算器16がカウンタ11の値をマイナス1する
(ステップS233)。そして、その結果値が0となったら
バリア同期に参加するすべてのプロセッサ21からバリア
同期要求メッセージが届いたことになるので、バリア同
期が成立する。0でなければ、再びメッセージ待ちの状
態(ステップS230)になる(ステップS234)。
In the barrier synchronization management unit 10, when the message of the barrier synchronization request 40 is passed while waiting for the request (step S230), the subtracter 16 decrements the value of the counter 11 by one (step S233). Then, when the result value becomes 0, it means that the barrier synchronization request message has been received from all the processors 21 participating in the barrier synchronization, and the barrier synchronization is established. If it is not 0, it is in a message waiting state (step S230) again (step S234).

【0025】バリア同期が成立した場合、バリア同期管
理部10は各ノード2に対してバリア同期完了通知41を発
行する(ステップS235)。バリア同期完了通知41を発行
すると同時に、バリア同期管理部10は、レジスタ12の値
をカウンタ11に再びコピーし(ステップS232)、バリア
同期要求待ちの状態(ステップS230)になる。バリア同
期同期完了通知41は、各ノード2上の通信装置23によっ
て受信され、バリア同期IDにマッピングされた状態レジ
スタ22のビットを反転する。
When the barrier synchronization has been established, the barrier synchronization management unit 10 issues a barrier synchronization completion notification 41 to each node 2 (step S235). At the same time as issuing the barrier synchronization completion notification 41, the barrier synchronization management unit 10 copies the value of the register 12 to the counter 11 again (step S232), and enters a state of waiting for a barrier synchronization request (step S230). The barrier synchronization synchronization completion notification 41 is received by the communication device 23 on each node 2 and inverts the bit of the status register 22 mapped to the barrier synchronization ID.

【0026】バリア同期要求40のメッセージ40を発行し
た(S205)プロセッサ21は、状態レジスタ22の割り当てら
れたビット位置を適宜読み出しているが、ステップS235
による状態レジスタビット反転の結果により、ステップ
S204で読み出された値と異なる値が読み出された時点で
バリア同期の成立を検出する(ステップS206,S207)。
The processor 21 that has issued the message 40 of the barrier synchronization request 40 (S205) reads out the bit position assigned to the status register 22 as needed, but the process proceeds to step S235.
Step by the result of status register bit inversion by
When a value different from the value read in S204 is read, the establishment of barrier synchronization is detected (steps S206, S207).

【0027】このように、上記実施例では、バリア同期
用の状態レジスタ22の更新をバリア同期装置1からのバ
リア同期完了通知41でのみ行なうので、ノード内の参加
する各プロセッサ21がそれぞれに直接にバリア同期要求
40を発行し、直接に状態レジスタ22を参照することによ
り、それぞれのプロセッサ21が独自にバリア同期の完了
を検出することができる。したがって、バリア同期を階
層化する必要はなく、それぞれのプロセッサ21が同じ手
順でバリア同期を行なうことができるのである。
As described above, in the above embodiment, since the barrier synchronization status register 22 is updated only by the barrier synchronization completion notification 41 from the barrier synchronization device 1, each participating processor 21 in the node can directly update the status register 22. Barrier synchronization request
By issuing 40 and directly referring to the status register 22, each processor 21 can independently detect the completion of barrier synchronization. Therefore, it is not necessary to layer barrier synchronization, and each processor 21 can perform barrier synchronization in the same procedure.

【0028】次に、本発明のクラスタ型計算機システム
の第2の実施例について説明する。この実施例は、その
基本的構成は第1の実施例の通りであるが、バリア同期
装置1のようなハードウェアを用いず、図3に示すよう
に、ソフトウェアのみで同等の機能を実現する。
Next, a second embodiment of the cluster computer system according to the present invention will be described. In this embodiment, the basic configuration is the same as that of the first embodiment. However, as shown in FIG. 3, equivalent functions are realized only by software without using hardware such as the barrier synchronization device 1. .

【0029】バリア同期管理ノード5は、バリア同期ID
で識別されるバリア同期用のカウンタ51と、レジスタ52
と、同期成立判定部53とからなるバリア同期管理プロセ
ス50を一つ以上有し、またノード間ネットワーク3を介
して他のノード2と通信するための通信装置23を備えて
いる。バリア同期管理ノード5はシステム中に任意の数
だけ存在して構わない。
The barrier synchronization management node 5 has a barrier synchronization ID
A counter 51 for barrier synchronization identified by
And one or more barrier synchronization management processes 50 including a synchronization establishment determination unit 53 and a communication device 23 for communicating with another node 2 via the inter-node network 3. Any number of barrier synchronization management nodes 5 may exist in the system.

【0030】各ノード2は一つ以上のプロセッサ21から
なる演算用の計算機であり、ノード間ネットワーク3を
介して他のノード2と通信するための通信装置23と、バ
リア同期ID毎に生成されるバリア状態変数25とを持つ。
バリア通信装置23は他ノード上のメモリに対してDMAを
行なう機能を持っている。
Each node 2 is an arithmetic computer comprising one or more processors 21, and is generated for each communication device 23 for communicating with another node 2 via the inter-node network 3 and for each barrier synchronization ID. And a barrier state variable 25.
The barrier communication device 23 has a function of performing DMA on a memory on another node.

【0031】次に、図3の実施例の動作を図4のフロー
チャートにより説明する。バリア同期に先立ち、バリア
同期に参加する各プロセッサ21はバリア同期に参加する
プロセッサ21のグループを決定(ステップT200)し、参
加するプロセッサ21が存在しているノード2に一つのバ
リア状態変数25を生成し、0で初期化する(ステップT20
1)。そして、バリア同期管理ノード5にグループ構成と
ともに通知し、バリア同期管理プロセス50を割り当てる
ように要求する(ステップT202)。
Next, the operation of the embodiment of FIG. 3 will be described with reference to the flowchart of FIG. Prior to the barrier synchronization, each processor 21 participating in the barrier synchronization determines a group of the processors 21 participating in the barrier synchronization (step T200), and assigns one barrier state variable 25 to the node 2 where the participating processor 21 exists. Generate and initialize with 0 (step T20
1). Then, the barrier synchronization management node 5 is notified together with the group configuration, and requests to assign the barrier synchronization management process 50 (step T202).

【0032】バリア同期管理ノード5は同期待ち中(ス
テップT220)のID識別部55が、この要求を受け、新規の
バリア同期用IDを発行し、バリア同期管理プロセス50を
生成し、バリア同期用IDを各プロセッサ21に通知する
(ステップT221)。
In the barrier synchronization management node 5, the ID identifying unit 55 waiting for synchronization (step T220) receives this request, issues a new barrier synchronization ID, generates a barrier synchronization management process 50, and generates a barrier synchronization management process. The ID is notified to each processor 21 (step T221).

【0033】バリア同期管理プロセス50は、生成される
と、内部のレジスタ52に与えられた値を設定し、それを
同じく内部のカウンタ51にもコピーし、さらに状態変数
57を各ノード2のバリア状態変数25と同じ0で初期化し
(ステップT230)、要求待ち(ステップT231)となる。
When generated, the barrier synchronization management process 50 sets the value given to the internal register 52, copies it to the internal counter 51, and further sets the state variable.
57 is initialized with the same 0 as the barrier state variable 25 of each node 2 (step T230), and the request waits (step T231).

【0034】各プロセッサ21は、計算処理(ステップT2
03)が進み同期点に到達したら(ステップT204)、バリ
ア同期の開始にあたって、バリア状態変数25の値を読み
出す(ステップT205)。次に、プロセッサ21は通信装置
23を通してバリア同期管理ノード5にバリア同期要求メ
ッセージ40を送信する(ステップT206)。
Each processor 21 performs a calculation process (step T2).
03), when the synchronization point is reached (step T204), at the start of barrier synchronization, the value of the barrier state variable 25 is read (step T205). Next, the processor 21 is a communication device.
A barrier synchronization request message 40 is transmitted to the barrier synchronization management node 5 through 23 (step T206).

【0035】バリア同期管理ノード5では、ID識別部55
が要求待ち中(ステップT220)に各プロセッサ21からス
テップT206で送信されたバリア同期要求40のメッセージ
が到着すると、要求に対応するバリア同期管理プロセス
50を選び(ステップT222)、それにバリア同期要求40メ
ッセージを渡す(ステップT223)。
In the barrier synchronization management node 5, the ID identification unit 55
When the message of the barrier synchronization request 40 transmitted in step T206 from each processor 21 arrives while waiting for a request (step T220), the barrier synchronization management process corresponding to the request
50 is selected (step T222), and a barrier synchronization request 40 message is passed to it (step T223).

【0036】バリア同期管理プロセス50では要求待ち中
(ステップT231)に、バリア同期要求40のメッセージが
渡されると、カウンタ51の値を-1する(ステップT23
3)。その結果値が0となったらバリア同期に参加するす
べてのプロセッサ21からメッセージがバリア同期管理プ
ロセス50に届いたことになるので、バリア同期が成立す
る。0でなければ、再びメッセージ待ちの状態(ステッ
プT231)になる(ステップT234)。
In the barrier synchronization management process 50, when the message of the barrier synchronization request 40 is passed while the request is waiting (step T231), the value of the counter 51 is decremented by one (step T23).
3). When the result becomes 0, the message has arrived at the barrier synchronization management process 50 from all the processors 21 participating in the barrier synchronization, so that the barrier synchronization is established. If it is not 0, it is in a message waiting state (step T231) again (step T234).

【0037】バリア同期が成立した場合、バリア同期管
理プロセス50は状態変数57の値を+1して、その値を各ノ
ード2上のバリア状態変数25に対して、バリア同期完了
の同期通知41として、通信装置23のDMA機能を利用して
書き込む(ステップT235)。また、バリア同期管理プロ
セス50はバリア同期完了通知41を発行する(ステップT2
36)と同時に、レジスタ52の値をカウンタ51に再びコピ
ーし(ステップT232)、バリア同期要求待ちの状態(ス
テップT230)になる。
When the barrier synchronization is established, the barrier synchronization management process 50 increments the value of the state variable 57 by 1, and sends the value to the barrier state variable 25 on each node 2 to notify the synchronization 41 of the completion of barrier synchronization. , Using the DMA function of the communication device 23 (step T235). Further, the barrier synchronization management process 50 issues a barrier synchronization completion notification 41 (step T2).
36) At the same time, the value of the register 52 is copied to the counter 51 again (step T232), and a state of waiting for a barrier synchronization request (step T230) is entered.

【0038】ステップT206でバリア同期要求メッセージ
40を発行したプロセッサ21は、バリア状態変数25の値を
適宜読み出しているが、ステップT235による同期状態変
数25の書き込み結果により、ステップT204で読み出され
た値と異なる値が読み出された時点でバリア同期の成立
を検出する(ステップT207,T208)。
In step T206, a barrier synchronization request message
The processor 21 that has issued 40 reads the value of the barrier state variable 25 as appropriate, but at the time when a value different from the value read in step T204 is read due to the write result of the synchronization state variable 25 in step T235. Detects the establishment of barrier synchronization (steps T207 and T208).

【0039】このように、上記実施例では、バリア状態
変数25の更新を初期化を除いてバリア同期管理プロセス
50からのバリア同期完了の同期通知41でのみ行なうの
で、ノード2内の参加する各プロセッサ21がそれぞれに
直接にバリア同期要求40を発行し、直接にバリア状態変
数25を参照することで、それぞれのプロセッサ21が独自
にバリア同期の完了を検出することができる。したがっ
て、バリア同期を階層化する必要はなく、それぞれのプ
ロセッサ21が同じ手順でバリア同期を行なうことができ
る。
As described above, in the above embodiment, the update of the barrier state variable 25 is performed except for the initialization except for the barrier synchronization management process.
Since only the synchronization notification 41 of the barrier synchronization completion from 50 is performed, each participating processor 21 in the node 2 issues a barrier synchronization request 40 directly to each, and directly refers to the barrier state variable 25, Processor 21 can independently detect the completion of barrier synchronization. Therefore, it is not necessary to layer barrier synchronization, and each processor 21 can perform barrier synchronization in the same procedure.

【0040】次に、本発明の第3の実施例として、クラ
スタシステムが他ノードのメモリに対してアトミック演
算機能を持っている場合の例を図5に示す。本実施例
は、第2実施例と同様の構成を持つが、システムが他ノ
ードのメモリに対してアトミック演算機能を持っている
ために、同期管理プロセス50が状態変数57を持つ必要が
なくなっている。
Next, as a third embodiment of the present invention, FIG. 5 shows an example in which the cluster system has an atomic operation function for the memory of another node. This embodiment has the same configuration as that of the second embodiment. However, since the system has an atomic operation function for the memory of another node, the synchronization management process 50 does not need to have the state variable 57. I have.

【0041】これは、同期に参加している各ノード2上
のバリア状態変数25の値を変化させるために、変化前の
状態を記憶しておく必要がないためである。なぜなら、
アトミック演算機能を使って、各ノード2上のバリア状
態変数25の値を+1するなどして、元の値を知らなくても
値を変更できるためである。
This is because it is not necessary to store the state before the change in order to change the value of the barrier state variable 25 on each node 2 participating in synchronization. Because
This is because the value of the barrier state variable 25 on each node 2 can be changed by +1 by using the atomic operation function without knowing the original value.

【0042】第3の実施例の処理の流れを図6に示す。
バリア同期に先立ち、バリア同期に参加する各プロセッ
サ21はバリア同期に参加するプロセッサ21のグループを
決定(ステップU200)し、参加するプロセッサ21が存在
しているノード2に一つバリア状態変数25を生成(ステ
ップU201)し、バリア同期管理ノード5にグループ構成
とともに通知し、バリア同期管理プロセス50を割り当て
るように要求する(ステップU202)。
FIG. 6 shows the flow of processing in the third embodiment.
Prior to the barrier synchronization, each processor 21 participating in the barrier synchronization determines a group of the processors 21 participating in the barrier synchronization (step U200), and assigns one barrier state variable 25 to the node 2 where the participating processor 21 exists. It generates (step U201), notifies the barrier synchronization management node 5 together with the group configuration, and requests to assign the barrier synchronization management process 50 (step U202).

【0043】バリア同期管理ノード5は同期待ち中(ス
テップU220)のID識別部55が要求を受け、新規のバリア
同期用IDを発行し、バリア同期管理プロセス50を生成
し、バリア同期用IDを各プロセッサ21に通知する(ステ
ップU221)。
The barrier synchronization management node 5 receives the request from the ID identifying unit 55 waiting for synchronization (step U220), issues a new barrier synchronization ID, generates a barrier synchronization management process 50, and stores the barrier synchronization ID in the barrier synchronization management node 5. Each processor 21 is notified (step U221).

【0044】バリア同期管理プロセス50は、生成される
と、内部のレジスタ52を与えられた初期値に設定し、そ
れを同じく内部のカウンタ51にもコピーし、さらに状態
変数57を各ノード2のバリア状態変数25と同じ0で初期化
し(ステップU230)、要求待ち(ステップU231)とな
る。
When generated, the barrier synchronization management process 50 sets the internal register 52 to a given initial value, copies it to the internal counter 51, and furthermore, sets the state variable 57 of each node 2 to It is initialized with the same 0 as the barrier state variable 25 (step U230), and waits for a request (step U231).

【0045】各プロセッサ21は計算処理(ステップU20
3)が進み同期点に到達したら(ステップU204)、はバ
リア同期の開始にあたってバリア状態変数25の値を読み
出し(ステップU205)、通信装置23を通してバリア同期
管理ノード5にバリア同期要求40のメッセージを送信す
る(ステップU206)。
Each processor 21 performs a calculation process (step U20).
When 3) advances and reaches the synchronization point (step U204), the value of the barrier state variable 25 is read at the start of barrier synchronization (step U205), and the message of the barrier synchronization request 40 is transmitted to the barrier synchronization management node 5 through the communication device 23. Transmit (step U206).

【0046】バリア同期管理ノード5では、ID管理部55
が要求待ち中(ステップU220)に各プロセッサ21からス
テップU205で送信されたバリア同期要求40のメッセージ
が到着すると、要求に対応するバリア同期管理プロセス
50を選び(ステップU222)、バリア同期要求メッセージ
40を渡す(ステップU223)。
In the barrier synchronization management node 5, the ID management unit 55
When the message of the barrier synchronization request 40 transmitted from each processor 21 in step U205 arrives while waiting for the request (step U220), the barrier synchronization management process corresponding to the request
Select 50 (step U222), barrier synchronization request message
Pass 40 (step U223).

【0047】バリア同期管理プロセス50では、要求待ち
中(ステップU230)に、バリア同期要求40のメッセージ
が渡されると、カウンタ51の値を-1する(ステップU23
3)。その結果値が0となったらバリア同期に参加するす
べてのプロセッサ21からメッセージがバリア同期管理プ
ロセス50に届いたことになるので、バリア同期が成立す
る。0でなければ、再びメッセージ待ちの状態(ステッ
プU230)になる(ステップU234)。
In the barrier synchronization management process 50, when the message of the barrier synchronization request 40 is passed while waiting for the request (step U230), the value of the counter 51 is decremented by 1 (step U23).
3). When the result becomes 0, the message has arrived at the barrier synchronization management process 50 from all the processors 21 participating in the barrier synchronization, so that the barrier synchronization is established. If it is not 0, it is in a message waiting state (step U230) again (step U234).

【0048】バリア同期が成立した場合、バリア同期管
理プロセス50は、システムの他ノードに対するアトミッ
ク演算機能を利用して各ノード2上のバリア状態変数25
に対して+1し、バリア同期完了通知41とする。バリア同
期管理プロセス50は、バリア同期完了通知41を発行する
(ステップU235)と同時に、レジスタ52の値をカウンタ
51に再びコピーし(ステップU232)バリア同期要求待ち
の状態(ステップU230)になる。
When the barrier synchronization is established, the barrier synchronization management process 50 uses the atomic operation function for the other nodes of the system to execute the barrier state variable 25 on each node 2.
Is incremented by 1 to obtain a barrier synchronization completion notification 41. The barrier synchronization management process 50 issues the barrier synchronization completion notification 41 (step U235), and simultaneously counts the value of the register 52 as a counter.
The file is copied again to step 51 (step U232), and a state of waiting for a barrier synchronization request (step U230) is entered.

【0049】バリア同期要求メッセージ40を発行したプ
ロセッサ21は、バリア状態変数25の値を適宜読み出して
いるが、上述のアトミック機能による同期状態変数25の
書き込み結果により、ステップU204で読み出された値と
異なる値が読み出された時点でバリア同期の成立を検出
する(ステップU207,U208)。
The processor 21 that has issued the barrier synchronization request message 40 appropriately reads the value of the barrier state variable 25, and the value read in step U204 according to the write result of the synchronization state variable 25 by the above-described atomic function. When a value different from the above is read, the establishment of barrier synchronization is detected (steps U207 and U208).

【0050】このように、上記実施例では、バリア状態
変数25の更新を初期化を除いてバリア同期管理プロセス
50からのバリア同期完了通知41でのみ行なうので、ノー
ド内の参加する各プロセッサ21がそれぞれに直接にバリ
ア同期要求40を発行し、直接にバリア状態変数25を参照
することで、それぞれのプロセッサ21が独自にバリア同
期の完了を検出することができる。
As described above, in the above-described embodiment, the updating of the barrier state variable 25 is performed except for the initialization except for the barrier synchronization management process.
Since it is performed only by the barrier synchronization completion notification 41 from 50, each participating processor 21 in the node issues a barrier synchronization request 40 directly to each processor 21 and directly refers to the barrier state variable 25 to Can independently detect the completion of barrier synchronization.

【0051】このとき、各ノード2の同期状態変数25は
必ずしも初期化されて同じ値になっている必要はない。
アトミック演算によりバリア同期管理プロセス50によっ
てその時点での状態(値)に+1されるので、バリア同期
開始直前の値をその都度記憶し(ステップU205)、その
値とバリア状態変数25の値とを比較(ステップU207)し
ていればよいのである。したがって、バリア同期を階層
化する必要はなく、それぞれのプロセッサ21が同じ手順
でバリア同期を行なうことができる。
At this time, the synchronization state variable 25 of each node 2 does not necessarily have to be initialized to the same value.
Since the state (value) at that time is incremented by +1 by the barrier synchronization management process 50 by the atomic operation, the value immediately before the start of barrier synchronization is stored each time (step U205), and the value and the value of the barrier state variable 25 are stored. Should be compared (step U207). Therefore, it is not necessary to layer barrier synchronization, and each processor 21 can perform barrier synchronization in the same procedure.

【0052】なお、以上に説明したプロセッサ間バリア
同期方法をプログラミングして、半導体メモリ,磁気デ
ィスク等の記録媒体に記録し、コンピュータに読み込ま
せて実行させるようにしてもよい。
The above-described inter-processor barrier synchronization method may be programmed, recorded on a recording medium such as a semiconductor memory or a magnetic disk, read by a computer, and executed.

【0053】[0053]

【発明の効果】以上説明したように、本発明において
は、バリア同期の状態を表す値の更新を同期状態を管理
する部分からのみ行なうようにしたため、クラスタにま
たがるバリア同期を階層化することなく高速に行なえる
とい効果がある。
As described above, in the present invention, the value indicating the state of barrier synchronization is updated only from the part that manages the synchronization state, so that barrier synchronization across clusters is not hierarchized. It is effective if it can be performed at high speed.

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

【図1】 本発明のクラスタ型並列計算機システムの第
1実施例を示すブロック図。
FIG. 1 is a block diagram showing a first embodiment of a cluster-type parallel computer system according to the present invention.

【図2】 図1の第1実施例の動作を示すフローチャー
ト。
FIG. 2 is a flowchart showing the operation of the first embodiment of FIG.

【図3】 本発明のクラスタ型並列計算機システムの第
2実施例を示すブロック図。
FIG. 3 is a block diagram showing a second embodiment of the cluster type parallel computer system of the present invention.

【図4】 図3の第2実施例の動作を示すフローチャー
ト。
FIG. 4 is a flowchart showing the operation of the second embodiment of FIG. 3;

【図5】 本発明のクラスタ型並列計算機システムの第
3実施例を示すブロック図。
FIG. 5 is a block diagram showing a third embodiment of the cluster type parallel computer system of the present invention.

【図6】 図5の第3施例の動作を示すフローチャー
ト。
FIG. 6 is a flowchart showing the operation of the third embodiment of FIG. 5;

【図7】 従来の並列処理計算機におけるバリア同期制
御装置のブロック図。
FIG. 7 is a block diagram of a barrier synchronization control device in a conventional parallel processing computer.

【図8】 従来の並列処理計算機におけるノードのブロ
ック図。
FIG. 8 is a block diagram of a node in a conventional parallel processing computer.

【図9】 従来の並列処理計算機における同期制御部の
ブロック図。
FIG. 9 is a block diagram of a synchronization control unit in a conventional parallel processing computer.

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

1 バリア同期装置 2 ノード 3 ノード間ネットワーク 5 バリア同期管理ノード 10 バリア同期管理部 11 カウンタ 12 レジスタ 13 同期成立判定部 15 ID選択部 16 減算器 21 CPU(プロセッサ) 22 状態レジスタ 23 通信装置 25 バリア状態変数 26 アトミック演算器 29 ディスク装置 31 通信装置 40 バリア同期要求 41 バリア同期完了通知 42 初期値設定 50 バリア同期管理プロセス 51 カウンタ 52 レジスタ 53 同期成立判定部 55 ID識別部 57 状態変数 58 CPU(プロセッサ) 59 ディスク装置 1 barrier synchronizer 2 node 3 inter-node network 5 barrier synchronization management node 10 barrier synchronization management unit 11 counter 12 register 13 synchronization establishment determination unit 15 ID selection unit 16 subtractor 21 CPU (processor) 22 status register 23 communication device 25 barrier status Variable 26 Atomic operation unit 29 Disk device 31 Communication device 40 Barrier synchronization request 41 Barrier synchronization completion notification 42 Initial value setting 50 Barrier synchronization management process 51 Counter 52 Register 53 Synchronization establishment judgment unit 55 ID identification unit 57 State variable 58 CPU (processor) 59 Disk unit

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおいて、 前記ノード間ネットワークに接続されたバリア同期手段
に、バリア同期に参加するノード内プロセッサ数を記憶
する手段と、その値が初期値としてコピーされ、バリア
同期に参加する各プロセッサからのバリア同期要求毎に
1つ減算されるカウント手段と、該カウント値が0にな
った時点でバリア同期成立通知を前記ノードに対して発
行する手段と、同時に前記コピーを再び行う手段とを有
し、 ノード内の各プロセッサは、このバリア同期成立通知に
より、ノード上の状態レジスタの割り当てられたビット
が反転するのを確認することによりバリア同期の成立を
検出することを特徴とするクラスタ型並列計算機システ
ム。
1. A cluster type parallel computer system in which nodes having one or more processors are connected by an inter-node network, wherein the intra-node processor participating in barrier synchronization is added to barrier synchronization means connected to the inter-node network. Means for storing the number, counting means for copying the value as an initial value and decrementing it by one for each barrier synchronization request from each processor participating in barrier synchronization, and a barrier when the count value becomes zero. Means for issuing a synchronization establishment notification to the node, and means for simultaneously performing the copy again. Each processor in the node determines the assigned bit of the status register on the node by the barrier synchronization establishment notification. Cluster type parallel meter characterized by detecting the establishment of barrier synchronization by confirming that Machine system.
【請求項2】前記状態レジスタの代わりに、状態変数を
設け、 前記記憶手段,カウント手段およびコピーを再び行う手
段をソフトウェアで実現するとともに、該ソフトウェア
に前記状態変数の値を初期値とする状態変数を備え、前
記カウント値が0になった時点で該状態変数を1つ増数
して前記ノード内の状態変数を書きかえることを特徴と
する請求項1記載のクラスタ型並列計算機システム。
2. A state in which a state variable is provided in place of the state register, the storage means, the counting means, and the means for performing copying again are realized by software, and the software uses the value of the state variable as an initial value. 2. The cluster type parallel computer system according to claim 1, further comprising a variable, wherein when the count value becomes zero, the state variable is incremented by one and the state variable in the node is rewritten.
【請求項3】前記ノードが、他のノードのメモリに対し
てアトミック演算機能を有し、前記ソフトウェア内の状
態変数を不要化したことを特徴とする請求項2記載のク
ラスタ型並列計算機システム。
3. The cluster-type parallel computer system according to claim 2, wherein said node has an atomic operation function with respect to a memory of another node, and a state variable in said software is made unnecessary.
【請求項4】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおけるプロセッサ間バリア同期方法にお
いて、 バリア同期に参加するプロセッサ数を初期値として保持
する手順と、 前記初期値をカウント手段に設定する手順と、 前記バリア同期に参加するプロセッサからの同期要求に
従い前記カウント手段の値を1つ減算する手順と、 前記カウント手段の値が0になった時点でバリア同期の
成立を検出する手順と、 バリア同期の成立を前記バリ
ア同期に参加するプロセッサを一つ以上含むノードに通
知する手順と、 バリア同期の成立に伴い前記カウント手段に再び前記初
期値を設定する手順と、 前記バリア同期に参加するプロセッサが、ノード内の状
態レジスタの値を読み手順と、 前記バリア同期成立通知によって前記状態レジスタの値
を更新する手順とを有し、 前記プロセッサは該状態レジスタの更新によってバリア
同期が成立したことを検出することを特徴とするプロセ
ッサ間バリア同期方法。
4. A method for synchronizing barriers between processors in a cluster-type parallel computer system in which nodes having one or more processors are connected by an inter-node network, comprising: a step of retaining the number of processors participating in barrier synchronization as an initial value; A step of setting the initial value in the counting means; a step of subtracting one from the value of the counting means in accordance with a synchronization request from a processor participating in the barrier synchronization; and a step in which the value of the counting means becomes zero. A step of detecting the establishment of the barrier synchronization; a step of notifying the establishment of the barrier synchronization to a node including one or more processors participating in the barrier synchronization; and setting the initial value in the counting means again with the establishment of the barrier synchronization. And a processor participating in the barrier synchronization reads a value of a status register in the node by a reader. And updating the value of the status register according to the barrier synchronization establishment notification, wherein the processor detects that barrier synchronization has been established by updating the status register. .
【請求項5】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおけるプロセッサ間バリア同期方法であ
って、 バリア同期に参加するプロセッサ数を初期値として保持
する手順と、 前記初期値をカウント手段にに設定する手順と、 前記バリア同期に参加するプロセッサからの同期要求に
従い前記カウント手段の値を1つ減算する手順と、 前記カウント手段の値が0になった時点でバリア同期の
成立を検出する手順と、 バリア同期の成立を前記バリ
ア同期に参加するプロセッサを一つ以上含むノードに通
知する手順と、 バリア同期の成立に伴い前記カウント手段に再び前記初
期値を設定する手順と、 前記バリア同期に参加するプロセッサが、ノード内の状
態レジスタの値を読み手順と、 前記バリア同期成立通知によって前記状態レジスタの値
を更新する手順とを有する方法をコンピュータに実行さ
せるためのプログラムを記録したコンピュータ読み込み
可能な記録媒体。
5. An inter-processor barrier synchronization method in a cluster-type parallel computer system in which nodes having one or more processors are connected by an inter-node network, wherein the number of processors participating in barrier synchronization is held as an initial value. A step of setting the initial value in the counting means, a step of subtracting one from the value of the counting means according to a synchronization request from a processor participating in the barrier synchronization, and a value of the counting means being zero. Detecting the establishment of the barrier synchronization at the point of time; notifying the node including one or more processors participating in the barrier synchronization of the establishment of the barrier synchronization; and A step of setting a value, and a processor participating in the barrier synchronization reads a value of a status register in the node. Forward and, recording a computer readable recording medium storing a program for executing the method on a computer and a procedure for updating the value of the status register by the barrier synchronization establishment notification.
JP01244399A 1999-01-20 1999-01-20 Cluster-type parallel computer system and inter-processor barrier synchronization method Expired - Fee Related JP3482897B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01244399A JP3482897B2 (en) 1999-01-20 1999-01-20 Cluster-type parallel computer system and inter-processor barrier synchronization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01244399A JP3482897B2 (en) 1999-01-20 1999-01-20 Cluster-type parallel computer system and inter-processor barrier synchronization method

Publications (2)

Publication Number Publication Date
JP2000215182A true JP2000215182A (en) 2000-08-04
JP3482897B2 JP3482897B2 (en) 2004-01-06

Family

ID=11805467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01244399A Expired - Fee Related JP3482897B2 (en) 1999-01-20 1999-01-20 Cluster-type parallel computer system and inter-processor barrier synchronization method

Country Status (1)

Country Link
JP (1) JP3482897B2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058744B2 (en) 2001-05-18 2006-06-06 Nec Corporation Cluster system, computer and program
WO2010109761A1 (en) * 2009-03-25 2010-09-30 日本電気株式会社 Parallel processing system, parallel processing method, network switch device, and recording medium for parallel processing program
JP2012512452A (en) * 2008-12-16 2012-05-31 ブル エスエイエス Multi-process barrier physical manager
WO2012124078A1 (en) * 2011-03-16 2012-09-20 富士通株式会社 Synchronization method, multi-core processor system, and synchronization system
GB2493598A (en) * 2011-08-08 2013-02-13 Advanced Risc Mach Ltd Centralised synchronisation of data processing systems using multi-casts
JP2013137833A (en) * 2013-04-08 2013-07-11 Waseda Univ Multiprocessor system and synchronization method for multiprocessor system
JP2013174943A (en) * 2012-02-23 2013-09-05 Nec Corp Superparallel computer, synchronizing method, and synchronizing program
US8904118B2 (en) 2011-01-07 2014-12-02 International Business Machines Corporation Mechanisms for efficient intra-die/intra-chip collective messaging
US9195550B2 (en) 2011-02-03 2015-11-24 International Business Machines Corporation Method for guaranteeing program correctness using fine-grained hardware speculative execution
US9286067B2 (en) 2011-01-10 2016-03-15 International Business Machines Corporation Method and apparatus for a hierarchical synchronization barrier in a multi-node system
JP2021528929A (en) * 2018-07-04 2021-10-21 グラフコアー リミテッドGraphcore Limited Data transit gateway
JP7335270B2 (en) 2018-04-27 2023-08-29 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Feedback-Guided Split Workgroup Dispatch for GPUs

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058744B2 (en) 2001-05-18 2006-06-06 Nec Corporation Cluster system, computer and program
JP2012512452A (en) * 2008-12-16 2012-05-31 ブル エスエイエス Multi-process barrier physical manager
WO2010109761A1 (en) * 2009-03-25 2010-09-30 日本電気株式会社 Parallel processing system, parallel processing method, network switch device, and recording medium for parallel processing program
US8904118B2 (en) 2011-01-07 2014-12-02 International Business Machines Corporation Mechanisms for efficient intra-die/intra-chip collective messaging
US8990514B2 (en) 2011-01-07 2015-03-24 International Business Machines Corporation Mechanisms for efficient intra-die/intra-chip collective messaging
US9971635B2 (en) 2011-01-10 2018-05-15 International Business Machines Corporation Method and apparatus for a hierarchical synchronization barrier in a multi-node system
US9286067B2 (en) 2011-01-10 2016-03-15 International Business Machines Corporation Method and apparatus for a hierarchical synchronization barrier in a multi-node system
US9195550B2 (en) 2011-02-03 2015-11-24 International Business Machines Corporation Method for guaranteeing program correctness using fine-grained hardware speculative execution
US9558152B2 (en) * 2011-03-16 2017-01-31 Fujitsu Limited Synchronization method, multi-core processor system, and synchronization system
JP5780292B2 (en) * 2011-03-16 2015-09-16 富士通株式会社 Synchronization method, multi-core processor system, and synchronization system
WO2012124078A1 (en) * 2011-03-16 2012-09-20 富士通株式会社 Synchronization method, multi-core processor system, and synchronization system
US20140019717A1 (en) * 2011-03-16 2014-01-16 Fujitsu Limited Synchronization method, multi-core processor system, and synchronization system
GB2493598A (en) * 2011-08-08 2013-02-13 Advanced Risc Mach Ltd Centralised synchronisation of data processing systems using multi-casts
US8463960B2 (en) 2011-08-08 2013-06-11 Arm Limited Synchronisation of data processing systems
GB2493598B (en) * 2011-08-08 2014-01-01 Advanced Risc Mach Ltd Synchronisation of data processing systems
JP2013174943A (en) * 2012-02-23 2013-09-05 Nec Corp Superparallel computer, synchronizing method, and synchronizing program
JP2013137833A (en) * 2013-04-08 2013-07-11 Waseda Univ Multiprocessor system and synchronization method for multiprocessor system
JP7335270B2 (en) 2018-04-27 2023-08-29 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Feedback-Guided Split Workgroup Dispatch for GPUs
JP2021528929A (en) * 2018-07-04 2021-10-21 グラフコアー リミテッドGraphcore Limited Data transit gateway
US11615038B2 (en) 2018-07-04 2023-03-28 Graphcore Limited Data through gateway
JP7322131B2 (en) 2018-07-04 2023-08-07 グラフコアー リミテッド data transit gateway
US11886362B2 (en) 2018-07-04 2024-01-30 Graphcore Limited Gateway processing

Also Published As

Publication number Publication date
JP3482897B2 (en) 2004-01-06

Similar Documents

Publication Publication Date Title
KR100457146B1 (en) Interrupt architecture for a non-uniform memory access data processing system
US5043873A (en) Method of parallel processing for avoiding competition control problems and data up dating problems common in shared memory systems
US7246187B1 (en) Method and apparatus for controlling exclusive access to a shared resource in a data storage system
US6463532B1 (en) System and method for effectuating distributed consensus among members of a processor set in a multiprocessor computing system through the use of shared storage resources
JP2539021B2 (en) Interrupt request generation node that sends an interrupt request to the pending bus
JP2000215182A (en) Cluster type parallel computer system and inter- processor barrier synchronizing method
WO2014008495A2 (en) Managing dependencies between operations in a distributed system
JPH0760422B2 (en) Memory lock method
EP1386234A2 (en) Resource action in clustered computer system incorporating prepare operation
EP0358716A1 (en) Node for servicing interrupt request messages on a pended bus.
JPH0679305B2 (en) Device and method for responding to an interrupt using a hold bus
EP0431326A2 (en) Inter-processor interrupts in an n-element multi-processor
US5550973A (en) System and method for failure recovery in a shared resource system having a moving write lock
US11741081B2 (en) Method and system for data handling
US8230117B2 (en) Techniques for write-after-write ordering in a coherency managed processor system that employs a command pipeline
JPH04213136A (en) Updating system for reference bit and change bit
CN115543952A (en) Method and system for shared memory access API in distributed systems
US11138231B2 (en) Method and system for data handling
Leijten et al. PROPHID: a data-driven multi-processor architecture for high-performance DSP
JPH07141302A (en) Load distribution method for parallel computer
US20230385195A1 (en) Cache management using cache scope designation
JPH06161861A (en) File processing control system
JP3123946B2 (en) Microcomputer
EP0629949A2 (en) System and method of recovering from process failure in a write lock control system
JP2514671B2 (en) Data access control method

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020806

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030916

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

Free format text: PAYMENT UNTIL: 20071017

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081017

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091017

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20091017

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101017

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131017

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees