JP3667585B2 - 分散メモリ型並列計算機及びそのデータ転送終了確認方法 - Google Patents
分散メモリ型並列計算機及びそのデータ転送終了確認方法 Download PDFInfo
- Publication number
- JP3667585B2 JP3667585B2 JP2000052124A JP2000052124A JP3667585B2 JP 3667585 B2 JP3667585 B2 JP 3667585B2 JP 2000052124 A JP2000052124 A JP 2000052124A JP 2000052124 A JP2000052124 A JP 2000052124A JP 3667585 B2 JP3667585 B2 JP 3667585B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer
- command
- eot
- node
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Description
【発明の属する技術分野】
本発明は、分散メモリ型並列計算機及びデータ転送終了確認方法に関し、特にローカルノードのCPUを主体とし、ローカルノードからリモートノードへのライト転送を行い、リモートノードのCPUがそのライト転送の完了を確認する分散メモリ型並列計算機及びデータ転送終了確認方法に関する。
【0002】
【従来の技術】
従来、電子計算機の構成方式において、複数の処理装置(計算ノード)を同時に動作させることにより、高い処理能力を実現する分散メモリ型並列計算機が注目されている。
【0003】
このような分散メモリ型並列計算機を用いて計算を行う場合は、各計算ノード間におけるデータ転送の発生頻度を小さくする、すなわち、計算ノード内に閉じたプログラミングを行うのが好ましいとされている。その理由は、各計算ノード間がネットワークで接続されているため、計算ノード内の距離に比べてそれぞれの計算ノード間の距離が大きいためである。
【0004】
しかし、大規模な科学技術問題において、各計算ノード内に閉じたプログラミングを行うことは不可能に等しく、実際には各計算ノードが協調して動作するプログラミングとなる。例えば、大規模問題配列が複数ノードに跨ってマッピングされている場合(グローバルメモリ空間としてマッピング)等がこれに相当する。
【0005】
図5は、従来の分散メモリ型並列計算機の構成を示すブロック図である。
図5において、従来の分散型メモリ並列計算機は、第1の計算ノード1と第2の計算ノードとがネットワーク3を介して接続されているものである。ここでは、命令起動を発する第1の計算ノード1をローカルノード1と称し、それに準ずる第2の計算ノード2をリモートノード2と称して説明する。
【0006】
ローカルノード1は、CPU(Central Processing Unit:中央演算装置)11と、MMU(Main Memory Unit:主記憶装置)12と、RCU(Remote Contorol Unit:遠隔制御装置)13と、を有して構成される。
【0007】
リモートノード2は、上記ローカルノード1と同様に、CPU21と、MMU22と、RCU23と、を有して構成される。
【0008】
ネットワーク3は、ローカルノード1とリモートノード2とを接続するものであり、一般に各ノード間の同期処理用に通信レジスタ31を有して構成される。
【0009】
ローカルノード1において、CPU11は、MMU12に対するデータのロードとストアが可能であり、ロードしたデータを用いて演算を行い、その結果をMMU12にストアする。
【0010】
RCU13は、CPU11からの計算ノードを跨ぐMMU22間のデータ転送命令を受け付け、RCU23と協調してノード間データ転送を実現する。
【0011】
例えば、CPU11がRCU13に対して、MMU12のデータをリモートノード2のMMU22に転送するように指示した場合、RCU13は、MMU12のデータをロードしてネットワーク3を経由してRCU23に転送する。RCU23は、この転送されたデータをMMU22にストアする。これをノード間ライト転送と称する。
【0012】
また、CPU11がRCU13に対して、リモートノード2のMMU22のデータをMMU12に転送するように指示した場合、RCU13は、RCU23に対してデータ転送リクエストを送る。RCU23は、MMU22にストアされるデータをロードしてネットワーク3を経由してRCU13に転送する。RCU13は、この転送されたデータをMMU12にストアする。これをノード間リード転送と称する。
【0013】
図6は、従来の分散メモリ型並列計算機におけるRCUの詳細な構成を示すブロック図である。図6において、従来の分散メモリ型並列計算機におけるRCU13(23)は、リクエスト受付部131(231)と、データ受付部132(232)と、競合調停部133(233)と、アドレス変換部134(234)と、リクエスト/データ送出部135(235)と、を有して構成される。
【0014】
リクエスト受付部231は、CPU21からの命令またはネットワーク3を経由してのRCU13からの命令(コマンド・アドレス)を受け付けて保持する。
【0015】
データ受付部232は、ネットワーク3を介してRCU13から転送されてくるデータ部分を受け付けて保持する。
【0016】
競合調停部233は、リクエスト受付部231中のリクエストを1つずつ選択(競合調停)する。
【0017】
アドレス変換部234は、論理ノード番号を物理ノード番号に変換、ローカルJOB番号をリモートJOB番号に変換、ノード内論理アドレスをノード内物理アドレスに変換する。特に、物理ノード番号変換とリモートJOB番号変換は、ネットワーク3を経由して他のノード(ローカルノード1)にアクセスする命令に対して必要となり、ノード内物理アドレス変換は、ノード内メモリ(ここではMMU22)にアクセスする命令に対して必要となる。
【0018】
リクエスト/データ送出部235は、アドレス変換部234によりアドレス変換後の命令(コマンド・アドレス)とMMU22からのロードデータを他ノード(ネットワーク3を経由してRCU13)に送出する部分である。また、データ受付部232にて保持されているデータは、他ノード(ネットワーク3を経由してRCU13)からMMU22にストアする場合に必要となる。
【0019】
一般に、ローカルノードがライト転送命令を起動し、その終了確認をリモートノードで行うプログラムは、以下のように示される。
【0020】
(ローカルノードプログラム)
FLAG=1
DO I=1,M
NODE2(I+J)=NODE(I)
END DO
FLAG=0
(リモートノードプログラム)
IF FLAG .eq.0 THEN
CALL NEXT_PROGRAM_SUB
END IF
【0021】
分散メモリ型並列計算機におけるプログラミングは、通常、MPI(Message Passing Interface)/HPF(High Performance Fortran)を使って、1つのプログラムで表現するのが普通であるが、ここでは分かり易いように、各計算ノード毎に分けて表現することにする。
【0022】
従来の分散メモリ型配列計算機においては、配列NODE1(I)をローカルノード1にマッピングし、配列NODE2(I+J)をリモートノード2にマッピングし、親プロセスをローカルノード1のCPU11としている。
【0023】
また、データ転送状態を表示する同期フラグFLAGは、ネットワーク3内の通信レジスタ31にマッピングする。ここでは、FLAG=”1”の時をデータ転送中、FLAG=”0”の時をデータ転送完了と定義するものである。
【0024】
ここで、配列コピーがノード間に跨り、コピー先のプロセスは、コピー完了後に次のサブルーチンにジャンプできるケースを検証してみる。
【0025】
上述されるプログラムは、配列NODE1(I)を配列NODE2(I+J)にコピーし、当該コピーが完了した後(FLAGの値が”1”から”0”に変わったのを確認した後)、次のサブルーチンにジャンプできるプログラムである。
【0026】
ここで、配列NODE1(I)をローカルノード1にマッピングし、配列NODE2(I+J)をリモートノード2にマッピングし、グローバルフラグFLAGは、ローカルノード1及びリモートノード2の双方から等距離にあるネットワーク(Inter-node-Network)3内の通信レジスタ31にマッピングされる。また、親プロセスは、ローカルノード1のCPU11であるとする。
【0027】
この場合、ローカルノード1のCPU11は、RCU13に対し、FLAGの”1”セット命令とノード間ライト転送命令とFLAG”0”クリア命令を発行するものである。
【0028】
図7は、従来の分散メモリ型並列計算機の動作例を示すタイミングチャートである。図7を参照しながら、ローカルノード1の動作を以下に示す。
【0029】
ローカルノード1において、CPU11は、データ転送中であることをリモートノード2のCPU21に通知するため、RCU13に対してネットワーク3内の通信レジスタ31への書き込み命令を発行する。
【0030】
RCU13では、CPU11からの通信レジスタ31への書き込み命令をリクエスト受付部131で受け付け、競合調停部133で競合調停した後、リクエスト/データ送出部135より、ネットワーク3に送出する。
【0031】
ネットワーク3では、通信レジスタ31のFLAGを”1”にセットし、FLAGの書き込み処理が正常に行えたことを示す「終了リプライ」をRCU13に返却し、当該RCU13は、この終了リプライをCPU11に通知して通信レジスタ31への書き込み処理を終了する。
【0032】
次に、CPU11は、RCU13に対してリモートノード2のMMU22に対するライト転送命令を発行する。
【0033】
RCU13では、CPU11からのライト転送命令をリクエスト受付部131で受け付け、競合調停部133で競合調停した後、アドレス変換部134において、物理ノード番号変換/リモートJOB番号変換/物理アドレス変換してMMU12にアクセスする。その後、RCU13は、MMU12からのロードデータと物理ノード番号/リモートJOB番号とを一緒にしてリクエスト/データ送出部135より、ネットワーク3を介してRCU23に対して送出する。
【0034】
次に、リモートノード2において、RCU23は、ネットワーク3を介してRCU13から送出されたライト転送命令をリクエスト受付部231で受け付け、競合調停部233で競合調停した後、アドレス変換部234で物理アドレスに変換する。また、転送データは、データ受付部232で受け付けられ、物理アドレスと一緒にMMU22に書き込まれる。
【0035】
RCU23は、RCU13からのライト転送命令とMMU22への書き込み動作が正常に終了したことを示す「終了リプライ」をリクエスト/データ送出部235からネットワーク3を経由してRCU13に送り、RCU13は、この終了リプライをCPU11に返却してライト転送命令が完了する。
【0036】
次に、CPU11は、データ転送が完了したことをリモートノード2のCPU21に知らせるために、RCU13にネットワーク3内の通信レジスタ31への書き込み命令を発行する。
【0037】
RCU13では、通信レジスタ31への書き込み命令をリクエスト受付部131で受け付け、競合調停部133で競合調停した後、リクエスト/データ送出部135より、ネットワーク3に送出する。
【0038】
ネットワーク3では、通信レジスタ31のFLAG値を”0”にクリアし、FLAGの書き込みが正常に行えたことを示す「終了リプライ」をRCU13に返却し、RCU13は、この終了リプライをCPU11に通知して通信レジスタ31への書き込み処理を終了する。
【0039】
次に、リモートノード2の動作を以下に示す。
リモートノード2において、CPU21は、RCU23に通信レジスタ読み出し命令を発行する。RCU23では、通信レジスタ31への読み出し命令をリクエスト受付部231で受け付け、競合調停部233で競合調停した後、リクエスト/データ送出部235より、ネットワーク3に対して送出する。
【0040】
ネットワーク3では、通信レジスタ31のFLAG値を読み出し、当該FLAG値とFLAGの読み出しが正常に行えたことを示す「終了リプライ」をRCU23に返却し、RCU23は、それをCPU21に通知してネットワーク3内の通信レジスタ31の読み出し処理を終了する。
【0041】
このFLAGの読み出し処理は、FLAG値が”0”になるまで、すなわち、ライト転送の完了を確認するまで繰り返される。そして、FLAG値が”0”になったのを確認したら、CPU21は,次のシーケンス(NEXT_PROGRAM_SUB)に移り一連の動作が完了となる。
【0042】
この時、従来の分散メモリ型並列計算機において、各ユニット間/ユニット内におけるレイテンシ(Latency)を以下に定めることにする。ここで用いられるTは、分散メモリ型並列計算機システムの1マシンクロックに相当するものとする。
【0043】
1.CPU(11,21)/MMU(12,22)間のレイテンシ :1T
2.MMU(12,22)/RCU(13,23)間のレイテンシ :1T
3.ネットワーク3/RCU(13,23)間のレイテンシ :3T
4.各ユニット内通過レイテンシ :0T
【0044】
よって、従来の分散メモリ型並列計算機においては、図7に示されるように、データ転送の終了確認まで、つまり、CPU21がFLAG=”0”を確認するまでに62T必要となる。
【0045】
【発明が解決しようとする課題】
しかしながら、上記従来例に示される分散メモリ型並列計算機において、本来の目的のノード間ライト転送命令の前後に位置するFLAGのセット処理及びクリア処理は、距離が遠いネットワークまでのアクセスとなるため、ライト転送前とライト転送後のオーバーヘッドが大きくなるという問題がある。
【0046】
一方、リモートノードのCPUもRCUに対し、FLAGの読み出し命令を発行し続けることとなるため、こちらも距離が遠いネットワークまでのアクセスとなり、ライト転送完了からリモートノードのCPUがライト転送完了を確認するまでのオーバーヘッドが大きくなるという問題がある。
【0047】
この問題を解決するために、以下に示される2つの方法が考えられる。
まず、第1の方法として、ローカルノードのCPUにおいて、FLAGのセット処理及びリセット処理を排除することができれば、当該ローカルノードは、早いタイミングにてライトデータ転送を実行し完了することが可能となる。
【0048】
次に、第2の方法として、リモートノードにおいて、データ転送確認フラグFLAGがネットワークではなく、リモートノードの付近にあれば、ターンアラウンドタイムが短縮されるので、FLAGの確認処理が高速化され、データ転送終了後、早いタイミングで次のサブルーチンへのジャンプが可能となる。
【0049】
上述される2つの方法による動作が可能となれば、分散メモリ型並列計算機におけるライトデータ転送時のリモートノードにおけるデータ転送終了確認は高速化されるものと期待できる。
【0050】
本発明は、ローカルノードのCPUが主体となり、ローカルノードからリモートノードへライト転送を行い、リモートノードのCPUがそのデータ転送の完了を確認をするまでの一連の動作を高速化する分散メモリ型並列計算機及びそのデータ転送終了確認方法を提供することを目的とする。
【0051】
【課題を解決するための手段】
前記課題を解決するために、請求項1記載の発明は、中央演算部と主記憶部と遠隔制御部とを備えるノードがネットワークを介して複数接続され、任意のノードから他のノードに対してデータを転送する分散メモリ型並列計算機であって、前記任意のノードにおいて、前記中央演算部は、前記遠隔制御部に対して転送データの転送終了を示すEOT(EOT: End Of Transfer )コマンドを発行する発行手段を有し、前記遠隔制御部は、前記発行手段による前記EOTコマンドを受け付けると、前記主記憶部に記憶されているデータを取得する取得手段と、前記取得手段により取得された前記データに前記EOTコマンドを付加する付加手段と、前記付加手段により前記EOTコマンドを付加した前記転送データを前記他のノードに対して転送する転送手段と、を有し、前記他のノードにおいて、前記遠隔制御部は、前記転送手段により転送される前記転送データのコマンド及びアドレスを受け付けて保持する第1の受け付け手段と、前記転送手段により転送される前記転送データのデータを受け付けて保持する第2の受け付け手段と、前記第1の受け付け手段により受け付けられた前記転送デ−タのコマンド及びアドレスの競合調停を行う競合調停手段と、前記競合調停手段により競合調停された前記アドレスを変換するアドレス変換手段と、前記競合調停手段により競合調停された前記コマンドがEOTコマンドであるか否かを判定する判定手段と、前記判定手段により前記コマンドがEOTコマンドであると判定された場合に、前記第2の受け付け手段により受け付けた前記データの一部を、前記EOTコマンドが付加されて転送されたことを示す所定の値に差し替える差し替え手段と、前記差し替え手段により差し替えられた前記データと前記アドレス変換手段により変換されたアドレスとを前記主記憶部に記憶させる記憶手段と、前記記憶手段により前記主記憶部への記憶が完了した場合に、その旨を前記任意のノードに通知する完了通知手段と、を有し、前記中央演算部は、前記記憶手段により前記主記憶部に前記データの一部が差し替えられて記憶されているか否かを検知する検知手段を有することを特徴とする分散メモリ型並列計算機である。
【0052】
請求項2記載の発明は、請求項1記載の分散メモリ型並列計算機において、前記差し替え手段は、前記第2の受け付け手段により受け付けられた前記データの先頭部分を差し替えることを特徴とする。
【0053】
請求項3記載の発明は、請求項1記載の分散メモリ型並列計算機において、前記差し替え手段は、前記第2の受け付け手段により受け付けられた前記データの最終部分を差し替えることを特徴とする。
【0054】
請求項4記載の発明は、中央演算部と主記憶部と遠隔制御部とを備えるノードがネットワークを介して複数接続され、任意のノードから他のノードに対してデータを転送する分散メモリ型並列計算機のデータ転送終了確認方法であって、前記任意のノードにおいて、前記中央演算部から前記遠隔制御部に対して転送データの転送終了を示すEOT(EOT: End Of Transfer )コマンドを発行する発行工程と、前記発行工程による前記EOTコマンドを受け付けると、前記主記憶部に記憶されているデータを取得する取得工程と、前記取得工程により取得された前記転送データに前記EOTコマンドを付加する付加工程と、前記付加工程により前記EOTコマンドを付加した前記転送データを前記他のノードに対して転送する転送工程と、前記他のノードの遠隔制御部において、前記遠隔制御部にて前記転送データのコマンド及びアドレスを受け付けて保持する第1の受け付け工程と、前記転送データのデータを受け付けて保持する第2の受け付け工程と、前記第1の受け付け工程により保持される前記コマンド及びアドレスの競合調停を行う競合調停工程と、前記競合調停工程により競合調停された前記アドレスを変換するアドレス変換工程と、前記競合調停工程により競合調停された前記コマンドがEOTコマンドであるか否かを判定する判定工程と、前記判定工程により前記コマンドがEOTコマンドであると判定された場合に、前記第2の受け付け工程により受け付けた前記データの一部を、前記EOTコマンドが付加されて転送されたことを示す所定の値に差し替える差し替え工程と、前記差し替え工程により差し替えられた前記データと前記アドレス変換工程により変換されたアドレスとを前記主記憶部に記憶させる記憶工程と、前記記憶工程により前記主記憶部への記憶が完了した場合に、その旨を前記任意のノードに対して通知する完了通知工程と、前記他のノードの中央演算部において、前記記憶工程により前記主記憶部に前記差し替え工程により前記データの一部が差し替えられて記憶されているか否かを検知する検知工程と、を有することを特徴とする分散メモリ型並列計算機のデータ転送終了確認方法である。
【0055】
請求項5記載の発明は、請求項3記載の分散メモリ型並列計算機のデータ転送終了確認方法において、前記差し替え工程は、前記第2の受け付け工程により受け付けられた前記データの先頭部分を差し替えることを特徴とする。
【0056】
請求項6記載の発明は、請求項3記載の分散メモリ型並列計算機のデータ転送終了確認方法において、 前記差し替え工程は、前記第2の受け付け工程により受け付けられた前記データの最終部分を差し替えることを特徴とする。
【0060】
【発明の実施の形態】
次に、添付図面を参照しながら本発明の実施形態である分散メモリ型並列計算機及びそのデータ転送終了確認方法を詳細に説明する。図1から図4を参照すると、本発明に係る分散メモリ型並列計算機及びそのデータ転送終了確認方法の実施の形態が示されている。なお、図5に示される従来例と同一構成要素に関しては、同一符号を付して説明するものである。
【0061】
図1は、本発明の実施形態における分散メモリ型並列計算機の概略構成を示すブロック図である。図1において、本発明の実施形態である分散メモリ型並列計算機は、複数の計算ノードとして第1の計算ノード(以下、ローカルノードと称す)1及び第2の計算ノード(以下、リモートノードと称す)2と、それらを結ぶネットワーク3とを有して構成される。なお、本発明の実施形態においては、第1の計算ノード1をローカルノードとして説明するものであるが、これに限定されるものでなく、また、この台数も限定されるものではない。
【0062】
ローカルノード1は、CPU(Central Processing Unit :中央演算装置)11と、MMU(Main Memory Unit:主記憶装置)12と、RCU(Remote Control Unit :遠隔制御装置)13と、を有して構成されている。
【0063】
リモートノード2は、上述のローカルノード1と同様に、CPU21と、MMU22と、RCU23とにより構成されている。
【0064】
また、ネットワーク3は、上述されるローカルノード1とリモートノード2と接続するものである。
【0065】
図2は、本発明の実施形態である分散メモリ型並列計算機における計算ノードの概略構成を示すブロック図である。図2において、本発明の実施形態である分散メモリ型並列計算機は、リクエスト受付部131(231)と、データ受付部132(232)と、競合調停部133(233)と、アドレス変換部134(234)と、リクエスト/データ送出部135(235)と、EOT判定部136(236)と、セレクタ137(237)と、を有して構成される。
【0066】
本発明の実施形態における計算ノードにおいては、リモートノードにおけるライト転送完了確認を高速化するために、EOT(End Of Transfer)マーク付きライト転送命令を発行するための機構を設けることにより、その命令をローカルノード1のCPU11から発行可能とするものである。
【0067】
ここで、EOTマーク付きライト転送命令とは、転送すべきデータの先頭要素の値を固定値(例えば”All 1”:4Bデータならば16進で”FFFFFFFF”、8Bデータならば16進で”FFFFFFFFFFFFFFFF”)にリモートノード2のRCU23で差し替えて、MMU22に書き込むものである。
【0068】
但し、先頭要素が別の値に置き換えられても問題のないようにマッピングをする必要がある。本方式を実現するために、リモートノード2のRCU23には、EOT付き転送命令であることを認識するためのEOT判定部136(236)と、EOTマークを先頭要素と差し替えるためのセレクタ137(237)とが新規に設けられている点において従来例と相違する。
【0069】
リクエスト受付部231は、CPU21からの命令またはネットワーク3を経由してのRCU13からの命令(コマンド・アドレス)を受け付けて保持する。
【0070】
データ受付部232は、ネットワーク3を介してRCU13から転送されてくるデータ部分を受け付けて保持する。
【0071】
競合調停部233は、リクエスト受付部231中のリクエストを1つずつ選択(競合調停)する。
【0072】
アドレス変換部234は、論理ノード番号を物理ノード番号に変換、ローカルJOB番号をリモートJOB番号に変換、ノード内論理アドレスをノード内物理アドレスに変換する。特に、物理ノード番号変換とリモートJOB番号変換は、ネットワーク3を経由して他のノード(ローカルノード1)にアクセスする命令に対して必要となり、ノード内物理アドレス変換は、ノード内メモリ(ここではMMU22)にアクセスする命令に対して必要となる。
【0073】
リクエスト/データ送出部235は、アドレス変換部234によりアドレス変換後の命令(コマンド・アドレス)とMMU22からのロードデータを他ノード(ネットワーク3を経由してRCU13)に送出する部分である。また、データ受付部232にて保持されているデータは、他ノード(ネットワーク3を経由してRCU13)からMMU22にストアする場合に必要となる。
【0074】
次に、本発明の特徴であるEOT判定部236及びセレクタ237について説明する。
【0075】
EOT判定部236は、受け付けた命令がEOTマーク付きライト転送命令であることを認識するための回路であり、当該受け付けた命令がEOTマーク付きライト転送命令である場合は、転送データの先頭要素をEOTマークに差し替えるようセレクタ237に指示を出す。
【0076】
セレクタ237は、通常、データ受付部232の方向を向いているが、EOT判定部236よりEOTマーク差し替え指示があった場合は、転送データをEOTマーク(4Bデータならば16進で”FFFFFFFF”、8Bデータならば16進で”FFFFFFFFFFFFFFFF”)に差し替える。
【0077】
図3は、本発明の実施形態である分散メモリ型並列計算機の動作例を示すタイミングチャートである。図3を参照しながら、ローカルノード1の動作を以下に示す。
【0078】
ローカルノード1において、CPU11は、RCU13にEOTマーク付きライト転送命令を発行し、RCU13は、MMU12から転送データ(配列NODE1(I))をロードして、ネットワーク3を経由してRCU23にデータ転送する。
【0079】
RCU23では、ネットワーク3を経由して転送されてきたライト転送命令をEOT判定部236でEOTマーク付きライト転送命令であると認識し、セレクタ237において、データの先頭要素をEOTマーク(4Bデータならば16進で”FFFFFFFF”、8Bデータならば16進で”FFFFFFFFFFFFFFFF”)に差し換え、MMU22に転送されてきたデータをストアする。
【0080】
RCU23では、EOTマーク付きライト転送命令が正常に終了したことを知らせる終了リプライをRCU13に送り、RCU13は、この終了リプライをCPU11に返却してローカルノード1の処理が完了する。
【0081】
一方、CPU21では、MMU22内のライト転送の先頭番地を読み出してEOTマークの確認処理を繰り返しており、やがて読み出した値がEOTマークであることを確認するとライト転送が完了したと認識し、次のシーケンスに移り一連の動作が完了となる。
【0082】
以上のように構成することにより、ローカルノード1のCPU11とネットワーク3との間でのFLAG書き込み処理、つまり、FLAGのセットとFLAGのクリアがなくなり、かつリモートノード2のCPU21とネットワーク3との間でのFLAG読み出し処理(FLAGの値確認)の代わりに、リモートノード2内のMMU22によるEOTマーク固定番地の読み出し処理をすることになるので一連の動作が高速化される。
【0083】
図1から図3に基づいて、本発明における分散メモリ型並列計算機におけるライト転送時のリモートノードにおける転送終了確認の動作について説明する。
【0084】
まず、ローカルノード1において、CPU11からRCU13に対して、リモートメモリ(MMU22)に対するEOTマーク付きライト転送命令が発行される。
【0085】
RCU13では、EOTマーク付きライト転送命令をリクエスト受付部131で受け付け、競合調停部133で競合調停後、アドレス変換部134において、物理ノード番号変換/リモートJOB番号変換/物理アドレス変換してMMU12をアクセスする。そして、MMU12からのロードデータと物理ノード番号/リモートJOB番号を一緒にしてリクエスト/データ送出部135より、RCU23(ネットワーク3)に送出する。
【0086】
次に、リモートノード2において、RCU23は、RCU13(ネットワーク3)よりEOTマーク付きライト転送命令をリクエスト受付部231で受け付け、競合調停部233で競合調停して、アドレス変換部234で物理アドレス変換するのと同時にEOT判定部236においてEOTマーク付きライト転送命令であることを認識し、セレクタ237においてデータの先頭要素をEOTマークに置き換えるよう指示する。
【0087】
また、データはデータ受付部232で受け付け、セレクタ237により先頭の要素のみがEOTマークに置き換えられて、物理アドレスと一緒にMMU22にライトされる。
【0088】
RCU23は、RCU13からのEOTマーク付きライト転送とMMU22へのライト動作が正常終了したことの通知(終了リプライ)をリクエスト/データ送出部235からネットワーク3を経由してRCU13に送り付け、RCU13は、この終了リプライをCPU11に返却してEOTマーク付きライト転送命令が完了する。
【0089】
一方、リモートノードのCPU21は、MMU22のEOTマークが書き込まれるべき番地を読み出してチェックをする。この動作は、MMU22のEOTマークが書き込まれるべき番地にEOTマークが書き込まれるまで続く。やがて、MMU22にRCU23によりEOTマークが書き込まれ、CPU21がそれを確認することでライト転送が完了したと認識し、次のシーケンス(NEXT_PROGRAM_SUB)に移り一連の動作が完了となる。
【0090】
ここでは便宜上、各ユニット間/ユニット内のレイテンシを下記のように定めることにする。但し、Tとは本分散メモリ型並列計算機システムの1マシンクロックに相当するものとする。
【0091】
1. CPU(11,21)/MMU(12,22)間のレイテンシ:1T
2. MMU(12,22)/RCU(13,23)間のレイテンシ:1T
3. ネットワーク3/RCU(13,23)間のレイテンシ :3T
4. 各ユニット内通過レイテンシ :0T
【0092】
このとき、本発明における構成例では、ローカルノードからライト転送命令が発行されてから、リモートノードが転送終了確認を行うまでの時間(CPU21がMMU22のEOTマークを確認するまで)は、12Tとなる。
【0093】
〈他の実施形態〉
図4は、本発明の他の実施形態である分散メモリ型並列計算機の動作例を示すタイミングチャートである。本発明の実施形態と異なる点は、EOTマークの差し替え位置が変更されている点にある。上述される実施形態において、転送データの先頭要素をEOTマークに差し替えるのに対し、本発明の他の実施形態においては、転送データの最終要素をEOTマークに差し替えるようにするものである。
【0094】
まず、ローカルノード1において、CPU11からRCU13に対して、リモートノード側のメモリ(MMU22)に対するEOTマーク付きライト転送命令が発行される。
【0095】
RCU13では、EOTマーク付きライト転送命令をリクエスト受付部131で受け付け、競合調停部133で競合調停した後、アドレス変換部134において、物理ノード番号変換/リモートJOB番号変換/物理アドレス変換してMMU12にアクセスする。そして、MMU12からのロードデータと物理ノード番号/リモートJOB番号とを一緒にしてリクエスト/データ送出部135より、ネットワーク3を介してRCU23に送出する。
【0096】
次に、リモートノード2において、RCU23は、ネットワーク3を介してRCU13からのEOTマーク付きライト転送命令をリクエスト受付部231で受け付け、競合調停部233で競合調停し、アドレス変換部234で物理アドレス変換するのと同時にEOT判定部236においてEOTマーク付きライト転送命令であることを認識し、セレクタ237においてデータの最終要素をEOTマークに置き換えるよう指示する。また、データは、データ受付部232で受け付け、セレクタ237により最終の要素のみがEOTマークに置き換えられて、物理アドレスと一緒にMMU22に書き込まれる。
【0097】
RCU23は、RCU13からのEOTマーク付きライト転送とMMU22へのライト動作が正常終了したことを示す「終了リプライ」をリクエスト/データ送出部235からネットワーク3を経由してRCU13に送り付け、RCU13は、この終了リプライをCPU11に返却してEOTマーク付きライト転送命令が完了する。
【0098】
一方、リモートノードのCPU21は、MMU22のEOTマークが書き込まれるべき番地を読み出してチェックをする。この動作は、MMU22のEOTマークが書き込まれるべき番地にEOTマークが書き込まれるまで続く。やがて、MMU22にRCU23によりEOTマークが書き込まれ、CPU21がそれを確認することでライト転送が完了したと認識し、次のシーケンスに移り一連の動作が完了となる。
【0099】
このとき、本発明の他の実施形態における構成では、ローカルノードからライト転送命令が発行されてから、リモートノードが転送終了確認を行うまでの時間(CPU21がMMU22のEOTマークを確認するまで)は、26Tとなる。
【0100】
なお、上述される各実施形態は、本発明の好適な実施形態であり、本発明の要旨を逸脱しない範囲内において種々変形して実施することが可能である。
【0101】
例えば、各ユニット間におけるレイテンシ、ユニット内のレイテンシを固定値を用いて説明したものであるが、上述される値に限定されるものでない。
【0102】
また、上述される実施形態においては、転送データの1要素を4B幅または8B幅として説明するものであるが、そのデータ幅に限定されるものでない。
【0103】
【発明の効果】
以上の説明より明らかなように、本発明の分散メモリ型並列計算機及びそのデータ転送終了確認方法によれば、ローカルノードのCPUによるライト転送の前処理(データ転送中であることをリモートノードのCPUに示すFLAGの”1”セット)と後処理(データ転送が終了したことをリモートノードのCPUに示すFLAGの”0”セット)をなくすことができる。その理由は、リモートノードのRCU内にEOT判定部とセレクタとを備えることにより、転送データそのものに転送終了マークを付けることにより、リモートノードのCPUは転送データそのものを確認すればよいからである。
【0104】
また、本発明の分散メモリ型並列計算機及びそのデータ転送終了確認方法によれば、リモートノードのCPUによるライト転送の終了確認処理が高速に行うことができる。その理由は、リモートノードのCPU内にEOT判定部とセレクタとを備えることにより、転送データそのものに転送終了マークを付けることができ、リモートノードのCPUは同一ノード内のMMUのEOTマーク書き込み番地にアクセスすればよいので、確認の際のターンアラウンドタイムが大幅に短縮されるからである。
【0105】
また、本発明の分散メモリ型並列計算機及びそのデータ転送終了確認方法によれば、ライト転送確認処理が高速に行えるのでリモートノードにおけるデータ転送の次のシーケンスをより早いタイミングで実行することができ、システム全体の性能を向上することができる。その理由は、分散メモリ型プログラムでは、リモートノードのMMUに対するライト転送処理は頻繁に現れ、本確認処理時間を短縮することにより、プログラム全体の実行時間が短縮されるからである。
【0106】
さらに、本発明の分散メモリ型並列計算機及びそのデータ転送終了確認方法によれば、排他制御の一般論理にも応用できる。つまり、EOTマーク付き転送とは、誰かがある場所を読みたいが、最新のデータが到着するまで読み出せない動作であり、これは例えば、ディスクに対する最新データ読み出し動作の高速化にも応用することが可能である。
【図面の簡単な説明】
【図1】本発明の実施形態である分散メモリ型計算機の概略構成を示すブロック図である。
【図2】本発明の実施形態におけるRCUの概略構成を示すブロック図である。
【図3】本発明の実施形態である分散メモリ型計算機の動作例を示すタイミングチャートである。
【図4】本発明の他の実施形態である分散メモリ型計算機の動作例を示すタイミングチャートである。
【図5】従来の分散メモリ型計算機の概略構成を示すブロック図である。
【図6】従来の分散メモリ型計算機におけるRCU部の概略構成を示すブロック図である。
【図7】従来の分散メモリ型計算機の動作例を示すタイミングチャートである。
【符号の説明】
1 第1の計算ノード(ローカルノード)
2 第2の計算ノード(リモートノード)
3 ネットワーク
11 CPU(中央演算装置)
12 MMU(主記憶装置)
13 RCU(遠隔制御装置)
21 CPU(中央演算装置)
22 MMU(主記憶装置)
23 RCU(遠隔制御装置)
31 通信レジスタ
Claims (6)
- 中央演算部と主記憶部と遠隔制御部とを備えるノードがネットワークを介して複数接続され、任意のノードから他のノードに対してデータを転送する分散メモリ型並列計算機であって、
前記任意のノードにおいて、
前記中央演算部は、
前記遠隔制御部に対して転送データの転送終了を示すEOT(EOT: End Of Transfer) コマンドを発行する発行手段を有し、
前記遠隔制御部は、
前記発行手段による前記EOTコマンドを受け付けると、前記主記憶部に記憶されているデータを取得する取得手段と、
前記取得手段により取得された前記データに前記EOTコマンドを付加する付加手段と、
前記付加手段により前記EOTコマンドを付加した前記転送データを前記他のノードに対して転送する転送手段と、を有し、
前記他のノードにおいて、
前記遠隔制御部は、
前記転送手段により転送される前記転送データのコマンド及びアドレスを受け付けて保持する第1の受け付け手段と、
前記転送手段により転送される前記転送データのデータを受け付けて保持する第2の受け付け手段と、
前記第1の受け付け手段により受け付けられた前記転送デ−タのコマンド及びアドレスの競合調停を行う競合調停手段と、
前記競合調停手段により競合調停された前記アドレスを変換するアドレス変換手段と、
前記競合調停手段により競合調停された前記コマンドがEOTコマンドであるか否かを判定する判定手段と、
前記判定手段により前記コマンドがEOTコマンドであると判定された場合に、前記第2の受け付け手段により受け付けた前記データの一部を、前記EOTコマンドが付加されて転送されたことを示す所定の値に差し替える差し替え手段と、
前記差し替え手段により差し替えられた前記データと前記アドレス変換手段により変換されたアドレスとを前記主記憶部に記憶させる記憶手段と、
前記記憶手段により前記主記憶部への記憶が完了した場合に、その旨を前記任意のノードに通知する完了通知手段と、を有し、
前記中央演算部は、
前記記憶手段により前記主記憶部に前記データの一部が差し替えられて記憶されているか否かを検知する検知手段を有することを特徴とする分散メモリ型並列計算機。 - 前記差し替え手段は、
前記第2の受け付け手段により受け付けられた前記データの先頭部分を差し替えることを特徴とする請求項1記載の分散メモリ型並列計算機。 - 前記差し替え手段は、
前記第2の受け付け手段により受け付けられた前記データの最終部分を差し替えることを特徴とする請求項1記載の分散メモリ型並列計算機。 - 中央演算部と主記憶部と遠隔制御部とを備えるノードがネットワークを介して複数接続され、任意のノードから他のノードに対してデータを転送する分散メモリ型並列計算機のデータ転送終了確認方法であって、
前記任意のノードにおいて、
前記中央演算部から前記遠隔制御部に対して転送データの転送終了を示すEOT(EOT: End Of Transfer) コマンドを発行する発行工程と、
前記発行工程による前記EOTコマンドを受け付けると、前記主記憶部に記憶されているデータを取得する取得工程と、
前記取得工程により取得された前記転送データに前記EOTコマンドを付加する付加工程と、
前記付加工程により前記EOTコマンドを付加した前記転送データを前記他のノードに対して転送する転送工程と、
前記他のノードの遠隔制御部において、
前記遠隔制御部にて前記転送データのコマンド及びアドレスを受け付けて保持する第1の受け付け工程と、
前記転送データのデータを受け付けて保持する第2の受け付け工程と、
前記第1の受け付け工程により保持される前記コマンド及びアドレスの競合調停を行う競合調停工程と、
前記競合調停工程により競合調停された前記アドレスを変換するアドレス変換工程と、
前記競合調停工程により競合調停された前記コマンドがEOTコマンドであるか否かを判定する判定工程と、
前記判定工程により前記コマンドがEOTコマンドであると判定された場合に、前記第2の受け付け工程により受け付けた前記データの一部を、前記EOTコマンドが付加されて転送されたことを示す所定の値に差し替える差し替え工程と、
前記差し替え工程により差し替えられた前記データと前記アドレス変換工程により変換されたアドレスとを前記主記憶部に記憶させる記憶工程と、
前記記憶工程により前記主記憶部への記憶が完了した場合に、その旨を前記任意のノードに対して通知する完了通知工程と、
前記他のノードの中央演算部において、
前記記憶工程により前記主記憶部に前記差し替え工程により前記データの一部が差し替えられて記憶されているか否かを検知する検知工程と、を有することを特徴とする分散メモリ型並列計算機のデータ転送終了確認方法。 - 前記差し替え工程は、
前記第2の受け付け工程により受け付けられた前記データの先頭部分を差し替えることを特徴とする請求項4記載の分散メモリ型並列計算機のデータ転送終了確認方法。 - 前記差し替え工程は、
前記第2の受け付け工程により受け付けられた前記データの最終部分を差し替えることを特徴とする請求項4記載の分散メモリ型並列計算機のデータ転送終了確認方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000052124A JP3667585B2 (ja) | 2000-02-23 | 2000-02-23 | 分散メモリ型並列計算機及びそのデータ転送終了確認方法 |
CA002337677A CA2337677A1 (en) | 2000-02-23 | 2001-02-22 | Distributed memory type parallel computer and write data transfer end confirming method thereof |
US09/789,724 US6970911B2 (en) | 2000-02-23 | 2001-02-22 | Distributed memory type parallel computer and write data transfer end confirming method thereof |
EP01103676A EP1128274A3 (en) | 2000-02-23 | 2001-02-23 | Distributed memory type parallel computer and write data transfer end confirming method thereof |
AU23211/01A AU780501B2 (en) | 2000-02-23 | 2001-02-23 | Distributed memory type parallel computer and write data transfer end confirming method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000052124A JP3667585B2 (ja) | 2000-02-23 | 2000-02-23 | 分散メモリ型並列計算機及びそのデータ転送終了確認方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001236335A JP2001236335A (ja) | 2001-08-31 |
JP3667585B2 true JP3667585B2 (ja) | 2005-07-06 |
Family
ID=18573691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000052124A Expired - Fee Related JP3667585B2 (ja) | 2000-02-23 | 2000-02-23 | 分散メモリ型並列計算機及びそのデータ転送終了確認方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6970911B2 (ja) |
EP (1) | EP1128274A3 (ja) |
JP (1) | JP3667585B2 (ja) |
AU (1) | AU780501B2 (ja) |
CA (1) | CA2337677A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030140220A1 (en) * | 2001-06-29 | 2003-07-24 | Bull Hn Information Systems Inc. | Method and data processing system providing remote program initiation and control across multiple heterogeneous computer systems |
US7395383B2 (en) | 2005-11-01 | 2008-07-01 | International Business Machines Corporation | Realtime-safe read copy update with per-processor read/write locks |
JP4469010B2 (ja) * | 2006-03-10 | 2010-05-26 | ソニー株式会社 | ブリッジ、情報処理システムおよびアクセス制御方法 |
KR101311093B1 (ko) * | 2011-04-18 | 2013-09-25 | 미쓰비시덴키 가부시키가이샤 | 프로그래머블 로직 콘트롤러 |
WO2014047182A2 (en) | 2012-09-21 | 2014-03-27 | Nyse Group, Inc. | High performance data streaming |
US10496630B2 (en) | 2015-10-01 | 2019-12-03 | Microsoft Technology Licensing, Llc | Read-write protocol for append-only distributed databases |
EP3488579B1 (en) * | 2016-07-21 | 2023-04-05 | Baidu.com Times Technology (Beijing) Co., Ltd. | Efficient communications amongst computing nodes for operating autonomous vehicles |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ZA883232B (en) * | 1987-05-06 | 1989-07-26 | Dowd Research Pty Ltd O | Packet switches,switching methods,protocols and networks |
US5274762A (en) | 1989-12-15 | 1993-12-28 | Ncr Corporation | Method for high speed data transfer |
JP3169624B2 (ja) | 1991-03-20 | 2001-05-28 | 株式会社日立製作所 | プロセッサ間通信方法およびそのための並列プロセッサ |
US5640599A (en) * | 1991-12-30 | 1997-06-17 | Apple Computer, Inc. | Interconnect system initiating data transfer over launch bus at source's clock speed and transfering data over data path at receiver's clock speed |
US5835492A (en) | 1993-09-08 | 1998-11-10 | Hitachi, Ltd. | Network for mutually connecting computers and communicating method using such network |
EP0665503A3 (en) * | 1994-01-28 | 1996-01-17 | Nec Corp | High speed synchronization communication control mechanism for a multiprocessor system. |
CA2145553C (en) * | 1994-03-30 | 1999-12-21 | Yuuki Date | Multi-processor system including priority arbitrator for arbitrating request issued from processors |
US5742843A (en) * | 1994-07-20 | 1998-04-21 | Fujitsu Limited | Control system for access between processing elements in a parallel computer |
US5638516A (en) * | 1994-08-01 | 1997-06-10 | Ncube Corporation | Parallel processor that routes messages around blocked or faulty nodes by selecting an output port to a subsequent node from a port vector and transmitting a route ready signal back to a previous node |
US5960209A (en) * | 1996-03-11 | 1999-09-28 | Mitel Corporation | Scaleable digital signal processor with parallel architecture |
US5748900A (en) * | 1996-03-13 | 1998-05-05 | Cray Research, Inc. | Adaptive congestion control mechanism for modular computer networks |
JP2000112912A (ja) | 1998-10-02 | 2000-04-21 | Nec Kofu Ltd | 分散メモリ型並列計算機におけるリモートメモリに対するテストアンドコピーの処理方式 |
JP3683211B2 (ja) * | 2001-12-10 | 2005-08-17 | エヌイーシーコンピュータテクノ株式会社 | ノード間データ転送方法及びノード間データ転送装置 |
-
2000
- 2000-02-23 JP JP2000052124A patent/JP3667585B2/ja not_active Expired - Fee Related
-
2001
- 2001-02-22 US US09/789,724 patent/US6970911B2/en not_active Expired - Fee Related
- 2001-02-22 CA CA002337677A patent/CA2337677A1/en not_active Abandoned
- 2001-02-23 AU AU23211/01A patent/AU780501B2/en not_active Ceased
- 2001-02-23 EP EP01103676A patent/EP1128274A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
AU780501B2 (en) | 2005-03-24 |
EP1128274A3 (en) | 2005-08-31 |
JP2001236335A (ja) | 2001-08-31 |
US6970911B2 (en) | 2005-11-29 |
CA2337677A1 (en) | 2001-08-23 |
US20010021944A1 (en) | 2001-09-13 |
EP1128274A2 (en) | 2001-08-29 |
AU2321101A (en) | 2001-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH04308956A (ja) | 受信バッファ | |
JP2010165022A (ja) | プロセッサ間通信装置、プロセッサ間通信方法、プログラムおよび記録媒体 | |
JP2001117859A (ja) | バス制御装置 | |
US8250260B2 (en) | Method, arrangement, data processing program and computer program product for exchanging message data in a distributed computer system | |
JP3667585B2 (ja) | 分散メモリ型並列計算機及びそのデータ転送終了確認方法 | |
CN114238184B (zh) | 一种多功能dma的传输方法、装置及存储介质 | |
KR100978082B1 (ko) | 공유 메모리형 멀티 프로세서에 있어서의 비동기 원격 절차 호출 방법 및 비동기 원격 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 | |
US7336657B2 (en) | Inter-nodal data transfer system and data transfer apparatus | |
JPH11232213A (ja) | 入出力装置におけるデータ転送方式 | |
JPH08212178A (ja) | 並列計算機 | |
JP4431492B2 (ja) | 複数のコヒーレンシー・グラニュールをサポートするデータ転送ユニット | |
KR100978083B1 (ko) | 공유 메모리형 멀티 프로세서에 있어서의 절차 호출 방법 및 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 | |
JP2000112912A (ja) | 分散メモリ型並列計算機におけるリモートメモリに対するテストアンドコピーの処理方式 | |
JP2007280127A (ja) | プロセッサ間通信方法 | |
JP2000285087A (ja) | ノード間データ通信方法 | |
KR0170595B1 (ko) | 고속 병렬 컴퓨터에서 크로스바 네트웍 라우터의 송신부에 대한 소프트웨어 애뮬레이션 방법 | |
JP2785738B2 (ja) | 分散メモリ型マルチプロセッサ情報処理システム | |
CN118034783A (zh) | 一种多线程任务处理装置、方法及芯片 | |
US20100082908A1 (en) | Access control and computer system | |
CN115658601A (zh) | 多核处理器系统及其控制方法 | |
JP2531209B2 (ja) | チャネル装置 | |
JP2000020489A (ja) | 計算機におけるデータ転送装置 | |
JP2012128520A (ja) | データ処理装置 | |
JPH0659066B2 (ja) | デ−タ伝送方式 | |
JP2000330747A (ja) | 印刷装置及びそのメモリ制御方法ならびに記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050307 |
|
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: 20050329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050406 |
|
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: 20080415 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090415 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100415 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |