JPH0816540A - 並列計算機におけるメッセージ通信方式 - Google Patents
並列計算機におけるメッセージ通信方式Info
- Publication number
- JPH0816540A JPH0816540A JP6147370A JP14737094A JPH0816540A JP H0816540 A JPH0816540 A JP H0816540A JP 6147370 A JP6147370 A JP 6147370A JP 14737094 A JP14737094 A JP 14737094A JP H0816540 A JPH0816540 A JP H0816540A
- Authority
- JP
- Japan
- Prior art keywords
- message
- processor element
- parallel computer
- identifier information
- communication system
- 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
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)
Abstract
方式に関し、柔軟なバッファ管理の実現と、オーバーヘ
ッドの削減の実現を目的とする。 【構成】各プロセッサエレメントが、到着順に従って受
信メッセージを自エレメント用に用意されるメモリ領域
に書き込むメッセージ受信手段14と、共有メモリのメ
モリ領域にデータを直接書き込む遠隔書込手段11とを
備える構成を採って、送信プロセッサエレメントは、遠
隔書込手段11を使って、受信プロセッサエレメントに
送信するメッセージの本体を共有メモリに書き込むとと
もに、受信プロセッサエレメントのメッセージ受信手段
14に対して、メッセージの識別子情報と、メッセージ
本体へのポインタ情報とを送信するように構成する。
Description
ッセージ通信方式に関し、特に、柔軟なバッファ管理を
実現するとともに、オーバーヘッドの削減を実現する並
列計算機におけるメッセージ通信方式に関する。
る並列計算機では、データを分割して保持する構成を採
って、メッセージ通信に従って他プロセッサエレメント
の保持データを使用しながら計算処理を実行していくと
いう構成を採っている。
高めるためにも、メッセージ通信の効率を高めていく必
要がある。
ジ通信を実現する方法として、メッセージ通信用のハー
ドウェアを用いる方法と、プロセッサ間で共有メモリを
持って、その上でソフトウェアによってメッセージ通信
を実現する方法という2つが用いられていた。後者の方
法は、共有バス結合の並列計算機で広く用いられている
方法である。
いる従来技術では、送信プロセッサエレメントが、メッ
セージにヘッダを付け送信デバイスを使って受信プロセ
ッサエレメントに送信し、受信プロセッサエレメント
が、受信デバイスを使ってメッセージを受信してメモリ
上のバッファに書き込む。そして、受信プロセッサエレ
メントが、受信関数でバッファ内のメッセージをサーチ
して目的のメッセージを探し出し、それをユーザの受信
領域に転送していくことでメッセージの送受信を実行し
ている。なお、ヘッダとは、送信プロセッサエレメント
から受信プロセッサエレメントまでのルーティング情報
や、受信プロセッサエレメントがメッセージを選択する
ために用いる識別子を集めたものである。
されてくる複数のメッセージ間の順序が保存される必要
があるが、この方法では、受信デバイスがバッファの先
頭から順番に受信メッセージを保存していくことで、そ
の順序性を実現する構成を採っている。
て、その上でソフトウェアによってメッセージ通信を実
現するという従来技術では、送信プロセッサエレメント
が、共有メモリ上にバッファを確保してメッセージを書
き込み、メッセージのアドレスとヘッダとを共有メモリ
上のメッセージキューにキューイングする。そして、受
信プロセッサエレメントが、そのメッセージキューをサ
ーチして目的のメッセージのヘッダを探し出し、それが
指すメッセージをユーザの受信領域に転送していくこと
でメッセージの送受信を実行している。
されてくる複数のメッセージ間の順序が保存される必要
があるが、この方法では、メッセージキューに書き込む
ときに排他制御を実行することで、その順序性を実現す
る構成を採っている。
ジ通信機構の回路構成、図10に、後者の従来技術で用
いる遠隔書込機構の回路構成を図示する。
ージ通信用のハードウェアを用いる従来技術では、受信
デバイスが、バッファの管理からメッセージの書き込み
まで行っているために、柔軟なバッファ管理を行うこと
ができないという問題点がある。
る場合、それを可能にするためには受信デバイスに専用
の複雑な回路が必要となる。また、OSやアプリケーシ
ョンプログラムの要請により新たなバッファ管理が必要
となるときに、それに対処することができない。
CPUがバッファを獲得してDMAを起動する方法もあ
るが、この方法を用いると、メッセージ通信のレイテン
シ(送信開始から受信開始までの遅れ)が増大し、メッ
セージ通信の性能そのものが低下するというもっと大き
な問題点が出てくることになる。
て、その上でソフトウェアによってメッセージ通信を実
現するという従来技術では、メッセージキューにキュー
イングするときに排他制御を行わなくてはならないこと
からオーバーヘッドが大きいという問題点がある。
の排他制御に従って、キューイング処理中のプロセッサ
エレメント以外のキューイング要求プロセッサエレメン
トが、アイドル状態になるという問題点もある。なお、
メッセージ通信用のハードウェアを用いる場合には、メ
ッセージが集中してもアイドルになるのはメッセージ通
信用のハードウェアであって、プロセッサエレメント
は、他の仕事を実行することができることから、このよ
うな問題は起こらない。
であって、柔軟なバッファ管理を実現するとともに、オ
ーバーヘッドの削減を実現する新たな並列計算機におけ
るメッセージ通信方式の提供を目的とする。
を図示する。図中、1は並列計算機を構成する複数のプ
ロセッサエレメント、2はプロセッサエレメント1を接
続するバスやネットワーク等の接続路である。ここで、
この原理構成図では、各プロセッサエレメント1にロー
カルに配置されるメモリ(図中の19)は、分散型の共
有メモリとしても機能することを想定している。
リモートメモリコントロール手段であって、他プロセッ
サエレメント1に割り当てられる共有メモリのメモリ領
域にメッセージを直接書き込む遠隔書込手段11と、他
プロセッサエレメント1の遠隔書込手段11の送信する
メッセージを自エレメントの管理する共有メモリのメモ
リ領域に書き込む受信書込手段12とを備えるものであ
る。
メッセージコントロール手段であって、到着順に従って
受信メッセージを自エレメント用に用意されるメモリ領
域(共有メモリのメモリ領域のこともあるし、ローカル
メモリのメモリ領域のこともある)に書き込むメッセー
ジ受信手段14と、他プロセッサエレメント1のメッセ
ージ受信手段14に対してメッセージを送信するメッセ
ージ送信手段15とを備えるものである。
されるメッセージ作成手段であって、他プロセッサエレ
メント1に送信するメッセージを作成するもの、17は
例えば受信プロセッサエレメント1に展開される解放手
段であって、メモリの利用効率を図るべく、送信プロセ
ッサエレメント1からのリクエストに応答して、その送
信プロセッサエレメント1の使用していた遠隔書込手段
11の書込先となる書込領域を解放するものである。
に展開される生成手段であって、送信プロセッサエレメ
ント1の遠隔書込手段11の書込先となる書込領域が溢
れるときに、その送信プロセッサエレメント1からのリ
クエストに応答してその書込領域を生成するもの、19
は受信プロセッサエレメント1に展開されるメモリであ
って、一部は他プロセッサエレメント1がアクセス可能
となる共有メモリとして機能し、一部は他プロセッサエ
レメント1がアクセス不可能となるローカルメモリとし
て機能する。
メッセージ作成手段16がメッセージを作成すると、遠
隔書込手段11を使って、メッセージの本体を、共有メ
モリとして機能する受信プロセッサエレメント1のメモ
リ19に書き込むとともに、受信プロセッサエレメント
1のメッセージ受信手段14に対して、メッセージの識
別子情報と、メッセージ本体へのポインタ情報とを送信
する。
は、遠隔書込手段11に従って、共有メモリとして機能
する受信プロセッサエレメント1のメモリ領域に直接書
き込まれるとともに、そのメッセージ本体の順序性は、
メッセージ受信手段14に従って、小さいデータ量のメ
ッセージの識別子情報のみでもって保証され、そして、
そのメッセージ本体は、受信プロセッサエレメント1の
備える図示しないデータ処理機能が、目的のメッセージ
の識別子情報を特定していくときに、その識別子情報と
対応付けられるポインタ情報に従って読み出されていく
ことになる。
のためのバッファ管理と、メッセージの順序性の保証処
理とを分離する構成を採ることから、柔軟なバッファ管
理を実現できるようになるとともに、ソフトウェアによ
る排他制御処理が不要となることで、オーバーヘッドの
削減を実現できるようになるのである。
ッサエレメント1は、遠隔書込手段11を使って、メッ
セージ本体の全てを遠隔書き込みするのではなくて、メ
ッセージ本体一部、あるいは、メッセージ本体及びメッ
セージ識別子情報一部、あるいは、メッセージ本体一部
及びメッセージ識別子情報一部を遠隔書き込みする構成
を採ることも可能である。
は、メッセージ本体一部を遠隔書き込みするときには、
受信プロセッサエレメント1のメッセージ受信手段14
に対して、メッセージ識別子情報と、メッセージ本体の
残りと、メッセージ本体一部へのポインタ情報とを送信
し、メッセージ本体及びメッセージ識別子情報一部を遠
隔書き込みするときには、メッセージ識別子情報の残り
と、メッセージ本体及びメッセージ識別情報子一部への
ポインタ情報とを送信し、メッセージ本体一部及びメッ
セージ識別子情報一部を遠隔書き込みするときには、メ
ッセージ識別子情報の残りと、メッセージ本体の残り
と、メッセージ本体一部及びメッセージ識別子情報一部
へのポインタ情報とを送信することになる。
なときに、その分割するメッセージデータをその都度ヘ
ッダを付けずに送信することが可能になり、これにより
大きな有効性を発揮できることになる。
メッセージ作成手段16によりメッセージ本体が作成さ
れていくときに、その作成処理と並行させながら、メッ
セージ本体を分割しつつ、遠隔書込手段11を使って、
共有メモリとして機能する受信プロセッサエレメント1
のメモリ19に書き込んでいって、最後に、受信プロセ
ッサエレメント1のメッセージ受信手段14に対して、
メッセージの識別子情報と、メッセージ本体へのポイン
タ情報とを送信していくという構成を採ることが可能と
なって、メッセージの作成処理と送信処理とを並行して
実行できるようになるからである。
メッセージ本体分割部分の到達の有無が判定可能となる
場合には、送信プロセッサエレメント1は、メッセージ
本体の送信に先立って、受信プロセッサエレメント1の
メッセージ受信手段14に対して、メッセージの識別子
情報と、メッセージ本体へのポインタ情報とを送信して
いく構成を採ることで、メッセージ本体分割部分が到着
されると同時に参照可能となるようにする構成を採るこ
とも可能である。
る。図2に、本発明を実装する並列計算機のハードウェ
ア構成の一実施例を図示する。
列計算機は、複数のプロセッサエレメント1と、それら
を接続するネットワーク2aとから構成され、各プロセ
ッサエレメント1は、CPU20と、メモリ21と、メ
ッセージ通信回路22と、リモートメモリコントーラ2
3とを備える。ここで、各プロセッサエレメント1に展
開されるメモリ21は、一部は他プロセッサエレメント
1がアクセス可能となる分散型の共有メモリとして機能
し、一部は他プロセッサエレメント1がアクセス不可能
となるローカルメモリとして機能する。
ェアにより構成されて、到着順に従って受信メッセージ
を自メモリ21(共有メモリのメモリ領域のこともある
し、ローカルメモリのメモリ領域のこともある)に書き
込むとともに、他プロセッサエレメント1のメッセージ
通信回路22に対してメッセージを送信するよう動作す
る。
タレジスタと、アドレスレジスタと、データ変換回路と
から構成されて、CPU20上で走行するソフトウェア
が発行するデータとアドレスとを受け取り、それらをマ
ージしてネットワーク2aを介して他プロセッサエレメ
ント1に送信することで、そのデータをそのアドレスの
指す共有メモリとして機能する他プロセッサエレメント
1のメモリ21に書き込むとともに、他プロセッサエレ
メント1から送信されてくるデータとアドレスとを受け
取って、そのデータをそのアドレスの指す共有メモリと
して機能する自メモリ21に書き込むよう動作する。
ージ通信回路22の受信するメッセージデータを受信順
に書き込む第1の書込領域30と、他プロセッサエレメ
ント1対応に用意される複数の書込領域から構成され
て、リモートメモリコントローラ23の受信するメッセ
ージデータを図4に示すようにリング形態で書き込む第
2の書込領域31とを備える。
領域は、送信側となる他プロセッサエレメント1からの
リクエストに応答して作成されるとともに消去されるこ
とになる。
で実行される本発明のメッセージ通信処理の一実施例を
図示する。ここで、図中、1aはメッセージを送信する
送信プロセッサエレメント、1bはメッセージを受信す
る受信プロセッサエレメントである。
ージ通信処理では、送信プロセッサエレメント1aは、
送信対象のメッセージが作成されると、図中の破線で示
すように、リモートメモリコントローラ23を使って、
メッセージの本体を、共有メモリとして機能する受信プ
ロセッサエレメント1bのメモリ21の第2の書込領域
31に書き込むとともに、図中の実線で示すように、受
信プロセッサエレメント1bのメッセージ通信回路22
に対して、メッセージの識別子情報と、メッセージ本体
へのポインタ情報とを送信する構成を採る。
処理では、メッセージ本体については、共有メモリとし
て機能する受信プロセッサエレメント1bのメモリ21
に直接どんどん書き込んでいくとともに、メッセージの
識別子情報と、メッセージ本体へのポインタ情報とを受
信プロセッサエレメント1bのメッセージ通信回路22
に送信する構成を採って、そのメッセージ通信回路22
が、受信順に、メッセージの識別子情報と、メッセージ
本体へのポインタ情報とをメモリ21の第1の書込領域
30に書き込んでいくことを利用して、書き込んだメッ
セージ本体の順序性を保存することを実現するものであ
る。
理では、送信プロセッサエレメント1aは、第2の書込
領域31の内の自エレメントに割り当てられた書込領域
をリングバッファとして用いつつメッセージ本体の書き
込みを実行することで、メッセージ通信にあたってのオ
ーバーヘッドを削減している。すなわち、本発明では、
メッセージの書込先が書込側でローカルに管理され、こ
れにより、メッセージ通信にあたってのオーバーヘッド
が削減されることになる。
ッセージ通信処理を更に具体的に説明する。送信プロセ
ッサエレメント1aは、先ず最初に、受信プロセッサエ
レメント1bに要求を発行することで、メッセージ本体
を書き込むための書込領域を受信プロセッサエレメント
1bの第2の書込領域31に確保する。なお、この書込
領域の確保は、動的に行われることもあるし、静的に行
われることもある。
信プロセッサエレメント1aは、確保した書込領域の開
始アドレスをローカルな変数LARに保存するととも
に、終端アドレスをローカルな変数LARLIMITに
保存し、続いて、書込処理の先頭を表示するローカルな
変数WTPに開始アドレスを書き込む。
は、メッセージ本体の送信に入って、送信するメッセー
ジ本体に対して、受信プロセッサエレメント1bに確保
した書込領域の中からメッセージ本体長分の領域を割り
当て、続いて、その割り当てた書込領域にメッセージ本
体を遠隔書き込みして、送信したメッセージ本体の終端
アドレスをローカルな変数WTPに設定する。
は、メッセージの識別子情報と、送信したメッセージ本
体へのポインタ情報とを受信プロセッサエレメント1b
のメッセージ通信回路22に送信して送信処理を終了す
る。
送信プロセッサエレメント1aからメッセージ本体の書
込領域の確保要求があると、指定されるメモリ容量分の
書込領域を第2の書込領域31に確保して、送信プロセ
ッサエレメント1aに対して、その確保した書込領域の
開始アドレス及び終端アドレスを通知してから、送信プ
ロセッサエレメント1aの持つ読込完了個所を表示する
ローカルな変数RDPに開始アドレスを遠隔書き込みす
る。
ッセージ通信回路22は、送信プロセッサエレメント1
aから、自メモリ21の第2の書込領域31に遠隔書き
込みされたメッセージ本体のメッセージの識別子情報
と、そのメッセージ本体へのポインタ情報とが送られて
くると、それを順番に受信して、受信順に、それらを自
メモリ21の第1の書込領域30に書き込むことでキュ
ーイングする。
は、自CPU20で走行するデータ処理プログラムか
ら、他プロセッサエレメント1のメッセージの読込要求
があると、第1の書込領域30のキューイングデータを
参照することで目的のメッセージの識別子情報がキュー
イングされているか否かをチェックして、目的のメッセ
ージの識別子情報がキューイングされていることを判断
するときには、その識別子情報に対応付けられるポイン
タ情報に従って、第2の書込領域31に書き込まれてい
る目的のメッセージのメッセージ本体を特定し、それを
ユーザの受信領域にコピーしてから、ローカルな変数R
DPにメッセージ本体の終端アドレスを遠隔書き込みす
る。
本体は、共有メモリとして機能する受信プロセッサエレ
メント1bのメモリ21に直接書き込まれるとともに、
そのメッセージ本体の順序性は、小さいデータ量のメッ
セージの識別子情報のみでもって保証され、そして、そ
のメッセージ本体は、メッセージの識別子情報に従って
目的のメッセージであることが検出されるときに、その
識別子情報と対応付けられるポインタ情報に従って読み
出されていくのである。
行するバッファ管理について説明する。送信プロセッサ
エレメント1aは、上述したように、メッセージ本体の
遠隔書込領域をリングバッファとして用いる構成を採
る。
は、変数WTPの指すアドレスを開始点としてメッセー
ジ本体を遠隔書込領域に書き込んでいくのであるが、こ
のときにあって、変数WTPの指すアドレスと送信する
メッセージ本体サイズとの和が、変数LARLIMIT
の指すアドレスを超える場合には、変数WTPの指すア
ドレスにメッセージが制限値を超えるという短いメッセ
ージを書き込んでから、変数LARLIMITの指すア
ドレスに続けて、リングバッファの先頭となる変数LA
Rの指すアドレスからメッセージを遠隔書込領域に書き
込んでいくことになる。
るメッセージ本体サイズとの和が、受信プロセッサエレ
メント1bのリードしているアドレスを示す変数RDP
の指すアドレスを追い越すときには、新たにリングバッ
ファの遠隔書込領域を確保する必要がある。これから、
このときには、最初に、今まで使用していた遠隔書込領
域を解放するために、遠隔書込領域の解放メッセージを
受信プロセッサエレメント1bに送信し、続いて、遠隔
書込領域の確保要求のメッセージを受信プロセッサエレ
メント1bに送信していくことになる。
なときに、その分割するメッセージデータをその都度ヘ
ッダを付けずに送信することが可能になり、これにより
大きな有効性を発揮できることになる。次に、この点に
ついて説明する。
ト1aは、データを計算してその結果を受信プロセッサ
エレメント1bにメッセージ送信し、受信プロセッサエ
レメント1bは、メッセージの到着を待って、目的とす
るメッセージであることを確認すると、そのデータを使
って計算を始めていくことになる。
が同時に作成されるようなことはまず起こらず、通常
は、順番に作成されていくことになる。これに対して、
従来技術では、メッセージ全体が作成されてから、それ
にヘッダ(メッセージの識別子情報)を付けて送信する
構成を採っていることから、図7(a)(b)に示すよう
に、送信可能なデータが存在していてもメッセージ全体
が作成されるまでその送信が待たされるとともに、受信
側は、メッセージ全体が作成されるまで受信待ちの状態
になってしまう。
(a)に示すように、送信プロセッサエレメント1a
は、メッセージを作成しながら、それと並行して作成さ
れたメッセージ部分を遠隔書込処理に従って共有メモリ
に書き込んでいって、最後に、メッセージの識別子情報
と、メッセージ本体へのポインタ情報とを受信プロセッ
サエレメント1bのメッセージ通信回路22に送信する
構成を採ることが可能となる。これにより、メッセージ
の作成処理と送信処理とを並行して実行できるようにな
る。
って、受信プロセッサエレメント1bで、メッセージが
既に書き込まれているか否かを知ることができる場合に
は、一層の高速処理が可能である。
を示すときには、受信プロセッサエレメント1bは、メ
ッセージを読むことでメッセージが到着したか否かを知
ることができる。このようなときには、図8(b)に示
すように、送信プロセッサエレメント1aは、メッセー
ジを書き込む前に、メッセージの識別子情報と、メッセ
ージ本体へのポインタ情報とを受信プロセッサエレメン
ト1bのメッセージ通信回路22に送信し、それに続い
て、メッセージを作成しながら、それと並行して作成さ
れたメッセージ部分を遠隔書込処理に従って共有メモリ
に書き込んていく構成を採ることが可能になる。これに
より、メッセージの作成処理と、その送信処理と、その
メッセージを使った演算処理とを並行して実行できるよ
うになる。
対してのアクリッジを要求しない突き放しのメッセージ
送信処理に適用した例を示したが、突き放しでないメッ
セージ送信処理に適用することも可能である。
方法は、その都度ヘッダを付けていけば従来技術でも実
現できる。しかし、その都度ヘッダを付けると、ヘッダ
の送信や、メッセージのサーチや、メッセージの並び替
えや、メッセージの組み立てや、メッセージのコピー等
の処理が必要となって、メッセージ通信のオーバーヘッ
ドが著しく大きくなって現実性のないものとなってしま
うのである。
これに限られるものではない。例えば、実施例では、送
信プロセッサエレメント1aは、メッセージ本体の全て
を遠隔書き込みの対象とする構成を開示したが、本発明
はこれに限られるものではないのであって、メッセージ
本体一部、あるいは、メッセージ本体及びメッセージ識
別子情報一部、あるいは、メッセージ本体一部及びメッ
セージ識別子情報一部を遠隔書き込みの対象とする構成
を採ることも可能である。
は、メッセージ本体一部を遠隔書き込みの対象とすると
きには、受信プロセッサエレメント1bのメッセージ通
信回路22に対して、メッセージ識別子情報と、メッセ
ージ本体の残りと、メッセージ本体一部へのポインタ情
報とを送信し、メッセージ本体及びメッセージ識別子情
報一部を遠隔書き込みの対象とするときには、メッセー
ジ識別子情報の残りと、メッセージ本体及びメッセージ
識別情報子一部へのポインタ情報とを送信し、メッセー
ジ本体一部及びメッセージ識別子情報一部を遠隔書き込
みの対象とするときには、メッセージ識別子情報の残り
と、メッセージ本体の残りと、メッセージ本体一部及び
メッセージ識別子情報一部へのポインタ情報とを送信す
ることになる。
みの対象とする構成は、メッセージ通信回路22による
メッセージ送信の方が、遠隔書き込みによるメッセージ
送信よりも高速のときに有効であり、メッセージ本体及
びメッセージ識別子情報一部を遠隔書き込みの対象とす
る構成は、遠隔書き込みによるメッセージ送信の方が、
メッセージ通信回路22によるメッセージ送信よりも高
速のときに有効である。
書き込みする構成を開示したが、メッセージが規定の長
さよりも短いときには、遠隔書き込みを使わずに、従来
技術のように、メッセージ本体及びメッセージ識別子情
報を受信プロセッサエレメント1bのメッセージ通信回
路22に送信していってもよい。この方法は、メッセー
ジ通信回路22の方が遠隔書き込みよりも高速にメッセ
ージを送信できるときに、特に有効である。
トにローカルに配置されるメモリ19を共有メモリして
用いていく構成を開示したが、本発明はこれに限られる
ものではないのであって、ローカルに配置されるメモリ
19とは別に用意される特定の共有メモリを用いる構成
を採ってもよいのである。
メッセージ本体のためのバッファ管理と、メッセージの
順序性の保証処理とが分離されることから、柔軟なバッ
ファ管理を実現できるようになるとともに、ソフトウェ
アによる排他制御処理が不要となることで、オーバーヘ
ッドの削減を実現できるとともに、プロセッサエレメン
トのアイドル時間を抑えられるようになる。
隔で集めたり、固定された間隔で集めることができるよ
うになることから、メッセージの検索を高速化できるよ
うになる。また、送信側でメッセージの書込領域を管理
できるので、低レイテンシと通信の集中に対してより速
い処理が可能になる。
ヘッダを付けずに送信することが可能になり、これによ
り、相互結合網を長時間占有させることなく大きなメッ
セージを通信できるようになって、後から発生する優先
順位の高いメッセージを長く待たせることがなくなる。
また、送信側の計算時間と送信時間とを重ねることでき
たり、送信側の計算時間/送信時間と受信側の計算時間
とを重ねることができるようになる。
る。
Claims (9)
- 【請求項1】 複数のプロセッサエレメントから構成さ
れる並列計算機において、 各プロセッサエレメントが、到着順に従って受信メッセ
ージを自エレメント用に用意されるメモリ領域に書き込
むメッセージ受信手段(14)と、共有メモリのメモリ領域
にデータを直接書き込む遠隔書込手段(11)とを備える構
成を採って、 送信プロセッサエレメントは、上記遠隔書込手段(11)を
使って、受信プロセッサエレメントに送信するメッセー
ジの本体を共用メモリに書き込むとともに、受信プロセ
ッサエレメントの上記メッセージ受信手段(14)に対し
て、メッセージの識別子情報と、メッセージ本体へのポ
インタ情報とを送信するよう処理することを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項2】 請求項1記載の並列計算機におけるメッ
セージ通信方式において、 送信プロセッサエレメントは、上記遠隔書込手段(11)を
使って、メッセージ本体の全てを遠隔書き込みするので
はなくて、メッセージ本体一部、あるいは、メッセージ
本体及びメッセージ識別子情報一部、あるいは、メッセ
ージ本体一部及びメッセージ識別情報子一部を遠隔書き
込みするとともに、 メッセージ本体一部を遠隔書き込みするときには、受信
プロセッサエレメントのメッセージ受信手段(14)に対し
て、メッセージ識別子情報と、メッセージ本体の残り
と、該メッセージ本体一部へのポインタ情報とを送信
し、 メッセージ本体及びメッセージ識別子情報一部を遠隔書
き込みするときには、受信プロセッサエレメントのメッ
セージ受信手段(14)に対して、メッセージ識別子情報の
残りと、該メッセージ本体及びメッセージ識別子情報一
部へのポインタ情報とを送信し、 メッセージ本体一部及びメッセージ識別子情報一部を遠
隔書き込みするときには、受信プロセッサエレメントの
メッセージ受信手段(14)に対して、メッセージ識別子情
報の残りと、メッセージ本体の残りと、該メッセージ本
体一部及びメッセージ識別子情報一部へのポインタ情報
とを送信するよう処理することを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項3】 請求項1又は2記載の並列計算機におけ
るメッセージ通信方式において、 共有メモリ上で、遠隔書込手段(11)により送られてくる
メッセージデータの書込領域が送信プロセッサエレメン
ト対応に用意されるよう構成され、 送信プロセッサエレメントは、遠隔書込手段(11)を使っ
てメッセージデータを送信するときに、自エレメントに
割り当てられる上記書込領域を指定して、メッセージデ
ータを送信するよう処理することを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項4】 請求項3記載の並列計算機におけるメッ
セージ通信方式において、 送信プロセッサエレメントからのリクエストに応答し
て、該送信プロセッサエレメントに対し、共有メモリ上
の書込領域を新たに割り当てるよう構成されることを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項5】 請求項3記載の並列計算機におけるメッ
セージ通信方式において、 送信プロセッサエレメントからのリクエストに応答し
て、該送信プロセッサエレメントが使用していた共有メ
モリ上の書込領域を解放するよう構成されることを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項6】 請求項1、2、3、4又は5記載の並列
計算機におけるメッセージ通信方式において、 送信プロセッサエレメントは、遠隔書込手段(11)で送信
するメッセージデータを分割して送信するよう処理する
ことを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項7】 請求項1、2、3、4又は5記載の並列
計算機におけるメッセージ通信方式において、 送信プロセッサエレメントは、遠隔書込手段(11)で送信
するメッセージデータが作成されていくときに、その作
成処理と並行させながら、該メッセージデータを分割し
つつ送信していくよう処理することを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項8】 請求項7記載の並列計算機におけるメッ
セージ通信方式において、 送信プロセッサエレメントは、受信プロセッサエレメン
トでメッセージデータ分割部分の到達の有無が判定可能
となる場合には、メッセージデータの送信に先立って、
受信プロセッサエレメントのメッセージ受信手段(14)に
対して、該当するデータを送信していくよう処理するこ
とを、 特徴とする並列計算機におけるメッセージ通信方式。 - 【請求項9】 請求項1、2、3、4、5、6、7又は
8記載の並列計算機におけるメッセージ通信方式におい
て、 送信プロセッサエレメントは、メッセージが規定の長さ
よりも短いときには、遠隔書込手段(11)を使わずに、受
信プロセッサエレメントのメッセージ受信手段(14)に対
して、メッセージ本体及びメッセージ識別子情報を送信
するよう処理することを、 特徴とする並列計算機におけるメッセージ通信方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14737094A JP3544390B2 (ja) | 1994-06-29 | 1994-06-29 | 並列計算機で用いられるメッセージ通信方法 |
US08/496,781 US5781741A (en) | 1994-06-29 | 1995-06-29 | Message communications system in a parallel computer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14737094A JP3544390B2 (ja) | 1994-06-29 | 1994-06-29 | 並列計算機で用いられるメッセージ通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0816540A true JPH0816540A (ja) | 1996-01-19 |
JP3544390B2 JP3544390B2 (ja) | 2004-07-21 |
Family
ID=15428699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14737094A Expired - Fee Related JP3544390B2 (ja) | 1994-06-29 | 1994-06-29 | 並列計算機で用いられるメッセージ通信方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5781741A (ja) |
JP (1) | JP3544390B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6108693A (en) * | 1997-10-17 | 2000-08-22 | Nec Corporation | System and method of data communication in multiprocessor system |
WO2007088582A1 (ja) * | 2006-01-31 | 2007-08-09 | Fujitsu Limited | 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体 |
WO2007088581A1 (ja) * | 2006-01-31 | 2007-08-09 | Fujitsu Limited | 共有メモリ型マルチプロセッサにおける手続き呼び出し方法、手続き呼び出しプログラムおよび記録媒体 |
JP2009087335A (ja) * | 2007-09-14 | 2009-04-23 | Ricoh Co Ltd | マルチプロセッサシステム |
US7949815B2 (en) * | 2006-09-27 | 2011-05-24 | Intel Corporation | Virtual heterogeneous channel for message passing |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6584498B2 (en) | 1996-09-13 | 2003-06-24 | Planet Web, Inc. | Dynamic preloading of web pages |
US6377978B1 (en) * | 1996-09-13 | 2002-04-23 | Planetweb, Inc. | Dynamic downloading of hypertext electronic mail messages |
US6170045B1 (en) * | 1997-04-30 | 2001-01-02 | International Business Machines Corporation | Cross-system data piping using an external shared memory |
US5878226A (en) * | 1997-05-13 | 1999-03-02 | International Business Machines Corporation | System for processing early arrival messages within a multinode asynchronous data communications system |
US6014710A (en) * | 1997-06-30 | 2000-01-11 | Sun Microsystems, Inc. | System and method for message transmission between network nodes using remote wires |
US6564250B1 (en) | 1997-08-21 | 2003-05-13 | Planetweb, Inc. | Miniclient for internet appliance |
US6542923B2 (en) | 1997-08-21 | 2003-04-01 | Planet Web, Inc. | Active electronic mail |
US7325077B1 (en) | 1997-08-21 | 2008-01-29 | Beryl Technical Assays Llc | Miniclient for internet appliance |
US6032150A (en) * | 1997-08-25 | 2000-02-29 | Planetweb, Inc. | Secure graphical objects in web documents with a program applet placed to present further information upon selected conditions |
US6684211B1 (en) | 1998-04-01 | 2004-01-27 | Planetweb, Inc. | Multimedia communication and presentation |
US6799317B1 (en) * | 2000-06-27 | 2004-09-28 | International Business Machines Corporation | Interrupt mechanism for shared memory message passing |
US20030023775A1 (en) * | 2001-07-13 | 2003-01-30 | International Business Machines Corporation | Efficient notification of multiple message completions in message passing multi-node data processing systems |
US20030014516A1 (en) * | 2001-07-13 | 2003-01-16 | International Business Machines Corporation | Recovery support for reliable messaging |
US7743065B2 (en) * | 2002-06-27 | 2010-06-22 | Siebel Systems, Inc. | System and method for cross-referencing information in an enterprise system |
US20050047440A1 (en) * | 2003-08-25 | 2005-03-03 | Jerome Plun | Division of data structures for efficient simulation |
US7610345B2 (en) | 2005-07-28 | 2009-10-27 | Vaporstream Incorporated | Reduced traceability electronic message system and method |
US9282081B2 (en) | 2005-07-28 | 2016-03-08 | Vaporstream Incorporated | Reduced traceability electronic message system and method |
JP4942375B2 (ja) * | 2006-03-27 | 2012-05-30 | 株式会社ソニー・コンピュータエンタテインメント | ネットワーク処理装置 |
US7870306B2 (en) * | 2006-08-31 | 2011-01-11 | Cisco Technology, Inc. | Shared memory message switch and cache |
US8234420B2 (en) * | 2010-07-14 | 2012-07-31 | Ge Intelligent Platforms, Inc. | Method, system, and apparatus for communicating using multiple controllers |
US11782635B2 (en) | 2021-11-12 | 2023-10-10 | Western Digital Technologies, Inc. | Method to ensure message arrival before a message pointer |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4590554A (en) * | 1982-11-23 | 1986-05-20 | Parallel Computers Systems, Inc. | Backup fault tolerant computer system |
US5047917A (en) * | 1985-07-12 | 1991-09-10 | The California Institute Of Technology | Apparatus for intrasystem communications within a binary n-cube including buffer lock bit |
US5161156A (en) * | 1990-02-02 | 1992-11-03 | International Business Machines Corporation | Multiprocessing packet switching connection system having provision for error correction and recovery |
JPH0775353B2 (ja) * | 1993-02-23 | 1995-08-09 | 日本電気株式会社 | パケット交換方式 |
-
1994
- 1994-06-29 JP JP14737094A patent/JP3544390B2/ja not_active Expired - Fee Related
-
1995
- 1995-06-29 US US08/496,781 patent/US5781741A/en not_active Expired - Fee Related
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6108693A (en) * | 1997-10-17 | 2000-08-22 | Nec Corporation | System and method of data communication in multiprocessor system |
WO2007088582A1 (ja) * | 2006-01-31 | 2007-08-09 | Fujitsu Limited | 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体 |
WO2007088581A1 (ja) * | 2006-01-31 | 2007-08-09 | Fujitsu Limited | 共有メモリ型マルチプロセッサにおける手続き呼び出し方法、手続き呼び出しプログラムおよび記録媒体 |
KR100978083B1 (ko) * | 2006-01-31 | 2010-08-26 | 후지쯔 가부시끼가이샤 | 공유 메모리형 멀티 프로세서에 있어서의 절차 호출 방법 및 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 |
KR100978082B1 (ko) * | 2006-01-31 | 2010-08-26 | 후지쯔 가부시끼가이샤 | 공유 메모리형 멀티 프로세서에 있어서의 비동기 원격 절차 호출 방법 및 비동기 원격 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 |
JP4734348B2 (ja) * | 2006-01-31 | 2011-07-27 | 富士通株式会社 | 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体 |
US8117626B2 (en) | 2006-01-31 | 2012-02-14 | Fujitsu Limited | Asynchronous remote procedure calling method and computer product in shared-memory multiprocessor |
JP5163128B2 (ja) * | 2006-01-31 | 2013-03-13 | 富士通株式会社 | 共有メモリ型マルチプロセッサにおける手続の呼び出し方法、手続の呼び出しプログラム、記録媒体、およびマルチプロセッサ |
US7949815B2 (en) * | 2006-09-27 | 2011-05-24 | Intel Corporation | Virtual heterogeneous channel for message passing |
US8281060B2 (en) | 2006-09-27 | 2012-10-02 | Intel Corporation | Virtual heterogeneous channel for message passing |
JP2009087335A (ja) * | 2007-09-14 | 2009-04-23 | Ricoh Co Ltd | マルチプロセッサシステム |
Also Published As
Publication number | Publication date |
---|---|
US5781741A (en) | 1998-07-14 |
JP3544390B2 (ja) | 2004-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0816540A (ja) | 並列計算機におけるメッセージ通信方式 | |
JP3606541B2 (ja) | 複数ノードの非同期データ通信システム内で早期到達メッセージを処理する方法 | |
US5991797A (en) | Method for directing I/O transactions between an I/O device and a memory | |
EP0543512B1 (en) | Multiprocessor system | |
US5630059A (en) | Expedited message transfer in a multi-nodal data processing system | |
JP3208397B2 (ja) | 制御要素転送システム | |
JP3322754B2 (ja) | 並列計算機 | |
US11341087B2 (en) | Single-chip multi-processor communication | |
JPH06309252A (ja) | 相互接続インタフェース | |
US5754887A (en) | System for limiting access of plurality of requests to peripheral bus by halting transmission to particular peripheral devices and resuming transmission after second predetermined time period expiration | |
US6418497B1 (en) | Method and system for interrupt handling using system pipelined packet transfers | |
JP3639319B2 (ja) | 並列計算機システム,データ転送制御方法および送受信制御装置 | |
US20030212845A1 (en) | Method for high-speed data transfer across LDT and PCI buses | |
US5878226A (en) | System for processing early arrival messages within a multinode asynchronous data communications system | |
JP4856413B2 (ja) | 演算処理装置、情報処理装置、及び演算処理装置の制御方法 | |
JP2924783B2 (ja) | リモートリード処理方法およびその装置 | |
JP3678036B2 (ja) | 並列計算機システムにおけるモニタデータ収集方法 | |
JP3016788B2 (ja) | 装置間通信・キャッシュ一致処理方式 | |
JP3115801B2 (ja) | 並列計算機システム | |
US6493779B1 (en) | Method and system for interrupt handling using device pipelined packet transfers | |
JP3307331B2 (ja) | ネットワークファイルシステムのデータ転送方法 | |
JPS59146347A (ja) | プロセス間通信方式 | |
JP2984594B2 (ja) | マルチクラスタ情報処理システム | |
JP2853607B2 (ja) | ジョブ間通信システム | |
JPH10143486A (ja) | 並列計算機におけるデータ送受信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040217 |
|
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: 20040330 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040402 |
|
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: 20080416 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |