JP2000187598A - 並列計算機 - Google Patents
並列計算機Info
- Publication number
- JP2000187598A JP2000187598A JP10366339A JP36633998A JP2000187598A JP 2000187598 A JP2000187598 A JP 2000187598A JP 10366339 A JP10366339 A JP 10366339A JP 36633998 A JP36633998 A JP 36633998A JP 2000187598 A JP2000187598 A JP 2000187598A
- Authority
- JP
- Japan
- Prior art keywords
- node
- color
- barrier synchronization
- axis
- barrier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
(57)【要約】
【課題】 本発明は、バリア同期が不成立になった場合
に、その原因となったノードを効率的に特定することを
可能とする並列計算機を提供する。 【解決手段】 並列計算機を構成するノード内に、自ノ
ードと同一のクロスバに接続する全ノードのバリア同期
の状態を記憶するバリア同期状態記憶手段2、カラー記
憶手段3、バリア同期完了記憶手段4、カラー一致表示記
憶手段5、カラー一致記憶手段6を有し、バリア同期が不
成立の場合にはこれらの手段を用いて不成立の原因とな
ったノードの候補を絞りこむことでそのノードを特定す
る手段を備える。 【効果】 バリア同期が不成立になった場合に、不成立
の原因となったノードを、並列計算機を構成する全ノー
ドに問い合わせることなく、効率的に特定することが可
能になる。
に、その原因となったノードを効率的に特定することを
可能とする並列計算機を提供する。 【解決手段】 並列計算機を構成するノード内に、自ノ
ードと同一のクロスバに接続する全ノードのバリア同期
の状態を記憶するバリア同期状態記憶手段2、カラー記
憶手段3、バリア同期完了記憶手段4、カラー一致表示記
憶手段5、カラー一致記憶手段6を有し、バリア同期が不
成立の場合にはこれらの手段を用いて不成立の原因とな
ったノードの候補を絞りこむことでそのノードを特定す
る手段を備える。 【効果】 バリア同期が不成立になった場合に、不成立
の原因となったノードを、並列計算機を構成する全ノー
ドに問い合わせることなく、効率的に特定することが可
能になる。
Description
【0001】
【発明の属する技術分野】本発明は、複数のノードが通
信ネットワークによってバリア同期処理を実行する機能
を有する並列計算機に関し、特にバリア同期が不成立と
なった場合に、不成立の原因となったノードを効率的に
特定する手段を提供する回路を有するノードで構成され
た並列計算機に関するものである。
信ネットワークによってバリア同期処理を実行する機能
を有する並列計算機に関し、特にバリア同期が不成立と
なった場合に、不成立の原因となったノードを効率的に
特定する手段を提供する回路を有するノードで構成され
た並列計算機に関するものである。
【0002】
【従来の技術】並列計算機では、複数のノードに割り振
られた並列プログラムに対して、それぞれのノードが平
行して演算処理を実行する。演算処理を実行する場合、
各ノードが他のノードで実行されている演算処理がある
点まで実行されたことを条件として次の演算処理に進む
ように、同期処理が行われる。このような同期をとる手
段としてバリア同期は一般的な手段である。通信ネット
ワークによるバリア同期では、並列プログラムを実行し
ているそれぞれのノードは、演算処理がプログラム上に
定められた同期点に到達すると、バリア同期パケットに
よって他ノードに同期点への到達を通知する。すべての
ノードが同期点への到達を通知することでバリア同期が
成立する。また並列プログラム上に複数の同期点が定め
られている場合、それぞれの同期点を識別するためのカ
ラーを定義し、パリア同期パケットにその情報を付加す
ることで、到達した同期点が同一であることを確認す
る。なおカラーによる同期点の識別は広く知られてい
る。
られた並列プログラムに対して、それぞれのノードが平
行して演算処理を実行する。演算処理を実行する場合、
各ノードが他のノードで実行されている演算処理がある
点まで実行されたことを条件として次の演算処理に進む
ように、同期処理が行われる。このような同期をとる手
段としてバリア同期は一般的な手段である。通信ネット
ワークによるバリア同期では、並列プログラムを実行し
ているそれぞれのノードは、演算処理がプログラム上に
定められた同期点に到達すると、バリア同期パケットに
よって他ノードに同期点への到達を通知する。すべての
ノードが同期点への到達を通知することでバリア同期が
成立する。また並列プログラム上に複数の同期点が定め
られている場合、それぞれの同期点を識別するためのカ
ラーを定義し、パリア同期パケットにその情報を付加す
ることで、到達した同期点が同一であることを確認す
る。なおカラーによる同期点の識別は広く知られてい
る。
【0003】
【発明が解決しようとする課題】上述したバリア同期機
能を具備した並列計算機を運用するにあたり、さまざま
な原因によりバリア同期が不成立になる場合がある。例
えばプログラムのバグにより、いずれかのノードが同期
点に到達しない場合や、またいずれかのノードが到達し
た同期点が他のノードが到達した同期点と異なっている
場合などがある。従来の並列計算機では、このようにバ
リア同期が不成立になった場合に、どのノードがバリア
同期不成立の原因となったか特定するためには、最悪の
場合すべてのノードに対して内部状態を問い合わせる必
要があり、効率が悪かった。これは並列計算機の構成が
大規模になるほどさらに顕著になる。本発明の目的は、
前記のことを鑑み、バリア同期が不成立になった場合
に、その原因となったノードを効率的に特定する手段を
提供することである。
能を具備した並列計算機を運用するにあたり、さまざま
な原因によりバリア同期が不成立になる場合がある。例
えばプログラムのバグにより、いずれかのノードが同期
点に到達しない場合や、またいずれかのノードが到達し
た同期点が他のノードが到達した同期点と異なっている
場合などがある。従来の並列計算機では、このようにバ
リア同期が不成立になった場合に、どのノードがバリア
同期不成立の原因となったか特定するためには、最悪の
場合すべてのノードに対して内部状態を問い合わせる必
要があり、効率が悪かった。これは並列計算機の構成が
大規模になるほどさらに顕著になる。本発明の目的は、
前記のことを鑑み、バリア同期が不成立になった場合
に、その原因となったノードを効率的に特定する手段を
提供することである。
【0004】
【課題を解決するための手段】上記目的を達成するため
に、本発明では、複数のノードおよびクロスバによって
構成される並列計算機であって、各ノードが互いに通知
した情報を元に、並列プログラムを実行している前記ク
ロスバに接続する全ノードのバリア同期の状態を記憶す
るバリア同期状態記憶手段と、前記全ノードから送信さ
れたバリア同期パケットに含まれるカラー情報を記憶す
るカラー記憶手段と、前記バリア同期状態記憶手段に所
定の処理を行ってバリア同期が成立したか否かを記憶す
るバリア同期完了記憶手段と、バリア同期が成立したと
きに該カラー記憶手段に記憶されたカラー情報が同期点
を識別するカラー情報と一致しているか否かを記憶する
カラー一致表示記憶手段と、 前記カラー一致表示記憶
手段に所定の処理を行って前記全ノードが同一の同期点
に到達したか否かを記憶するカラー一致記憶手段と、前
記バリア同期状態記憶手段と前記カラー一致表示記憶手
段と前記バリア完了記憶手段と前記カラー一致記憶手段
のそれぞれの内容をノード内のプロセッサに通知する手
段を提供することで、前記プロセッサは前記バリア同期
記憶手段および前記カラー一致記憶手段よりバリア同期
の成立、不成立を検知し、不成立の場合は前記バリア同
期状態記憶手段と前記カラー一致表示記憶手段より不成
立の原因となったノードの候補を絞り込むことで、前記
不成立となったノードを全ノードに問い合わせることな
く効率的に特定することができるようになる。なお、カ
ラー情報による同期点の識別は広く知られている。
に、本発明では、複数のノードおよびクロスバによって
構成される並列計算機であって、各ノードが互いに通知
した情報を元に、並列プログラムを実行している前記ク
ロスバに接続する全ノードのバリア同期の状態を記憶す
るバリア同期状態記憶手段と、前記全ノードから送信さ
れたバリア同期パケットに含まれるカラー情報を記憶す
るカラー記憶手段と、前記バリア同期状態記憶手段に所
定の処理を行ってバリア同期が成立したか否かを記憶す
るバリア同期完了記憶手段と、バリア同期が成立したと
きに該カラー記憶手段に記憶されたカラー情報が同期点
を識別するカラー情報と一致しているか否かを記憶する
カラー一致表示記憶手段と、 前記カラー一致表示記憶
手段に所定の処理を行って前記全ノードが同一の同期点
に到達したか否かを記憶するカラー一致記憶手段と、前
記バリア同期状態記憶手段と前記カラー一致表示記憶手
段と前記バリア完了記憶手段と前記カラー一致記憶手段
のそれぞれの内容をノード内のプロセッサに通知する手
段を提供することで、前記プロセッサは前記バリア同期
記憶手段および前記カラー一致記憶手段よりバリア同期
の成立、不成立を検知し、不成立の場合は前記バリア同
期状態記憶手段と前記カラー一致表示記憶手段より不成
立の原因となったノードの候補を絞り込むことで、前記
不成立となったノードを全ノードに問い合わせることな
く効率的に特定することができるようになる。なお、カ
ラー情報による同期点の識別は広く知られている。
【0005】
【発明の実施の形態】本発明が適用される複数のノード
からなる2次元構成の並列計算機の一例を図1に示す。図
1はn×n個のノード例えば100、200、300、400がn個のX
軸方向クロスバ例えば10、20とn個のY軸方向例えば50、
60で相互に接続された並列計算機1の一部である。本実
施例のように各ノードが中継スイッチ140を介して複数
のクロスバに接続されて構成されるネットワーク自体は
公知である。例えば、特開平5265976参照。この種のネ
ットワークは、2次元空間の格子点の一つの座標を各ノ
ードに割り当てる。例えば100、200、300、400の座標は
それぞれ(1、1)、(n、1)、 (1、n)、(n、n)である。も
ちろんネットワークを2次元以外の空間に対応させるこ
とも可能である。
からなる2次元構成の並列計算機の一例を図1に示す。図
1はn×n個のノード例えば100、200、300、400がn個のX
軸方向クロスバ例えば10、20とn個のY軸方向例えば50、
60で相互に接続された並列計算機1の一部である。本実
施例のように各ノードが中継スイッチ140を介して複数
のクロスバに接続されて構成されるネットワーク自体は
公知である。例えば、特開平5265976参照。この種のネ
ットワークは、2次元空間の格子点の一つの座標を各ノ
ードに割り当てる。例えば100、200、300、400の座標は
それぞれ(1、1)、(n、1)、 (1、n)、(n、n)である。も
ちろんネットワークを2次元以外の空間に対応させるこ
とも可能である。
【0006】図1において100、200、300、400は並列計
算機を構成する一部ノードであり、それぞれのノードの
内部構成は同一である。10および20はX軸方向クロス
バ、50および60はY軸方向クロスバ、110はプロセッサ(C
PU)、120はバリア同期起動回路、130はバリア同期パケ
ット生成回路、140は中継スイッチ、150はバリア同期管
理回路、2、3、4、5、6、はそれぞれバリア同期管理回
路150を構成するバリア同期状態記憶手段、カラー記憶
手段、バリア同期完了記憶手段、カラー一致表示記憶手
段、カラー一致記憶手段、L11からL14、L51からL53、L1
10、L120、L130、L140、L150.L151は信号線である。
算機を構成する一部ノードであり、それぞれのノードの
内部構成は同一である。10および20はX軸方向クロス
バ、50および60はY軸方向クロスバ、110はプロセッサ(C
PU)、120はバリア同期起動回路、130はバリア同期パケ
ット生成回路、140は中継スイッチ、150はバリア同期管
理回路、2、3、4、5、6、はそれぞれバリア同期管理回
路150を構成するバリア同期状態記憶手段、カラー記憶
手段、バリア同期完了記憶手段、カラー一致表示記憶手
段、カラー一致記憶手段、L11からL14、L51からL53、L1
10、L120、L130、L140、L150.L151は信号線である。
【0007】本発明を具備する並列計算機1においてバ
リア同期は、プロセッサ(CPU)110が信号線L110を介して
バリア同期起動回路120に命令を書き込むことにより起
動される。なお本実施例のプロセッサ(CPU)110の動作
は、図示しないメモリ上のプログラムを読み出し実行す
る、従来のマイクロプロセッサの動作と同様である。ま
た図1ではプロセッサ(CPU)110が1台であるが、複数でも
構わない。
リア同期は、プロセッサ(CPU)110が信号線L110を介して
バリア同期起動回路120に命令を書き込むことにより起
動される。なお本実施例のプロセッサ(CPU)110の動作
は、図示しないメモリ上のプログラムを読み出し実行す
る、従来のマイクロプロセッサの動作と同様である。ま
た図1ではプロセッサ(CPU)110が1台であるが、複数でも
構わない。
【0008】バリア同期が起動されるとバリア同期パケ
ット生成回路130で生成されたバリア同期パケットが中
継スイッチ140および信号線L11を介してまずX軸方向ク
ロスバ10に送付される。同様にノード200などの他のノ
ードでもバリア同期が起動されバリア同期パケットが信
号線L12等を介してX軸方向クロスバに対して送付され
る。バリア同期パケットを受け取ったX軸クロスバは、
自X軸クロスバに接続する全ノードに対して、そのバリ
ア同期パケットを送付する。各ノード、例えば100はX軸
方向クロスバ10から送付されたバリア同期パケットを受
信し、バリア同期管理回路150においては自ノードを含
めてX軸方向クロスバ10に接続するすべてのノードから
バリア同期パケットが送付されてくるのを監視する。そ
れらのバリア同期パケットをすべて受信することでX軸
方向の同期が成立し、バリア同期管理回路150は信号線L
150を介して同期の成立をバリア同期パケット生成回路1
30に通知する。バリア同期パケット生成回路130は次に
中継スイッチ140および信号線L51を介してY軸方向クロ
スバ50に対してバリア同期パケットを送付する。ノード
200などの他のノードに関しても同様である。
ット生成回路130で生成されたバリア同期パケットが中
継スイッチ140および信号線L11を介してまずX軸方向ク
ロスバ10に送付される。同様にノード200などの他のノ
ードでもバリア同期が起動されバリア同期パケットが信
号線L12等を介してX軸方向クロスバに対して送付され
る。バリア同期パケットを受け取ったX軸クロスバは、
自X軸クロスバに接続する全ノードに対して、そのバリ
ア同期パケットを送付する。各ノード、例えば100はX軸
方向クロスバ10から送付されたバリア同期パケットを受
信し、バリア同期管理回路150においては自ノードを含
めてX軸方向クロスバ10に接続するすべてのノードから
バリア同期パケットが送付されてくるのを監視する。そ
れらのバリア同期パケットをすべて受信することでX軸
方向の同期が成立し、バリア同期管理回路150は信号線L
150を介して同期の成立をバリア同期パケット生成回路1
30に通知する。バリア同期パケット生成回路130は次に
中継スイッチ140および信号線L51を介してY軸方向クロ
スバ50に対してバリア同期パケットを送付する。ノード
200などの他のノードに関しても同様である。
【0009】各ノードはバリア同期管理回路150におい
て前述の手段と同様にY軸方向の同期の成立を監視す
る。Y軸方向の同期が成立したノードは、既にそのノー
ドが接続するX軸に関して同期が成立しているため、並
列計算機1を構成する全ノードが同じ同期点に到達した
ことを検出する。バリア同期成立を検出したバリア同期
管理回路150は信号線L151を介してプロセッサ(CPU)110
にバリア同期成立を通知する。
て前述の手段と同様にY軸方向の同期の成立を監視す
る。Y軸方向の同期が成立したノードは、既にそのノー
ドが接続するX軸に関して同期が成立しているため、並
列計算機1を構成する全ノードが同じ同期点に到達した
ことを検出する。バリア同期成立を検出したバリア同期
管理回路150は信号線L151を介してプロセッサ(CPU)110
にバリア同期成立を通知する。
【0010】次に図1のように構成された並列計算機1お
けるバリア同期の起動に関して、図2を用いて詳細に説
明する。
けるバリア同期の起動に関して、図2を用いて詳細に説
明する。
【0011】図中121はバリア定義レジスタ、131は軸ID
決定回路、132はノード座標レジスタ、133はカラー選択
回路、134はバリア同期パケットデータ、135はセレク
タ、L131からL135は信号線である。
決定回路、132はノード座標レジスタ、133はカラー選択
回路、134はバリア同期パケットデータ、135はセレク
タ、L131からL135は信号線である。
【0012】プログラムを実行しているプロセッサ(CP
U)110は、プログラム上に予め定められた同期点に到達
したとき、バリア同期を起動するためにバリア同期起動
回路120内のバリア定義レジスタ121に、該同期点を識別
するために予めプログラム上に定められたカラー値を信
号線L110を介して格納し、バリア同期待ち状態に入る。
本実施例ではカラー値をmビットで定義する。なお、詳
細は後述するがall1のカラー値を特別に定義されたカラ
ー値とし、それ以外の値を同期点識別のためのカラー値
とする。
U)110は、プログラム上に予め定められた同期点に到達
したとき、バリア同期を起動するためにバリア同期起動
回路120内のバリア定義レジスタ121に、該同期点を識別
するために予めプログラム上に定められたカラー値を信
号線L110を介して格納し、バリア同期待ち状態に入る。
本実施例ではカラー値をmビットで定義する。なお、詳
細は後述するがall1のカラー値を特別に定義されたカラ
ー値とし、それ以外の値を同期点識別のためのカラー値
とする。
【0013】軸ID決定回路131では、同期待ちのクロス
バがX軸かY軸かを識別するための情報を決定する。本実
施例では同期待ちのクロスバがX軸方向であれば軸IDは
0、Y軸方向であれば軸IDは1とする。したがってバリア
同期が起動されたときは軸IDの値は0である。
バがX軸かY軸かを識別するための情報を決定する。本実
施例では同期待ちのクロスバがX軸方向であれば軸IDは
0、Y軸方向であれば軸IDは1とする。したがってバリア
同期が起動されたときは軸IDの値は0である。
【0014】ノード座標レジスタ132はXフィールドとY
フィールドを持ち、自ノードの座標をあらわしている。
ノード座標レジスタ132の値はプログラム実行前にプロ
セッサ(CPU)110によって予め設定される。ノード100の
場合、ノード座標レジスタ132のXフィールドの値は1、Y
フィールドの値は1である。
フィールドを持ち、自ノードの座標をあらわしている。
ノード座標レジスタ132の値はプログラム実行前にプロ
セッサ(CPU)110によって予め設定される。ノード100の
場合、ノード座標レジスタ132のXフィールドの値は1、Y
フィールドの値は1である。
【0015】カラー選択回路133はバリア同期パケット
データ134に設定するカラー値を選択する。バリア同期
起動時には選択される値はバリア定義レジスタ121に格
納されているカラー値であるが、Y軸に対して送付する
バリア同期パケットに対してはバリア同期管理回路150
で後述する所定の処理を行った結果を反映した値が選択
される。
データ134に設定するカラー値を選択する。バリア同期
起動時には選択される値はバリア定義レジスタ121に格
納されているカラー値であるが、Y軸に対して送付する
バリア同期パケットに対してはバリア同期管理回路150
で後述する所定の処理を行った結果を反映した値が選択
される。
【0016】バリア同期パケットデータ134は軸IDフィ
ールド、座標フィールド、カラーフィールドを持つ。軸
IDフィールドには信号線L131を介して軸ID決定回路131
で決定された値が格納される。座標フィールドには、ノ
ード座標レジスタ132のXフィールドの値またはYフィー
ルドの値が信号線L131の値によってセレクタ135で選択
されて格納される。
ールド、座標フィールド、カラーフィールドを持つ。軸
IDフィールドには信号線L131を介して軸ID決定回路131
で決定された値が格納される。座標フィールドには、ノ
ード座標レジスタ132のXフィールドの値またはYフィー
ルドの値が信号線L131の値によってセレクタ135で選択
されて格納される。
【0017】カラーフィールドにはカラー選択回路133
によって選択されたカラー値が信号線L135を介して格納
される。
によって選択されたカラー値が信号線L135を介して格納
される。
【0018】バリア同期パケットデータ134の各フィー
ルドに値が格納されると、中継スイッチ140をおよび信
号線L11を介してバリア同期パケットがX軸方向クロスバ
10に送付される。
ルドに値が格納されると、中継スイッチ140をおよび信
号線L11を介してバリア同期パケットがX軸方向クロスバ
10に送付される。
【0019】次に図3を用いてバリア同期パケットを受
信し、バリア同期の成立を監視するバリア同期管理回路
の説明をする。
信し、バリア同期の成立を監視するバリア同期管理回路
の説明をする。
【0020】図中151はバリア同期パケット受信デー
タ、152および155はそれぞれバリア同期状態記憶手段2
を構成するX軸バリア同期状態レジスタとY軸バリア状態
レジスタ、153および156それぞれカラー記憶手段3を構
成するX軸カラーレジスタとY軸カラーレジスタ、154お
よび157それぞれカラー一致表示記憶手段を構成するX軸
カラー一致表示レジスタとY軸カラー一致表示レジス
タ、158はバリア同期完了記憶手段4を構成するバリア同
期完了レジスタ、159はカラー一致記憶手段6を構成する
カラー一致レジスタである。
タ、152および155はそれぞれバリア同期状態記憶手段2
を構成するX軸バリア同期状態レジスタとY軸バリア状態
レジスタ、153および156それぞれカラー記憶手段3を構
成するX軸カラーレジスタとY軸カラーレジスタ、154お
よび157それぞれカラー一致表示記憶手段を構成するX軸
カラー一致表示レジスタとY軸カラー一致表示レジス
タ、158はバリア同期完了記憶手段4を構成するバリア同
期完了レジスタ、159はカラー一致記憶手段6を構成する
カラー一致レジスタである。
【0021】バリア同期パケット受信データ151は軸ID
フィールド、座標フィールド、カラーフィールドを持
ち、それぞれのフィールドには中継スイッチ140を介し
てX軸方向クロスバ10またはY軸方向クロスバ50から受信
したバリア同期パケットのそれぞれ対応するフィールド
のデータが格納される。
フィールド、座標フィールド、カラーフィールドを持
ち、それぞれのフィールドには中継スイッチ140を介し
てX軸方向クロスバ10またはY軸方向クロスバ50から受信
したバリア同期パケットのそれぞれ対応するフィールド
のデータが格納される。
【0022】X軸バリア同期状態レジスタ152はnビット
で構成され、それぞれのビット位置はノードのX座標に
対応する。なおプログラム開始時にはX軸バリア同期状
態レジスタ152ビット列の初期値はall0がセットされて
いる。バリア同期パケット受信データ151の軸IDフィー
ルドの値が0の場合、バリア同期パケット受信データ151
の座標フィールドの値に対応するX軸バリア同期状態レ
ジスタ152のビット位置の値が1にセットされる。X軸バ
リア同期状態レジスタ152のビット列の値がすべて1にな
ったとき、x軸に関して同期が成立したことを表してい
る。
で構成され、それぞれのビット位置はノードのX座標に
対応する。なおプログラム開始時にはX軸バリア同期状
態レジスタ152ビット列の初期値はall0がセットされて
いる。バリア同期パケット受信データ151の軸IDフィー
ルドの値が0の場合、バリア同期パケット受信データ151
の座標フィールドの値に対応するX軸バリア同期状態レ
ジスタ152のビット位置の値が1にセットされる。X軸バ
リア同期状態レジスタ152のビット列の値がすべて1にな
ったとき、x軸に関して同期が成立したことを表してい
る。
【0023】X軸カラーレジスタ153はmビットのn個の
フィールドで構成されており、それぞれのフィールドの
位置はノードのX座標に対応する。X軸カラーレジスタ15
3の各フィールドの初期値はall0がセットされている。
バリア同期パケット受信データ151の座標フィールドの
値に対応するX軸カラーレジスタ153のフィールドの位置
にバリア同期パケット受信データ151のカラーフィール
ドの値がセットされる。
フィールドで構成されており、それぞれのフィールドの
位置はノードのX座標に対応する。X軸カラーレジスタ15
3の各フィールドの初期値はall0がセットされている。
バリア同期パケット受信データ151の座標フィールドの
値に対応するX軸カラーレジスタ153のフィールドの位置
にバリア同期パケット受信データ151のカラーフィール
ドの値がセットされる。
【0024】X軸カラー一致表示レジスタ154はnビット
で構成され、それぞれのビット位置はノードのX座標に
対応する。X軸カラー一致表示レジスタ154の初期値はal
l0がセットされている。X軸に関して同期が成立した場
合、バリア定義レジスタ121のカラー値と、X軸カラーレ
ジスタ153の各フィールドに格納されたカラー値をそれ
ぞれ比較し、それらが互いに等しければ、そのX軸カラ
ーレジスタ153のフィールドの位置に対応するX軸カラー
一致表示レジスタ154のビット位置の値を1にセットす
る。一方それらが等しくなければX軸カラー一致表示レ
ジスタ154の対応するビット位置の値は0のままである。
X軸に関して同期が成立したときに、X軸カラー一致表示
レジスタ154のビット列の値がすべて1であれば、そのX
軸に接続されたノードのカラーはすべて一致しているこ
とになり、すなわちそれらのノードがすべて同一の同期
点に到達したことを意味している。
で構成され、それぞれのビット位置はノードのX座標に
対応する。X軸カラー一致表示レジスタ154の初期値はal
l0がセットされている。X軸に関して同期が成立した場
合、バリア定義レジスタ121のカラー値と、X軸カラーレ
ジスタ153の各フィールドに格納されたカラー値をそれ
ぞれ比較し、それらが互いに等しければ、そのX軸カラ
ーレジスタ153のフィールドの位置に対応するX軸カラー
一致表示レジスタ154のビット位置の値を1にセットす
る。一方それらが等しくなければX軸カラー一致表示レ
ジスタ154の対応するビット位置の値は0のままである。
X軸に関して同期が成立したときに、X軸カラー一致表示
レジスタ154のビット列の値がすべて1であれば、そのX
軸に接続されたノードのカラーはすべて一致しているこ
とになり、すなわちそれらのノードがすべて同一の同期
点に到達したことを意味している。
【0025】Y軸バリア同期状態レジスタ155も同様に初
期値all0のnビットで構成され、それぞれのビット位置
はY座標に対応する。バリア同期パケット受信データ151
の軸IDフィールドの値が1の場合、バリア同期パケット
受信データ151の座標フィールドの値に対応するY軸バリ
ア同期状態レジスタ155のビット位置の値が1にセットさ
れる。Y軸バリア同期状態レジスタ155のビット列の値が
すべて1になったとき、Y軸に関して同期が成立したこと
を表している。
期値all0のnビットで構成され、それぞれのビット位置
はY座標に対応する。バリア同期パケット受信データ151
の軸IDフィールドの値が1の場合、バリア同期パケット
受信データ151の座標フィールドの値に対応するY軸バリ
ア同期状態レジスタ155のビット位置の値が1にセットさ
れる。Y軸バリア同期状態レジスタ155のビット列の値が
すべて1になったとき、Y軸に関して同期が成立したこと
を表している。
【0026】Y軸カラーレジスタ156も初期値all0のmビ
ットのn個のフィールドで構成されており、それぞれの
フィールドの位置はノードのY座標に対応する。バリア
同期パケット受信データ151の座標フィールドの値に対
応するY軸カラーレジスタ156のフィールドの位置にバリ
ア同期パケット受信データ151のカラーフィールドの値
がセットされる。
ットのn個のフィールドで構成されており、それぞれの
フィールドの位置はノードのY座標に対応する。バリア
同期パケット受信データ151の座標フィールドの値に対
応するY軸カラーレジスタ156のフィールドの位置にバリ
ア同期パケット受信データ151のカラーフィールドの値
がセットされる。
【0027】Y軸カラー一致表示レジスタ157も初期値al
l0のnビットで構成され、それぞれのビット位置はノー
ドのY座標に対応する。Y軸に関して同期が成立した場
合、バリア定義レジスタ121のカラー値と、Y軸カラーレ
ジスタ156の各フィールドに格納されたカラー値をそれ
ぞれ比較し、それらが互いに等しければ、そのY軸カラ
ーレジスタ156のフィールドの位置に対応するY軸カラー
一致表示レジスタ157のビット位置の値を1にセットす
る。一方それらが等しくなければY軸カラー一致表示レ
ジスタ157の対応するビット位置の値は0のままである。
l0のnビットで構成され、それぞれのビット位置はノー
ドのY座標に対応する。Y軸に関して同期が成立した場
合、バリア定義レジスタ121のカラー値と、Y軸カラーレ
ジスタ156の各フィールドに格納されたカラー値をそれ
ぞれ比較し、それらが互いに等しければ、そのY軸カラ
ーレジスタ156のフィールドの位置に対応するY軸カラー
一致表示レジスタ157のビット位置の値を1にセットす
る。一方それらが等しくなければY軸カラー一致表示レ
ジスタ157の対応するビット位置の値は0のままである。
【0028】Y軸同期状態レジスタ155のビット列がすべ
て1になってY軸に関して同期が成立するとバリア同期完
了レジスタ158の値が1になる。このとき、Y軸カラー一
致表示レジスタ157のビット列の値がすべて1であれば、
そのY軸に接続されたノードのカラーがすべて一致して
いることを表し、カラー一致レジスタ159の値が1とな
る。このとき、それらのノードがすべて同一の同期点に
到達したことを意味している。バリア同期完了レジスタ
158およびカラー一致レジスタ159の状態はプロセッサ(C
PU)110に対して通知される。
て1になってY軸に関して同期が成立するとバリア同期完
了レジスタ158の値が1になる。このとき、Y軸カラー一
致表示レジスタ157のビット列の値がすべて1であれば、
そのY軸に接続されたノードのカラーがすべて一致して
いることを表し、カラー一致レジスタ159の値が1とな
る。このとき、それらのノードがすべて同一の同期点に
到達したことを意味している。バリア同期完了レジスタ
158およびカラー一致レジスタ159の状態はプロセッサ(C
PU)110に対して通知される。
【0029】上記説明したことを図4から図9を使って具
体的に説明する。なお、簡単のために以下の説明では並
列計算機1の構成を3×3(n=3)とする。またカラー値は3
ビット(m=3)とし、バリア定義レジスタ121に格納する値
を001とする。
体的に説明する。なお、簡単のために以下の説明では並
列計算機1の構成を3×3(n=3)とする。またカラー値は3
ビット(m=3)とし、バリア定義レジスタ121に格納する値
を001とする。
【0030】まずX軸の同期成立に関して図4から図6を
使って説明する。ここでは簡単のため、X座標が1、2、3
であるノードが送付したバリア同期パケットを順に受信
するものとする。なお、実際にはバリア同期パケットは
順不同で受信される。
使って説明する。ここでは簡単のため、X座標が1、2、3
であるノードが送付したバリア同期パケットを順に受信
するものとする。なお、実際にはバリア同期パケットは
順不同で受信される。
【0031】図4のバリア同期パケット受信データ151に
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が1であるの
で、X軸バリア同期状態レジスタ152のビット1の値が1に
セットされる。またX軸カラーレジスタ153の第1フィー
ルドに値001が格納される。
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が1であるの
で、X軸バリア同期状態レジスタ152のビット1の値が1に
セットされる。またX軸カラーレジスタ153の第1フィー
ルドに値001が格納される。
【0032】図5のバリア同期パケット受信データ151に
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が2であるの
で、X軸バリア同期状態レジスタ152のビット2の値が1に
セットされる。またX軸カラーレジスタ153の第2フィー
ルドに値001が格納される。
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が2であるの
で、X軸バリア同期状態レジスタ152のビット2の値が1に
セットされる。またX軸カラーレジスタ153の第2フィー
ルドに値001が格納される。
【0033】図6のバリア同期パケット受信データ151に
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が3であるの
で、X軸バリア同期状態レジスタ152のビット3の値が1に
セットされる。またX軸カラーレジスタ153の第3フィー
ルドに値001が格納される。図6はX軸バリア同期状態レ
ジスタ152のビット列の値がすべて1となりX軸に関して
同期が成立したことを表している。このときX軸カラー
レジスタ153の各フィールドの値がすべてバリア定義レ
ジスタ121のカラー値と同じであるため、X軸カラー一致
表示レジスタ154の値はすべて1になる。X軸の同期成立
を受けて、Y軸に向けて送付されるバリア同期パケット
データが生成される。このとき、軸ID決定回路131では
軸IDの値が1となる。またカラー選択回路133ではX軸カ
ラー一致表示レジスタ154の値がすべて1であるので、カ
ラー値としてバリア定義レジスタ121の値すなわち001が
選択される。バリア同期パケットデータ134の各フィー
ルドにそれぞれ対応する値が格納されると、中継スイッ
チ140を介してY軸方向クロスバ50にバリア同期パケット
が送付される。
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が3であるの
で、X軸バリア同期状態レジスタ152のビット3の値が1に
セットされる。またX軸カラーレジスタ153の第3フィー
ルドに値001が格納される。図6はX軸バリア同期状態レ
ジスタ152のビット列の値がすべて1となりX軸に関して
同期が成立したことを表している。このときX軸カラー
レジスタ153の各フィールドの値がすべてバリア定義レ
ジスタ121のカラー値と同じであるため、X軸カラー一致
表示レジスタ154の値はすべて1になる。X軸の同期成立
を受けて、Y軸に向けて送付されるバリア同期パケット
データが生成される。このとき、軸ID決定回路131では
軸IDの値が1となる。またカラー選択回路133ではX軸カ
ラー一致表示レジスタ154の値がすべて1であるので、カ
ラー値としてバリア定義レジスタ121の値すなわち001が
選択される。バリア同期パケットデータ134の各フィー
ルドにそれぞれ対応する値が格納されると、中継スイッ
チ140を介してY軸方向クロスバ50にバリア同期パケット
が送付される。
【0034】次にY軸の同期成立に関して図7から図9を
使って説明する。ここでも同様に、パケットを受信する
順序をY=1、2、3の順序とする。
使って説明する。ここでも同様に、パケットを受信する
順序をY=1、2、3の順序とする。
【0035】図7のバリア同期パケット受信データ151に
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が1であるの
で、Y軸バリア同期状態レジスタ155のビット1の値が1に
セットされる。またY軸カラーレジスタ156の第1フィー
ルドに値001が格納される。
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が1であるの
で、Y軸バリア同期状態レジスタ155のビット1の値が1に
セットされる。またY軸カラーレジスタ156の第1フィー
ルドに値001が格納される。
【0036】図8のバリア同期パケット受信データ151に
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が2であるの
で、Y軸バリア同期状態レジスタ155のビット2の値が1に
セットされる。またY軸カラーレジスタ156の第2フィー
ルドに値001が格納される。
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が2であるの
で、Y軸バリア同期状態レジスタ155のビット2の値が1に
セットされる。またY軸カラーレジスタ156の第2フィー
ルドに値001が格納される。
【0037】図9のバリア同期パケット受信データ151に
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が3であるの
で、Y軸バリア同期状態レジスタ155のビット3の値が1に
セットされる。またY軸カラーレジスタ156の第3フィー
ルドに値001が格納される。図9はY軸バリア同期状態レ
ジスタ155のビット列の値がすべて1となりY軸に関して
同期が成立したことを表している。このときY軸カラー
レジスタ156の各フィールドの値がすべてバリア定義レ
ジスタ121のカラー値と同じであるため、Y軸カラー一致
表示レジスタ157の値はすべて1になる。Y軸の同期成立
を受けてバリア同期完了レジスタ158に1がセットされ、
プロセッサ(CPU)110に対してバリア同期の成立が通知さ
れる。また同時にY軸カラー一致表示レジスタ157の値が
すべて1であるので、カラー一致レジスタ159に値1がセ
ットされ、プロセッサ(CPU)110に対してすべてのノード
が同一の同期点に達したことが通知される。
示すバリア同期パケットを受信すると、バリア同期パケ
ット受信データ151の座標フィールドの値が3であるの
で、Y軸バリア同期状態レジスタ155のビット3の値が1に
セットされる。またY軸カラーレジスタ156の第3フィー
ルドに値001が格納される。図9はY軸バリア同期状態レ
ジスタ155のビット列の値がすべて1となりY軸に関して
同期が成立したことを表している。このときY軸カラー
レジスタ156の各フィールドの値がすべてバリア定義レ
ジスタ121のカラー値と同じであるため、Y軸カラー一致
表示レジスタ157の値はすべて1になる。Y軸の同期成立
を受けてバリア同期完了レジスタ158に1がセットされ、
プロセッサ(CPU)110に対してバリア同期の成立が通知さ
れる。また同時にY軸カラー一致表示レジスタ157の値が
すべて1であるので、カラー一致レジスタ159に値1がセ
ットされ、プロセッサ(CPU)110に対してすべてのノード
が同一の同期点に達したことが通知される。
【0038】以上説明したプロセスによりバリア同期成
立が完了する。
立が完了する。
【0039】次に図10および図11を用いて、あるノード
のみカラーが異なるすなわち同期点がずれている場合
に、そのノードを特定する手段について説明する。
のみカラーが異なるすなわち同期点がずれている場合
に、そのノードを特定する手段について説明する。
【0040】図10は座標(2、2)のノード100-5のバリア
定義レジスタに格納されているカラー値が010であり、
それ以外のノードのカラー値が001である場合に、X軸方
向の同期が成立した時点でのX軸バリア同期状態レジス
タ152、X軸カラーレジスタ153、X軸カラー一致表示レジ
スタ154等の状態を表している。ノード100-1からノード
100-3に関してはそれらのノードのカラー値がすべて同
じであるので、X軸カラー一致表示レジスタ154の値はす
べて1になっている。ノード100-7からノード100-9も同
様である。一方ノード100-4とノード100-6に関しては、
ノード100-5からのバリア同期パケットのカラー値が010
であり、自ノードのバリア定義レジスタ121の値と異な
るため、X軸カラー一致表示レジスタ154の値は101とな
る。またノード100-5に関してはノード100-4とノード10
0-5からのバリア同期パケットのカラー値が001であり、
自ノードのバリア定義レジスタ121の値と異なるため、X
軸カラー一致表示レジスタ154の値は010となる。
定義レジスタに格納されているカラー値が010であり、
それ以外のノードのカラー値が001である場合に、X軸方
向の同期が成立した時点でのX軸バリア同期状態レジス
タ152、X軸カラーレジスタ153、X軸カラー一致表示レジ
スタ154等の状態を表している。ノード100-1からノード
100-3に関してはそれらのノードのカラー値がすべて同
じであるので、X軸カラー一致表示レジスタ154の値はす
べて1になっている。ノード100-7からノード100-9も同
様である。一方ノード100-4とノード100-6に関しては、
ノード100-5からのバリア同期パケットのカラー値が010
であり、自ノードのバリア定義レジスタ121の値と異な
るため、X軸カラー一致表示レジスタ154の値は101とな
る。またノード100-5に関してはノード100-4とノード10
0-5からのバリア同期パケットのカラー値が001であり、
自ノードのバリア定義レジスタ121の値と異なるため、X
軸カラー一致表示レジスタ154の値は010となる。
【0041】それぞれのノードがY軸に向けてバリア同
期パケットを送付する場合、ノード100-1からノード100
-3およびノード100-7からノード100-9に関してはX軸カ
ラー一致表示レジスタ154の値がすべて1であるのでバリ
ア同期パケットデータ134のカラーフィールドの値とし
て、カラー選択回路133では自ノードのバリア定義レジ
スタ121の値が選択される。
期パケットを送付する場合、ノード100-1からノード100
-3およびノード100-7からノード100-9に関してはX軸カ
ラー一致表示レジスタ154の値がすべて1であるのでバリ
ア同期パケットデータ134のカラーフィールドの値とし
て、カラー選択回路133では自ノードのバリア定義レジ
スタ121の値が選択される。
【0042】一方ノード100-4からノード100-6に関して
はX軸カラー一致表示レジスタ154の値がすべては1では
ないため、バリア同期パケットデータ134のカラーフィ
ールドの値として、カラー選択回路133ではカラー不一
致をあらわす値111が選択される。
はX軸カラー一致表示レジスタ154の値がすべては1では
ないため、バリア同期パケットデータ134のカラーフィ
ールドの値として、カラー選択回路133ではカラー不一
致をあらわす値111が選択される。
【0043】図11はY軸方向の同期が成立した時点でのY
軸バリア同期状態レジスタ155、Y軸カラーレジスタ15
6、Y軸カラー一致表示レジスタ157等の状態を表してい
る。ノード100-1およびノード100-4およびノード100-7
に関しては、ノード100-4が送付したバリア同期パケッ
トのカラー値が111であり、それぞれ自ノードのバリア
定義レジスタ121のカラー値と異なるため、Y軸カラー一
致表示レジスタ157の値が101となる。ノード100-3およ
びノード100-6およびノード100-9また、ノード100-2お
よびノード100-8に関しても同様である。
軸バリア同期状態レジスタ155、Y軸カラーレジスタ15
6、Y軸カラー一致表示レジスタ157等の状態を表してい
る。ノード100-1およびノード100-4およびノード100-7
に関しては、ノード100-4が送付したバリア同期パケッ
トのカラー値が111であり、それぞれ自ノードのバリア
定義レジスタ121のカラー値と異なるため、Y軸カラー一
致表示レジスタ157の値が101となる。ノード100-3およ
びノード100-6およびノード100-9また、ノード100-2お
よびノード100-8に関しても同様である。
【0044】またノード100-5に関してはY軸カラーレジ
スタ156の各フィールドの値と自ノードのバリア定義レ
ジスタ121の値がすべて異なるため、Y軸カラー一致表示
レジスタ157の値は000となる。その結果、すべてのノー
ドに関して、バリア同期完了レジスタ158の値は1とな
り、同期は成立しているが、Y軸カラー一致表示レジス
タ157のビット列がすべては1ではないので、カラー一致
レジスタ159の値が0となり、いずれかのノードのカラー
が不一致であることあることがプロセッサ(CPU)110に通
知される。
スタ156の各フィールドの値と自ノードのバリア定義レ
ジスタ121の値がすべて異なるため、Y軸カラー一致表示
レジスタ157の値は000となる。その結果、すべてのノー
ドに関して、バリア同期完了レジスタ158の値は1とな
り、同期は成立しているが、Y軸カラー一致表示レジス
タ157のビット列がすべては1ではないので、カラー一致
レジスタ159の値が0となり、いずれかのノードのカラー
が不一致であることあることがプロセッサ(CPU)110に通
知される。
【0045】この結果を受けて任意のノードのプロセッ
サ(CPU)110は自ノードのX軸カラー一致表示レジスタ154
の状態およびY軸カラー一致表示レジスタ157の状態から
以下に説明する方法で、カラー不一致であるノードを特
定する。例えばノード100-1のプロセッサ(CPU)110は、
自ノードのX軸カラー一致表示レジスタ154の状態からX
軸に関してはカラーはすべて一致しているが、Y軸カラ
ー一致表示レジスタ157の状態からY座標が2であるノー
ドのいずれかのノードがカラー不一致であることがわか
る。そこで次に同じY軸上でY座標が2であるノード100-4
に対してX軸カラー一致表示レジスタ154の値を問い合わ
せる。その結果、X座標が2であるノードがカラー不一
致であることがわかる。
サ(CPU)110は自ノードのX軸カラー一致表示レジスタ154
の状態およびY軸カラー一致表示レジスタ157の状態から
以下に説明する方法で、カラー不一致であるノードを特
定する。例えばノード100-1のプロセッサ(CPU)110は、
自ノードのX軸カラー一致表示レジスタ154の状態からX
軸に関してはカラーはすべて一致しているが、Y軸カラ
ー一致表示レジスタ157の状態からY座標が2であるノー
ドのいずれかのノードがカラー不一致であることがわか
る。そこで次に同じY軸上でY座標が2であるノード100-4
に対してX軸カラー一致表示レジスタ154の値を問い合わ
せる。その結果、X座標が2であるノードがカラー不一
致であることがわかる。
【0046】このようにプロセッサ(CPU)110は座標(2、
2)のノード100-5がカラー不一致であることを特定す
る。
2)のノード100-5がカラー不一致であることを特定す
る。
【0047】また例えばノード100-4のプロセッサ(CPU)
110は自ノードのX軸カラー一致表示レジスタ154およびY
軸カラー一致表示レジスタ157の値から、いずれも座標2
のノードがカラー不一致であり、すなわち座標(2、2)の
ノード100-5がカラー不一致であることを特定する。
110は自ノードのX軸カラー一致表示レジスタ154およびY
軸カラー一致表示レジスタ157の値から、いずれも座標2
のノードがカラー不一致であり、すなわち座標(2、2)の
ノード100-5がカラー不一致であることを特定する。
【0048】またノード100-5のプロセッサ(CPU)110は
自ノードのX軸カラー一致表示レジスタ154およびY軸カ
ラー一致表示レジスタ157の値から、Y軸方向はすべてカ
ラー値が異なり、X軸方法は自ノードのみがカラー値が
一致していることより、自ノードのカラー値が不一致で
あることを特定する。
自ノードのX軸カラー一致表示レジスタ154およびY軸カ
ラー一致表示レジスタ157の値から、Y軸方向はすべてカ
ラー値が異なり、X軸方法は自ノードのみがカラー値が
一致していることより、自ノードのカラー値が不一致で
あることを特定する。
【0049】以上のように各ノードのプロセッサ(CPU)1
10は自ノードを含め高々2つのノードの各軸カラー一致
表示レジスタの状態からカラー不一致であるノードを特
定することが可能である。
10は自ノードを含め高々2つのノードの各軸カラー一致
表示レジスタの状態からカラー不一致であるノードを特
定することが可能である。
【0050】次に図12および図13を用いて、あるノード
のみがプログラムのバグなどよって同期点に到達しなか
った場合に、同期点未達ノードを特定する手段について
説明する。なおプロセッサ(CPU)110は自ノードがバリア
同期を起動した時点から計時し、一定時間が経過しても
バリア同期完了レジスタ158の値が1にならないことを検
出することで、同期点未達ノードが存在することを判定
する。
のみがプログラムのバグなどよって同期点に到達しなか
った場合に、同期点未達ノードを特定する手段について
説明する。なおプロセッサ(CPU)110は自ノードがバリア
同期を起動した時点から計時し、一定時間が経過しても
バリア同期完了レジスタ158の値が1にならないことを検
出することで、同期点未達ノードが存在することを判定
する。
【0051】図12はX軸方向に関して座標(2、2)のノー
ド100-5のみが同期点に到達せず、他のノードは同一の
(すなわちカラーが同じ)同期点に到達している時点での
X軸バリア同期状態レジスタ152、X軸カラーレジスタ15
3、X軸カラー一致表示レジスタ154の状態を表してい
る。ノード100-1からノード100-3に関してはすべてのノ
ードが同期点に到達しており、X軸バリア同期状態レジ
スタ152およびX軸カラー一致表示レジスタ154の値はす
べて1である。ノード100-7からノード100-8も同様であ
る。その結果、これらのノードはY軸方向に対してバリ
ア同期パケットを送付する。
ド100-5のみが同期点に到達せず、他のノードは同一の
(すなわちカラーが同じ)同期点に到達している時点での
X軸バリア同期状態レジスタ152、X軸カラーレジスタ15
3、X軸カラー一致表示レジスタ154の状態を表してい
る。ノード100-1からノード100-3に関してはすべてのノ
ードが同期点に到達しており、X軸バリア同期状態レジ
スタ152およびX軸カラー一致表示レジスタ154の値はす
べて1である。ノード100-7からノード100-8も同様であ
る。その結果、これらのノードはY軸方向に対してバリ
ア同期パケットを送付する。
【0052】ノード100-4からノード100-6に関してはノ
ード100-5が同期点未達のため、X軸バリア同期状態レジ
スタ152のビット2の値が0である。したがってこれらの
ノードはY軸方向に対してパリア同期パケットは送付し
ない。
ード100-5が同期点未達のため、X軸バリア同期状態レジ
スタ152のビット2の値が0である。したがってこれらの
ノードはY軸方向に対してパリア同期パケットは送付し
ない。
【0053】図13は各ノードが送付されたバリア同期パ
ケットをすべて受信した時点でのY軸バリア同期状態レ
ジスタ155、Y軸カラーレジスタ156、Y軸カラー一致表示
レジスタ157の状態を表している。いずれのノードも、Y
座標が2であるY軸上のノードからのバリア同期パケット
が送付されていないため、Y軸バリア同期状態レジスタ1
55のビット2の値が0である。その結果、一定時間後にお
いて同期は未成立になる。
ケットをすべて受信した時点でのY軸バリア同期状態レ
ジスタ155、Y軸カラーレジスタ156、Y軸カラー一致表示
レジスタ157の状態を表している。いずれのノードも、Y
座標が2であるY軸上のノードからのバリア同期パケット
が送付されていないため、Y軸バリア同期状態レジスタ1
55のビット2の値が0である。その結果、一定時間後にお
いて同期は未成立になる。
【0054】この結果を受けて任意のノードのプロセッ
サ(CPU)110は自ノードのX軸バリア同期状態レジスタ152
およびY軸バリア同期状態レジスタ155の値から以下に説
明する方法で、同期点未達のノードを特定する。例えば
ノード100-1のプロセッサ(CPU)110は、X軸バリア同期状
態レジスタ152の状態からX軸に関しては同期が成立して
いるが、Y軸バリア同期状態レジスタ155の状態からY座
標が2であるノードの何れかが同期点未達である事が分
かる。そこで次に同じY軸上でY座標が2であるノード100
-4に対してX軸バリア同期状態レジスタ152の値を問い合
わせる。その結果X座標が2であるノードが同期点未達で
あることがわかる。
サ(CPU)110は自ノードのX軸バリア同期状態レジスタ152
およびY軸バリア同期状態レジスタ155の値から以下に説
明する方法で、同期点未達のノードを特定する。例えば
ノード100-1のプロセッサ(CPU)110は、X軸バリア同期状
態レジスタ152の状態からX軸に関しては同期が成立して
いるが、Y軸バリア同期状態レジスタ155の状態からY座
標が2であるノードの何れかが同期点未達である事が分
かる。そこで次に同じY軸上でY座標が2であるノード100
-4に対してX軸バリア同期状態レジスタ152の値を問い合
わせる。その結果X座標が2であるノードが同期点未達で
あることがわかる。
【0055】このようにしてプロセッサ(CPU)110は座標
(2、2)のノード100-5が同期点未達であることを特定す
る。
(2、2)のノード100-5が同期点未達であることを特定す
る。
【0056】またノード100-4のプロセッサ(CPU)110は
自ノードのX軸バリア同期状態レジスタ152およびY軸バ
リア同期状態レジスタ155の値から、いずれも座標2のノ
ードが同期未達であり、すなわち座標(2、2)のノード10
0-5が同期点未達であることを特定する。
自ノードのX軸バリア同期状態レジスタ152およびY軸バ
リア同期状態レジスタ155の値から、いずれも座標2のノ
ードが同期未達であり、すなわち座標(2、2)のノード10
0-5が同期点未達であることを特定する。
【0057】以上のように各ノードのプロセッサ(CPU)1
10は自ノードも含め高々2つのノードの各軸同期状態レ
ジスタの状態から同期点未達ノードを特定することが可
能である。
10は自ノードも含め高々2つのノードの各軸同期状態レ
ジスタの状態から同期点未達ノードを特定することが可
能である。
【0058】
【発明の効果】以上説明したように、本発明の並列計算
機によれば、バリア同期が不成立になった場合に、不成
立の原因となったノードを、バリア同期に参加した全ノ
ードに問い合わせることなく、効率的に特定することが
出来るようになる。
機によれば、バリア同期が不成立になった場合に、不成
立の原因となったノードを、バリア同期に参加した全ノ
ードに問い合わせることなく、効率的に特定することが
出来るようになる。
【図1】本発明が適用される並列計算機の構成の一例を
示すブロック図である。
示すブロック図である。
【図2】実施例の一つのノードにおけるバリア同期の機
能を示すブロック図である。
能を示すブロック図である。
【図3】実施例のバリア同期管理回路の構成、機能を示
す概念図である。
す概念図である。
【図4】実施例のバリア同期管理回路の動作説明図であ
る。
る。
【図5】実施例のバリア同期管理回路の動作説明図であ
る。
る。
【図6】実施例のバリア同期管理回路の動作説明図であ
る。
る。
【図7】実施例のバリア同期管理回路の動作説明図であ
る。
る。
【図8】実施例のバリア同期管理回路の動作説明図であ
る。
る。
【図9】実施例のバリア同期管理回路の動作説明図であ
る。
る。
【図10】実施例のバリア同期管理回路の動作説明図で
ある。
ある。
【図11】実施例のバリア同期管理回路の動作説明図で
ある。
ある。
【図12】実施例のバリア同期管理回路の動作説明図で
ある。
ある。
【図13】実施例のバリア同期管理回路の動作説明図で
ある。
ある。
1…並列計算機、10…X軸方向クロスバ、20…X軸方
向クロスバ、50…Y軸方向クロスバ、60…Y軸方向ク
ロスバ、100…ノード、200…ノード、300…ノ
ード、400…ノード、110…プロセッサ(CPU)、1
20…バリア同期起動回路、130…バリアパケット生
成回路、140…中継スイッチ、150…バリア同期管
理回路、2…バリア同期状態記憶手段、3…カラー記憶
手段、4…バリア同期完了記憶手段、5…カラー一致表
示記憶手段、6…カラー一致記憶手段、121…バリア
定義レジスタ、131…軸ID決定回路、132…ノード
座標レジスタ、133…カラー選択回路、134…バリ
ア同期パケットデータ、135…セレクタ、151…バ
リアパケット受信データ、152…X軸バリア状態レジ
スタ、153…X軸カラーレジスタ、154…X軸カラー
一致表示レジスタ、155…Y軸バリア状態レジスタ、
156…Y軸カラーレジスタ、157…Y軸カラー一致表
示レジスタ、158…バリア同期完了レジスタ、159
…カラー一致レジスタ、100−1から100−9…ノ
ード、L11からL151…信号線。
向クロスバ、50…Y軸方向クロスバ、60…Y軸方向ク
ロスバ、100…ノード、200…ノード、300…ノ
ード、400…ノード、110…プロセッサ(CPU)、1
20…バリア同期起動回路、130…バリアパケット生
成回路、140…中継スイッチ、150…バリア同期管
理回路、2…バリア同期状態記憶手段、3…カラー記憶
手段、4…バリア同期完了記憶手段、5…カラー一致表
示記憶手段、6…カラー一致記憶手段、121…バリア
定義レジスタ、131…軸ID決定回路、132…ノード
座標レジスタ、133…カラー選択回路、134…バリ
ア同期パケットデータ、135…セレクタ、151…バ
リアパケット受信データ、152…X軸バリア状態レジ
スタ、153…X軸カラーレジスタ、154…X軸カラー
一致表示レジスタ、155…Y軸バリア状態レジスタ、
156…Y軸カラーレジスタ、157…Y軸カラー一致表
示レジスタ、158…バリア同期完了レジスタ、159
…カラー一致レジスタ、100−1から100−9…ノ
ード、L11からL151…信号線。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 藤井 啓明 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 保田 淑子 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 川村 敏雄 神奈川県秦野市堀山下1番地 株式会社日 立製作所汎用コンピュータ事業部内 Fターム(参考) 5B045 AA03 CC01 GG12 5B098 AA10 FF01 GA01 GC16
Claims (3)
- 【請求項1】それぞれ1個または複数個のプロセッサお
よびメモリを備えた複数のノードと、該複数のノードを
接続するクロスバネットワークを有し、前記複数のノー
ドの座標は前記クロスバネットワークとの接続点の位置
に対応づけられて与えら、前記複数のノードが互いにメ
ッセージを通知する手段を有することでバリア同期の成
立を実現し、該バリア同期の同期点をカラー情報によっ
て識別する手段を有する並列計算機において、 前記複数のノードのぞれぞれには、並列プログラムを実
行しているノードのバリア同期の状態を記憶するバリア
同期状態記憶手段と、前記並列プログラムを実行してい
るノードから通知される該カラー情報を記憶するカラー
記憶手段と、前記バリア同期状態記憶手段に所定の処理
を行ってバリア同期が成立したか否かを記憶するバリア
同期完了記憶手段と、バリア同期が成立したときに前記
カラー記憶手段に記憶されたカラー情報が同期点のカラ
ーと一致しているか否かを記憶するカラー一致表示記憶
手段と、前記カラー一致表示記憶手段に所定の処理を行
って前記並列プログラムを実行しているノードの全てが
同一の同期点に到達したか否かを記憶するカラー一致記
憶手段と、前記バリア同期状態記憶手段とカラー一致表
示記憶手段とバリア完了記憶手段とカラー一致記憶手段
のそれぞれの内容を前記並列プログラムを実行している
ノード内のプロセッサに通知する手段を備え、該プロセ
ッサは通知された前記バリア同期記憶手段およびカラー
一致記憶手段の情報によりバリア同期の成立、不成立を
検知し、不成立の場合は前記バリア同期状態記憶手段と
カラー一致表示記憶手段の情報により不成立の原因とな
ったノードを特定することを特徴とする並列計算機。 - 【請求項2】前記バリア同期状態記憶手段は、少なくと
も自ノードと同一のクロスバに接続するノード数分のビ
ット域を有して、該ビット位置は該軸上のノードの位置
に対応し、該軸上のノードからバリア同期が通知された
場合に、該ノードが通知する座標情報から該ノードの位
置を記憶するバリア同期状態レジスタを含み、 前記カラー記憶手段は、前記カラー情報を記憶するに十
分なビット域で構成されるフィールドを該ノード数分有
して、該フィールド位置は該軸上のノードの位置に対応
し、該軸上のノードからバリア同期が通知された場合
に、該ノードが通知する該カラー情報を、該ノードが通
知する座標位置に対応するフィールドの位置に記憶する
カラーレジスタと前記カラー一致表示手段として、該ノ
ード数分のビット域を有して、該ビット位置は該軸上の
ノードの位置に対応し、前記カラー情報と、前記カラー
レジスタの各フィールドの内容を比較し、比較結果を対
応するビット位置に記憶するカラー一致表示レジスタと
を含むことを特徴とする請求項1に記載の並列計算機。 - 【請求項3】前記複数ノードが多次元のクロスバスイッ
チによって接続された多次元構成をなし、各ノードには
前記バリア同期状態記憶手段と、前記カラー記憶手段
と、前記カラー一致表示手段と、前記バリア完了記憶手
段と、前記カラー一致記憶手段と、前記ノード内のプロ
セッサに通知する手段とを前記多次元のクロスバスイッ
チを構成する1次元クロスバスイッチのうち当該ノード
が接続するクロスバスイッチ毎に具備することを特徴と
する請求項1に記載の並列計算機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10366339A JP2000187598A (ja) | 1998-12-24 | 1998-12-24 | 並列計算機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10366339A JP2000187598A (ja) | 1998-12-24 | 1998-12-24 | 並列計算機 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000187598A true JP2000187598A (ja) | 2000-07-04 |
Family
ID=18486543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10366339A Pending JP2000187598A (ja) | 1998-12-24 | 1998-12-24 | 並列計算機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000187598A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017062843A (ja) * | 2016-11-30 | 2017-03-30 | 学校法人早稲田大学 | マルチプロセッサシステム |
US9727403B2 (en) | 2014-08-07 | 2017-08-08 | Fujitsu Limited | System and method for detecting an abnormal condition in a multi-node communication system |
-
1998
- 1998-12-24 JP JP10366339A patent/JP2000187598A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9727403B2 (en) | 2014-08-07 | 2017-08-08 | Fujitsu Limited | System and method for detecting an abnormal condition in a multi-node communication system |
JP2017062843A (ja) * | 2016-11-30 | 2017-03-30 | 学校法人早稲田大学 | マルチプロセッサシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7353259B1 (en) | Method and apparatus for exchanging configuration information between nodes operating in a master-slave configuration | |
Zhao et al. | A window protocol for transmission of time-constrained messages | |
US7907534B2 (en) | Identifying faulty network components during a network exploration | |
US7028136B1 (en) | Managing idle time and performing lookup operations to adapt to refresh requirements or operational rates of the particular associative memory or other devices used to implement the system | |
US7389332B1 (en) | Method and apparatus for supporting communications between nodes operating in a master-slave configuration | |
EP1602030A2 (en) | System and method for dymanic ordering in a network processor | |
JPH09505713A (ja) | 広帯域ネットワークにおけるデータ伝送の並列アセンブリのためのシステム | |
JP2002117010A (ja) | クラスタ化コンピュータ・システム内のグループのメンバによって受信されたマージ要求を処理する装置及びその方法 | |
US9246792B2 (en) | Providing point to point communications among compute nodes in a global combining network of a parallel computer | |
US20160285969A1 (en) | Ordered execution of tasks | |
JP2002312199A (ja) | 異常検知電子機器及び異常検知方法及び異常検知電子機器システム及び異常検知プログラム及び異常検知プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2000187598A (ja) | 並列計算機 | |
CN100423514C (zh) | 分布式设备中地址解析协议数据同步的方法 | |
US6604122B1 (en) | Method and apparatus for evaluating a data processing request performed by distributed processes | |
Diks et al. | Optimal adaptive broadcasting with a bounded fraction of faulty nodes | |
US7324438B1 (en) | Technique for nondisruptively recovering from a processor failure in a multi-processor flow device | |
US20230224243A1 (en) | Highly-Available Cluster Leader Election in a Distributed Routing System | |
CN111585858B (zh) | 一种多输入多输出矩阵软总线通信方法和系统 | |
JP4117721B2 (ja) | 並列計算機のバリア同期制御方法 | |
Nicol | Global synchronization for optimistic parallel discrete event simulation | |
JP2000058615A (ja) | 複数のウエハーの同時処理方法 | |
JP3058010B2 (ja) | プロセッサ間通信方法及び装置 | |
JP3031591B2 (ja) | アクセス調停方式 | |
JP2908202B2 (ja) | 論理シミュレータにおける同期装置と制御情報作成装置 | |
JPH10105525A (ja) | 並列プロセッサ競合動作試験方法 |