JPH1049507A - 並列計算機 - Google Patents
並列計算機Info
- Publication number
- JPH1049507A JPH1049507A JP8202271A JP20227196A JPH1049507A JP H1049507 A JPH1049507 A JP H1049507A JP 8202271 A JP8202271 A JP 8202271A JP 20227196 A JP20227196 A JP 20227196A JP H1049507 A JPH1049507 A JP H1049507A
- Authority
- JP
- Japan
- Prior art keywords
- barrier synchronization
- request message
- synchronization request
- node
- message
- 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
Links
- 230000004888 barrier function Effects 0.000 claims abstract description 411
- 238000012545 processing Methods 0.000 claims abstract description 12
- 230000005540 biological transmission Effects 0.000 claims description 72
- 238000004891 communication Methods 0.000 claims description 15
- 238000000034 method Methods 0.000 claims description 10
- 239000000872 buffer Substances 0.000 claims description 7
- 230000005856 abnormality Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 9
- 230000007704 transition Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
き、しかも、複数のノードからなる任意の数のノードグ
ループにおいて、独立にバリア同期を必要とする処理を
実行させることができる並列計算機を提供する。 【解決手段】 並列計算機を形成するためのルーティン
グコントローラ内に、バリア同期要求トリーにおける自
身の位置に関する情報を記憶するためのレジスタ21〜
23を有し、それらのレジスタに設定された値に応じた
制御を行うバリア同期制御部19を設ける。そして、そ
のバリア同期制御部19によって、自身の子孫に当たる
各ルーティングコントローラに対応する全てのノードに
おいてバリア同期の準備ができ、かつ、自ノードにおい
てもバリア同期を行う準備が整ったときに、バリア同期
要求メッセージが送出されるようにする。
Description
し、特に、1対1通信ネットワークを備え、その通信ネ
ットワークによってバリア同期を実現する並列計算機に
関する。
よって、演算処理が並行して進められる。各計算機ノー
ドは、必要がある場合には、全ての計算機ノードに接続
された通信ネットワークを用いて他の計算機ノードとの
間で通信を行うことにより、他の計算機ノードが保持し
ているデータを獲得し、そのデータを用いて演算処理を
続ける。このような並列計算機では、各計算機ノード
は、自身が必要とするデータが他の計算機ノードによっ
て算出されるまで、そのデータの獲得を待機する必要が
ある。また、他の計算機ノードが必要とするデータを保
持している計算機ノードは、そのデータが当該他の計算
機ノードによって参照されるまで、そのデータを更新す
る演算を実行してはならない。
作を行わせなければならない場合、バリア同期と呼ばれ
る同期が取られている。
は、バリア同期を実現するために、1つあるいは複数個
の物理的なトリー(木構造)からなるバリア同期専用ネ
ットワークを用いていた。このため、バリア同期に参加
させる計算機ノードを任意に選択することができないと
うい問題が生じていた。また、設定できるバリア同期の
数も、バリア同期専用ネットワークの形状によって一義
的に決まってしまう。
加する計算機ノードを任意に選択でき、しかも、複数の
計算機ノードからなる任意の数のノードグループにおい
て、独立にバリア同期を必要とする処理を実行させるこ
とができる並列計算機を提供することにある。
複数のノードと、複数のノードのそれぞれに接続される
複数のルーティングコントローラによって形成された通
信ネットワークとを有する並列計算機であり、各ルーテ
ィングコントローラは、他のルーティングコントローラ
からバリア同期要求メッセージを受信する第1バリア同
期要求メッセージ受信手段と、自身に接続されたノード
からのバリア同期要求メッセージを受信する第2バリア
同期要求メッセージ受信手段と、第1バリア同期要求メ
ッセージ受信手段に受信されるべきバリア同期要求メッ
セージの数である受信予定数と、バリア同期要求メッセ
ージを送信すべきノードの識別情報である第1ノード識
別情報と、バリア同期成立メッセージを送信すべきノー
ドの識別情報である第2ノード識別情報とを記憶する記
憶手段と、第1バリア同期要求メッセージ受信手段が記
憶手段に記憶されている受信予定数と等しい数のバリア
同期要求メッセージを受信し、かつ、第2バリア同期要
求メッセージ受信手段がバリア同期要求メッセージを受
信したときに、記憶手段に第1ノード識別情報が記憶さ
れていた場合には、第1ノード識別情報で識別されるノ
ードに対してバリア同期要求メッセージを送信し、記憶
手段に第1ノード識別情報が記憶されていなかった場合
には、自身が接続されているノードに対してバリア同期
が成立した旨を通知するとともに、記憶手段内の第2ノ
ード識別情報で識別されるノードに対してバリア同期成
立メッセージを送信する第1送信手段と、自身に接続さ
れたノードに対するバリア同期成立メッセージを他のル
ーティングコントローラから受信したときに、自身に接
続されたノードに対してバリア同期が成立した旨を通知
するとともに、記憶手段内の第2ノード識別情報で識別
されるノードに対してバリア同期成立メッセージを送信
する第2送信手段とを備える。
接続されたノード(自ノードと表記する)からのバリア
同期要求メッセージ、あるいは、他のルーティングコン
トローラからのバリア同期要求メッセージに対して、記
憶手段に記憶された受信予定数、第1ノード識別情報、
第2ノード識別情報に応じた応答を行う複数のルーティ
ングコントローラによって形成された通信ネットワーク
を有する。
ア同期に参加させるべき各ノードに対応するルーティン
グコントローラの記憶手段内の第1ノード識別情報に、
バリア同期要求メッセージの通知順に応じて、バリア同
期に参加させる他ノードのノード識別情報を設定すると
ともに、第2ノード識別情報に、バリア同期成立メッセ
ージの通知順に応じて、ノード識別情報を設定しておけ
ば、それらのノード間でバリア同期を実現できることに
なる。
つかの第2ノード識別情報を記憶させておくとともに、
第1バリア同期要求メッセージ受信手段が記憶手段に記
憶されている受信予定数と等しい数のバリア同期要求メ
ッセージを受信し、かつ、第2バリア同期要求メッセー
ジ受信手段がバリア同期要求メッセージを受信したとき
に、記憶手段に第1ノード識別情報が記憶されていなか
った場合には、記憶手段に記憶されている各第2ノード
識別情報で識別される各ノードに対してバリア同期成立
メッセージを送信する第1送信手段を用いることができ
る。
ア同期要求メッセージ受信手段がバリア同期要求メッセ
ージを受信した際に、その内容がカウントアップされる
カウンタと、そのカウンタの値と記憶手段に記憶されて
いる受信予定数とが一致しているときにその旨を示す情
報を出力する情報出力手段をさらに備え、その情報出力
手段が出力する情報に基づき、第1バリア同期要求メッ
セージ受信手段が記憶手段に記憶されている受信予定数
と等しい数のバリア同期要求メッセージを受信したか否
かを判定する第1送信手段を有するルーティングコント
ローラを用いることが出来る。
別情報を記憶させておくとともに、第1送信手段とし
て、記憶手段に1つ以上の第1ノード識別情報が記憶さ
れていた場合には、各第1ノード識別情報で識別される
各ノードに対してバリア同期要求メッセージを送信する
手段を用いることもできる。
身が接続されたノードに対するバリア同期成立メッセー
ジを受信したときに、そのバリア同期成立メッセージを
送信したルーティングコントローラに対して、バリア同
期成立メッセージを受信したことを示すバリア同期成立
メッセージACKを送信する第2送信手段を採用すると
ともに、第1バリア同期要求メッセージ受信手段によっ
てバリア同期要求メッセージが受信されたときに、その
バリア同期要求メッセージを送信したルーティングコン
トローラに対して、バリア同期要求メッセージを受信し
たことを示すバリア同期要求メッセージACKを送信す
る第3送信手段と、バリア同期成立メッセージACKと
バリア同期要求メッセージACKの受信状況を監視する
ことにより、バリア同期成立メッセージとバリア同期要
求メッセージに対する処理の進行の程度を認識する認識
手段とを付加することも出来る。
ントローラを構成する場合には、受信したバリア同期要
求メッセージが正当なものであった場合には、そのバリ
ア同期成立メッセージを送信したルーティングコントロ
ーラに対してバリア同期要求メッセージACKを送信
し、そのバリア同期成立メッセージが正当なものでなか
った場合には、その旨を示すバリア同期要求メッセージ
NAKを送信する第2送信手段、並びに、受信したバリ
ア同期成立メッセージが正当なものであった場合には、
そのバリア同期成立メッセージを送信したルーティング
コントローラに対してバリア同期成立メッセージACK
を送信し、そのバリア同期成立メッセージが正当なもの
でなかった場合には、バリア同期成立メッセージNAK
を送信する第3送信手段、バリア同期要求メッセージN
AKとバリア同期成立メッセージNAKの受信状況をも
監視し、バリア同期要求メッセージNAKとバリア同期
成立メッセージNAKのいずれかを受信したことを検出
したときには、自身が接続されたノードに対して異常が
発生したことを通知する認識手段を用いることもでき
る。
含むバリア同期要求メッセージを第2バリア同期要求メ
ッセージ手段に対して送信するノードを用いるととも
に、記憶手段に、それぞれ、グループ識別情報に対応づ
けられた、受信予定数と第1ノード識別情報と第2ノー
ド識別情報とを含む複数のバリア同期情報を記憶させて
おき、第1送信手段並びに第2送信手段が、メッセージ
に含まれるグループ情報に応じて、各メッセージに対す
る処理内容を決定するように各ルーティングコントロー
ラを構成すれば、1つのノードを複数のバリア同期グル
ープで共通して使用できる並列計算機が得られることに
なる。
上の所定のアドレスに記憶されたデータに基づき、バリ
ア同期が成立したか否かを判断するノードを用いる場合
には、各ルーティングコントローラ内の第1送信手段お
よび第2送信手段として、それぞれ、自身が接続されて
いるノードに対してバリア同期が成立した旨を通知する
際に、そのノード内に備えられているメモリの所定のア
ドレスに記憶されたデータを書き換える手段を採用する
ことが望ましい。
各ノードが、割り込みによるバリア同期成立の通知に比
して、バリア同期が成立したことを高速に認識すること
ができることになる。
否かを示すデータの、内部に備えるメモリ上での格納位
置を示すアドレス情報を含むバリア同期要求メッセージ
を送信させて、第1送信手段および第2送信手段が、そ
れぞれ、自ノードに対してバリア同期が成立した旨を通
知する際に、自ノードのメモリ内の、受信されたバリア
同期要求メッセージに含まれるアドレス情報で指定され
るデータを書き換えるように、並列計算機を構成するこ
ともできる。
は、受信した情報および送信すべき情報を一時的に記憶
するための幾つかのバッファを備え、各送信手段とし
て、それらのバッファを利用することによって、通信ネ
ットワーク上に仮想的なチャネルを設定し、そのチャネ
ルを用いてバリア同期関係の各メッセージを送信する手
段を採用したルーティングコントローラを用いることが
望ましい。このように並列計算機を構成した場合には、
バリア同期のためのメッセージの交換が、他のメッセー
ジ交換の影響を受けずに行えるので、高速にバリア同期
を実現できることになる。
実施形態を説明する。図1に、本発明の一実施形態によ
る並列計算機の概略構成を示す。図示したように、実施
形態の並列計算機は、複数の計算機ノード11(以下、
「ノード」と表記する)と、各ノード11に接続された
複数のルーティングコントローラ12とから構成されて
おり、各ルーティングコントローラ12は、2次元メッ
シュ状の通信ネットワークが形成されるように、他の4
つのルーティングコントローラ12とそれぞれ物理チャ
ネル(伝送路)によって接続されている。
リとを有するユニットであり、各ノード11は、他のノ
ード11とは独立に、演算処理を実行する。また、ノー
ド11は、必要がある場合には、ルーティングコントロ
ーラ12によって形成されている通信ネットワークを用
いて他のノード11との間で通信を行う。
に接続されたノード11(以下、自ノードと表記する)
からメッセージ(通信情報)を受け取ったとき、そのメ
ッセージを、メッセージのヘッダに含まれる送信先ノー
ド番号に応じたルーティングコントローラ12に送出す
る。また、各ルーティングコントローラ12は、他のル
ーティングコントローラ12から、送信先ノード番号が
自ノードのノード番号ではないメッセージを受信したと
きにも、そのメッセージを、送信先ノード番号に応じた
ルーティングコントローラ12に送信する。そして、各
ルーティングコントローラ12は、他のルーティングコ
ントローラ12から、送信先ノード番号が自ノードのノ
ード番号と一致するメッセージを受信したときに、受信
したメッセージを自ノードに渡す。
には、メッセージを一時的に記憶するためのバッファが
設けられており、ルーティングコントローラ12間でメ
ッセージを転送する際には、そのバッファを利用して物
理チャネル上に仮想チャネルを設定し、その仮想チャネ
ルによってメッセージを転送する、いわゆる、仮想チャ
ネルフロー制御が行われる。
ルーティングコントローラ12は、並列計算機を構成す
る任意の数のノード11間でバリア同期を実現するため
の機能を備えている。以下、当該機能を具体的に説明す
る。なお、バリア同期は、バリア同期に参加する各ノー
ド11からバリア同期要求メッセージが出され、それに
より複数のルーティングコントローラ12間で各種のメ
ッセージが送受信されることによって実現されるのであ
るが、説明の便宜上、まず、ルーティングコントローラ
12の単独での動作内容を説明することにする。
概略構成を示す。図示したように、ルーティングコント
ローラ12は、第1受信部141〜144と第2受信部1
5とスイッチ16と第1送信部171〜174と第2送信
部18とバリア同期制御部19とを備える。なお、ルー
ティングコントローラ12は、LSI(大規模集積回
路)によって実現されている。
第2受信部15からの通信情報(メッセージ)を、第1
送信部171〜174と第2送信部18とのいずれかに供
給するための機構である。
の4つのルーティングコントローラ12内に備えられて
いる第1送信部171〜174のいずれかが送信したメッ
セージを受信する。第1受信部141〜144は、他のル
ーティングコントローラ12からのメッセージを受信し
た場合、そのメッセージのヘッダに含まれる宛先ノード
番号に基づき、メッセージを転送すべきノードを識別す
る。そして、第1受信部141〜144は、入力されたメ
ッセージが、識別したノードに転送されるようにスイッ
チ16を制御するとともに、そのメッセージをスイッチ
16に供給する。
ード(自身に接続されているノード)に対するメッセー
ジを受信した場合、スイッチ16を制御することによっ
て、受信したメッセージを第2送信部18に供給する。
また、他ノード(自ノードを除くノード)へ転送すべき
メッセージを受信した場合、第1受信部141〜14
4は、スイッチ16を制御することによって、受信した
メッセージを第1送信部171〜174のいずれかに供給
する。なお、第1受信部141〜144には、それぞれ、
前述した仮想チャネルフロー制御に使用されるバッファ
が設けられている。
ッセージが供給された場合、そのメッセージのヘッダに
含まれる宛先ノード番号に基づき、メッセージを転送す
べきノードを識別する。そして、第2受信部15は、供
給されたメッセージがそのノードに転送されるようにス
イッチ16を制御するとともに、自ノードからのメッセ
ージをスイッチ16に供給する。また、第2受信部15
は、自ノードからのバリア同期要求メッセージを受信し
た場合、そのメッセージのスイッチ16への供給を行う
ことなく、バリア同期要求メッセージ受信通知をバリア
同期制御部19に送出する。
セージには、バリア同期が成立しているか否かを表すフ
ラグであるバリア同期フラグの、ノード内のメモリ上で
の記憶位置を示すアドレス情報が含まれている。バリア
同期制御部19は、バリア同期要求メッセージ受信通知
時に、このアドレス情報も受け取り、バリア同期が成立
したことを検出した際、自ノードのメモリ上の、そのア
ドレス情報で識別されるデータを更新することによっ
て、自ノードに対してバリア同期の成立を通知する。
から送信を依頼された各種のメッセージをスイッチ16
に供給する処理も行う。また、第2受信部15は、バリ
ア同期制御部19から依頼されたメッセージのスイッチ
16への供給を終えた際、バリア同期制御部19に対し
て、メッセージ送信完了通知を出力する。なお、バリア
同期制御部19が第2受信部15に対して送信を依頼す
るメッセージには、バリア同期要求メッセージ、バリア
同期成立メッセージ、バリア同期要求メッセージAC
K、バリア同期成立メッセージACK、バリア同期要求
メッセージNAK、バリア同期成立メッセージNAKな
どがある。各メッセージの詳細に関しては後ほど説明を
行うが、バリア同期要求メッセージACK/NAK、バ
リア同期成立メッセージACK/NAKは、それぞれ、
バリア同期要求メッセージ、バリア同期成立メッセージ
の受信を検出したバリア同期制御部19が、各メッセー
ジを送信したルーティングコントローラに対して返す応
答メッセージである。
から供給されたメッセージを、自身と接続された他のル
ーティングコントローラへ、送信する。第2送信部18
は、スイッチ16から供給されたメッセージが通常のメ
ッセージであった場合、そのメッセージを自ノードへ供
給する。一方、スイッチ16から供給されたメッセージ
が、上記したバリア同期関係のメッセージであった場
合、第2送信部18は、そのメッセージの受信通知をバ
リア同期制御部19に送出する。
部19から、自ノードへのバリア同期成立メッセージ送
信が指示された場合には、その指示中に含まれる、バリ
ア同期フラグに関するアドレス情報(自ノードがバリア
同期要求メッセージ中で指定したアドレス情報)に基づ
き、自ノード内のメモリ上のバリア同期フラグの更新を
行う。
制御部19の構成、動作を説明する。なお、図3は、バ
リア同期制御部19のブロック図であり、図4は、バリ
ア同期制御部19内に設けられているシーケンサ28の
状態遷移図である。
9は、バリア同期要求メッセージ受信数レジスタ21と
バリア同期要求メッセージ送信数レジスタ22と4つの
宛先レジスタ231〜234とバリア同期要求メッセージ
受信カウンタ25とバリア同期成立メッセージ受信カウ
ンタ26とバリア同期メッセージACKカウンタ27と
シーケンサ28と比較器31、32とを備える。
は、バリア同期を必要とするプロセスの実行に先駆け
て、それぞれ、以下のようなデータが設定される。バリ
ア同期要求メッセージ受信数レジスタ21には、他ノー
ドから受信することになるバリア同期要求メッセージ数
が設定される。バリア同期要求メッセージ送信数レジス
タ22には、バリア同期要求メッセージを送信すべき他
ノードの数が設定される。宛先レジスタ231〜234の
うち、宛先レジスタ231から宛先レジスタ23m(m
は、バリア同期要求メッセージ受信数レジスタ21に設
定された数値;0≦m≦4)までのm個のレジスタに
は、バリア同期成立メッセージを送信すべきノードのノ
ード番号が設定される。また、宛先レジスタ234から
宛先レジスタ235-n(nは、バリア同期要求メッセー
ジ送信数レジスタ22に設定された数値;0≦n、n+
m≦4)までのn個のレジスタには、バリア同期要求メ
ッセージを送信すべきノードのノード番号が設定され
る。
5は、第2送信部18からバリア同期要求メッセージ受
信通知を受けた際に、内部に保持している数値を“1”
だけ増加させる。すなわち、バリア同期要求メッセージ
受信カウンタ25は、他のルーティングコントローラ1
2から受けたバリア同期要求メッセージの総数をカウン
トする。
5の値と、バリア同期要求メッセージ受信数レジスタ2
1の値は、比較器31に入力されており、比較器31
は、両入力の値が一致している場合、その旨を表す信号
を、シーケンサ28に出力する。
6は、第2送信部18からバリア同期成立メッセージ受
信通知を受けた際に、内部に保持している数値を“1”
だけ増加させる。すなわち、バリア同期成立メッセージ
受信カウンタ26は、他のルーティングコントローラ1
2から受けたバリア同期成立メッセージの総数をカウン
トする。
6の値と、バリア同期要求メッセージ送信数レジスタ2
2の値は、比較器32に入力されており、比較器32
は、両入力の値が一致している場合には、その旨を表す
信号を、シーケンサ28に出力する。
は、第2受信部15から、メッセージの送信完了通知を
受けた際に、内部に保持している数値を“1”だけ増加
させる。また、バリア同期メッセージACKカウンタ2
7は、第2送信部18から、バリア同期要求メッセージ
ACKあるいはバリア同期成立メッセージACKの受信
通知を受けた際には、内部に保持している数値を“1”
だけ減少させる。また、バリア同期メッセージACKカ
ウンタ27は、自身が保持している値が“0”であった
場合、その旨を示す信号をシーケンサ28に出力する。
作を詳細に説明する。シーケンサ28は、通常、アイド
ル状態S1にあり、第2受信部15から、バリア同期要
求メッセージ受信通知を受けたとき(I)に、バリア同
期要求メッセージ受信待ち状態S2に遷移する。すなわ
ち、シーケンサ28は、自ノードがバリア同期要求メッ
セージを出力したときに、バリア同期要求メッセージ受
信待ち状態S2に遷移する。
較器31からの信号に基づき、バリア同期要求メッセー
ジ受信カウンタ25の値とバリア同期要求メッセージ受
信数レジスタ21の値が一致しているか否かの判断を行
う。状態S2に遷移した段階で両者の値が一致していて
いた場合(II)、すなわち、バリア同期要求メッセージ
受信数レジスタ21に設定されている数値分のバリア同
期要求メッセージが既に受信されていた場合、シーケン
サ28は、即座に、バリア同期要求メッセージ送信S3
を行う。また、両者の値が一致していなかった場合、シ
ーケンサ28は、それらの値が一致するのを待機し、そ
れらの値が一致したとき(II)に、バリア同期要求メッ
セージ送信S3を行う。
2受信部15に対して、バリア同期要求メッセージ送信
数レジスタ22に設定されている数値分のバリア同期要
求メッセージの送出を依頼する。この際、シーケンサ2
8は、宛先レジスタ235-n〜234(nは、バリア同期
要求メッセージ送信数レジスタ22に設定されている数
値)に記憶されているノード番号を第2受信部15に通
知することによって、バリア同期要求メッセージの宛先
を指定する。
5は、バリア同期要求メッセージの送信を行った際、メ
ッセージの送信完了通知をバリア同期制御部19に対し
て出力する。また、バリア同期メッセージACKカウン
タ27は、その送信完了通知を受けて、内部に保持して
いる数値のインクリメントを行う。このため、状態S3
の終了時、バリア同期メッセージACKカウンタ27に
は、ルーティングコントローラから送信されたバリア同
期要求メッセージの総数が保持されることになる。
シーケンサ28は、バリア同期メッセージACKカウン
タ27からの信号(バリア同期メッセージACKカウン
タ27の値)を監視する状態であるバリア同期要求メッ
セージACK受信待ち状態S4に遷移する(III)。そ
して、シーケンサ28は、バリア同期メッセージACK
カウンタ27が“0”になったことを検出したとき(I
V)に、バリア同期成立メッセージ待ち状態S5に遷移
する。すなわち、送信したバリア同期要求メッセージ数
と同数のバリア同期要求メッセージACKが受信された
ときに、シーケンサ28は、バリア同期成立メッセージ
待ち状態S5に遷移する。
較器32からの信号に基づき、バリア同期成立メッセー
ジ受信カウンタ26の値とバリア同期要求メッセージ送
信数レジスタ22の値が一致しているか否かの判断を行
う。そして、シーケンサ28は、それらの値が一致した
とき、すなわち、送信したバリア同期要求メッセージ数
と同数のバリア同期成立メッセージが受信されたとき
(V)に、バリア同期成立メッセージ送信S6を行う。
2受信部15に対して、バリア同期要求メッセージ受信
数レジスタ21に記憶されている数値分のバリア同期成
立メッセージの送出を依頼する。この際、シーケンサ2
8は、宛先レジスタ231〜23mに記憶されているノー
ド番号を、第2受信部15に通知することによって、バ
リア同期成立メッセージの宛先を指定する。なお、この
状態S6の終了時には、状態S3の終了時と同様に、バ
リア同期メッセージACKカウンタ27に、自己のルー
ティングコントローラ12から送信されたバリア同期成
立メッセージの総数が記憶されることになる。
立メッセージACK受信待ち状態S7に遷移し(VI)、
バリア同期メッセージACKカウンタ27の値の監視を
開始する。そして、バリア同期メッセージACKカウン
タ27が“0”になったことを検出したとき(VII)、
シーケンサ28は、自ノードに対するバリア同期成立メ
ッセージ送信S8を行い、アイドル状態S1に戻る(VI
II)。
して、ルーティングコントローラ12に受信された各種
メッセージに含まれるバリア同期グループ識別子(詳細
は後述)、送出元ノード番号等を用いて、そのメッセー
ジが正常なものであるか否かの判断を行う。そして、シ
ーケンサ28は、受信したメッセージが、正常なメッセ
ージであった場合には、第2受信部15に、そのメッセ
ージに対するメッセージACKの送信を依頼する。一
方、受信したメッセージが、正常なメッセージでなかっ
た場合、シーケンサ28は、第2受信部15に、そのメ
ッセージに対するメッセージNAKの送信を依頼する。
S7において、バリア同期要求メッセージNAK、バリ
ア同期成立メッセージNAKを受信することもある。シ
ーケンサ28は、状態S4において、バリア同期要求メ
ッセージNAKを受信したことを検出したとき(IV′)
と、状態S7において、バリア同期成立メッセージNA
Kを受信したことを検出したとき(VII′)には、自ノ
ードへのエラー発生通知S9を行い、アイドル状態S1
に戻る。
コントローラ12を用いて構成されている本並列計算機
全体の動作ならびに各ルーティングコントローラ12内
の各レジスタ21、22、231〜234へのデータの設
定手順を説明する。
する処理を実行させる場合、まず、バリア同期をとるこ
とが必要とされる複数のノード11(ルーティングコン
トローラ12)に対して、バリア同期要求メッセージの
通知手順を定めるトリーであるバリア同期要求トリーを
決定しておく。
でバリア同期をとる場合、それらのノード11(ルーテ
ィングコントローラ12)に対して、図5に模式的に示
したようなバリア同期要求トリーを決定しておく。そし
て、決定したバリア同期要求トリーが構成されるよう
に、各ルーティングコントローラ12内のレジスタ21
〜23にデータを設定する。この図に示したバリア同期
要求トリーを実現するためには、ルーティングコントロ
ーラAが、ルーティングコントローラBに対してバリア
同期要求メッセージを送出する必要がある。このため、
ルーティングコントローラA内の宛先レジスタ234に
は、バリア同期要求メッセージを送出すべきノードのノ
ード番号として、ノードBのノード番号を設定する。ま
た、ルーティングコントローラAは、ルーティングコン
トローラBだけにバリア同期要求メッセージを送出すれ
ば良いので、バリア同期要求メッセージ送信数レジスタ
22には、ルーティングコントローラAが送出すべきバ
リア同期要求メッセージの総数である“1”を設定す
る。また、ルーティングコントローラAは、バリア同期
要求メッセージを他のルーティングコントローラから受
けないので、バリア同期要求メッセージ受信数レジスタ
21には、“0”を設定する。
ーティングコントローラB、Dからバリア同期要求メッ
セージを受け、ルーティングコントローラEにバリア同
期要求メッセージを送出する必要がある。このため、ル
ーティングコントローラC内のバリア同期要求メッセー
ジ受信数レジスタ21には、“2”を設定する。また、
宛先レジスタ231、232には、バリア同期成立メッセ
ージを送出すべきノードであるノードBとノードDのノ
ード番号を設定する。また、ルーティングコントローラ
C内のバリア同期要求メッセージ送信数レジスタ22に
は、“1”を設定し、宛先レジスタ234には、ノード
Eのノード番号を設定する。
の4つのルーティングコントローラからバリア同期要求
メッセージを受けるが、他のルーティングコントローラ
にバリア同期要求メッセージを送出する必要はない。こ
のため、ルーティングコントローラF内のバリア同期要
求メッセージ受信数レジスタ21には、“4”を設定
し、宛先レジスタ231〜234には、ノードFの周囲の
4つのノードのノード番号を設定する。また、バリア同
期要求メッセージ送信数レジスタ22には、“0”を設
定する。
トローラA内のシーケンサ28は、比較器31から常に
レジスタ21の値とカウンタ25の値とが一致している
ことを通知されることになる。このため、シーケンサ2
8は、自ノードからのバリア同期要求メッセージを受信
した結果、アイドル状態S1からバリア同期要求メッセ
ージ受信待ち状態S2に遷移したとき、状態S2におい
て、他ノードからのバリア同期要求メッセージが受信さ
れるのを待つことなく、バリア同期要求メッセージ送信
S3を行う。すなわち、ルーティングコントローラA
は、自ノードからのバリア同期要求メッセージを受信し
た際に、即座に、ルーティングコントローラBに対して
バリア同期要求メッセージを送信する。
リア同期要求メッセージ受信数レジスタ21には、
“2”が設定されている。このため、ルーティングコン
トローラC内のシーケンサ28は、自ノードからのバリ
ア同期要求メッセージを受けてバリア同期要求メッセー
ジ受信待ち状態S2に遷移したときに、ノードB、Dか
らのバリア同期要求メッセージが受信されていなかった
場合には、それらのノードによるバリア同期要求メッセ
ージの送信を待機する。そして、シーケンサ28は、比
較器31からの信号によって、ノードB、Dからのバリ
ア同期要求メッセージの受信が確認できたときに、ルー
ティングコントローラEに対して、バリア同期要求メッ
セージを送出する。なお、自ノードからのバリア同期要
求メッセージの受信以前に、ノードB、Dからのバリア
同期要求メッセージが受信されていた場合、シーケンサ
28は、状態S2において、バリア同期要求メッセージ
の受信を待機することなく、状態S3に移行する。
は、ノードA〜ノードDが全てバリア同期要求メッセー
ジを送信した時点で、ルーティングコントローラEに対
して、バリア同期要求メッセージを送信する。
サ28は、バリア同期要求メッセージ受信数レジスタ2
1に“4”が保持されているので、自ノードからのバリ
ア同期要求メッセージを受信してアイドル状態S1から
バリア同期要求メッセージ受信待ち状態S2に遷移した
際、比較器31からの信号に基づき、他の4つのノード
からのバリア同期要求メッセージが受信されているか否
かを判断する。そして、シーケンサ28は、他の4つの
ルーティングコントローラからのバリア同期要求メッセ
ージが既に受信されていた場合には、即座に、状態S3
に遷移する。また、シーケンサ28は、未受信のバリア
同期要求メッセージがあった場合には、それらのバリア
同期要求メッセージの受信が完了したときに、状態S3
に遷移する。ただし、ルーティングコントローラF内の
バリア同期要求メッセージ送信数レジスタ22には、
“0”が設定されているため、シーケンサ28は、状態
S3〜S5において、特に処理を実行せずに、バリア同
期成立メッセージ送信S6を開始する。
のシーケンサ28は、4つのノードからのバリア同期要
求メッセージ及び自ノードからのバリア同期要求メッセ
ージの受信により、バリア同期に関係する全てのノード
がバリア同期要求メッセージを送出したこと(バリア同
期が成立したこと)を認識する。そして、ルーティング
コントローラF内のシーケンサ28は、図6に模式的に
示したように、自身に対してバリア同期要求メッセージ
を送出した4つのルーティングコントローラ(宛先レジ
スタ231〜234にノード番号が記憶されているノード
に対応するルーティングコントローラ)に対してバリア
同期成立メッセージを送信する。次いで、シーケンサ2
8は、それら4つのルーティングコントローラからバリ
ア同期成立メッセージACK(あるいはNAK)が送信
されてくるのを待機し(状態S7)、4つのバリア同期
成立メッセージACKを受信したときに、自ノードに対
して、バリア同期が成立した旨を通知する。
期成立メッセージを受信した各ルーティングコントロー
ラは、バリア同期要求メッセージ受信数レジスタ21に
設定されている数値分のルーティングコントローラに対
するバリア同期成立メッセージの送出を行うとともに、
自ノードに対して、バリア同期が成立した旨を通知す
る。
ルーティングコントローラ12において行われることに
よって、バリア同期に関係する全てのノード11にバリ
ア同期成立が通知される。そして、バリア同期の成立が
通知されたノード11間でメッセージの送受信が実行さ
れる。
は、バリア同期要求トリーのルートに位置するルーティ
ングコントローラが、バリア同期に参加する全てのノー
ドにおけるバリア同期要求メッセージの送出を監視して
いる。このため、バリア同期要求メッセージを最も遅く
送出するノードを、バリア同期要求トリーのリーフ
(葉)に対応づけた場合、そのノードからバリア同期要
求メッセージが送出された段階で、バリア同期を成立さ
せるための条件が満たされるにもかかわらず、実際にバ
リア同期成立メッセージの送出が開始されるまでには、
さらに、そのバリア同期要求メッセージがルート(バリ
ア同期成立メッセージを最初に出力するルーティングコ
ントローラ)に到達するまでの時間が必要とされること
になる。このため、バリア同期要求メッセージを最も遅
く送出するノードに対応するルーティングコントローラ
がルートとなるようにバリア同期要求トリーの形状を定
めておくことが望ましい。
列計算機を構成する各ルーティングコントローラは、バ
リア同期要求メッセージの送出先、バリア同期成立メッ
セージの送出先(バリア同期要求トリー、バリア同期成
立トリーの形状)を設定できるように構成されている。
並列計算機を構成する複数のノード11を、幾つかのバ
リア同期グループに分類し、各バリア同期グループにそ
れぞれバリア同期を必要とする処理を実行させることも
できる。なお、図7では、ルーティングコントローラ1
2内に表示してある“a”、“b”、“c”といった符
号によって、そのルーティングコントローラ12に対応
するノード11が属するノードグループを示してある。
ノードグループにも属さない管理用ノードを用意してお
き、各バリア同期グループに属するノードからバリア同
期を必要とする処理が終わったことを通知された際に、
ノード110によって、新たなノード同期グループが設
定されるように、並列計算機を動作させることもでき
る。また、ノード110における処理が少ない場合に
は、ノード110が他のノードグループのいずれかに参
加するように設定することも可能である。
能である。例えば、バリア同期要求トリーとは別形状の
バリア同期成立トリーによって、バリア同期成立メッセ
ージが各ノードに通知されるように、並列計算機を構成
することが出来る。この場合、自ノードに対して、バリ
ア同期要求メッセージを送信してくるノードのノード識
別情報と、バリア同期成立メッセージを送信すべきノー
ドのノード識別情報を記憶するための宛先レジスタを別
に用意する。また、各ルーティングコントローラ内に、
バリア同期制御部相当の処理をバリア同期グループ単位
で並列的に実行する制御部を設ければ、1つのノードを
複数のバリア同期グループ内で同時期に使用できる並列
計算機が構成できることになる。
ュ状にルーティングコントローラを接続することによっ
て通信ネットワークを形成してあるが、トーラス状等の
他の接続方法によって通信ネットワークを構成しても良
いことは当然である。
ティングコントローラがそれぞれノードに接続されてい
るが、各ルーティングコントローラがノード内部に内蔵
されるように構成しても良い。
ィングコントローラとノードに接続されているが、各ル
ーティングコントローラがノード内部に内蔵されるよう
に構成しても良い。
ングコントローラとノードが別個に設けられているが、
ルーティングコントローラを内蔵するノードを組み合わ
せて並列計算機を構成しても良い。
関係の各メッセージを送信するためのチャネルとして用
いても良いことは当然である。
並列計算機では、バリア同期に参加するノードを任意に
選択できる。また、並列計算機内の複数のノードを幾つ
かのノードグループに分類し、各ノードグループにおい
て、独立にバリア同期を必要とする処理を実行させるこ
ともできる。このため、本発明の並列計算機を用いれ
ば、各種の演算処理を極めて効率的に実行することがで
きる。
成を示すブロック図である。
ントローラの構成を示すブロック図である。
制御部の構成を示すブロック図である。
移図である。
同期要求トリーを説明するための模式図である。
に、設定されるバリア同期成立トリーを説明ための模式
図である。
めのブロック図である。
Claims (12)
- 【請求項1】 複数のノードと、前記複数のノードのそ
れぞれに接続される複数のルーティングコントローラに
よって形成された通信ネットワークとを有する並列計算
機であって、 前記ルーティングコントローラは、 他のルーティングコントローラからバリア同期要求メッ
セージを受信する第1バリア同期要求メッセージ受信手
段と、 自身に接続されたノードからのバリア同期要求メッセー
ジを受信する第2バリア同期要求メッセージ受信手段
と、 前記第1バリア同期要求メッセージ受信手段に受信され
るべきバリア同期要求メッセージの数である受信予定数
と、バリア同期要求メッセージを送信すべきノードの識
別情報である第1ノード識別情報と、バリア同期成立メ
ッセージを送信すべきノードの識別情報である第2ノー
ド識別情報とを記憶する記憶手段と、 前記第1バリア同期要求メッセージ受信手段が前記記憶
手段に記憶されている前記受信予定数と等しい数のバリ
ア同期要求メッセージを受信し、かつ、前記第2バリア
同期要求メッセージ受信手段がバリア同期要求メッセー
ジを受信したときに、前記記憶手段に第1ノード識別情
報が記憶されていた場合には、第1ノード識別情報で識
別されるノードに対してバリア同期要求メッセージを送
信し、前記記憶手段に第1ノード識別情報が記憶されて
いなかった場合には、自身が接続されているノードに対
してバリア同期が成立した旨を通知するとともに、前記
記憶手段内の第2ノード識別情報で識別されるノードに
対してバリア同期成立メッセージを送信する第1送信手
段と、 自身に接続されたノードに対するバリア同期成立メッセ
ージを他のルーティングコントローラから受信したとき
に、自身に接続されたノードに対してバリア同期が成立
した旨を通知するとともに、前記記憶手段内の第2ノー
ド識別情報で識別されるノードに対してバリア同期成立
メッセージを送信する第2送信手段とを備えることを特
徴とする並列計算機。 - 【請求項2】 前記記憶手段は、幾つかの第2ノード識
別情報を記憶し、 前記第1送信手段は、前記第1バリア同期要求メッセー
ジ受信手段が前記記憶手段に記憶されている前記受信予
定数と等しい数のバリア同期要求メッセージを受信し、
かつ、前記第2バリア同期要求メッセージ受信手段がバ
リア同期要求メッセージを受信したときに、前記記憶手
段に第1ノード識別情報が記憶されていなかった場合に
は、前記記憶手段に記憶されている各第2ノード識別情
報で識別される各ノードに対してバリア同期成立メッセ
ージを送信することを特徴とする請求項1に記載の並列
計算機。 - 【請求項3】 前記ルーティングコントローラは、前記
第1バリア同期要求メッセージ受信手段がバリア同期要
求メッセージを受信した際に、その内容がカウントアッ
プされるカウンタと、そのカウンタの値と前記記憶手段
に記憶されている前記受信予定数とが一致しているとき
にその旨を示す情報を出力する情報出力手段を、さらに
備え、 前記第1送信手段は、前記情報出力手段が出力する情報
に基づき、前記第1バリア同期要求メッセージ受信手段
が前記記憶手段に記憶されている前記受信予定数と等し
い数のバリア同期要求メッセージを受信したか否かを判
定することを特徴とする請求項1または請求項2記載の
並列計算機。 - 【請求項4】 前記記憶手段は、幾つかの第1ノード識
別情報を記憶し、 前記第1送信手段は、前記第1バリア同期要求メッセー
ジ受信手段が前記記憶手段に記憶されている前記受信予
定数と等しい数のバリア同期要求メッセージを受信し、
かつ、前記第2バリア同期要求メッセージ受信手段がバ
リア同期要求メッセージを受信したときに、前記記憶手
段に1つ以上の第1ノード識別情報が記憶されていた場
合には、各第1ノード識別情報で識別される各ノードに
対してバリア同期要求メッセージを送信することを特徴
とする請求項1ないし請求項3のいずれかに記載の並列
計算機。 - 【請求項5】 前記ルーティングコントローラ内の第2
送信手段は、自身が接続されたノードに対するバリア同
期成立メッセージを受信したときに、そのバリア同期成
立メッセージを送信したルーティングコントローラに対
して、バリア同期成立メッセージを受信したことを示す
バリア同期成立メッセージACKを送信し、 前記ルーティングコントローラは、さらに、 前記第1バリア同期要求メッセージ受信手段によってバ
リア同期要求メッセージが受信されたときに、そのバリ
ア同期要求メッセージを送信したルーティングコントロ
ーラに対して、バリア同期要求メッセージを受信したこ
とを示すバリア同期要求メッセージACKを送信する第
3送信手段と、 前記バリア同期成立メッセージACKとバリア同期要求
メッセージACKの受信状況を監視することにより、バ
リア同期成立メッセージとバリア同期要求メッセージに
対する処理の進行の程度を認識する認識手段とを備える
ことを特徴とする請求項1ないし請求項4のいずれかに
記載の並列計算機。 - 【請求項6】 前記第2送信手段は、受信したバリア同
期要求メッセージが正当なものであった場合には、その
バリア同期成立メッセージを送信したルーティングコン
トローラに対してバリア同期要求メッセージACKを送
信し、そのバリア同期成立メッセージが正当なものでな
かった場合には、その旨を示すバリア同期要求メッセー
ジNAKを送信し、 前記第3送信手段は、受信したバリア同期成立メッセー
ジが正当なものであった場合には、そのバリア同期成立
メッセージを送信したルーティングコントローラに対し
てバリア同期成立メッセージACKを送信し、そのバリ
ア同期成立メッセージが正当なものでなかった場合に
は、バリア同期成立メッセージNAKを送信し、 前記認識手段は、バリア同期要求メッセージNAKとバ
リア同期成立メッセージNAKの受信状況をも監視し、
バリア同期要求メッセージNAKとバリア同期成立メッ
セージNAKのいずれかを受信したことを検出したとき
には、自身が接続されたノードに対して異常が発生した
ことを通知することを特徴とする請求項5記載の並列計
算機。 - 【請求項7】 前記第1送信手段は、ルーティングコン
トローラが属するバリア同期グループを示すグループ識
別情報を含むバリア同期要求メッセージを送信し、 前記第2送信手段は、受信したバリア同期要求メッセー
ジに含まれるグループ識別情報を用いて、そのバリア同
期要求メッセージが正当であるか否かを判断することを
特徴とする請求項6記載の並列計算機。 - 【請求項8】 前記第1送信手段は、ルーティングコン
トローラが属するバリア同期グループを示すグループ識
別情報を含むバリア同期成立メッセージを送信し、 前記第3送信手段は、受信したバリア同期要求メッセー
ジに含まれるグループ識別情報を用いて、そのバリア同
期成立メッセージが正当であるか否かを判断することを
特徴とする請求項6または請求項7記載の並列計算機。 - 【請求項9】 前記ノードは、グループ識別情報を含む
バリア同期要求メッセージを前記第2バリア同期要求メ
ッセージ手段に対して送信し、 前記記憶手段は、それぞれ、グループ識別情報に対応づ
けられた、前記受信予定数と前記第1ノード識別情報と
前記第2ノード識別情報とを含む複数のバリア同期情報
を記憶し、 前記第1送信手段は、グループ識別情報毎に、前記第1
バリア同期要求メッセージ受信手段によって受信された
バリア同期要求メッセージの数と受信予定数が一致して
いるか否かの判定と、前記第2バリア同期要求メッセー
ジ受信手段によるバリア同期要求メッセージが受信され
たか否かの判定とを行うとともに、その判定結果に基づ
き、前記グループ識別情報を含むバリア同期要求メッセ
ージの送信と、前記グループ識別情報を含むバリア同期
成立メッセージの送信とを行い、 前記第2送信手段は、他のルーティングコントローラを
介して自身が接続されたノードに対するバリア同期成立
メッセージを受信したときに、そのバリア同期成立メッ
セージに含まれるグループ識別情報に対応するバリア同
期が成立した旨を自身が接続されたノードに対して通知
するとともに、そのグループ識別情報に対応する前記記
憶手段内のバリア同期情報に含まれる各第2ノード識別
情報で識別される各ノードに対してバリア同期成立メッ
セージを送信することを特徴とする請求項1記載の並列
計算機。 - 【請求項10】 前記ノードは、内部に備えるメモリ上
の所定のアドレスに記憶されたデータに基づき、バリア
同期が成立したか否かを判断し、 前記第1送信手段および第2送信手段は、それぞれ、自
身が接続されているノードに対してバリア同期が成立し
た旨を通知する際に、そのノード内に備えられているメ
モリの前記所定のアドレスに記憶されたデータを書き換
えることを特徴とする請求項1ないし請求項8のいずれ
かに記載の並列計算機。 - 【請求項11】 前記ノードは、前記第2バリア同期要
求メッセージ受信手段に対して、バリア同期が成立した
か否かを示すデータの、内部に備えるメモリ上での格納
位置を示すアドレス情報を含むバリア同期要求メッセー
ジを送信し、 前記前記第1送信手段および第2送信手段は、それぞ
れ、自身が接続されているノードに対してバリア同期が
成立した旨を通知する際に、前記メモリ内の、受信され
たバリア同期要求メッセージに含まれるアドレス情報で
指定されるデータを書き換えることを特徴とする請求項
1ないし請求項9のいずれかに記載の並列計算機。 - 【請求項12】 前記ルーティングコントローラは、受
信した情報および送信すべき情報を一時的に記憶するた
めのバッファを備え、 各送信手段は、前記バッファを利用することによって、
前記通信ネットワーク上に仮想的なチャネルを設定し、
そのチャネルを用いてバリア同期関係の各メッセージを
送信することを特徴とする請求項1ないし請求項11の
いずれかに記載の並列計算機。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20227196A JP3532037B2 (ja) | 1996-07-31 | 1996-07-31 | 並列計算機 |
US08/764,109 US5928351A (en) | 1996-07-31 | 1996-12-06 | Parallel computer system with communications network for selecting computer nodes for barrier synchronization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20227196A JP3532037B2 (ja) | 1996-07-31 | 1996-07-31 | 並列計算機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1049507A true JPH1049507A (ja) | 1998-02-20 |
JP3532037B2 JP3532037B2 (ja) | 2004-05-31 |
Family
ID=16454781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20227196A Expired - Fee Related JP3532037B2 (ja) | 1996-07-31 | 1996-07-31 | 並列計算機 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5928351A (ja) |
JP (1) | JP3532037B2 (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001134466A (ja) * | 1999-11-08 | 2001-05-18 | Fujitsu Ltd | デバッグ装置及び方法並びにプログラム記録媒体 |
JP2010122848A (ja) * | 2008-11-19 | 2010-06-03 | Fujitsu Ltd | バリア同期装置、バリア同期処理システム及び方法、リダクション演算装置、リダクション演算処理システム及び方法 |
WO2011070913A1 (ja) * | 2009-12-07 | 2011-06-16 | 日本電気株式会社 | オンチップ並列処理システム及び通信方法 |
WO2011087076A1 (ja) * | 2010-01-14 | 2011-07-21 | 日本電気株式会社 | 並列計算機システム、同期方法、及びプログラム |
JP2012058958A (ja) * | 2010-09-08 | 2012-03-22 | Fujitsu Ltd | リダクション演算装置、処理装置及びコンピュータシステム |
EP2466484A1 (en) | 2010-12-17 | 2012-06-20 | Fujitsu Limited | Parallel computing system, synchronization device, and control method of parallel computing system |
JP2012128809A (ja) * | 2010-12-17 | 2012-07-05 | Fujitsu Ltd | 並列計算機システム、同期装置、並列計算機システムの制御方法 |
JP2016126434A (ja) * | 2014-12-26 | 2016-07-11 | 富士通株式会社 | 情報処理システムの制御プログラム,情報処理装置,及び情報処理システム |
US9727403B2 (en) | 2014-08-07 | 2017-08-08 | Fujitsu Limited | System and method for detecting an abnormal condition in a multi-node communication system |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6349378B1 (en) * | 1999-03-31 | 2002-02-19 | U.S. Philips Corporation | Data processing using various data processors |
DE19957594B4 (de) * | 1999-11-30 | 2004-08-26 | OCé PRINTING SYSTEMS GMBH | Verfahren zum Synchronisieren von threads eines Computerprogramms |
US6658478B1 (en) * | 2000-08-04 | 2003-12-02 | 3Pardata, Inc. | Data storage system |
US7836329B1 (en) | 2000-12-29 | 2010-11-16 | 3Par, Inc. | Communication link protocol optimized for storage architectures |
KR100620835B1 (ko) * | 2001-02-24 | 2006-09-13 | 인터내셔널 비지네스 머신즈 코포레이션 | 최적화된 가변 네트워크 스위치 |
US6986022B1 (en) * | 2001-10-16 | 2006-01-10 | Cisco Technology, Inc. | Boundary synchronization mechanism for a processor of a systolic array |
US7100021B1 (en) * | 2001-10-16 | 2006-08-29 | Cisco Technology, Inc. | Barrier synchronization mechanism for processors of a systolic array |
JP4381655B2 (ja) * | 2002-05-31 | 2009-12-09 | 株式会社日立製作所 | ストレージシステム、ストレージ装置、及び該ストレージ装置を利用した情報共有方法 |
US7464115B2 (en) * | 2005-04-25 | 2008-12-09 | Silicon Graphics, Inc. | Node synchronization for multi-processor computer systems |
US7788468B1 (en) * | 2005-12-15 | 2010-08-31 | Nvidia Corporation | Synchronization of threads in a cooperative thread array |
US7861060B1 (en) | 2005-12-15 | 2010-12-28 | Nvidia Corporation | Parallel data processing systems and methods using cooperative thread arrays and thread identifier values to determine processing behavior |
US7584342B1 (en) | 2005-12-15 | 2009-09-01 | Nvidia Corporation | Parallel data processing systems and methods using cooperative thread arrays and SIMD instruction issue |
US8108659B1 (en) | 2006-11-03 | 2012-01-31 | Nvidia Corporation | Controlling access to memory resources shared among parallel synchronizable threads |
US8478834B2 (en) | 2007-07-12 | 2013-07-02 | International Business Machines Corporation | Low latency, high bandwidth data communications between compute nodes in a parallel computer |
US8959172B2 (en) * | 2007-07-27 | 2015-02-17 | International Business Machines Corporation | Self-pacing direct memory access data transfer operations for compute nodes in a parallel computer |
US20090031001A1 (en) * | 2007-07-27 | 2009-01-29 | Archer Charles J | Repeating Direct Memory Access Data Transfer Operations for Compute Nodes in a Parallel Computer |
US8094157B1 (en) * | 2007-08-09 | 2012-01-10 | Nvidia Corporation | Performing an occurence count of radices |
US7624107B1 (en) | 2007-08-09 | 2009-11-24 | Nvidia Corporation | Radix sort algorithm for graphics processing units |
US7689541B1 (en) | 2007-08-09 | 2010-03-30 | Nvidia Corporation | Reordering data using a series of offsets |
US9225545B2 (en) * | 2008-04-01 | 2015-12-29 | International Business Machines Corporation | Determining a path for network traffic between nodes in a parallel computer |
US9009350B2 (en) * | 2008-04-01 | 2015-04-14 | International Business Machines Corporation | Determining a path for network traffic between nodes in a parallel computer |
US8863105B2 (en) * | 2008-11-28 | 2014-10-14 | Siemens Aktiengesellschaft | Automatic control system and method for executing control program in parallel |
JP5331898B2 (ja) * | 2009-11-12 | 2013-10-30 | 富士通株式会社 | 並列計算用の通信方法、情報処理装置およびプログラム |
US8544026B2 (en) * | 2010-02-09 | 2013-09-24 | International Business Machines Corporation | Processing data communications messages with input/output control blocks |
US8949453B2 (en) | 2010-11-30 | 2015-02-03 | International Business Machines Corporation | Data communications in a parallel active messaging interface of a parallel computer |
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 |
US8949328B2 (en) | 2011-07-13 | 2015-02-03 | International Business Machines Corporation | Performing collective operations in a distributed processing system |
CN102929214A (zh) * | 2011-08-11 | 2013-02-13 | 西门子公司 | 一种嵌入式多处理单元并行处理系统及其运行方法 |
US8930962B2 (en) | 2012-02-22 | 2015-01-06 | International Business Machines Corporation | Processing unexpected messages at a compute node of a parallel computer |
JP6074932B2 (ja) * | 2012-07-19 | 2017-02-08 | 富士通株式会社 | 演算処理装置及び演算処理方法 |
US20140281429A1 (en) * | 2013-03-14 | 2014-09-18 | Qualcomm Incorporated | Eliminating redundant synchronization barriers in instruction processing circuits, and related processor systems, methods, and computer-readable media |
US9405724B2 (en) * | 2013-06-28 | 2016-08-02 | Intel Corporation | Reconfigurable apparatus for hierarchical collective networks with bypass mode |
JP6221498B2 (ja) * | 2013-08-15 | 2017-11-01 | 富士通株式会社 | 情報処理システム及び情報処理システムの制御方法 |
JP6152786B2 (ja) * | 2013-11-29 | 2017-06-28 | 富士通株式会社 | 通信制御装置、情報処理装置、並列計算機システム、制御プログラム、及び並列計算機システムの制御方法 |
GB2569775B (en) | 2017-10-20 | 2020-02-26 | Graphcore Ltd | Synchronization in a multi-tile, multi-chip processing arrangement |
GB2569271B (en) | 2017-10-20 | 2020-05-13 | Graphcore Ltd | Synchronization with a host processor |
GB2569844B (en) | 2017-10-20 | 2021-01-06 | Graphcore Ltd | Sending data off-chip |
GB2575294B8 (en) * | 2018-07-04 | 2022-07-20 | Graphcore Ltd | Host Proxy On Gateway |
GB2579412B (en) | 2018-11-30 | 2020-12-23 | Graphcore Ltd | Gateway pull model |
GB2580314B (en) | 2018-12-27 | 2021-01-13 | Graphcore Ltd | Exchange of data between processor modules |
CN112416053B (zh) * | 2019-08-23 | 2023-11-17 | 北京希姆计算科技有限公司 | 多核架构的同步信号产生电路、芯片和同步方法及装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5127092A (en) * | 1989-06-15 | 1992-06-30 | North American Philips Corp. | Apparatus and method for collective branching in a multiple instruction stream multiprocessor where any of the parallel processors is scheduled to evaluate the branching condition |
JPH0640324B2 (ja) * | 1989-10-26 | 1994-05-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | マルチプロセッサ・システムおよびそのプロセス同期方法 |
US5365228A (en) * | 1991-03-29 | 1994-11-15 | International Business Machines Corporation | SYNC-NET- a barrier synchronization apparatus for multi-stage networks |
JPH04283850A (ja) * | 1991-03-13 | 1992-10-08 | Fujitsu Ltd | 並列計算機 |
US5519877A (en) * | 1993-01-12 | 1996-05-21 | Matsushita Electric Industrial Co., Ltd. | Apparatus for synchronizing parallel processing among a plurality of processors |
US5434995A (en) * | 1993-12-10 | 1995-07-18 | Cray Research, Inc. | Barrier synchronization for distributed memory massively parallel processing systems |
JPH07234842A (ja) * | 1994-02-22 | 1995-09-05 | Fujitsu Ltd | 並列データ処理システム |
US5682480A (en) * | 1994-08-15 | 1997-10-28 | Hitachi, Ltd. | Parallel computer system for performing barrier synchronization by transferring the synchronization packet through a path which bypasses the packet buffer in response to an interrupt |
US5721921A (en) * | 1995-05-25 | 1998-02-24 | Cray Research, Inc. | Barrier and eureka synchronization architecture for multiprocessors |
-
1996
- 1996-07-31 JP JP20227196A patent/JP3532037B2/ja not_active Expired - Fee Related
- 1996-12-06 US US08/764,109 patent/US5928351A/en not_active Expired - Lifetime
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001134466A (ja) * | 1999-11-08 | 2001-05-18 | Fujitsu Ltd | デバッグ装置及び方法並びにプログラム記録媒体 |
US8654798B2 (en) | 2008-11-19 | 2014-02-18 | Fujitsu Limited | Barrier synchronization apparatus, barrier synchronization system, and barrier synchronization method |
JP2010122848A (ja) * | 2008-11-19 | 2010-06-03 | Fujitsu Ltd | バリア同期装置、バリア同期処理システム及び方法、リダクション演算装置、リダクション演算処理システム及び方法 |
WO2011070913A1 (ja) * | 2009-12-07 | 2011-06-16 | 日本電気株式会社 | オンチップ並列処理システム及び通信方法 |
JP5673554B2 (ja) * | 2009-12-07 | 2015-02-18 | 日本電気株式会社 | オンチップ並列処理システム及び通信方法 |
WO2011087076A1 (ja) * | 2010-01-14 | 2011-07-21 | 日本電気株式会社 | 並列計算機システム、同期方法、及びプログラム |
JPWO2011087076A1 (ja) * | 2010-01-14 | 2013-05-20 | 日本電気株式会社 | 計算機、並列計算機システム、同期方法、及びコンピュータプログラム |
JP5780157B2 (ja) * | 2010-01-14 | 2015-09-16 | 日本電気株式会社 | 計算機、並列計算機システム、同期方法、及びコンピュータプログラム |
JP2012058958A (ja) * | 2010-09-08 | 2012-03-22 | Fujitsu Ltd | リダクション演算装置、処理装置及びコンピュータシステム |
JP2012128809A (ja) * | 2010-12-17 | 2012-07-05 | Fujitsu Ltd | 並列計算機システム、同期装置、並列計算機システムの制御方法 |
US8572615B2 (en) | 2010-12-17 | 2013-10-29 | Fujitsu Limited | Parallel computing system, synchronization device, and control method of parallel computing system |
EP2466484A1 (en) | 2010-12-17 | 2012-06-20 | Fujitsu Limited | Parallel computing system, synchronization device, and control method of parallel computing system |
US9727403B2 (en) | 2014-08-07 | 2017-08-08 | Fujitsu Limited | System and method for detecting an abnormal condition in a multi-node communication system |
JP2016126434A (ja) * | 2014-12-26 | 2016-07-11 | 富士通株式会社 | 情報処理システムの制御プログラム,情報処理装置,及び情報処理システム |
Also Published As
Publication number | Publication date |
---|---|
US5928351A (en) | 1999-07-27 |
JP3532037B2 (ja) | 2004-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH1049507A (ja) | 並列計算機 | |
US8792508B2 (en) | Subscriber and communication controller of a communication system and method for implementing a gateway functionality in a subscriber of a communication system | |
JP2512678B2 (ja) | デ―タ処理システム | |
US8572615B2 (en) | Parallel computing system, synchronization device, and control method of parallel computing system | |
JPH08265270A (ja) | 転送路割り当てシステム | |
JPH08249263A (ja) | ファイバ・チャネル・システム内でファブリックを構成するための方法及び装置 | |
EP2230606A2 (en) | System having a plurality of nodes connected in multi-dimensional matrix, method of controlling system and apparatus | |
JP2006101525A (ja) | データ・フロー・アプリケーションのためのネットワーク・オン・チップ半自動通信アーキテクチャ | |
JPS60500117A (ja) | バス競合の解決のための方法と装置 | |
JPH0345042A (ja) | データ伝送装置 | |
US20040131054A1 (en) | Serialized bus communication and control architecture | |
US5442631A (en) | Communication control device | |
JP2516324B2 (ja) | 通信ネットワ―ク及び送信元装置から目標ノ―ドへの接続経路を確立する方法 | |
CN115580572A (zh) | 路由方法、路由节点、路由装置和计算机可读存储介质 | |
JP2007102476A (ja) | クロスバースイッチ、情報処理装置および転送方法 | |
CN112994998A (zh) | 一种通讯节点、通讯方法、装置及电子设备 | |
EP1476986B1 (en) | Information communication controller interface apparatus and method | |
JP2006128764A (ja) | 伝送装置 | |
JP4117721B2 (ja) | 並列計算機のバリア同期制御方法 | |
JP2002077204A (ja) | ネットワーク通信システム | |
JP7036226B2 (ja) | 演算処理装置及びその制御方法 | |
JP4604794B2 (ja) | ノード間接続装置 | |
JP2017187973A (ja) | 並列処理装置及び通信制御方法 | |
JP2001175618A (ja) | 並列計算機システム | |
JP3691679B2 (ja) | 二重伝送路を有するネットワーク |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040130 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040224 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040302 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080312 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090312 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100312 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100312 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110312 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110312 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120312 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140312 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |