JP2002366427A - プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法 - Google Patents
プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法Info
- Publication number
- JP2002366427A JP2002366427A JP2001170377A JP2001170377A JP2002366427A JP 2002366427 A JP2002366427 A JP 2002366427A JP 2001170377 A JP2001170377 A JP 2001170377A JP 2001170377 A JP2001170377 A JP 2001170377A JP 2002366427 A JP2002366427 A JP 2002366427A
- Authority
- JP
- Japan
- Prior art keywords
- address
- packet
- conversion
- processor
- processors
- 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)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
Abstract
削減や隠蔽を図ることが可能なプロセッサ間通信システ
ムを提供する。 【解決手段】 送信装置4はコマンドの最初のパケット
を送る前に書込みアドレス(アドレス変換パケット)を
送る。受信装置5はアドレス変換パケットを受取ると、
書込みアドレスのアドレス変換を先行して行う。また、
受信装置5はプロセッサ間通信中に発生するアドレス変
換を先行して行うことで、ページ毎に発生する送り元及
び宛先でのアドレス変換のオーバヘッドを削減する。さ
らに、送信装置4は総ページ数を宛先に教えることで、
最後のページ以降の無駄なアドレス変換を抑止する。
Description
ステム及びそれに用いるプロセッサ間通信方法に関し、
特に複数のプロセッサがネットワークによって結合され
た並列コンピュータにおいてデータの読出しアドレスと
書込みアドレスとに論理アドレスを使ったプロセッサ間
通信方法に関する。
宛先プロセッサでのデータ書込みアドレスを間違える
と、宛先プロセッサをシステムダウンさせる可能性があ
る。そのため、さまざまな手段によって宛先プロセッサ
を保護している。
セッサ間通信ではこの領域以外には書込むことができな
くする方法がある(以下、第1の従来技術とする)。こ
の場合、書込みアドレスは宛先プロセッサの受信装置が
決定した物理アドレスか、送り元プロセッサが指定して
きた物理アドレスを、宛先プロセッサの受信装置がマス
ク等によって限定している。
なく、論理アドレスで送り元が指定する方法もある(以
下、第2の従来技術とする)。この場合、宛先プロセッ
サの受信装置がアドレス変換を行って物理アドレスに変
換している。この方法では受信装置でアドレス変換して
得られる物理アドレスを特定のアドレスの範囲に制限す
ることができるため、宛先プロセッサを保護することが
できる。仮に、指定された書込みアドレスが不正な場合
にはアドレス変換が失敗することになる。
ァ領域からユーザ領域へのデータのコピーが必要にな
り、プロセッサ間通信のスループット性能とレイテンシ
性能とを確保することが難しい。そのため、第2の従来
技術の書込みアドレスを論理アドレスで指定する方法が
使われることが多い。
れた論理アドレスから物理アドレスに変換する手段が必
要である。このアドレス変換はページを単位に行われ、
通常ページサイズは4Kバイト等である。そのため、プ
ロセッサ間通信で大量にデータを送るには、変換テーブ
ルが非常に大きなものになり、受信装置内に全てを保持
することができなくなる。したがって、変換テーブル全
体を主記憶装置上に実装し、必要に応じて受信装置が主
記憶装置から変換テーブルの一部を読出してアドレス変
換を行うことになる。
のアクセスが発生し、プロセッサ間通信のオーバヘッド
となる。特に、パケットを受信した時にアドレス変換の
ために主記憶装置をアクセスすると、パケット内のデー
タの書込みをアドレス変換後でないと行うことができな
いため、その間、ネットワークを止めてしまうこととな
り、他のプロセッサ間通信にも影響を与える。このよう
なオーバヘッドを削減することが、プロセッサ間通信の
性能を向上するためには必要となる。
ッサ間の通信では、並列計算機システムにおいて宛先プ
ロセッサでの書込みアドレスを論理アドレスで指定した
場合、受信装置でのアドレス変換のオーバヘッドを削減
したり、そのオーバヘッドを隠蔽したりすることが困難
である。
消し、受信装置でのアドレス変換のオーバヘッドの削減
や隠蔽を図ることができるプロセッサ間通信システム及
びそれに用いるプロセッサ間通信方法を提供することに
ある。
セッサ間通信システムは、複数のプロセッサ各々がネッ
トワークによって結合される並列コンピュータのプロセ
ッサ間通信システムであって、宛先プロセッサへのデー
タ送信時に論理アドレスで指定された前記宛先プロセッ
サでの書込みアドレスのアドレス変換を依頼するための
パケットを前記宛先プロセッサに送信する送信手段と、
送り元プロセッサから送られてきた書込みアドレスを物
理アドレスに変換する手段と、その変換結果を前記アド
レス変換を依頼するためのパケットの後に送られてくる
データの書込みアドレスとする手段とを前記複数のプロ
セッサ各々に備えている。
信システムの送信手段は、前記論理アドレスで指定され
た送信データの読出しアドレスを物理アドレスに変換す
る前に前記宛先プロセッサに対して前記書込みアドレス
のアドレス変換を依頼するパケットを送信している。
通信システムの送信データを送るパケットにおいて前記
書込みアドレスを指定しておき、先に送られたアドレス
変換を依頼するパケットに付加された書込みアドレスと
前記送信データを送るパケットに指定された書込みアド
レスとが異なる時に前記送信データを送るパケットに指
定された書込みアドレスを再変換して用いる。
テムは、複数のプロセッサ各々がネットワークによって
結合される並列コンピュータのプロセッサ間通信システ
ムであって、宛先プロセッサでのパケット受信時に論理
アドレスで指定された前記宛先プロセッサでの書込みア
ドレスを物理アドレスに変換する手段と、その変換結果
を記憶する手段と、記憶している変換結果が使えなくな
る前に次に必要となるアドレス変換を先行して行う手段
とを前記複数のプロセッサ各々に備えている。
テムは、複数のプロセッサ各々がネットワークによって
結合される並列コンピュータのプロセッサ間通信システ
ムであって、宛先プロセッサへのデータ送信時に論理ア
ドレスで指定された送信データの読出しアドレスを物理
アドレスに変換する手段と、その変換結果を記憶する手
段と、記憶している変換結果が使えなくなる前に次に必
要となるアドレス変換を先行して行う手段とを前記複数
のプロセッサ各々に備えている。
テムは、複数のプロセッサ各々がネットワークによって
結合される並列コンピュータのプロセッサ間通信システ
ムであって、宛先プロセッサでのパケット受信時に論理
アドレスで指定された前記宛先プロセッサでの書込みア
ドレスを物理アドレスに変換する手段と、その変換結果
を記憶する手段と、記憶している変換結果が使えなくな
る前に次に必要となるアドレス変換を先行して行う手段
と、宛先プロセッサへのデータ送信時に論理アドレスで
指定された送信データの読出しアドレスを物理アドレス
に変換する手段と、その変換結果を記憶する手段と、記
憶している変換結果が使えなくなる前に次に必要となる
アドレス変換を先行して行う手段とを前記複数のプロセ
ッサ各々に備え、前記送信データを送るパケットにおい
て前記書込みアドレスを指定しておき、先に送られたア
ドレス変換を依頼するパケットに付加された書込みアド
レスと前記送信データを送るパケットに指定された書込
みアドレスとが異なる時に前記送信データを送るパケッ
トに指定された書込みアドレスを再変換して用いるよう
にしている。
信システムでは、1つの通信コマンドで複数のパケット
によってデータが送られる場合、アドレス変換を依頼す
るパケットをそのコマンドの最初のデータを送るパケッ
トの前だけに送り、その後にデータを送るパケットだけ
を送るようにしている。
通信システムのアドレス変換結果を記憶する記憶手段
は、送り元プロセッサ毎に変換結果を管理し、同じ送り
元プロセッサに対して現在使用中の変換結果と先行して
アドレス変換した結果との2つの変換結果を記憶するよ
うにしている。
テムのアドレス変換を要求するパケットにそのコマンド
で送る総データ長の受信側でのページ数を指定して送
り、前記宛先プロセッサにおいてそのページ数をカウン
トダウンすることで前記コマンドで書かれる最後のペー
ジを予測し、前記最後のページ以降の無駄な先行するア
ドレス変換を抑止するようにしている。
は、複数のプロセッサ各々がネットワークによって結合
される並列コンピュータのプロセッサ間通信方法であっ
て、宛先プロセッサでのパケット受信時に論理アドレス
で指定された前記宛先プロセッサでの書込みアドレスの
アドレス変換を依頼するためのパケットを前記宛先プロ
セッサに送信するステップと、送り元プロセッサから送
られてきた書込みアドレスを物理アドレスに変換するス
テップと、その変換結果を前記アドレス変換を依頼する
ためのパケットの後に送られてくるデータの書込みアド
レスとするステップとを前記複数のプロセッサ各々に備
えている。
信方法の書込みアドレスのアドレス変換を依頼するため
のパケットを送信するステップが、前記論理アドレスで
指定された送信データの読出しアドレスを物理アドレス
に変換する前に前記宛先プロセッサに対して前記書込み
アドレスのアドレス変換を依頼するパケットを送信して
いる。
通信方法の送信データを送るパケットにおいて前記書込
みアドレスを指定しておき、先に送られたアドレス変換
を依頼するパケットに付加された書込みアドレスと前記
送信データを送るパケットに指定された書込みアドレス
とが異なる時に前記送信データを送るパケットに指定さ
れた書込みアドレスを再変換して用いている。
は、複数のプロセッサ各々がネットワークによって結合
される並列コンピュータのプロセッサ間通信方法であっ
て、宛先プロセッサでのパケット受信時に論理アドレス
で指定された前記宛先プロセッサでの書込みアドレスを
物理アドレスに変換するステップと、その変換結果を記
憶するステップと、記憶している変換結果が使えなくな
る前に次に必要となるアドレス変換を先行して行うステ
ップとを前記複数のプロセッサ各々に備えている。
は、複数のプロセッサ各々がネットワークによって結合
される並列コンピュータのプロセッサ間通信方法であっ
て、宛先プロセッサへのデータ送信時に論理アドレスで
指定された送信データの読出しアドレスを物理アドレス
に変換するステップと、その変換結果を記憶するステッ
プと、記憶している変換結果が使えなくなる前に次に必
要となるアドレス変換を先行して行うステップとを前記
複数のプロセッサ各々に備えている。
は、複数のプロセッサ各々がネットワークによって結合
される並列コンピュータのプロセッサ間通信システムで
あって、宛先プロセッサでのパケット受信時に論理アド
レスで指定された前記宛先プロセッサでの書込みアドレ
スを物理アドレスに変換するステップと、その変換結果
を記憶するステップと、記憶している変換結果が使えな
くなる前に次に必要となるアドレス変換を先行して行う
ステップと、宛先プロセッサへのデータ送信時に論理ア
ドレスで指定された送信データの読出しアドレスを物理
アドレスに変換するステップと、その変換結果を記憶す
るステップと、記憶している変換結果が使えなくなる前
に次に必要となるアドレス変換を先行して行うステップ
とを前記複数のプロセッサ各々に備え、前記送信データ
を送るパケットにおいて前記書込みアドレスを指定して
おき、先に送られたアドレス変換を依頼するパケットに
付加された書込みアドレスと前記送信データを送るパケ
ットに指定された書込みアドレスとが異なる時に前記送
信データを送るパケットに指定された書込みアドレスを
再変換して用いるようにしている。
信方法では、1つの通信コマンドで複数のパケットによ
ってデータが送られる場合、前記アドレス変換を依頼す
るパケットをそのコマンドの最初のデータを送るパケッ
トの前だけに送り、その後に前記データを送るパケット
だけを送るようにしている。
通信方法の変換結果を記憶するステップは、送り元プロ
セッサ毎に変換結果を管理し、同じ送り元プロセッサに
対して現在使用中の変換結果と先行してアドレス変換し
た結果との2つの変換結果を記憶するようにしている。
サ間通信方法のアドレス変換を要求するパケットにその
コマンドで送る総データ長の受信側でのページ数を指定
して送り、前記宛先プロセッサにおいてそのページ数を
カウントダウンすることで前記コマンドで書かれる最後
のページを予測し、前記最後のページ以降の無駄な先行
するアドレス変換を抑止するようにしている。
信システムでは、宛先プロセッサでの書込みアドレスが
論理アドレスで指定されている場合、宛先プロセッサで
の書込みアドレスのアドレス変換を先行して行うための
アドレス変換を依頼するパケットを送っている。また、
読出しアドレスも論理アドレスで指定されている場合に
は、このアドレス変換を依頼するパケットを、読出しア
ドレスを変換する前に送って先行するアドレス変換を早
く始められるようにしている。
では、続けて送られてくるデータの書込みアドレスのア
ドレス変換を先行してできるようにし、1つのコマンド
のデータ転送中に発生するアドレス変換を事前に行うこ
とによって、宛先プロセッサでの書込みアドレスのアド
レス変換のオーバヘッドを隠蔽している。
では、読出しアドレスも論理アドレスで指定されている
場合、読出しアドレスのアドレス変換を先行してできる
ようにすることで、1つのコマンドのデータ転送中に発
生する読出しアドレスのアドレス変換のオーバヘッドを
隠蔽している。
出しアドレス、書込みアドレスのアドレス変換を先行し
て行えるようにし、1つのコマンドのデータ転送中の読
出しアドレス及び書込みアドレスのアドレス変換のオー
バヘッドを隠蔽している。また、1つのコマンドが複数
のパケットで送られる場合には、書込みアドレスのアド
レス変換を依頼するパケットを最初の1回だけ送り、書
込みアドレスのアドレス変換をデータが到着する前に行
えるようにしている。さらに、書込みアドレスのアドレ
ス変換結果は送り元プロセッサ毎に管理し、あるプロセ
ッサが送ったパケットの書込みアドレスのアドレス変換
結果が、他のプロセッサからのパケットによって壊され
ないようにしている。さらにまた、アドレス変換を依頼
するパケットに書込み領域のページ数を付加して送り、
先行して行われる書込みアドレスの変換が最後のページ
で止まり、不必要な先行アドレス変換を行わないように
している。これによって、必要なアドレス変換が無駄な
アドレス変換に邪魔されることを防いでいる。
装置が送るデータの読出しアドレスのアドレス変換やデ
ータ読出しを行う前に、宛先プロセッサに書込みアドレ
スのアドレス変換を依頼するパケットを送ることによっ
て、先行して書込みアドレスのアドレス変換を行い、デ
ータ到着時にアドレス変換の必要がないので、書込みア
ドレスを論理アドレスで指定したプロセッサ間通信にお
いて、宛先プロセッサの受信装置でのアドレス変換の時
間を削減することが可能となる。
ッサの受信装置のアドレス変換の時間を短くするには、
アドレス変換テーブルを受信装置内に全て保持しておく
必要があるが、本発明を用いると、アドレス変換を先行
して行い、その結果だけを記憶すれば、データ到着時に
はその結果を用いることが可能となるので、アドレス変
換結果を保持するための記憶手段の容量を少なくするこ
とが可能となる。
が複数のページになる場合、読出しアドレスのアドレス
変換、書込みアドレスのアドレス変換を先行して行うこ
とによって、プロセッサ間の通信がアドレス変換によっ
て中断されることなく行われる。したがって、受信装置
でのアドレス変換のオーバヘッドの削減や隠蔽を図るこ
とが可能となる。
図面を参照して説明する。図1は本発明の一実施例によ
るプロセッサ間通信システムの構成を示すブロック図で
ある。図1において、本発明の一実施例によるプロセッ
サ間通信システムは複数のプロセッサ1−1〜1−nが
ネットワーク100に接続された並列コンピュータであ
る。プロセッサ1−1〜1−nはそれぞれCPU2と、
主記憶装置3と、送信装置4と、受信装置5とから構成
されている。
コマンドレジスタ42と、パケット生成回路43と、ア
ドレス変換回路44と、FIFO(First In
First Out)メモリ45とから構成されてい
る。
送信要求によって、主記憶装置3上に設けられたコマン
ドキュー31からコマンド31aを読出し、コマンド3
1aの内容を検査し、エラーがなければ、コマンドレジ
スタ42に格納する。
2内のコマンド31aに書かれた読出しアドレスをアド
レス変換回路44を使って論理アドレスから物理アドレ
スに変換する。また、パケット生成回路43はコマンド
レジスタ42内の宛先プロセッサ等の情報を使ってパケ
ットのヘッダを生成する。
変換回路44によって変換された物理読出しアドレスか
らのデータの読出しを主記憶装置3に依頼し、読出した
送信データ32をパケットとしてネットワーク100に
送出す。さらにまた、パケット生成回路43はコマンド
レジスタ42内の宛先プロセッサの書込みアドレスから
アドレス変換パケットを生成し、ネットワーク100に
送出す。
42内の読出しアドレスを論理アドレスから物理アドレ
スに変換する。その際、アドレス変換回路44は主記憶
装置3上のページテーブル33の情報を参照してアドレ
ス変換を行う。ネットワーク100とパケット生成回路
43との間にはFIFOメモリ45があり、データ幅の
変換やエラー検出符号等の作成を行う。
元プロセッサ番号レジスタ52と、書込みアドレスレジ
スタ53と、アドレス変換回路54と、データ書込み回
路57と、総ページ数カウンタ58とから構成されてい
る。
から送られてきたパケットを一時的に格納する。送り元
プロセッサ番号レジスタ52はパケットヘッダに含まれ
る、そのパケットを送信したプロセッサのプロセッサ番
号を格納する。書込みアドレスレジスタ53はパケット
ヘッダに含まれている、パケットのデータの書込みアド
レスを格納する。
ジスタ53内の書込みアドレスを論理アドレスから物理
アドレスに変換し、データ書込み回路57に物理書込み
アドレスを渡す。アドレス変換回路54内には変換テー
ブル55があり、論理ページ番号55aと物理ページ番
号55bとの対応表が格納されている。この対応表は主
記憶装置3上のページテーブル33の値を参照して書換
えられる。また、アドレス変換回路54は送り元プロセ
ッサ番号レジスタ52内の送り元プロセッサ番号を使っ
て変換テーブル55の論理アドレス55aを読出し、そ
の値と書込みアドレスレジスタ53内の論理ページ番号
59とを比較するための比較器56を持つ。
てきた受信データ34を、主記憶装置3上の、アドレス
変換回路54から出力された書込みアドレスに書込む。
総ページ数カウンタ58は1つのコマンドで送られるデ
ータの書込み側でのページ数を格納し、1つのページを
アドレス変換する毎に1ずつ減らしていき、最後のペー
ジ以降の先行するアドレス変換を行わないようにする。
総ページ数カウンタ58は送り元プロセッサ毎にそれぞ
れのページ数をカウントする。
るアドレス変換パケットの構成を示す図であり、図2
(b)は本発明の一実施例で用いられる通常のパケット
の構成を示す図である。すなわち、図2には本発明の一
実施例によるプロセッサ間通信システムで通信される2
種類のパケットの形式を示している。
番号A1と、送り元プロセッサ番号A2と、書込み論理
アドレスA3と、総転送ページ数A4とから構成されて
いる。宛先プロセッサ番号A1はネットワーク100内
でのルーティングに使われ、総転送ページ数A4は1つ
のコマンドで送る書込み側での総ページ数である。
1と、送り元プロセッサ番号B2と、データ長B3と、
書込み論理アドレスB4と、データB5とから構成され
ている。データ長B3はこのパケットで送るデータの長
さである。
成を示す図である。図3において、変換テーブル55は
各送り元プロセッサ番号毎に2つの論理ページ番号55
2,555と物理ページ番号553,556との組みを
格納することができる。それぞれにはその物理ページ番
号が有効かどうかを示すビット554,557が付加さ
れている。また、それぞれの送り元プロセッサ番号の組
みのどちらが現在使われている情報かを示すビット55
1を持つ。先行してアドレス変換した結果はこのビット
551で現在使われていない方に格納される。
号601によって選ばれた2つの論理ページ番号は2つ
の比較器56a,56bで、書込みアドレスレジスタ5
3からの論理ページ番号59と比較され、その結果がM
UX(multiplexer)60で物理アドレスを
選択するのに使われる。
なる。送り元プロセッサ番号601によって選ばれた2
つの論理ページ番号552,555を書込みアドレスレ
ジスタ52からの論理ページ番号59と比較する。も
し、同じものがあれば、物理アドレス553、556か
らMUX60によって選択してアドレス変換に使用され
る。
にはその情報が主記憶装置3上のページテーブル33か
ら読出している途中なので、その読出しを待って、アド
レス変換に使用する。また、MUX60で選択したもの
がビット551で示された現在使用しているものと違う
場合には、ビット551を書き替えておく。
55も異なる場合にはページテーブル33をアクセスす
る必要があるが、本発明を用いて先行してアドレス変換
を行っている場合にはこのようなことは起こらない。
ついて述べる。送り元プロセッサ番号601によって選
ばれた2つの論理ページ番号552,555のうち、現
在使っているのがどちらかを示すビット551で現在使
っていない方に、書込みアドレスレジスタ53からの論
理ページ番号59を書込む。その後に、対応するその物
理ページが有効かどうかを示すビット554,557の
いずれかを無効にしてから、主記憶装置3上のページテ
ーブル33をアクセスして物理ページ番号を読出し、変
換テーブル55の物理ページ番号553,556のいず
れかに書込み、有効ビット554,557のいずれかを
有効にする。
セッサでのコマンドの処理手順を示すフローチャートで
あり、図5は本発明の一実施例による宛先プロセッサで
のパケットの処理手順を示すフローチャートである。こ
れら図1〜図5を参照して本発明の一実施例によるコマ
ンド及びパケットの処理手順について説明する。
る場合、プロセッサ1−1からはアドレス変換パケット
Aで宛先プロセッサに書込み論理アドレスA3と総転送
ページ数A4とが送信される。その後、プロセッサ1−
1は読出しアドレスのアドレス変換を開始し(図4ステ
ップS1)、読出しアドレスのアドレス変換が終了する
のを待つ(図4ステップS2)。
ると、1パケット分のデータの読出しを行い(図4ステ
ップS3)、パケットを送信する(図4ステップS
4)。今送ったパケットが最後のパケットでなければ
(図4ステップS5)、プロセッサ1−1は読出しアド
レスの先行アドレス変換が必要かどうかを判断し(図4
ステップS6)、もし、読出しアドレスの先行アドレス
変換が必要であれば、読出しアドレスの先行アドレス変
換を開始する(図4ステップS6)。
かどうかは読出したアドレスがページ境界に近付いてい
るかどうかで判断し、先行アドレス変換の結果が必要に
なるまでに先行アドレス変換が終了するようなタイミン
グで開始する。この処理を最後のパケットを送り終るま
で続ける。
行われる場合、プロセッサ1−1はパケットを受信する
と、それがアドレス変換パケットAかどうかを調べる
(図5ステップS11)。コマンドの最初のパケットは
アドレス変換パケットAなので、パケットに指定された
書込みアドレスの先行アドレス変換を行う(図5ステッ
プS12)。
ると(図5ステップS11)、プロセッサ1−1は先行
アドレス変換が終了しているかどうかを調べ、終了する
まで待つ(図5ステップS13)。アドレス変換が終了
したかどうかは、図3に示す変換テーブル55の送り元
プロセッサ番号と論理ページ番号とが同じ変換テーブル
のエントリの物理ページ番号で有効になっているかどう
かで判断する。
−1はデータを書込み(図5ステップS14)、先行の
アドレス変換が必要かどうかを調べる(図5ステップS
15)。先行のアドレス変換は読出しアドレスのアドレ
ス変換と同じように、先行のアドレス変換結果を使用す
るパケットが到着する前にアドレス変換が終了している
タイミングで行う。また、総ページ数カウンタ58が現
在のページが最後のページでないことを示している場合
にのみ先行アドレス変換を行う(図5ステップS1
6)。
4が送るデータの読出しアドレスのアドレス変換やデー
タ読出しを行う前に、宛先プロセッサに書込みアドレス
のアドレス変換を依頼するパケットを送ることによっ
て、先行して書込みアドレスのアドレス変換を行い、デ
ータ到着時にアドレス変換の必要がなくなるので、書込
みアドレスを論理アドレスで指定したプロセッサ間通信
において、宛先プロセッサの受信装置5でのアドレス変
換の時間を削減することができる。
セッサの受信装置のアドレス変換の時間を短くするには
アドレス変換テーブルを受信装置内に全て保持しておく
必要があるが、本実施例を用いた場合にはアドレス変換
を先行して行い、その結果だけを記憶すれば、データ到
着時にはその結果を用いることができ、アドレス変換結
果を保持するための記憶手段の容量が少なくていいこと
である。
が複数のページになる場合、読出しアドレスのアドレス
変換、書込みアドレスのアドレス変換を先行して行うこ
とによって、プロセッサ間通信をアドレス変換によって
中断することなく行うことができる。したがって、受信
装置5でのアドレス変換のオーバヘッドの削減や隠蔽を
図ることができる。
数のプロセッサ各々がネットワークによって結合される
並列コンピュータのプロセッサ間通信システムにおい
て、複数のプロセッサ各々が、宛先プロセッサへのデー
タ送信時に論理アドレスで指定された宛先プロセッサで
の書込みアドレスのアドレス変換を依頼するためのパケ
ットを宛先プロセッサに送信し、送り元プロセッサから
送られてきた書込みアドレスを物理アドレスに変換し、
その変換結果を、アドレス変換を依頼するためのパケッ
トの後に送られてくるデータの書込みアドレスとするこ
とによって、受信装置でのアドレス変換のオーバヘッド
の削減や隠蔽を図ることができるという効果がある。
テムの構成を示すブロック図である。
ス変換パケットの構成を示す図、(b)は本発明の一実
施例で用いられる通常のパケットの構成を示す図であ
る。
る。
コマンドの処理手順を示すフローチャートである。
ケットの処理手順を示すフローチャートである。
ビット 601 送り元プロセッサ番号 A アドレス変換パケット A1,B1 宛先プロセッサ番号 A2,B2 送り元プロセッサ番号 A3,B3 書込み論理アドレス A4 総転送ページ数 B 通常のパケット B5 データ長
Claims (18)
- 【請求項1】 複数のプロセッサ各々がネットワークに
よって結合される並列コンピュータのプロセッサ間通信
システムであって、宛先プロセッサへのデータ送信時に
論理アドレスで指定された前記宛先プロセッサでの書込
みアドレスのアドレス変換を依頼するためのパケットを
前記宛先プロセッサに送信する送信手段と、送り元プロ
セッサから送られてきた書込みアドレスを物理アドレス
に変換する手段と、その変換結果を前記アドレス変換を
依頼するためのパケットの後に送られてくるデータの書
込みアドレスとする手段とを前記複数のプロセッサ各々
に有することを特徴とするプロセッサ間通信システム。 - 【請求項2】 前記送信手段は、前記論理アドレスで指
定された送信データの読出しアドレスを物理アドレスに
変換する前に前記宛先プロセッサに対して前記書込みア
ドレスのアドレス変換を依頼するパケットを送信するよ
うにしたことを特徴とする請求項1記載のプロセッサ間
通信システム。 - 【請求項3】 前記送信データを送るパケットにおいて
前記書込みアドレスを指定しておき、先に送られたアド
レス変換を依頼するパケットに付加された書込みアドレ
スと前記送信データを送るパケットに指定された書込み
アドレスとが異なる時に前記送信データを送るパケット
に指定された書込みアドレスを再変換して用いるように
したことを特徴とする請求項2記載のプロセッサ間通信
システム。 - 【請求項4】 複数のプロセッサ各々がネットワークに
よって結合される並列コンピュータのプロセッサ間通信
システムであって、宛先プロセッサでのパケット受信時
に論理アドレスで指定された前記宛先プロセッサでの書
込みアドレスを物理アドレスに変換する手段と、その変
換結果を記憶する手段と、記憶している変換結果が使え
なくなる前に次に必要となるアドレス変換を先行して行
う手段とを前記複数のプロセッサ各々に有することを特
徴とするプロセッサ間通信システム。 - 【請求項5】 複数のプロセッサ各々がネットワークに
よって結合される並列コンピュータのプロセッサ間通信
システムであって、宛先プロセッサへのデータ送信時に
論理アドレスで指定された送信データの読出しアドレス
を物理アドレスに変換する手段と、その変換結果を記憶
する手段と、記憶している変換結果が使えなくなる前に
次に必要となるアドレス変換を先行して行う手段とを前
記複数のプロセッサ各々に有することを特徴とするプロ
セッサ間通信システム。 - 【請求項6】 複数のプロセッサ各々がネットワークに
よって結合される並列コンピュータのプロセッサ間通信
システムであって、宛先プロセッサでのパケット受信時
に論理アドレスで指定された前記宛先プロセッサでの書
込みアドレスを物理アドレスに変換する手段と、その変
換結果を記憶する手段と、記憶している変換結果が使え
なくなる前に次に必要となるアドレス変換を先行して行
う手段と、宛先プロセッサへのデータ送信時に論理アド
レスで指定された送信データの読出しアドレスを物理ア
ドレスに変換する手段と、その変換結果を記憶する手段
と、記憶している変換結果が使えなくなる前に次に必要
となるアドレス変換を先行して行う手段とを前記複数の
プロセッサ各々に有し、前記送信データを送るパケット
において前記書込みアドレスを指定しておき、先に送ら
れたアドレス変換を依頼するパケットに付加された書込
みアドレスと前記送信データを送るパケットに指定され
た書込みアドレスとが異なる時に前記送信データを送る
パケットに指定された書込みアドレスを再変換して用い
るようにしたことを特徴とするプロセッサ間通信システ
ム。 - 【請求項7】 1つの通信コマンドで複数のパケットに
よってデータが送られる場合、前記アドレス変換を依頼
するパケットをそのコマンドの最初のデータを送るパケ
ットの前だけに送り、その後に前記データを送るパケッ
トだけを送るようにしたことを特徴とする請求項6記載
のプロセッサ間通信システム。 - 【請求項8】 前記変換結果を記憶する記憶手段は、送
り元プロセッサ毎に変換結果を管理し、同じ送り元プロ
セッサに対して現在使用中の変換結果と先行してアドレ
ス変換した結果との2つの変換結果を記憶するようにし
たことを特徴とする請求項7記載のプロセッサ間通信シ
ステム。 - 【請求項9】 前記アドレス変換を要求するパケットに
そのコマンドで送る総データ長の受信側でのページ数を
指定して送り、前記宛先プロセッサにおいてそのページ
数をカウントダウンすることで前記コマンドで書かれる
最後のページを予測し、前記最後のページ以降の無駄な
先行するアドレス変換を抑止するようにしたことを特徴
とする請求項8記載のプロセッサ間通信システム。 - 【請求項10】 複数のプロセッサ各々がネットワーク
によって結合される並列コンピュータのプロセッサ間通
信方法であって、宛先プロセッサでのパケット受信時に
論理アドレスで指定された前記宛先プロセッサでの書込
みアドレスのアドレス変換を依頼するためのパケットを
前記宛先プロセッサに送信するステップと、送り元プロ
セッサから送られてきた書込みアドレスを物理アドレス
に変換するステップと、その変換結果を前記アドレス変
換を依頼するためのパケットの後に送られてくるデータ
の書込みアドレスとするステップとを前記複数のプロセ
ッサ各々に有することを特徴とするプロセッサ間通信方
法。 - 【請求項11】 前記書込みアドレスのアドレス変換を
依頼するためのパケットを送信するステップは、前記論
理アドレスで指定された送信データの読出しアドレスを
物理アドレスに変換する前に前記宛先プロセッサに対し
て前記書込みアドレスのアドレス変換を依頼するパケッ
トを送信するようにしたことを特徴とする請求項10記
載のプロセッサ間通信方法。 - 【請求項12】 前記送信データを送るパケットにおい
て前記書込みアドレスを指定しておき、先に送られたア
ドレス変換を依頼するパケットに付加された書込みアド
レスと前記送信データを送るパケットに指定された書込
みアドレスとが異なる時に前記送信データを送るパケッ
トに指定された書込みアドレスを再変換して用いるよう
にしたことを特徴とする請求項11記載のプロセッサ間
通信方法。 - 【請求項13】 複数のプロセッサ各々がネットワーク
によって結合される並列コンピュータのプロセッサ間通
信方法であって、宛先プロセッサでのパケット受信時に
論理アドレスで指定された前記宛先プロセッサでの書込
みアドレスを物理アドレスに変換するステップと、その
変換結果を記憶するステップと、記憶している変換結果
が使えなくなる前に次に必要となるアドレス変換を先行
して行うステップとを前記複数のプロセッサ各々に有す
ることを特徴とするプロセッサ間通信方法。 - 【請求項14】 複数のプロセッサ各々がネットワーク
によって結合される並列コンピュータのプロセッサ間通
信方法であって、宛先プロセッサへのデータ送信時に論
理アドレスで指定された送信データの読出しアドレスを
物理アドレスに変換するステップと、その変換結果を記
憶するステップと、記憶している変換結果が使えなくな
る前に次に必要となるアドレス変換を先行して行うステ
ップとを前記複数のプロセッサ各々に有することを特徴
とするプロセッサ間通信方法。 - 【請求項15】 複数のプロセッサ各々がネットワーク
によって結合される並列コンピュータのプロセッサ間通
信システムであって、宛先プロセッサでのパケット受信
時に論理アドレスで指定された前記宛先プロセッサでの
書込みアドレスを物理アドレスに変換するステップと、
その変換結果を記憶するステップと、記憶している変換
結果が使えなくなる前に次に必要となるアドレス変換を
先行して行うステップと、宛先プロセッサへのデータ送
信時に論理アドレスで指定された送信データの読出しア
ドレスを物理アドレスに変換するステップと、その変換
結果を記憶するステップと、記憶している変換結果が使
えなくなる前に次に必要となるアドレス変換を先行して
行うステップとを前記複数のプロセッサ各々に有し、前
記送信データを送るパケットにおいて前記書込みアドレ
スを指定しておき、先に送られたアドレス変換を依頼す
るパケットに付加された書込みアドレスと前記送信デー
タを送るパケットに指定された書込みアドレスとが異な
る時に前記送信データを送るパケットに指定された書込
みアドレスを再変換して用いるようにしたことを特徴と
するプロセッサ間通信方法。 - 【請求項16】 1つの通信コマンドで複数のパケット
によってデータが送られる場合、前記アドレス変換を依
頼するパケットをそのコマンドの最初のデータを送るパ
ケットの前だけに送り、その後に前記データを送るパケ
ットだけを送るようにしたことを特徴とする請求項15
記載のプロセッサ間通信方法。 - 【請求項17】 前記変換結果を記憶するステップは、
送り元プロセッサ毎に変換結果を管理し、同じ送り元プ
ロセッサに対して現在使用中の変換結果と先行してアド
レス変換した結果との2つの変換結果を記憶するように
したことを特徴とする請求項16記載のプロセッサ間通
信方法。 - 【請求項18】 前記アドレス変換を要求するパケット
にそのコマンドで送る総データ長の受信側でのページ数
を指定して送り、前記宛先プロセッサにおいてそのペー
ジ数をカウントダウンすることで前記コマンドで書かれ
る最後のページを予測し、前記最後のページ以降の無駄
な先行するアドレス変換を抑止するようにしたことを特
徴とする請求項17記載のプロセッサ間通信方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001170377A JP3800037B2 (ja) | 2001-06-06 | 2001-06-06 | プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法 |
US10/161,636 US7136933B2 (en) | 2001-06-06 | 2002-06-05 | Inter-processor communication systems and methods allowing for advance translation of logical addresses |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001170377A JP3800037B2 (ja) | 2001-06-06 | 2001-06-06 | プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002366427A true JP2002366427A (ja) | 2002-12-20 |
JP3800037B2 JP3800037B2 (ja) | 2006-07-19 |
Family
ID=19012306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001170377A Expired - Fee Related JP3800037B2 (ja) | 2001-06-06 | 2001-06-06 | プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7136933B2 (ja) |
JP (1) | JP3800037B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7882166B2 (en) | 2003-02-21 | 2011-02-01 | Nec Corporation | Inter-computer data transfer method and inter-computer network system |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4100256B2 (ja) * | 2003-05-29 | 2008-06-11 | 株式会社日立製作所 | 通信方法および情報処理装置 |
PL2259774T3 (pl) | 2008-02-27 | 2013-04-30 | Biomet Biologics Llc | Sposoby i kompozycje dla wprowadzania antagonisty receptora interleukiny-1 |
JP2009301101A (ja) * | 2008-06-10 | 2009-12-24 | Nec Corp | プロセッサ間通信システム、プロセッサ、プロセッサ間通信方法、および、通信方法 |
BR112012005749A2 (pt) * | 2009-09-16 | 2019-09-24 | Siemens Ag | método de execução de uma subestação de um sistema de fornecimento de energia elétrica |
CN102098271B (zh) | 2009-12-10 | 2015-01-07 | 华为技术有限公司 | 用户信息的获取方法、装置和系统 |
US9934079B2 (en) * | 2010-05-27 | 2018-04-03 | International Business Machines Corporation | Fast remote communication and computation between processors using store and load operations on direct core-to-core memory |
US9329996B2 (en) * | 2011-04-27 | 2016-05-03 | Veris Industries, Llc | Branch circuit monitor with paging register |
GB2493340A (en) * | 2011-07-28 | 2013-02-06 | St Microelectronics Res & Dev | Address mapping of boot transactions between dies in a system in package |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60205648A (ja) | 1984-03-29 | 1985-10-17 | Nec Corp | 入出力制御装置 |
JPS62251943A (ja) | 1986-04-25 | 1987-11-02 | Hitachi Ltd | チヤネル装置のメモリアドレス制御方式 |
JPH01226055A (ja) | 1988-03-05 | 1989-09-08 | Nec Corp | アドレス変換方式 |
JPH0589056A (ja) | 1991-09-27 | 1993-04-09 | Nec Corp | マルチプロセツサ通信方式およびマルチプロセツサ通信装置 |
JPH0588983A (ja) | 1991-09-30 | 1993-04-09 | Fujitsu Ltd | チヤネル装置の動的アドレス変換方法 |
JP3080457B2 (ja) | 1991-12-26 | 2000-08-28 | 富士通株式会社 | 分散アドレス変換方式 |
JPH0619785A (ja) | 1992-03-27 | 1994-01-28 | Matsushita Electric Ind Co Ltd | 分散共有仮想メモリーとその構成方法 |
JP2736237B2 (ja) | 1995-03-06 | 1998-04-02 | 技術研究組合新情報処理開発機構 | 遠隔メモリアクセス制御装置 |
US5978894A (en) | 1995-11-27 | 1999-11-02 | Hitachi, Ltd. | Method of interprocessor data transfer using a network, virtual addresses and paging, a buffer, flags, data transfer status information and user accessible storage areas in main memory |
JPH09212474A (ja) | 1995-11-27 | 1997-08-15 | Hitachi Ltd | プロセッサ間データ転送方法およびそれに適した計算機システム |
JP2830833B2 (ja) * | 1996-04-30 | 1998-12-02 | 日本電気株式会社 | プロセッサ間通信方法及びそれに用いるプロセッサ |
JP3296240B2 (ja) | 1997-03-28 | 2002-06-24 | 日本電気株式会社 | バス接続装置 |
US6971520B2 (en) | 1997-09-05 | 2005-12-06 | Chad Fulda | Card holder and display |
JP3237599B2 (ja) | 1998-01-16 | 2001-12-10 | 日本電気株式会社 | マルチプロセッサシステム及びマルチプロセッサシステムにおけるデータ転送方法 |
JPH11345199A (ja) | 1998-06-01 | 1999-12-14 | Nec Corp | 入出力制御装置及びそのデータの先取り方法 |
GB2339037B (en) | 1998-07-03 | 2002-11-20 | Advanced Risc Mach Ltd | Memory address translation in a data processing system |
JP2000067009A (ja) | 1998-08-20 | 2000-03-03 | Hitachi Ltd | 主記憶共有型マルチプロセッサ |
JP3376956B2 (ja) | 1999-05-14 | 2003-02-17 | 日本電気株式会社 | プロセッサ間通信装置 |
JP3594082B2 (ja) | 2001-08-07 | 2004-11-24 | 日本電気株式会社 | 仮想アドレス間データ転送方式 |
-
2001
- 2001-06-06 JP JP2001170377A patent/JP3800037B2/ja not_active Expired - Fee Related
-
2002
- 2002-06-05 US US10/161,636 patent/US7136933B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7882166B2 (en) | 2003-02-21 | 2011-02-01 | Nec Corporation | Inter-computer data transfer method and inter-computer network system |
Also Published As
Publication number | Publication date |
---|---|
US7136933B2 (en) | 2006-11-14 |
JP3800037B2 (ja) | 2006-07-19 |
US20030005071A1 (en) | 2003-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5752078A (en) | System for minimizing latency data reception and handling data packet error if detected while transferring data packet from adapter memory to host memory | |
JP4755390B2 (ja) | メモリを介してデータ処理システムの間でデータのフローを制御する方法および装置 | |
US6236658B1 (en) | Method and apparatus for message routing, including a content addressable memory | |
US6757768B1 (en) | Apparatus and technique for maintaining order among requests issued over an external bus of an intermediate network node | |
JP4755391B2 (ja) | メモリを介してデータ処理システムの間でデータのフローを制御する方法および装置 | |
JP3996454B2 (ja) | 分割サーバにおけるドメイン間低オーバヘッドメッセージ受渡しのためのシステム及び方法 | |
JP4317365B2 (ja) | 周辺デバイスからホスト・コンピュータ・システムに割込みを転送する方法および装置 | |
US9015380B2 (en) | Exchanging message data in a distributed computer system | |
JP3127523B2 (ja) | 通信制御装置およびデータ送信方法 | |
EP1629644A1 (en) | Method and system for maintenance of packet order using caching | |
AU2003234641B2 (en) | Inter-chip processor control plane | |
JP3800037B2 (ja) | プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法 | |
JP2002084311A (ja) | パケット転送処理装置 | |
JP3376956B2 (ja) | プロセッサ間通信装置 | |
US6058437A (en) | D.M.A. device that handles cache misses by managing an address of an area allotted via a daemon processor | |
JP3189269B2 (ja) | ネットワークプリンタ | |
JP2924783B2 (ja) | リモートリード処理方法およびその装置 | |
US20040193830A1 (en) | Method and apparatus for address translation pre-fetch | |
JPH11149455A (ja) | メモリディスク共有方法及びその実施装置 | |
WO2022024562A1 (ja) | 並列分散計算システム | |
JP4514411B2 (ja) | バス間通信インタフェース装置 | |
JP2953362B2 (ja) | Lanのスイッチング装置 | |
JP2005526335A (ja) | 複数のコヒーレンシー・グラニュールをサポートするデータ転送ユニット | |
JPH11203260A (ja) | マルチプロセッサシステム及びマルチプロセッサシステムにおけるデータ転送方法 | |
JP2000029823A (ja) | バスアクセス制御回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050517 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050719 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050816 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051003 |
|
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: 20060404 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060417 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3800037 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100512 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130512 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140512 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |