JPH05233567A - アレイプロセッサのメッセージパケットルーティング方法 - Google Patents

アレイプロセッサのメッセージパケットルーティング方法

Info

Publication number
JPH05233567A
JPH05233567A JP4034860A JP3486092A JPH05233567A JP H05233567 A JPH05233567 A JP H05233567A JP 4034860 A JP4034860 A JP 4034860A JP 3486092 A JP3486092 A JP 3486092A JP H05233567 A JPH05233567 A JP H05233567A
Authority
JP
Japan
Prior art keywords
processor
cluster
processors
address
unit processor
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
Application number
JP4034860A
Other languages
English (en)
Other versions
JP2936868B2 (ja
Inventor
Ichiro Kuroda
一朗 黒田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP4034860A priority Critical patent/JP2936868B2/ja
Publication of JPH05233567A publication Critical patent/JPH05233567A/ja
Application granted granted Critical
Publication of JP2936868B2 publication Critical patent/JP2936868B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 アレイプロセッサのパケットルーティングに
おいてクラスタ化することによりルーティングテーブル
のサイズを小さくする。 【構成】 アレイプロセッサをクラスタ化し、クラスタ
内の他のクラスタに隣接した一部のプロセッサに対して
ルーティングテーブルの一部のアドレスを他のクラスタ
への転送を行う様に設定することによりルーティングテ
ーブルのサイズにより規模が制限されるクラスタを複数
結合させる。 【効果】 ルーティングテーブルのサイズを大幅に削減
することが可能になる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はプロセッサ間をリンク結
合することによりプロセッサ間通信を行うアレイプロセ
ッサに関する。
【0002】
【従来の技術】従来、アレイプロセッサの実現方式とし
ては、 1)隣接プロセッサ間の通信のみを行う方式 2)ルータを用いて遠隔プロセッサ間の通信を実現する
方式がある。
【0003】このうち隣接プロセッサ間の通信のみを行
う方式では、プロセッサの通信のために要するハードウ
ェア量が比較的少ないが遠隔プロセッサ間で通信を行う
場合、送り側プロセッサから受け側プロセッサまでの経
路上にある各プロセッサ間において隣接プロセッサ間通
信を繰り返すため、通信時間および通信経路上にある各
プロセッサへの負荷が問題になる。隣接プロセッサ間の
みの通信を行うアレイプロセッサについては、S.Y.
Kung,“Wavefront ArrayProc
essors−Concepts to Implem
entation”,IEEE Computer,J
uly 1987,pp18−33において説明されて
いる。一方、ルータを用いる方式では、プロセッサ間通
信のために要するハードウェア量が大きくなるが送り側
プロセッサから受け側プロセッサまでルータを経由して
通信が行われるため通信時間が比較的少なくまた他のプ
ロセッサへの負荷も問題にならない。
【0004】ルータを用いる方式におけるルーティング
方式は、プロセッサの結合形態に依存して決まる。たと
えば2次元メッシュ結合方式では東西方向へのステップ
数(ホップ数)と南北方向のステップ数(ホップ数)を
指定することによりルーティングを行う。W.J.Da
lly,“A VLSI Architecturef
or Concurrent Data Struct
ures”,Kluwer Academic Pre
ss,1987の5.3.3節では、以上に示したルー
ティングを行うシステムについて説明している。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
ルーティング法で使用する経路が固定されているため、
アプリケーションによっては1つのルートにトラフィッ
クが増大し、そこで通信ネックが生じ、処理の並列化の
さまたげになることがある。また複数のプロセッサにデ
ータのブロードキャストを行う場合は、宛先のプロセッ
サ毎に通信を行わなければならなかった。そのため処理
によりルーティングをプログラムにより自由に設定で
き、しかも送信元のプロセッサから複数のプロセッサへ
データのブロードキャストを一回のメッセージ通信で実
現するために書き換え可能なルーティングテーブルを用
いる方法が考えられるが、プロセッサ数の増大とともに
ルーティングテーブルのサイズが増大するという問題が
あった。
【0006】本発明の目的はプロセッサ数が増大した際
にルーティングテーブルのサイズの増大を抑えることの
できるアレイプロセッサのルーティング方法を提供する
ことにある。
【0007】
【課題を解決するための手段】第1の発明は、複数の演
算プロセッサと、プロセッサ間の通信を行う低次元のメ
ッシュ状の相互接続ネットワークとから構成されるアレ
イプロセッサにおいて、送信元プロセッサから単数ある
いは複数の宛先プロセッサへメッセージパケットのルー
ティングを行う方法であって、前記ネットワーク内の各
々の演算プロセッサに対して演算プロセッサから発生し
たあるいは接続された複数の接続リンクの一つから送ら
れてきたメッセージパケットを複数の接続リンクあるい
は演算プロセッサの中から指定された単数あるいは複数
の宛先に転送する手段および、メッセージパケット内の
アドレス情報からメッセージパケットを転送する単数あ
るいは複数のリンクあるいは演算プロセッサを指定する
演算プロセッサにより書き換え可能なルーティング情報
記憶手段を備えるアレイプロセッサを複数のクラスタに
分割し、クラスタ内の全部あるいは一部のプロセッサの
ルーティング情報記憶手段における全部あるいは一部の
アドレスを他のクラスタのプロセッサに割り当てること
により、クラスタ外のプロセッサへのメッセージ転送を
可能にすることを特徴とする。
【0008】第2の発明は、複数の演算プロセッサと、
プロセッサ間の通信を行う低次元のメッシュ状の相互接
続ネットワークとから構成されるアレイプロセッサにお
いて、送信元プロセッサから単数あるいは複数の宛先プ
ロセッサへメッセージパケットのルーティングを行う方
法であって、前記ネットワーク内の各々の演算プロセッ
サに対して演算プロセッサから発生したあるいは接続さ
れた複数の接続リンクの一つから送られてきたメッセー
ジパケットを複数の接続リンクあるいは演算プロセッサ
の中から指定された単数あるいは複数の宛先に転送する
手段および、メッセージパケット内のアドレス情報から
メッセージパケットを転送する単数あるいは複数のリン
クあるいは演算プロセッサを指定する演算プロセッサに
より書き換え可能なルーティング情報記憶手段を備える
アレイプロセッサを複数のクラスタに分割し、各々のク
ラスタに1つのアドレスを割り当て、送信プロセッサが
異なるクラスタに属する宛先プロセッサにメッセージパ
ケットを送る場合は、パケット内にクラスタアドレスと
クラスタ内のローカルアドレスを付与し、クラスタアド
レスによりルーティングを行うことにより宛先プロセッ
サの属するクラスタ内のクラスタアドレスを持つゲート
ウェイプロセッサに転送し、ゲートウェイプロセッサに
おいて、クラスタアドレスを指定されたメッセージパケ
ットを受信した場合はローカルアドレスによりルーティ
ングを行うように再設定してパケットの再送を行うこと
により、宛先プロセッサへの転送を行うことを特徴とす
る。
【0009】第3の発明は、第2の発明のルーティング
方法において、各クラスタにおいてクラスタ外部と接続
するクラスタ内の複数のプロセッサを同じクラスタアド
レスをもつゲートウェイプロセッサとし、クラスタ外の
プロセッサを各々のゲートウェイプロセッサに対して互
いに交差せずにルーティングを行えるようにルーティン
グ情報を設定することにより、クラスタ内のプロセッサ
への複数のメッセージ転送を同時に行うことを特徴とす
る。
【0010】
【作用】本発明の原理を次に示す。第1の発明のメッセ
ージパケットルーティング方法では、メッセージパケッ
ト内に付加された宛先アドレス情報により、ルーティン
グテーブルをアクセスして転送先の情報を得る。ルーテ
ィングテーブルは可能な全ての転送先(接続リンクおよ
びプロセッサ)に対して転送するか否かの設定を行うビ
ットが割り当てられているため複数のリンクあるいは演
算プロセッサへの転送が可能である。
【0011】各々のプロセッサに一意的にアドレスを割
り当てたクラスタにおいて、隣接クラスタに接する一部
の連続したプロセッサの集合のルーティングテーブルの
一部のアドレスに対する転送先を隣接クラスタに転送す
るように設定することにより、そのアドレスを指定した
パケットは送り側プロセッサの属するクラスタ内の対応
するアドレスのプロセッサには転送されずに隣接クラス
タ内の対応するアドレスを持つプロセッサに転送するこ
とができる。
【0012】以上の方法によるとルーティングテーブル
のサイズにより制限されるクラスタを複数結合したプロ
セッサアレイを構成することが可能になる。
【0013】第2の発明のメッセージパケットルーティ
ング方法では、メッセージパケット内に付加された宛先
アドレス情報により、ルーティングテーブルをアクセス
して転送先の情報を得る。ルーティングテーブルは可能
な全ての転送先(接続リンクおよびプロセッサ)に対し
て転送するか否かの設定を行うビットが割り当てられて
いるため複数のリンクあるいは演算プロセッサへの転送
が可能である。またルーティングテーブル内にクラスタ
アドレスとクラスタ内ローカルアドレスに対する転送先
の指定を行う。ここでクラスタアドレスはクラスタ内の
一部あるいは全部のプロセッサに対して割り当てられ
る。
【0014】送信プロセッサが異なるクラスタに属する
宛先プロセッサにメッセージパケットを転送する場合は
クラスタアドレスとクラスタ内ローカルアドレスをメッ
セージに付与し、まずクラスタアドレスによりルーティ
ングを行うことにより宛先プロセッサの属するクラスタ
内のプロセッサ(以下ゲートウェイプロセッサと呼ぶ)
にまで転送される。ゲートウェイプロセッサではメッセ
ージパケットをプロセッサ内に取り込み、パケット内の
クラスタ内ローカルアドレスを取り出してこれを用いて
ルーティングを行うように設定してから再送信を行う。
これにより宛先プロセッサへメッセージを送ることがで
きる。
【0015】以上の方法によるとN2 個のプロセッサを
2 個のクラスタに分割することにより各プロセッサに
対して必要なルーティングテーブルのサイズはN2 から
クラスタ内ローカルアドレスの数(N/M)2 およびク
ラスタアドレスの数M2 を加えた(N/M)2 +M2
なる。
【0016】第3の発明のメッセージパケットルーティ
ング方法では、各クラスタにおいてクラスタ外部と接す
る複数のプロセッサを同じクラスタアドレスをもつゲー
トウェイプロセッサとした場合、クラスタに転送された
メッセージパケットが全てのゲートウェイプロセッサに
転送されることになる。そこでゲートウェイプロセッサ
の数をLとしたときクラスタ外部のプロセッサをL個の
ゲートウェイプロセッサと連続したL個のプロセッサ集
合に分割することにより、各プロセッサ集合から各々の
ゲートウェイプロセッサに対して互いに交差せずにルー
ティングを行うことができる。これにより最大L個のク
ラスタ内へのメッセージ転送を同時に行うことができ
る。
【0017】
【実施例】次に本発明の実施例を図面を参照しながら説
明する。
【0018】図1は第1の発明の一実施例であり、4本
のリンクに接続された単位プロセッサノード10を2次
元格子状に接続したアレイプロセッサを2次元格子状の
第1および第2の2つのクラスタに分割した構成を示
す。
【0019】図2は、単位プロセッサノード10の構成
を示す。単位プロセッサは、演算プロセッサ21、プロ
セッサポート22、第1の通信ポート23、第2の通信
ポート24、第3の通信ポート25、第4の通信ポート
26、制御回路27およびルーティングテーブル28と
から構成される。
【0020】第1の通信ポート23、第2の通信ポート
24、第3の通信ポート25、第4の通信ポート26
は、各々接続された他の単位プロセッサノードから送ら
れてきたメッセージパケットを受け取り、メッセージパ
ケット内の宛先アドレス情報を抜出し、これを制御回路
27に送る。プロセッサポート22は、演算プロセッサ
21から書き込まれたメッセージパケットの宛先アドレ
ス情報を抜出し、これを制御回路27に送る。
【0021】制御回路27は送られた宛先アドレスによ
りルーティングテーブル28を引いて転送すべき第1の
通信ポート23、第2の通信ポート24、第3の通信ポ
ート25、第4の通信ポート26のいずれか、あるいは
プロセッサポート22に対してメッセージ転送制御信号
を送る。このときルーティングテーブルは第1の通信ポ
ート23、第2の通信ポート24、第3の通信ポート2
5、第4の通信ポート26、プロセッサポート22の5
つの送り先に1ビットずつ割り当てた5ビットを1つの
アドレスワードとし、プロセッサの数に一定量の付加数
を足したアドレス空間を持つ読み出し書込み可能なメモ
リにより構成される。またルーティングテーブル28は
演算プロセッサ21により設定,変更を行うことができ
る。
【0022】第1の通信ポート23、第2の通信ポート
24、第3の通信ポート25、第4の通信ポート26
は、またメッセージ転送制御信号を受取ると送られてき
たメッセージはパケットを接続された隣接単位プロセッ
サノードに送り出す。またプロセッサポート22はメッ
セージ転送制御信号を受取ると送られてきたメッセージ
を受信し格納して、演算プロセッサ21により読み出せ
るようにする。
【0023】図3にメッセージ転送の一例を示す。図3
は図1に示した2次元格子状に接続されたアレイプロセ
ッサを示す。図3において、各単位プロセッサ内のPは
演算プロセッサを示す。図3に示すアレイプロセッサの
第1のクラスタは、ローカルアドレス1をもつ第1の単
位プロセッサ31、ローカルアドレス2をもつ第2の単
位プロセッサ32、ローカルアドレス3をもつ第3の単
位プロセッサ33、ローカルアドレス4をもつ第4の単
位プロセッサ34、等から構成され、第2のクラスタ
は、ローカルアドレス3をもつ第5の単位プロセッサ3
5、ローカルアドレス1をもつ第6の単位プロセッサ3
6、ローカルアドレス2をもつ第7の単位プロセッサ3
7、等から構成される。このうち第3の単位プロセッサ
33、第4の単位プロセッサ34は、第1のクラスタに
おいて他のクラスタへの転送が可能なノードである。
【0024】図4に各プロセッサのルーティングテーブ
ルを示す。(a)は第1,第3,第4および第6の単位
プロセッサ用ルーティングテーブルを、(b)は第2,
第7の単位プロセッサ用ルーティングテーブルを、
(c)は第5の単位プロセッサ用ルーティングテーブル
を示している。図4においてPの欄は演算プロセッサ、
Nの欄は上方向、Eの欄は右方向、Sの欄は下方向、W
の欄は左方向への転送を指定するビットである。第3の
単位プロセッサ33の演算プロセッサから送り出される
メッセージパケットは、クラスタ外ローカルアドレス2
をもち、異なるクラスタ内のプロセッサへ転送される。
まず、第3の単位プロセッサ33のルーティングテーブ
ル(図4(a))のアドレス2の値Eにより第4の単位
プロセッサ34に送られ、第4単位プロセッサ34で
は、第4の単位プロセッサ34のルーティングテーブル
(図4(a))のアドレス2の値Eにより第2のクラス
タに属する第5の単位プロセッサ35に送られ、第5の
単位プロセッサ35では、第5の単位プロセッサ35の
ルーティングテーブル(図4(c))のアドレス2の値
Nにより第6の単位プロセッサ36に送られる。第6の
単位プロセッサ36では、第6の単位プロセッサ36の
ルーティングテーブル(図4(a))のアドレス2の値
Eにより第7の単位プロセッサ37に送られる。第7の
単位プロセッサ37では、第7の単位プロセッサ37の
ルーティングテーブル(図4(b))のアドレス2の値
Pにより第7の単位プロセッサ37のプロセッサポート
に書込まれる。
【0025】このようにメッセージ転送の経路は、図4
に示す各単位プロセッサのルーティングテーブルの設定
により決められ、第1のクラスタに属する第3の単位プ
ロセッサ33から送信されたパケットはローカルアドレ
ス2を有するのにもかかわらず、第1のクラスタにおい
てローカルアドレス2を有する第2の単位プロセッサ3
2には転送されず、第2のクラスタにおいてローカルア
ドレス2を有する第7の単位プロセッサに転送される。
【0026】図5は、第2の発明の一実施例であり、4
本のリンクに接続された単位プロセッサノード10を2
次元格子状に接続したアレイプロセッサを2次元格子状
の第1,第2,第3および第4の4つのクラスタに分割
した構成を示す。単位プロセッサノード10の構成は、
図2に示した構成と同じである。
【0027】図6にメッセージ転送の一例を示す。図6
は図5に示した2次元格子状に接続されたアレイプロセ
ッサを示す。図6において各単位プロセッサ内のPは演
算プロセッサを示す。図6に示すアレイプロセッサの第
1のクラスタは第1の単位プロセッサ31、第2の単位
プロセッサ32、第3の単位プロセッサ33、等から構
成され、第2のクラスタは第4の単位プロセッサ34、
第5の単位プロセッサ35、第6の単位プロセッサ3
6、等から構成され、第3のクラスタは第7の単位プロ
セッサ37、第8の単位プロセッサ38、等から構成さ
れる。このうち第4の単位プロセッサ34は第2のクラ
スタのゲートウェイノードであり、第7の単位プロセッ
サ37は第3のクラスタのゲートウェイノードである。
【0028】図7に各プロセッサのルーティングテーブ
ルを示す。(a)は第1,第2,第3および第4の単位
プロセッサ用ルーティングテーブルを、(b)は、第5
および第6の単位プロセッサ用ルーティングテーブル
を、(c)は、第7の単位プロセッサ用ルーティングテ
ーブルを、(d)は、第8の単位プロセッサ用ルーティ
ングテーブルを示している。図7においてPの欄は演算
プロセッサ、Nの欄は上方向、Eの欄は右方向、Sの欄
は下方向、Wの欄は左方向への転送を指定するビットで
ある。
【0029】第1の単位プロセッサ31の演算プロセッ
サから送り出されるメッセージパケットは、クラスタア
ドレス200とクラスタ内ローカルアドレス2をもち、
異なるクラスタ内のプロセッサへのメッセージ転送であ
るため、まずクラスタアドレスによりルーティングを行
う。まず、第1の単位プロセッサ31のルーティングテ
ーブル(図7(a))のアドレス200の値Eにより第
2の単位プロセッサ32に送られ、第2の単位プロセッ
サ32では、第2の単位プロセッサ32のルーティング
テーブル(図7(a))のアドレス200の値Eにより
第3の単位プロセッサ33に送られ、第3の単位プロセ
ッサ33では、第2の単位プロセッサ33のルーティン
グテーブル(図7(a))のアドレス200の値Eによ
り第4の単位プロセッサ37に送られる。第4の単位プ
ロセッサ34では、第4の単位プロセッサ34のルーテ
ィングテーブル(図7(a))のアドレス200の値E
により第5の単位プロセッサ35に送られる。
【0030】第5の単位プロセッサ35では、第5の単
位プロセッサ35のルーティングテーブル(図7
(b))のアドレス200の値Sにより第6の単位プロ
セッサ36に送られる。第6の単位プロセッサ36で
は、第6の単位プロセッサ36のルーティングテーブル
(図7(b))のアドレス200の値Sにより第7の単
位プロセッサ37に送られる。
【0031】第7の単位プロセッサ37では、第7の単
位プロセッサ37のルーティングテーブル(図7
(c))のアドレス200の値Pにより第3のクラスタ
のゲートウェイプロセッサである第7の単位プロセッサ
37のプロセッサポートに書き込まれる。第7の単位プ
ロセッサの演算プロセッサはメッセージパケット内のク
ラスタ内ローカルアドレス2によりルーティングを行う
ように再設定してメッセージパケットを送信する。第7
の単位プロセッサ37の演算プロセッサから送り出され
たメッセージパケットは第7の単位プロセッサ37のル
ーティングテーブルのアドレス2の値Sにより第8の単
位プロセッサ38に送られ、第8の単位プロセッサ38
では、第8の単位プロセッサ38のルーティングテーブ
ル(図7(d))のアドレス2の値Pにより宛先プロセ
ッサである第8の単位プロセッサ38のプロセッサポー
トに書込まれる。
【0032】このようにメッセージ転送の経路は図7に
示す各単位プロセッサのルーティングテーブルの設定に
より決められる。
【0033】次に、第3の発明の実施例について説明す
る。アドレスプロセッサのクラスタへの分割は図5に同
じであり、単位プロセッサノードの構成は、図2に示し
た構成と同じである。
【0034】図8に示すメッセージ転送の一例を示す。
図8は図5に示した2次元格子状に接続されたアレイプ
ロセッサを示す。図8において各単位プロセッサ内のP
は演算プロセッサを示す。図8に示すアレイプロセッサ
の第1のクラスタは第1の単位プロセッサ31、第2の
単位プロセッサ32、第3の単位プロセッサ33、第9
の単位プロセッサ39、第10の単位プロセッサ40、
第11の単位プロセッサ41、等から構成され、第2の
クラスタは第4の単位プロセッサ34、第5の単位プロ
セッサ35、第6の単位プロセッサ36、第12の単位
プロセッサ42、等から構成され、第3のクラスタ第7
の単位プロセッサ37、第8の単位プロセッサ38、第
13の単位プロセッサ43、第14の単位プロセッサ4
4、等から構成される。このうち第4の単位プロセッサ
34および第12の単位プロセッサ42は第2のクラス
タのゲートウェイノードであり、第7の単位プロセッサ
37および第13の単位プロセッサ43は第3のクラス
タのゲートウェイノードである。
【0035】図9および図10に各プロセッサのルーテ
ィングテーブルを示す。図9(a)は第1,第2,第
3,第4,第9,第10および第11の単位プロセッサ
用ルーティングテーブルを、図9(b)は第5,第6お
よび第12の単位プロセッサ用ルーティングテーブル
を、図9(c)は第7の単位プロセッサ用ルーティング
テーブルを、図9(d)は第8の単位プロセッサ用ルー
ティングテーブルを、図10(e)は第13の単位プロ
セッサ用ルーティンテーブルを、図10(f)は第14
の単位プロセッサ用ルーティングテーブルを示してい
る。
【0036】図9および図10においてPの欄は演算プ
ロセッサ、Nの欄は上方向、Eの欄は右方向、Sの欄は
下方向、Wの欄は左方向への転送を指定するビットであ
る。
【0037】第1の単位プロセッサ31の演算プロセッ
サから送り出されるメッセージパケットはクラスタアド
レス200とクラスタ内ローカルアドレス2をもち、異
なるクラスタ内のプロセッサへのメッセージ転送である
ため、まずクラスタアドレスによりルーティングを行
う。まず、第1の単位プロセッサ31のルーティングテ
ーブル(図9(a))のアドレス200の値Eにより第
2の単位プロセッサ32に送られ、第2単位プロセッサ
32では、第2の単位プロセッサ32のルーティングテ
ーブル(図9(a))のアドレス200の値Eにより第
3の単位プロセッサ33に送られ、第3の単位プロセッ
サ33では、第3の単位プロセッサ33のルーティング
テーブル(図9(a))のアドレス200の値Eにより
第4の単位プロセッサ34に送られる。第4の単位プロ
セッサ34では、第4の単位プロセッサ34のルーティ
ングテーブル(図9(a))のアドレス200の値Eに
より第5の単位プロセッサ35に送られる。
【0038】第5の単位プロセッサ35では、第5の単
位プロセッサ35のルーティングテーブル(図9
(b))のアドレス200の値Sにより第6の単位プロ
セッサ36に送られる。第6の単位プロセッサ36で
は、第6の単位プロセッサ36のルーティングテーブル
(図9(b))のアドレス200の値Sにより第7の単
位プロセッサ37に送られる。
【0039】第7の単位プロセッサ37では、第7の単
位プロセッサ37のルーティングテーブル(図9
(c))のアドレス200の値Pにより第3のクラスタ
のゲートウェイプロセッサである第7の単位プロセッサ
37のプロセッサポートに書込まれる。第7の単位プロ
セッサの演算プロセッサは、メッセージパケット内のク
ラスタ内ローカルアドレス2によりルーティングを行う
ように再設定してメッセージパケットを再送信する。第
7の単位プロセッサ37の演算プロセッサから送り出さ
れたメッセージパケットは、第7の単位プロセッサ37
のルーティングテーブルのアドレス2の値Sにより第8
の単位プロセッサ38に送られ、第8の単位プロセッサ
38では、第8の単位プロセッサ38のルーティングテ
ーブル(図9(d))のアドレス2の値Pにより宛先プ
ロセッサである第8の単位プロセッサ38のプロセッサ
ポートに書込まれる。
【0040】一方、第9の単位プロセッサ39の演算プ
ロセッサから送り出されるメッセージパケットは、クラ
スタアドレス200とクラスタ内ローカルアドレス3を
もち、異なるクラスタ内のプロセッサへのメッセージ転
送であるため、まずクラスタアドレスによりルーティン
グを行う。まず、第9の単位プロセッサ39のルーティ
ングテーブル(図9(a))のアドレス200の値Eに
より第10の単位プロセッサ40に送られ、第10の単
位プロセッサ40では、第10の単位プロセッサ40の
ルーティングテーブル(図9(a))のアドレス200
の値Eにより第11の単位プロセッサ41に送られ、第
11の単位プロセッサ41では、第11の単位プロセッ
サ41のルーティングテーブル(図9(a))のアドレ
ス200の値Eにより第12の単位プロセッサ42に送
られ、第12の単位プロセッサ42では、第12の単位
プロセッサ42のルーティングテーブル(図9(b))
のアドレス200の値Sにより第13の単位プロセッサ
43に送られる。
【0041】第13の単位プロセッサ43では、第13
の単位プロセッサ43のルーティングテーブル(図10
(e))のアドレス200の値Pにより第3のクラスタ
のゲートウェイプロセッサである第13の単位プロセッ
サ43のプロセッサポートに書込まれる。第13の単位
プロセッサの演算プロセッサは、メッセージパケット内
のクラスタ内ローカルアドレス3によりルーティングを
行うように再設定してメッセージパケットを送信する。
第13の単位プロセッサ43の演算プロセッサから送り
出されたメッセージパケットは13の単位プロセッサ4
3のルーティングテーブルのアドレス3の値Sにより第
14の単位プロセッサ44に送られ、第14の単位プロ
セッサ44では、第14の単位プロセッサ44のルーテ
ィングテーブル(図10(f))のアドレス3の値Pに
より宛先プロセッサである第14の単位プロセッサ44
のプロセッサポートに書込まれる。
【0042】このようにメッセージ転送の経路は図9お
よび図10に示す各単位プロセッサのルーティングテー
ブルの設定により決められる。
【0043】
【発明の効果】以上説明したように、第1の発明に従え
ばアドレスプロセッサにおいてルーティングテーブルの
サイズによりアレイクラスタを構成し、クラスタ内の一
部のプロセッサの転送先を他のクラスタ内のプロセッサ
と設定することにより複数のクラスタを結合して大規模
なアレイプロセッサを構成することができる。
【0044】また2の発明に従えばアレイプロセッサに
おいてルーティングテーブルにクラスタアドレスとロー
カルアドレスとを書換えることにより、任意の経路のメ
ッセージパケットを送ることができる。
【0045】さらに第3の発明に従えば複数の単位プロ
セッサから1つのクラスタ内の複数の単位プロセッサに
同時にメッセージパケットを送ることが可能である。
【図面の簡単な説明】
【図1】第1の発明におけるクラスタ分割を示す図であ
る。
【図2】単位プロセッサの構成を示す図である。
【図3】第1の発明によるメッセージ転送の一例を示す
図である。
【図4】図3の例における各単位プロセッサのルーティ
ングテーブルを示す図である。
【図5】第2の発明におけるクラスタ分割を示す図であ
る。
【図6】第2の発明によるメッセージ転送の一例を示す
図である。
【図7】図6の例における各単位プロセッサのルーティ
ングテーブルを示す図である。
【図8】第3の発明によるメッセージ転送の一例を示す
図である。
【図9】図8の例における各単位プロセッサのルーティ
ングテーブルを示す図である。
【図10】図8の例における各単位プロセッサのルーテ
ィングテーブルを示す図である。
【符号の説明】
10 単位プロセッサノード 21 演算プロセッサ 22 プロセッサポート 23 第1の通信ポート 24 第2の通信ポート 25 第3の通信ポート 26 第4の通信ポート 27 制御回路 28 ルーティングテーブル 31 第1の単位プロセッサ 32 第2の単位プロセッサ 33 第3の単位プロセッサ 34 第4の単位プロセッサ 35 第5の単位プロセッサ 36 第6の単位プロセッサ 37 第7の単位プロセッサ 38 第8の単位プロセッサ 39 第9の単位プロセッサ 40 第10の単位プロセッサ 41 第11の単位プロセッサ 42 第12の単位プロセッサ 43 第13の単位プロセッサ 44 第14の単位プロセッサ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】複数の演算プロセッサと、プロセッサ間の
    通信を行う低次元のメッシュ状の相互接続ネットワーク
    とから構成されるアレイプロセッサにおいて、送信元プ
    ロセッサから単数あるいは複数の宛先プロセッサへメッ
    セージパケットのルーティングを行う方法であって、前
    記ネットワーク内の各々の演算プロセッサに対して演算
    プロセッサから発生したあるいは接続された複数の接続
    リンクの一つから送られてきたメッセージパケットを複
    数の接続リンクあるいは演算プロセッサの中から指定さ
    れた単数あるいは複数の宛先に転送する手段および、メ
    ッセージパケット内のアドレス情報からメッセージパケ
    ットを転送する単数あるいは複数のリンクあるいは演算
    プロセッサを指定する演算プロセッサにより書き換え可
    能なルーティング情報記憶手段を備えるアレイプロセッ
    サを複数のクラスタに分割し、クラスタ内の全部あるい
    は一部のプロセッサのルーティング情報記憶手段におけ
    る全部あるいは一部のアドレスを他のクラスタのプロセ
    ッサに割り当てることにより、クラスタ外のプロセッサ
    へのメッセージ転送を可能にすることを特徴とするメッ
    セージパケットのルーティング方法。
  2. 【請求項2】複数の演算プロセッサと、プロセッサ間の
    通信を行う低次元のメッシュ状の相互接続ネットワーク
    とから構成されるアレイプロセッサにおいて、送信元プ
    ロセッサから単数あるいは複数の宛先プロセッサへメッ
    セージパケットのルーティングを行う方法であって、前
    記ネットワーク内の各々の演算プロセッサに対して演算
    プロセッサから発生したあるいは接続された複数の接続
    リンクの一つから送られてきたメッセージパケットを複
    数の接続リンクあるいは演算プロセッサの中から指定さ
    れた単数あるいは複数の宛先に転送する手段および、メ
    ッセージパケット内のアドレス情報からメッセージパケ
    ットを転送する単数あるいは複数のリンクあるいは演算
    プロセッサを指定する演算プロセッサにより書き換え可
    能なルーティング情報記憶手段を備えるアレイプロセッ
    サを複数のクラスタに分割し、各々のクラスタに1つの
    アドレスを割り当て、送信プロセッサが異なるクラスタ
    に属する宛先プロセッサにメッセージパケットを送る場
    合は、パケット内にクラスタアドレスとクラスタ内のロ
    ーカルアドレスを付与し、クラスタアドレスによりルー
    ティングを行うことにより宛先プロセッサの属するクラ
    スタ内のクラスタアドレスを持つゲートウェイプロセッ
    サに転送し、ゲートウェイプロセッサにおいて、クラス
    タアドレスを指定されたメッセージパケットを受信した
    場合はローカルアドレスによりルーティングを行うよう
    に再設定してパケットの再送を行うことにより、宛先プ
    ロセッサへの転送を行うことを特徴とするメッセージパ
    ケットのルーティング方法。
  3. 【請求項3】請求項2記載のアレイプロセッサのメッセ
    ージパケットルーティング方法において、各クラスタに
    おいてクラスタ外部と接続するクラスタ内の複数のプロ
    セッサを同じクラスタアドレスをもつゲートウェイプロ
    セッサとし、クラスタ外のプロセッサを各々のゲートウ
    ェイプロセッサに対して互いに交差せずにルーティング
    を行えるようにルーティング情報を設定することによ
    り、クラスタ内のプロセッサへの複数のメッセージ転送
    を同時に行うことを特徴とするメッセージパケットのル
    ーティング方法。
JP4034860A 1992-02-21 1992-02-21 アレイプロセッサのメッセージパケットルーティング方法 Expired - Lifetime JP2936868B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4034860A JP2936868B2 (ja) 1992-02-21 1992-02-21 アレイプロセッサのメッセージパケットルーティング方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4034860A JP2936868B2 (ja) 1992-02-21 1992-02-21 アレイプロセッサのメッセージパケットルーティング方法

Publications (2)

Publication Number Publication Date
JPH05233567A true JPH05233567A (ja) 1993-09-10
JP2936868B2 JP2936868B2 (ja) 1999-08-23

Family

ID=12425927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4034860A Expired - Lifetime JP2936868B2 (ja) 1992-02-21 1992-02-21 アレイプロセッサのメッセージパケットルーティング方法

Country Status (1)

Country Link
JP (1) JP2936868B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006092825A1 (ja) * 2005-02-28 2006-09-08 Fujitsu Limited 信号処理装置および信号処理システム
JP2011516945A (ja) * 2008-05-01 2011-05-26 インテル・コーポレーション マルチプロセッサメッシュベースシステムにおいて階層ルーティングを行う方法および装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006092825A1 (ja) * 2005-02-28 2006-09-08 Fujitsu Limited 信号処理装置および信号処理システム
JP2011516945A (ja) * 2008-05-01 2011-05-26 インテル・コーポレーション マルチプロセッサメッシュベースシステムにおいて階層ルーティングを行う方法および装置

Also Published As

Publication number Publication date
JP2936868B2 (ja) 1999-08-23

Similar Documents

Publication Publication Date Title
US4797882A (en) Mesh-based switching network
EP0733237B1 (en) Multidimensional interconnection and routing network for an mpp computer
US5170482A (en) Improved hypercube topology for multiprocessor computer systems
JP3532574B2 (ja) トーラス相互結合網のための適応ルーティング機構
CN100499446C (zh) 类网络路由方法
Chen et al. A fault-tolerant routing scheme for meshes with nonconvex faults
KR20140139032A (ko) 패킷플로우 상호연결 패브릭
US6304568B1 (en) Interconnection network extendable bandwidth and method of transferring data therein
JPH06507744A (ja) 大量並列プロセッサ間の、階層的プロセッサ相互間通信ネットワークのための手順決定技術
US6055599A (en) Hierarchical crossbar interconnection network for a cluster-based parallel processing computer
JPH08185380A (ja) 並列計算機
Al-Tawil et al. A survey and comparison of wormhole routing techniques in a mesh networks
US7239606B2 (en) Scalable configurable network of sparsely interconnected hyper-rings
CN114844827B (zh) 一种用于片上网络芯片的基于共享存储的生成树路由硬件架构及方法
JPH06325005A (ja) 再構成可能なトーラス・ネットワーク方式
JP4480315B2 (ja) スケーラブルなマルチプロセッサネットワーク
Xie et al. Mesh-of-Torus: a new topology for server-centric data center networks
JP2936868B2 (ja) アレイプロセッサのメッセージパケットルーティング方法
JP2976675B2 (ja) アレイプロセッサのルーティング方法
US7561584B1 (en) Implementation of a graph property in a switching fabric for fast networking
JPH05303558A (ja) アレイプロセッサのメッセージパケットルーティング方法および装置
Thurber Computer communication techniques
WO2006048826A1 (en) Integrated circuit and method for data transfer in a network on chip environment
Jurczyk et al. Interconnection networks for parallel computers
Gkalea Fault-Tolerant Nostrum NoC on FPGA for theForSyDe/NoC System Generator Tool Suite