JP3482897B2 - Cluster-type parallel computer system and inter-processor barrier synchronization method - Google Patents

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

Info

Publication number
JP3482897B2
JP3482897B2 JP01244399A JP1244399A JP3482897B2 JP 3482897 B2 JP3482897 B2 JP 3482897B2 JP 01244399 A JP01244399 A JP 01244399A JP 1244399 A JP1244399 A JP 1244399A JP 3482897 B2 JP3482897 B2 JP 3482897B2
Authority
JP
Japan
Prior art keywords
barrier synchronization
barrier
node
synchronization
value
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
JP01244399A
Other languages
Japanese (ja)
Other versions
JP2000215182A (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 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

Landscapes

  • Multi Processors (AREA)

Description

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

【0001】[0001]

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

【0002】[0002]

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

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

【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 included therein. Barrier synchronization controller 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. Further, the synchronization control unit 32 of each node P, as shown in FIG. 9, has a processor phase register 61 and a group phase register 58 in the barrier synchronization control device 14.
Judgment circuit to which the group phase signal 56 from
I have 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 "0", and the barrier synchronization control device 1
The state of the group phase register 58 of 4 is set to "1". In performing the synchronization, in 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
As a result of 2, the comparison result between the values of the group phase register 58 and the processor phase register 61 becomes "true", and the result 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 the signal is distributed to each node P and the barrier synchronization is established. .

【0006】同時に、バリア同期制御装置14はグループ
フェーズレジスタ58のビットを反転し「0」にする。反
転されたビットは各ノードPの同期制御部32に送られ、
一致判定回路60により、今度はすでに「1」になってい
るプロセッサフェーズレジスタ61の値と不一致が検出さ
れて「偽」がバリア同期制御装置32に送られ、次回のバ
リア同期待ちの状態になる。
At the same time, the barrier synchronization controller 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 that is already "1" this time, sends "false" to the barrier synchronization control device 32, and enters the next barrier synchronization wait state. .

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

【0008】[0008]

【発明が解決しようとする課題】しかしながら、上述し
た従来の技術では、ノード内にバリアに参加する複数の
プロセッサが存在しているときに、バリア同期をノード
内とノード間とに階層化する必要があり処理が複雑にな
るという問題点がある。その理由は、プロセッサフェー
ズレジスタ60を個々の参加プロセッサが更新すると、ビ
ットの反転が複数回起き、バリア同期が破綻するか、あ
るいは最初にビットを反転したプロセッサの状態だけを
もってノード間のバリア同期の成立となり、やはり破綻
するかのいずれかになるためである。
However, in the above-mentioned conventional technique, when there are a plurality of processors participating in a barrier in a node, barrier synchronization needs to be layered within a node and between nodes. However, 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 the barrier synchronization breaks down, or the 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 will either fail.

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

【0010】[0010]

【課題を解決するための手段】本発明のクラスタ型並列
計算機システムは、一つ以上のプロセッサを有するノー
ドがノード間ネットワークで結合されているクラスタ型
並列計算機システムにおいて、前記ノード間ネットワー
クに接続されたバリア同期手段に、バリア同期に参加す
るノード内プロセッサ数を記憶する手段と、前記記憶す
る手段の値が初期値としてコピーされ、バリア同期に参
加する各プロセッサからのバリア同期要求毎に1つ減算
されるカウント手段と、該カウント値が0になった時点
でバリア同期成立通知を前記ノードに対して発行する手
段と、同時に前記コピーを再び行う手段とを有し、前記
バリア同期手段は、バリア毎に1つづつ設けられ、ノー
ド内の各プロセッサは、このバリア同期成立通知によ
り、ノード上のバリア毎に割り当てられた状態レジスタ
の割り当てられたビットが反転するのを確認することに
よりバリア同期の成立を検出することを特徴とする。
A cluster type parallel computer system of the present invention is a cluster type parallel computer system in which nodes having one or more processors are connected to each other by an internode network. In the barrier synchronization means, a means for storing the number of in-node processors participating in the barrier synchronization and a value of the storage means are copied as initial values, one for each barrier synchronization request from each processor participating in the barrier synchronization. a counting means to be subtracted, and means for said count value to issue a barrier synchronization establishment notification to the node as it becomes 0, and means for again performing the copy at the same time, the
One barrier synchronization unit is provided for each barrier , and each processor in the node confirms that the assigned bit of the state register assigned to each barrier on the node is inverted by this barrier synchronization establishment notification. It is characterized in that the establishment of barrier synchronization is detected by doing so.

【0011】また、本発明のプロセッサ間バリア同期方
法は、一つ以上のプロセッサを有するノードがノード間
ネットワークで結合されているクラスタ型並列計算機シ
ステムにおけるプロセッサ間バリア同期方法において、
バリア同期に参加するプロセッサ数をバリア毎に1つづ
初期値として保持する手順と、前記初期値を、バリア
毎に1つづつ設けられたカウント手段に設定する手順
と、前記バリア同期に参加するプロセッサからの同期要
求に従い前記カウント手段の値を1つ減算する手順と、
前記カウント手段の値が0になった時点でバリア同期の
成立を検出する手順と、バリア同期の成立を前記バリア
同期に参加するプロセッサを一つ以上含むノードに通知
するとともに前記初期値を前記カウント手段に設定する
手順と、前記バリア同期に参加するプロセッサが、ノー
ド内の状態レジスタの値を読手順と、前記バリア同期
成立通知によって前記状態レジスタの値を更新する手順
とを有し、前記プロセッサは該状態レジスタの更新によ
ってバリア同期が成立したことを検出することを特徴と
する
The inter-processor barrier synchronization method of the present invention is 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.
1 tsuzuic the number of processors to participate in the barrier synchronization on each barrier
One as an initial value, a procedure for setting the initial value in counting means provided for each barrier, and a value of the counting means is set to 1 in accordance with a synchronization request from a processor participating in the barrier synchronization. Subtraction procedure,
A procedure for detecting the establishment of barrier synchronization when the value of the counting means becomes 0, and notifying a node including one or more processors participating in the barrier synchronization of the establishment of barrier synchronization and counting the initial value. Set to means
And instructions, a processor to participate in the barrier synchronization has a read-free procedure the value of the status register in the node, and a procedure for updating the value of the status register by the barrier synchronization establishment notification, the processor the state Characterized by detecting that barrier synchronization is established by updating the register

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

【0013】[0013]

【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION 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 the cluster type parallel computer system of 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.
10, a communication device 31 for receiving a barrier synchronization request 40 from the inter-node network 3 and notifying the establishment of synchronization, and a barrier synchronization management unit 10 corresponding to the barrier synchronization request 40 are identified, and a message ID selection unit 15
Have and. Further, each barrier synchronization management unit 10 includes a counter 11 for barrier synchronization and a register for holding its initial value.
12, a barrier synchronization establishment determination unit 13, and a subtractor 16,
Barrier synchronization request 40 from each processor 21 on each node 2
Accordingly, the establishment of barrier synchronization is determined, and the synchronization notification 41 is performed via the communication device 31.

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

【0017】次に、図1のクラスタ型並列計算機システ
ムにおけるプロセッサ間同期の動作を図2により説明す
る。
Next, the operation of interprocessor 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 is a processor participating in the barrier synchronization.
21 synchronization groups are determined (step S200), and node 2
A 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 and secures the free space in the barrier synchronization management unit 10 (step S210). Next, the OS gives a 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). Finally, the OS maps the vacant 1 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 synchronization device 1 receives a notification from the OS while waiting for a request (step S220) (step S212),
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 the barrier synchronization management unit 10 mapped in step S221 receives the initialization request while waiting for the request (step S230), it sets the value passed to the register 12 (step S231). The barrier synchronization management unit 10 uses the register 12
When the initial value is set to, the value is copied to the counter 11 (step S232) and the barrier synchronization completion notification waits (step S230). At this time, the barrier synchronization management unit 10 must be uniquely determined among the clusters.
Which of 22 bits and the assigned barrier synchronization management unit 10
Whether and are mapped may be different for each node 2.

【0022】各プロセッサ21は計算処理(ステップS20
2)が進み同期点に到達したら(ステップS203)、バリ
ア同期の開始にあたって割り当てられた状態レジスタ22
のビット位置からその値を読み出す(ステップS204)。
次に、プロセッサ21は通信装置23を通してバリア同期装
置1にバリア同期要求40のメッセージを送信する(ステ
ップS205)。
Each processor 21 performs calculation processing (step S20
When step 2) progresses 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 of (step S204).
Next, the processor 21 transmits the 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 the barrier synchronization request 40 message transmitted from each processor 21 in step S205 arrives while waiting for the request (step S220), the ID selection unit 15 responds to the request by the barrier synchronization management unit. Select 10 (step S223), and pass the message of barrier synchronization request 40 (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 subtractor 16 subtracts 1 from the value of the counter 11 (step S233). Then, when the result value becomes 0, it means that the barrier synchronization request message has arrived from all the processors 21 participating in the barrier synchronization, so that the barrier synchronization is established. If it is not 0, the state of waiting for a message is resumed (step S230) (step S234).

【0025】バリア同期が成立した場合、バリア同期管
理部10は各ノード2に対してバリア同期完了通知41を発
行する(ステップS235)。バリア同期完了通知41を発行
すると同時に、バリア同期管理部10は、レジスタ12の値
をカウンタ11に再びコピーし(ステップS232)、バリア
同期要求待ちの状態(ステップS230)になる。バリア同
期同期完了通知41は、各ノード2上の通信装置23によっ
て受信され、バリア同期IDにマッピングされた状態レジ
スタ22のビットを反転する。
When the barrier synchronization is established, the barrier synchronization management unit 10 issues a barrier synchronization completion notice 41 to each node 2 (step S235). At the same time that the barrier synchronization completion notification 41 is issued, the barrier synchronization management unit 10 copies the value of the register 12 to the counter 11 again (step S232) and waits 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 the assigned bit position of the status register 22 as appropriate, but in step S235.
The 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 and S207).

【0027】このように、上記実施例では、バリア同期
用の状態レジスタ22の更新をバリア同期装置1からのバ
リア同期完了通知41でのみ行なうので、ノード内の参加
する各プロセッサ21がそれぞれに直接にバリア同期要求
40を発行し、直接に状態レジスタ22を参照することによ
り、それぞれのプロセッサ21が独自にバリア同期の完了
を検出することができる。したがって、バリア同期を階
層化する必要はなく、それぞれのプロセッサ21が同じ手
順でバリア同期を行なうことができるのである。
As described above, in the above embodiment, since the status register 22 for barrier synchronization is updated only by the barrier synchronization completion notification 41 from the barrier synchronization apparatus 1, each participating processor 21 in the node directly communicates with it. Barrier synchronization request to
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 make barrier synchronization hierarchical, 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 of the present invention will be described. This embodiment has the same basic configuration as that of the first embodiment, but does not use hardware such as the barrier synchronizer 1 and realizes equivalent functions only by software as shown in FIG. .

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

【0030】各ノード2は一つ以上のプロセッサ21から
なる演算用の計算機であり、ノード間ネットワーク3を
介して他のノード2と通信するための通信装置23と、バ
リア同期ID毎に生成されるバリア状態変数25とを持つ。
バリア通信装置23は他ノード上のメモリに対してDMAを
行なう機能を持っている。
Each node 2 is a computer for computation consisting of one or more processors 21, a communication device 23 for communicating with another node 2 via the inter-node network 3, and a communication device 23 generated for each barrier synchronization ID. With a barrier state variable of 25.
The barrier communication device 23 has a function of performing DMA to 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 processors 21 participating in the barrier synchronization (step T200), and sets one barrier state variable 25 to the node 2 in which the participating processor 21 exists. Generate and initialize with 0 (step T20
1). Then, it notifies the barrier synchronization management node 5 together with the group configuration and requests that the barrier synchronization management process 50 be allocated (step T202).

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

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

【0034】各プロセッサ21は、計算処理(ステップT2
03)が進み同期点に到達したら(ステップT204)、バリ
ア同期の開始にあたって、バリア状態変数25の値を読み
出す(ステップT205)。次に、プロセッサ21は通信装置
23を通してバリア同期管理ノード5にバリア同期要求メ
ッセージ40を送信する(ステップT206)。
Each processor 21 performs calculation processing (step T2
When (03) advances and reaches the synchronization point (step T204), the value of the barrier state variable 25 is read out when starting the barrier synchronization (step T205). Next, the processor 21 is a communication device.
The 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 section 55
When the message of the barrier synchronization request 40 transmitted from each processor 21 in step T206 arrives while waiting for the request (step T220), the barrier synchronization management process corresponding to the request
Select 50 (step T222) and pass the barrier synchronization request 40 message 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 waiting for the request (step T231), the value of the counter 51 is decremented by -1 (step T23).
3). If the result value becomes 0, it means that the messages have 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, the message waiting state (step T231) is entered 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 notifies the barrier state variable 25 on each node 2 of the value of the barrier synchronization completion synchronization notification 41. As a result, writing is performed using the DMA function of the communication device 23 (step T235). Also, the barrier synchronization management process 50 issues a barrier synchronization completion notification 41 (step T2
At the same time, the value of the register 52 is copied again to the counter 51 (step T232), and the 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 issued 40 has properly read the value of the barrier state variable 25, but when a value different from the value read in step T204 is read as a result of writing the synchronization state variable 25 in step T235. Then, the establishment of barrier synchronization is detected (steps T207 and T208).

【0039】このように、上記実施例では、バリア状態
変数25の更新を初期化を除いてバリア同期管理プロセス
50からのバリア同期完了の同期通知41でのみ行なうの
で、ノード2内の参加する各プロセッサ21がそれぞれに
直接にバリア同期要求40を発行し、直接にバリア状態変
数25を参照することで、それぞれのプロセッサ21が独自
にバリア同期の完了を検出することができる。したがっ
て、バリア同期を階層化する必要はなく、それぞれのプ
ロセッサ21が同じ手順でバリア同期を行なうことができ
る。
As described above, in the above-described embodiment, the barrier synchronization management process is performed except the initialization of the update of the barrier state variable 25.
Since only the barrier synchronization completion synchronization notification 41 from 50 is issued, each participating processor 21 in the node 2 directly issues a barrier synchronization request 40 to each and directly references the barrier state variable 25, The processor 21 can independently detect the completion of barrier synchronization. Therefore, it is not necessary to make barrier synchronization hierarchical, 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, an example in which the cluster system has an atomic operation function for the memory of another node is shown in FIG. This embodiment has the same configuration as the second embodiment, but 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. There is.

【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 the synchronization. Because
This is because the atomic operation function can be used to change the value of the barrier state variable 25 on each node 2 by +1 without knowing the original value.

【0042】第3の実施例の処理の流れを図6に示す。
バリア同期に先立ち、バリア同期に参加する各プロセッ
サ21はバリア同期に参加するプロセッサ21のグループを
決定(ステップU200)し、参加するプロセッサ21が存在
しているノード2に一つバリア状態変数25を生成(ステ
ップU201)し、バリア同期管理ノード5にグループ構成
とともに通知し、バリア同期管理プロセス50を割り当て
るように要求する(ステップU202)。
The process flow of the third embodiment is shown in 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 U200) and sets one barrier state variable 25 to the node 2 in which the participating processor 21 exists. It is generated (step U201), notified to the barrier synchronization management node 5 together with the group configuration, and requested to allocate 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 a request from the ID identification unit 55 waiting for synchronization (step U220), issues a new barrier synchronization ID, creates the barrier synchronization management process 50, and outputs the barrier synchronization ID. Notify each processor 21 (step U221).

【0044】バリア同期管理プロセス50は、生成される
と、内部のレジスタ52を与えられた初期値に設定し、そ
れを同じく内部のカウンタ51にもコピーし、さらに状態
変数57を各ノード2のバリア状態変数25と同じ0で初期化
し(ステップU230)、要求待ち(ステップU231)とな
る。
When the barrier synchronization management process 50 is generated, it sets the internal register 52 to the given initial value, copies it to the internal counter 51 as well, and further sets the state variable 57 of each node 2. It is initialized to 0, which is the same 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 calculation processing (step U20
3) proceeds to reach the synchronization point (step U204), the barrier synchronization variable is read from the value of the barrier state variable 25 at the start of the barrier synchronization (step U205), and a barrier synchronization request node 40 message is sent to the barrier synchronization management node 5 through the communication device 23. Send (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). If the result value becomes 0, it means that the messages have 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, the state of waiting for a message is resumed (step U230) (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 set the barrier state variable 25 on each node 2.
+1 is added to the 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.
It is copied again to 51 (step U232), and the state becomes the waiting state for barrier synchronization request (step U230).

【0049】バリア同期要求メッセージ40を発行したプ
ロセッサ21は、バリア状態変数25の値を適宜読み出して
いるが、上述のアトミック機能による同期状態変数25の
書き込み結果により、ステップU204で読み出された値と
異なる値が読み出された時点でバリア同期の成立を検出
する(ステップU207,U208)。
The processor 21 that issued the barrier synchronization request message 40 reads the value of the barrier state variable 25 as appropriate, but the value read in step U204 depends on the result of writing the synchronization state variable 25 by the atomic function described above. When a value different from 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 embodiment, the barrier synchronization management process is performed except for the initialization of the update of the barrier state variable 25.
Since it is performed only by the barrier synchronization completion notification 41 from 50, each participating processor 21 in the node directly issues a barrier synchronization request 40 to each and directly refers to the barrier state variable 25, so that each processor 21 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 point 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. It suffices to compare (step U207). Therefore, it is not necessary to make barrier synchronization hierarchical, and each processor 21 can perform barrier synchronization in the same procedure.

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

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

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

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

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

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

【図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 nodes Three-node network 5 Barrier synchronization management node 10 Barrier synchronization management unit 11 counter 12 registers 13 Synchronization establishment determination unit 15 ID selection section 16 subtractor 21 CPU (processor) 22 Status register 23 Communication equipment 25 Barrier state variables 26 Atomic calculator 29 Disk unit 31 Communication equipment 40 Barrier synchronization request 41 Barrier synchronization completion notification 42 Initial value setting 50 Barrier synchronization management process 51 counter 52 registers 53 Synchronization establishment determination unit 55 ID identifier 57 state variables 58 CPU 59 Disk unit

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平6−149752(JP,A) 特開 平8−235143(JP,A) 特開 平7−152694(JP,A) 特開 平10−49507(JP,A) 特開 平9−6734(JP,A) 斉藤秀樹 他,イベント対応型キャッ シュ・コヒーレンス制御方式とそのバリ ア同期への応用,情報処理学会研究報 告,日本,1992年 8月19日,Vol. 92 No.64(92−ARC−95),p. 9−16   ─────────────────────────────────────────────────── ─── Continued front page       (56) References Japanese Patent Laid-Open No. 6-149752 (JP, A)                 JP-A-8-235143 (JP, A)                 JP-A-7-152694 (JP, A)                 Japanese Patent Laid-Open No. 10-49507 (JP, A)                 JP-A-9-6734 (JP, A)                 Hideki Saito and others, event-capable               Shu coherence control method and its burr               Application to synchronization, IPSJ research report               Announcement, Japan, August 19, 1992, Vol.               92 No. 64 (92-ARC-95), p.               9-16

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおいて、 前記ノード間ネットワークに接続されたバリア同期手段
に、バリア同期に参加するノード内プロセッサ数を記憶
する手段と、前記記憶する手段の値が初期値としてコピ
ーされ、バリア同期に参加する各プロセッサからのバリ
ア同期要求毎に1つ減算されるカウント手段と、該カウ
ント値が0になった時点でバリア同期成立通知を前記ノ
ードに対して発行する手段と、同時に前記コピーを再び
行う手段とを有し、前記バリア同期手段は、バリア毎に1つづつ設けられ、 ノード内の各プロセッサは、このバリア同期成立通知に
より、ノード上のバリア毎に割り当てられた状態レジス
タの割り当てられたビットが反転するのを確認すること
によりバリア同期の成立を検出することを特徴とするク
ラスタ型並列計算機システム。
1. A cluster-type parallel computer system in which nodes having one or more processors are coupled to each other in an inter-node network, wherein a barrier synchronizing means connected to the inter-node network participates in barrier synchronization. A means for storing the number, a counting means for copying the value of the storing means as an initial value and subtracting one for each barrier synchronization request from each processor participating in the barrier synchronization, and the count value being 0. Has a means for issuing a barrier synchronization establishment notification to the node at the same time, and a means for performing the copy again at the same time, one barrier synchronization means is provided for each barrier , and each processor in the node With this barrier synchronization establishment notification, the assigned bit of the state register assigned for each barrier on the node A cluster-type parallel computer system characterized by detecting establishment of barrier synchronization by confirming reversal.
【請求項2】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおいて、 前記ノード間ネットワークに接続されたバリア同期管理
ノード上で走行するバリア同期プロセスを有し、 前記バリア同期プロセスは、バリア毎に1つづつ設けら
れ、 前記バリア同期プロセスは、生成されると状態変数の初
期値を“0”とする処理を行い、バリア同期に参加する
ノード内プロセッサ数を記憶する処理と、前記ノード内
プロセッサ数が初期値としてコピーされ、バリア同期に
参加する各プロセッサからのバリア同期要求毎に1つ減
算されるカウント処理と、該カウント値が0になった時
点でバリア同期管理プロセス内の前記状態変数を1つ増
数し、その値を前記ノード内の状態変数に書き込み、同
時に前記コピーを再び行う処理とを有し、 ノード内の各プロセッサは、ノード内のバリア毎の状態
変数の更新を確認することによりバリア同期の成立を検
出することを特徴とするクラスタ型並列計算機システ
ム。
2. A node having one or more processors
Cluster parallel meter connected by inter-network
Barrier synchronization management connected to the inter-node network in a computer system
A barrier synchronization process running on a node , one barrier synchronization process is provided for each barrier.
Is, the barrier synchronization process, the first of the generated if the state variable
Participate in barrier synchronization by performing processing that sets the period value to "0"
Processing for storing the number of processors in a node, and
The number of processors is copied as an initial value and is used for barrier synchronization.
Decremented by 1 for each barrier synchronization request from each participating processor
Count processing to be performed and when the count value becomes 0
Increment the state variable by 1 in the barrier synchronization management process.
And write that value to the state variable in the node,
Sometimes, the copying is performed again , and each processor in the node has a state for each barrier in the node.
By confirming the update of the variable, the establishment of barrier synchronization is detected.
Cluster type parallel computer system characterized by issuing
Mu.
【請求項3】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおけるプロセッサ間バリア同期方法にお
いて、 バリア同期に参加するプロセッサ数をバリア毎に1つづ
初期値として保持する手順と、 前記初期値を、バリア毎に1つづつ設けられたカウント
手段に設定する手順と、 前記バリア同期に参加するプロセッサからの同期要求に
従い前記カウント手段の値を1つ減算する手順と、 前記カウント手段の値が0になった時点でバリア同期の
成立を検出する手順と、 バリア同期の成立を前記バリア同期に参加するプロセッ
サを一つ以上含むノードに通知するとともに前記初期値
を前記カウント手段に設定する手順と、 前記 バリア同期に参加するプロセッサが、ノード内の状
態レジスタの値を読手順と、 前記バリア同期成立通知によって前記状態レジスタの値
を更新する手順とを有し、 前記プロセッサは該状態レジスタの更新によってバリア
同期が成立したことを検出することを特徴とするプロセ
ッサ間バリア同期方法。
3. A barrier synchronization method between processors 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 one for each barrier.
One as an initial value, a step of setting the initial value in counting means provided for each barrier, and a value of the counting means is set to 1 in accordance with a synchronization request from a processor participating in the barrier synchronization. And a step of detecting the establishment of barrier synchronization when the value of the counting means becomes 0, and notifying a node including one or more processors participating in the barrier synchronization that the barrier synchronization is established. and procedures for setting the initial value to the counting means, procedures processor participating in the barrier synchronization, in which the read non-procedure the value of the state register in the node, updates the value of the status register by the barrier synchronization establishment notification A processor for detecting that barrier synchronization has been established by updating the status register. Inter-barrier synchronization method.
【請求項4】一つ以上のプロセッサを有するノードがノ
ード間ネットワークで結合されているクラスタ型並列計
算機システムにおけるプロセッサ間バリア同期方法であ
って、 バリア同期に参加するプロセッサ数をバリア毎に1つづ
初期値として保持する手順と、 前記初期値を、バリア毎に1つづつ設けられたカウント
手段に設定する手順と、 前記バリア同期に参加するプロセッサからの同期要求に
従い前記カウント手段の値を1つ減算する手順と、 前記カウント手段の値が0になった時点でバリア同期の
成立を検出する手順と、 バリア同期の成立を前記バリア同期に参加するプロセッ
サを一つ以上含むノードに通知するとともに前記初期値
を前記カウント手段に設定する手順と、 記バリア同期に参加するプロセッサが、ノード内の状
態レジスタの値を読手順と、 前記バリア同期成立通知によって前記状態レジスタの値
を更新する手順とを有する方法をコンピュータに実行さ
せるためのプログラムを記録したコンピュータ読み込み
可能な記録媒体。
4. A barrier synchronization method between processors in a cluster 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 one for each barrier.
One as an initial value, a step of setting the initial value in counting means provided for each barrier, and a value of the counting means is set to 1 in accordance with a synchronization request from a processor participating in the barrier synchronization. And a step of detecting the establishment of barrier synchronization when the value of the counting means becomes 0, and notifying the establishment of the barrier synchronization to a node including one or more processors participating in the barrier synchronization. and procedures for setting the initial value to the counting means, the processor to join before Symbol barrier synchronization, and read non-procedure the value of the state register in the node, updates the value of the status register by the barrier synchronization establishment notification And a computer-readable recording medium recording a program for causing a computer to execute the method having the steps.
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 JP2000215182A (en) 2000-08-04
JP3482897B2 true 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)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3807250B2 (en) 2001-05-18 2006-08-09 日本電気株式会社 Cluster system, computer and program
FR2939922B1 (en) * 2008-12-16 2011-03-04 Bull Sas PHYSICAL MANAGER OF SYNCHRONIZATION BARRIER BETWEEN MULTIPLE PROCESSES
JPWO2010109761A1 (en) * 2009-03-25 2012-09-27 日本電気株式会社 Parallel processing system, parallel processing method, network switch device, and parallel processing program
US8904118B2 (en) 2011-01-07 2014-12-02 International Business Machines Corporation Mechanisms for efficient intra-die/intra-chip collective messaging
US20120179896A1 (en) 2011-01-10 2012-07-12 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
JP5780292B2 (en) * 2011-03-16 2015-09-16 富士通株式会社 Synchronization method, multi-core processor system, and synchronization system
US8463960B2 (en) 2011-08-08 2013-06-11 Arm Limited Synchronisation of data processing systems
JP5549694B2 (en) * 2012-02-23 2014-07-16 日本電気株式会社 Massively parallel computer, synchronization method, synchronization program
JP2013137833A (en) * 2013-04-08 2013-07-11 Waseda Univ Multiprocessor system and synchronization method for multiprocessor system
US20190332420A1 (en) 2018-04-27 2019-10-31 Advanced Micro Devices, Inc. Feedback guided split workgroup dispatch for gpus
GB2575293B (en) 2018-07-04 2020-09-16 Graphcore Ltd Data Through Gateway

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
斉藤秀樹 他,イベント対応型キャッシュ・コヒーレンス制御方式とそのバリア同期への応用,情報処理学会研究報告,日本,1992年 8月19日,Vol.92 No.64(92−ARC−95),p.9−16

Also Published As

Publication number Publication date
JP2000215182A (en) 2000-08-04

Similar Documents

Publication Publication Date Title
JP3482897B2 (en) Cluster-type parallel computer system and inter-processor barrier synchronization method
KR100457146B1 (en) Interrupt architecture for a non-uniform memory access data processing system
CN100418058C (en) Method and system for administration of locks for critical sections of computer programs in a computer
JP4040704B2 (en) Data processing system and method
JP2539021B2 (en) Interrupt request generation node that sends an interrupt request to the pending bus
JPS5924462B2 (en) Shared memory access control method
JPH0679305B2 (en) Device and method for responding to an interrupt using a hold bus
WO2014206078A1 (en) Memory access method, device and system
US7779172B2 (en) Activator, DMA transfer system, DMA transfer method
JP3092566B2 (en) Memory control method using pipelined bus
US8230117B2 (en) Techniques for write-after-write ordering in a coherency managed processor system that employs a command pipeline
JP5213485B2 (en) Data synchronization method and multiprocessor system in multiprocessor system
EP0217350B1 (en) Data transfer control unit and system
JP2001222466A (en) Multiprocessor system, shared memory control system, its method, and recording medium
JP2006085428A (en) Parallel processing system, interconnection network, node and network control program
WO2012109874A1 (en) Method and apparatus for dynamic addition and dynamic removal of device
JP3446653B2 (en) Data transfer device
JP2008511890A (en) Method and apparatus for changing information unit using atomic operation
JPH07141302A (en) Load distribution method for parallel computer
CN107102898B (en) Memory management and data structure construction method and device based on NUMA (non Uniform memory Access) architecture
JP2970082B2 (en) Virtual intercluster communication processor
JP2908273B2 (en) Vector processing equipment
JPH04305746A (en) Cache memory control device
JP2847729B2 (en) Information processing device
JPH1139266A (en) Multiprocessor device

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