JPH0816539A - データ転送方法、それを実現する分散メモリ型並列計算機および要素プロセッサ - Google Patents
データ転送方法、それを実現する分散メモリ型並列計算機および要素プロセッサInfo
- Publication number
- JPH0816539A JPH0816539A JP6149399A JP14939994A JPH0816539A JP H0816539 A JPH0816539 A JP H0816539A JP 6149399 A JP6149399 A JP 6149399A JP 14939994 A JP14939994 A JP 14939994A JP H0816539 A JPH0816539 A JP H0816539A
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- processor
- data
- data transfer
- address
- 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
Landscapes
- Multi Processors (AREA)
Abstract
の転送を任意プロセッサが起動可能なデータ転送方法、
それを実行する並列計算機、プロセッサの提供。 【構成】インタフェース208内に送信元アドレスレジ
スタ117と送信先アドレスレジスタ118を用意し、
データ転送開始時に該レジスタに並列計算機内の全主記
憶を参照可能なグローバルアドレスを設定し、該設定値
から送信元、送信先の要素プロセッサを識別し、送信元
が自身の時、データ転送を開始し、送信元が自身でない
時、データ転送開始時のパラメータ値をそのままメッセ
ージとして送信元となるべき要素プロセッサに送信する
メッセージ送出部103と、自身へのデータ転送は受信
し、自身が送信元となるべく要求するメッセージに応
じ、データ転送を開始させるメッセージ受取部106と
ヘッダ解析部107を設けた。
Description
機におけるデータ転送方法、それを実現する分散メモリ
型並列計算機および要素プロセッサに関し、特に、並列
計算機を構成する任意の要素プロセッサが、自らを含め
て任意の2つの(送信側と受信側)要素プロセッサが具
備する主記憶装置間でデータの送受信を可能とするデー
タ転送方法、それを実現する分散メモリ型並列計算機お
よび要素プロセッサに関する。
処理装置に対する処理量の増大、処理速度の高速化など
が強く要求され、その要求に答えるために複数の演算プ
ロセッサを連携して構成した並列計算機が開発された。
ある並列計算機は、数台の演算プロセッサを有し、その
数台の演算プロセッサで1つのメモリを共有して用いる
形で構成された。この種の並列計算機はTCMP(Ti
ghtly Coupled Multi−Proce
ssor)型の並列計算機と呼ばれている。一方でTC
MP型よりもより多くの演算プロセッサ、具体的には数
百台から数千台の演算プロセッサを有する並列計算機も
登場した。この並列計算機は、ハードウェア上の実現の
難易度の観点から、全演算プロセッサで1つのメモリを
共有するような方式をとらずに、それぞれの演算プロセ
ッサが独立してメモリを有する方式をとったため、分散
メモリ型の並列計算機と呼ばれている。分散メモリ型の
並列計算機はTCMP型の並列計算機に比べて高性能を
達成できる。しかし、分散メモリ型の並列計算機は、メ
モリが複数の演算プロセッサに分散されて設けられるた
め、単一演算プロセッサと単一メモリを想定した従来プ
ログラミングスタイルに基づくプログラムの移植性やプ
ログラミングの容易性などに問題点があるとの指摘も存
在した。そこで、最近では、米国Stanford大学
の研究に代表されるような分散メモリ型の並列計算機に
対して、各演算プロセッサが互いに他の演算プロセッサ
が有するメモリを参照できるようにする分散共有メモリ
方式を導入する傾向が高くなっている。
演算プロセッサが有するメモリをいかにして参照させる
かという課題が存在する。この課題はアドレッシングに
よって解決する。具体的には、自らのアドレス空間に他
の演算プロセッサが有するメモリをマッピングする。こ
れによって実現されるアドレス空間を以降グローバルア
ドレス空間と呼ぶ。図6は、グローバルアドレス空間の
例である。グローバルアドレス空間601は、並列計算
機を構成する要素プロセッサの台数分に分割される。分
割された領域603、605、・・・607はそれぞれ
異なる要素プロセッサ用に割り当てられる。そして、そ
れぞれの領域603、605、・・・607の中の領域
602、604、・・・606に対して、該当する要素
プロセッサが具備する主記憶装置がマップされる。例え
ば、IBMが実験的に試作した並列計算機であるRP3
では、1985年のInternational Co
nference on Parallel Proc
essingの予稿集782ページから789ページの
予稿である”RP3 Processor−Memor
y Element”および特公平5−20776号に
開示されているとおり、図13に示す形態のアドレスを
用いて他の演算プロセッサが有するメモリを参照する。
図13のアドレスでは、参照すべきメモリを有する演算
プロセッサをプロセッサ番号フィールド1301で指定
し、そのメモリ内のアドレスをオフセットフィールド1
302で指定している。
有メモリ方式では、ある演算プロセッサが他の演算プロ
セッサが有するメモリを参照する場合に、自プロセッサ
が有するメモリを参照する時と同様なロード/ストア命
令を用いていた。すなわち、分散共有メモリ方式を並列
計算機を構成する要素プロセッサ間のデータ転送インタ
フェースとして捉えるならば、従来の分散共有メモリ実
現方式では、ワード単位の小粒度のデータ転送しか実現
し得なかった。例えば、データベース処理にこの並列計
算機を適用することを考えると、大規模なデータベース
の(メモリ間)コピーが発生した場合に、多量のワード
単位データ転送を行わなければならないため、オーバヘ
ッドが大きくなり性能的に問題が大きい。また、このイ
ンタフェースでは、データ転送を起動するプロセッサ自
身が必ずデータ転送元あるいはデータ転送先のどちらか
になる必要がある。すなわち、このインタフェースは、
2方向のみのインタフェースである。これに対し、分散
メモリ型の並列計算機が基本的にサポートしているメッ
セージ・パッシング・インタフェースは、数ワードから
数百、数千のワードを一度に転送できるインタフェース
である。しかし、従来のメッセージ・パッシング・イン
タフェースでは、明示的にデータの送信先のプロセッサ
番号を指定する必要があった。また、送信するデータ
は、自プロセッサの有するメモリ内に存在しなければな
らなかった。すなわち、従来のメッセージ・パッシング
・インタフェースは、自プロセッサから他プロセッサへ
の一方向のインタフェースであった。本発明の目的は、
データ群の帰属先プロセッサを意識せず、かつ、可変量
のデータ群を対象とし、しかも、任意要素プロセッサ間
に対して任意要素プロセッサが起動可能なデータ転送方
法、それを実現する分散メモリ型並列計算機および要素
プロセッサを提供することにある。
に、本発明は、従来のメッセージ・パッシング・インタ
フェースに基づくデータ転送方式に、分散共有メモリ方
式で実現するグローバルアドレス空間の考え方を導入し
たものである。具体的には、図5に示すように、送信す
るデータ群の送信元プロセッサ(この場合、自プロセッ
サ)での先頭アドレス(src−adr)、送信先のプ
ロセッサ番号(dst−PU#)、送信先でのデータ群
の書き込みメモリ領域の先頭アドレス(dst−ad
r)、データ転送量(length)、および、送受信
対象データのメモリ領域における存在間隔(strid
e)の主に5つのパラメータで表現される従来のメッセ
ージ・パッシング・インタフェースを変更し、図3に示
すように、送信するデータ群の先頭グローバルアドレス
(src−adr)、転送データ群の書き込み先の先頭
グローバルアドレス(dst−adr)、データ転送量
(length)、および、送受信対象データのメモリ
領域における存在間隔(stride)という4つのパ
ラメータで表現されるインタフェースを定義する。本イ
ンタフェースは、分散メモリ型の並列計算機において、
該並列計算機を構成する要素プロセッサの各々に所属す
る主記憶装置を全てグローバルアドレス空間によって参
照して、任意のグローバルアドレス領域から他の任意の
グローバルアドレス領域へのメモリ領域間データコピー
を実現するインタフェースである。本発明は、このよう
なインタフェースを用いてコピー態様でデータ転送を実
現することを特徴としている。
並列計算機において、データ転送をメモリ領域間データ
コピーの概念で実現できる。したがって、グローバルア
ドレス空間参照に際しても、ワード単位から数百、数千
ワード以上のデータ群を一度に対象とできる。また、デ
ータ転送という観点からは、データ転送起動者がデータ
またはデータ群の帰属先プロセッサを意識する必要がな
くなる。この特徴は、上記手段を適用する並列計算機向
けのプログラムの記述容易性を高める効果がある。さら
に、上記手段によって実現されるデータ転送方法では、
任意要素プロセッサ間(任意主記憶装置間)のデータ転
送が可能であり、また、データ転送起動者を、データ転
送元あるいはデータ転送先のいずれとも規定しない。す
なわち、要素プロセッサBから要素プロセッサCへのデ
ータ転送を要素プロセッサBでも要素プロセッサCでも
ない要素プロセッサAが指示できる。これは、一方向の
みのインタフェースであった従来のメッセージ・パッシ
ング・インタフェースや、せいぜい2方向であった従来
の分散共有メモリ方式に基づくデータ転送インタフェー
スを凌駕する多方向のインタフェースであり、この特徴
がプログラムの記述容易性を高める効果も大きい。特に
この特徴はサーバ・クライアント・モデルのプログラム
記述にとって効果が大きいと考えられる。
る。図2は、分散メモリ型の並列計算機を構成する要素
プロセッサの一実施例である。同図において、要素プロ
セッサ201は、プログラム処理を行う命令プロセッサ
202、命令プロセッサ202に接続され、命令プロセ
ッサ202から出されるコマンド/アドレス/データの
組に従って、後述する主記憶装置207、I/Oデバイ
ス205およびネットワークインタフェース208内部
などへのアクセスを発行するメモリアクセスインタフェ
ース203、I/Oインタフェース204、メモリ制御
ユニット206、他の要素プロセッサ(201と同様な
構成を有する)と要素プロセッサ間結合網(ネットワー
ク)を介してパケットおよびデータの受渡しを行うネッ
トワークインタフェース208、I/Oインタフェース
204に接続されるI/Oデバイス205、メモリ制御
ユニット206に接続される主記憶装置207、およ
び、メモリアクセスインタフェース203、I/Oイン
タフェース204、メモリ制御ユニット206およびネ
ットワークインタフェース208を接続するバス209
などから構成される。本発明は、データ転送を実現する
データ転送機構の根幹であるネットワークインタフェー
ス208に関するものである。
フェースについて説明する。図3は、本発明で定義する
データ転送インタフェースをC言語などのプログラミン
グ言語を使って関数の形で表現したものである。該イン
タフェースを適用する並列計算機向きのプログラム中で
データ転送を表現する場合には、実際に図3に準ずる形
で記述される。図3の第1パラメータ“src−ad
r”は、転送する一連のデータ群の先頭グローバルアド
レスである。また、第2パラメータ“dst−adr”
は、転送データ群の書き込み先の先頭グローバルアドレ
スである。第3パラメータ“length”は、転送デ
ータ量であり、第4パラメータ“stride”は、転
送対象データのメモリ領域における存在間隔である。図
14に示すとおり、“stride”は、例えば、転送
順で連続する転送対象データがアドレス順で隣り合うと
きに1、アドレス順で1つおきのとき2(以下同様)と
なる。
スでは、図3に示した4つのパラメータのうち、最低限
第1、第2、第3の3つのパラメータを指定する必要が
ある(strideは1に固定することで省略可能であ
る。逆に、本データ転送方法を拡張すれば他にもパラメ
ータを設定可能である)。図3は、“src−adr”
というグローバルアドレスから始まる“length”
דstride”個分のデータ領域から、データを
“length”個だけ“stride”間隔で読出し
た後、読み出した全データを、“dst−adr”とい
うグローバルアドレスから始まる“length”×
“stride”個分のデータ領域へ“stride”
間隔に“length”個だけ書き込むという操作を表
現している。すなわち、このインタフェースを用いて実
現するのはデータ転送というよりは、むしろ、任意のグ
ローバルアドレス領域から他の任意のグローバルアドレ
ス領域へのメモリ領域間データコピーとみなすことがで
きる。なお、上記でグローバルアドレスと表現している
のは、図6に例示するようなグローバルアドレス空間上
のアドレスであり、例えば、図13のような形式をと
る。図13のアドレスは、参照すべきメモリを有する要
素プロセッサをプロセッサ番号フィールド1301で指
定し、そのメモリ内のアドレスをオフセットフィールド
1302で指定している。また、図6のグローバルアド
レス空間601は、要素プロセッサの台数分に分割され
ており、分割された領域603、605、・・・607
はそれぞれ異なる要素プロセッサ用に割り当てられてい
る。そして、それぞれの領域603、605、・・・6
07の中の領域602、604、・・・606に対し
て、該当する要素プロセッサが具備する主記憶がマップ
されている。
ワークインタフェース208の構成および各部動作を詳
細に説明する。なお、前もって、図1の信号線L15、
L16、L17について誤解のないように説明してお
く。それぞれの信号線は紙面の都合上いくつかのレジス
タを表現する四角の下側あるいは裏側を走っているイメ
ージで書き入れている。信号線L15は、送信元アドレ
スレジスタ117の下を通ってメッセージ送出部103
の入力信号となっている。信号線L16は、送信先アド
レスレジスタ118および送信元アドレスレジスタ11
7の下を通ってメッセージ送出部103の入力信号とな
っている。信号線L17は、送信データ長レジスタ11
9、送信先アドレスレジスタ118および送信元アドレ
スレジスタ117の下を通ってメッセージ送出部103
の入力信号となっている。図1におけるネットワークイ
ンタフェース208とバス209、ネットワークの接続
関係は先に図2の説明で述べたとおりである。
きく分けてメッセージ送信部、メッセージ受信部、主記
憶アクセス部およびバスインタフェース部101の4つ
の部分から構成される。メッセージ送信部は、メッセー
ジ送出部103、送信元アドレスレジスタ117、送信
先アドレスレジスタ118、送信データ長レジスタ11
9、送信ストライド幅レジスタ120、書き込み制御部
121、セレクタ123、セレクタ124、自要素プロ
セッサからの要求とネットワークを介したデータ転送要
求(ヘッダ解析部から)を調停する要求調停部122、
アドレス加算部116、比較器104、自PU番号レジ
スタ105(PUは要素プロセッサの略称)などからな
る。メッセージ受信部は、メッセージ受取部106、ヘ
ッダ解析部107およびアドレス加算部112などから
構成される。主記憶アクセス部は、主記憶読出し部12
5および主記憶書き込み部128から構成される。バス
インタフェース部101は、バス209に接続され、命
令プロセッサ202からメモリアクセスインタフェース
203を通し、さらにバス209を介して伝えられる以
下の3種の要求を受取り、必要な処理をする。 (1)メッセージ送出部103へのメッセージ送信開始
指令信号L1の伝達。 (2)要求調停部122へのメッセージ送信要求信号L
13の伝達。 (3)送信元アドレスレジスタ117、送信先アドレス
レジスタ118、送信データ長レジスタ119、送信ス
トライド幅レジスタ120への値の書き込み。 さらに、バスインタフェース部101は、要求調停部1
22の調停結果を逆にバス209を介して、メモリアク
セスインタフェース203を通し、命令プロセッサ20
2に伝える。また、バスインタフェース部101は、ネ
ットワークインタフェース208内の主記憶読出し部1
25および主記憶書き込み部128からの主記憶アクセ
スを実現する。
スタ117、送信先アドレスレジスタ118、送信デー
タ長レジスタ119、送信ストライド幅レジスタ120
は、それぞれ図3に示した4つのパラメータである“s
rc−adr”すなわち転送する一連のデータ群の先頭
グローバルアドレス、“dst−adr”すなわち転送
データ群の書き込み先の先頭グローバルアドレス、“l
ength”すなわち転送データ量、“stride”
すなわち転送対象データのメモリ領域における存在間隔
を格納するためのレジスタである。送信元アドレスレジ
スタ117および送信先アドレスレジスタ118には、
図13に例示するような形式をとるグローバルアドレス
が格納されるため、図7に示す形のレジスタ701を用
いる。レジスタ701は、図13におけるプロセッサ番
号フィールド1301およびオフセットフィールド13
02を格納するために、それぞれPU番号フィールド7
02およびPU内アドレスフィールド703を有する。
レジスタ117の内容に応じて要求メッセージ送信とデ
ータメッセージ送信の2種類のメッセージ送信が発生し
うる。送信元アドレスレジスタ117のPU番号フィー
ルドの内容を伝える信号線L25の値と自PU番号レジ
スタ105の値を比較器104で比較した結果、値が等
しければデータメッセージ送信が発生する。逆に、比較
器104での比較の結果、値が異なれば、送信元アドレ
スレジスタ117のPU番号フィールドの内容が示す要
素プロセッサに対してデータ転送を要求する要求メッセ
ージ送信が発生する。要求メッセージとデータメッセー
ジのそれぞれに対しては、図9、図10に示す別個のメ
ッセージヘッダ901および1001が定義されてい
る。
ヘッダ901には、メッセージ種類902、送信元PU
番号903、送信元アドレス904、送信先アドレス9
05、送信データ長906、送信ストライド幅907な
どの情報が含まれている。メッセージ種類902は、要
求メッセージ/データメッセージの別を示す情報(1ビ
ットで可)であり、この場合要求メッセージを示す。送
信元PU番号903は、信号線L14を介してメッセー
ジ送出部103に伝えられる送信元アドレスレジスタ1
17のPU番号フィールドの内容であり、すなわち、転
送すべきデータが格納されている主記憶装置を有する要
素プロセッサの番号である。送信元PU番号903は、
この要求メッセージ自身の送信先要素プロセッサの番号
でもある。送信元アドレス904、送信先アドレス90
5、送信データ長906、送信ストライド幅907は、
それぞれ信号線L14、L15、L16、L17を介し
てメッセージ送出部103に伝えられる送信元アドレス
レジスタ117、送信先アドレスレジスタ118、送信
データ長レジスタ119、送信ストライド幅レジスタ1
20の内容である。
ージヘッダ1001には、メッセージ種類902、送信
先PU番号1003、送信先アドレス905、送信デー
タ長906、送信ストライド幅907などの情報が含ま
れている。メッセージ種類902は、前述のとおり要求
メッセージ/データメッセージの別を示す情報であり、
この場合データメッセージを示す。送信先PU番号10
03は、信号線L15を介してメッセージ送出部103
に伝えられる送信先アドレスレジスタ118のPU番号
フィールドの内容であり、すなわち、転送するデータを
書き込むべき主記憶装置を有する要素プロセッサの番号
である。送信先PU番号1003は、このデータメッセ
ージ自身の送信先要素プロセッサの番号でもある。送信
先アドレス905、送信データ長906、送信ストライ
ド幅907は、それぞれ信号線L15、L16、L17
を介してメッセージ送出部103に伝えられる送信先ア
ドレスレジスタ118、送信データ長レジスタ119、
送信ストライド幅レジスタ120の内容である。
介して伝えられる比較器104での比較結果にしたがっ
て、信号線L14、L15、L16、L17を介して伝
えられる情報をもとに、上述のような要求メッセージ用
およびデータメッセージ用のメッセージヘッダの作り分
けを行い、そのメッセージヘッダを信号線L4を介して
ネットワークへ送出することで、要求メッセージおよび
データメッセージの種別分けを行う。さらに、その送信
がデータメッセージ送信であった場合には、メッセージ
ヘッダの送信に続いて転送データの送出を行う。データ
メッセージパケットを図15に示す。転送データの送出
は、メッセージ送出部103が信号線L6を介して主記
憶読出し部125に主記憶読出し要求を伝えて実現す
る。主記憶読出し部125は、バスインタフェース部1
01を介して主記憶読出しを行い、読み出したデータを
信号線L36を介して順次メッセージ送出部103に転
送する。なお、メッセージ送出部103に転送する場合
には、信号線L7を用いて有効信号も転送する。なお、
有効信号とは、そのマシンサイクルにおいて、信号線L
上に有効な読みだしデータがのっていることを示す信号
である。メッセージ送出部103では、読出しデータを
信号線L4を介して逐次ネットワークに送出する。送出
したデータ数はメッセージ送出部103でカウントさ
れ、そのカウント値が信号線L16を介して伝えられる
送信データ長と等しくなれば転送データの送出を完了
し、これをもってメッセージ送出を完了する。一方、送
出したメッセージヘッダが要求メッセージ用であった場
合には、メッセージヘッダの送出を完了し次第、メッセ
ージ送出を完了する。
うな動作を開始するためには、信号線L3を介してメッ
セージ送出開始信号が伝えられる必要がある。信号線L
3は、信号線L1と信号線L2のOR信号である。信号
線L1は、前述したとおり命令プロセッサ202がメッ
セージ送出開始を要求した結果真値が伝えられる信号線
であり、信号線L2は、メッセージ受信部内のヘッダ解
析部107がメッセージ送出開始を要求して真値を伝え
る信号線である。また、メッセージ送出部103は、メ
ッセージ送出を完了すると、その状態を信号線L41を
介して要求調停部122に伝える。命令プロセッサ20
2およびヘッダ解析部107がメッセージ送出開始を要
求するためには、それぞれがまず要求調停部122に対
して、メッセージ送出要求を伝える必要がある。命令プ
ロセッサ202の要求は前述したとおり信号線L13で
伝えられ、ヘッダ解析部107の要求は信号線L11で
伝えられる。要求調停部122は、これらの要求を受け
て何等かの形で優先度制御を行った後、メッセージ送出
が完了している状態のときに、要求を認める側を示す信
号を信号線L12にのせる。信号線L12の内容を見た
命令プロセッサ202およびヘッダ解析部107は、そ
の内容が自身を示していれば、前述のメッセージ送出開
始を要求する。
データメッセージ送信の2種類のメッセージ送信を行う
ため、メッセージ受信部のメッセージ受取部106に
は、2種類のメッセージが到着しうる。概略的に述べる
と、メッセージ受信部は、要求メッセージが到着した場
合には、同じネットワークインタフェース208内のメ
ッセージ送信部に依頼して、要求されたデータ転送を開
始する。また、データメッセージが到着した場合には、
主記憶書き込み部128に依頼して主記憶装置への転送
データの書き込みを行う。メッセージが到着すると、メ
ッセージ受取部106は、そのメッセージが伝える最初
の情報であるメッセージヘッダ内のメッセージ種類90
2によってメッセージの種類を判別する。メッセージ種
類が要求メッセージであった場合には、メッセージヘッ
ダ901内のメッセージ種類902、送信元アドレス9
04、送信先アドレス905、送信データ長906、送
信ストライド幅907の各情報を信号線L9を介してヘ
ッダ解析部107内のヘッダレジスタ108に格納して
メッセージ受信を完了する。一方、メッセージ種類がデ
ータメッセージであった場合には、メッセージヘッダ1
001内のメッセージ種類902、送信先アドレス90
5、送信データ長906、送信ストライド幅907の各
情報を信号線L9を介してヘッダ解析部107内のヘッ
ダレジスタ108に格納し、さらに後続する転送データ
を信号線L10を介して主記憶書き込み部128に伝え
る。
た場合、ヘッダ解析部107は、ヘッダレジスタ108
内の送信先アドレスおよび送信ストライド幅をそれぞれ
信号線L31およびL32を介してアドレス加算部11
2に伝え、送信データ長を、信号線L35を介して主記
憶書き込み部128内のカウンタ129に初期値として
伝える。さらに、信号線L33を介して主記憶書き込み
部128に対して主記憶書き込みを要求する。要求を受
けた主記憶書き込み部128は、アドレス加算部112
が信号線L34を介して与えるアドレスと、メッセージ
受取部106から信号線L10を介して伝えられ、主記
憶書き込み部128内のレジスタ130にセットされる
データを持って主記憶アクセスを行い、これをカウンタ
129に初期値として与えられた回数だけ繰り返す。メ
ッセージ受取部106が送信データ長分の転送データを
全て受取り、主記憶書き込み部128内のレジスタ13
0に最後のデータを書き込んだ時点で、メッセージ受取
部106はメッセージ受信を完了し、メッセージ受取部
106およびヘッダ解析部107は、受信したデータメ
ッセージに対する処理を完了する。
あった場合、ヘッダ解析部107は、前述のとおり、要
求調停部122に対して信号線L11を用いてメッセー
ジ送出要求を伝え、然るべき後に要求調停部122から
信号線L12を介して要求を認める信号を受け取る。ヘ
ッダ解析部107は、メッセージ送出要求が認められる
と、送信元アドレスレジスタ117、送信先アドレスレ
ジスタ118、送信データ長レジスタ119および送信
ストライド幅レジスタ120を順次選択し、各々のレジ
スタを指定するレジスタ選択信号を信号線L22を介し
てセレクタ123に順次伝え、その都度各々のレジスタ
に書き込むべき値を、ヘッダレジスタ108の該当する
領域から選択し、その値を順次信号線L24でセレクタ
124に伝える。送信元アドレスレジスタ117、送信
先アドレスレジスタ118、送信データ長レジスタ11
9および送信ストライド幅レジスタ120の全てのレジ
スタへの値の設定が終了すると、ヘッダ解析部107
は、メッセージ送出部103に対して信号線L2を介し
てメッセージ送出開始信号を伝達し、メッセージ送出を
開始させる。ヘッダ解析部107は、メッセージ送出開
始信号をメッセージ送出部103に伝達した時点で、受
信した要求メッセージに対する処理を完了する。
ッセージ送信部に対する処理依頼は、受信した要求メッ
セージに対するヘッダ解析部107の処理手順で説明し
たとおりの以下の手順で行われる。 (1)要求調停部122へのメッセージ送出要求伝達。 (2)要求調停部122からのメッセージ送出承認。 (3)送信元アドレスレジスタ117、送信先アドレス
レジスタ118、送信データ長レジスタ119および送
信ストライド幅レジスタ120へのメッセージ送信に係
わるパラメータ値の設定。 (4)メッセージ送出部103へのメッセージ送出開始
信号の伝達。 メッセージ送信部に対して処理を依頼する主体は、命令
プロセッサ202およびヘッダ解析部107である。ヘ
ッダ解析部107の処理依頼に係わる全動作については
既に述べたとおりであり、命令プロセッサ202の処理
依頼に係わる動作についても、(1)、(2)、(4)
については既述した。命令プロセッサ202の(3)に
係わる動作は、基本的にヘッダ解析部107の動作と同
様であり、レジスタを指定するレジスタ選択信号を、
(既に説明を加えたアクセスパスを介して最終的に)信
号線L21を介してセレクタ123に順次伝え、その都
度各々のレジスタに書き込むべき値を、順次信号線L2
3でセレクタ124に伝える。なお、命令プロセッサ2
02からの処理依頼に対しては、結果として要求メッセ
ージ送出とデータメッセージ送出の2種類が発行されう
るが、ヘッダ解析部107からの処理依頼に対しては、
結果としてデータメッセージ送出しか発行されえない。
ドレスレジスタ118、送信データ長レジスタ119お
よび送信ストライド幅レジスタ120への値の書き込み
は、書き込み制御部121とセレクタ123およびセレ
クタ124を用いて実現する。セレクタ123とセレク
タ124は組となって機能し、セレクタ123が送信元
アドレスレジスタ117、送信先アドレスレジスタ11
8、送信データ長レジスタ119および送信ストライド
幅レジスタ120のいずれかを指定するレジスタ指定信
号を信号線L19を介して書き込み制御部121に伝達
し、セレクタ124が信号線L19で指定されるレジス
タに書き込むべき値を信号線L20を介して書き込み制
御部121に伝達する。信号線L19の値は、信号線L
21および信号線L22のうちのいずれかであり、信号
線L20の値は、信号線L23および信号線L24のう
ちのいずれかである。どちらを選択するかは、信号線L
12の値によって、すなわち、要求調停部122が命令
プロセッサ202あるいはヘッダ解析部107のどちら
に対してメッセージ送出承認を行っているかで定まる。
要求調停部122が命令プロセッサ202に対してメッ
セージ送出承認を行っている場合には、信号線L21の
値と信号線L23の値がそれぞれ信号線L19の値と信
号線L20の値になる。要求調停部122がヘッダ解析
部107に対してメッセージ送出承認を行っている場合
には、信号線L22の値と信号線L24の値がそれぞれ
信号線L19の値と信号線L20の値になる。書き込み
制御部121は、信号線L19を介して伝わるレジスタ
指定信号に基づいて送信元アドレスレジスタ117、送
信先アドレスレジスタ118、送信データ長レジスタ1
19および送信ストライド幅レジスタ120のいずれか
を選択し、その選択に対応して各々のレジスタに対応し
て設けられている書き込みパスL18a、L18b、L
18cおよびL18dのいずれかを有効にし、その有効
になった書き込みパス上に信号線L20を介して伝わる
書き込み値をのせる。結果として、信号線L19の値が
指定するレジスタに信号線L20の値が書き込まれる。
部の動作をさらに詳細に説明する。主記憶読出し部12
5は、データメッセージ送出時にメッセージ送出部10
3から信号線L6を介して伝わる起動信号(主記憶読出
し要求)によって起動される。主記憶読出し部125は
内部にカウンタ126およびデータ用レジスタ127を
有する。カウンタ126には、主記憶読出し部125の
起動時に信号線L26を介して伝えられるその時点での
送信データ長レジスタ119に格納されている値が初期
値として設定される。以降、主記憶読出し部125が主
記憶読出し要求を発行する度にカウンタ126の値は1
づつ減じられる。主記憶読出し部125は、起動されて
から以降、カウンタ126の値が0となるまで主記憶読
出し要求の発行を繰り返す。カウンタ126の値が0と
なると、そのデータメッセージ送出に係わる主記憶読出
し要求の発行は完了する。主記憶読出し要求の発行時、
主記憶読出し部125は、主記憶アクセスコマンド線で
あるL37に読出しコマンドを伝え、同時に主記憶読出
しアドレス線L28で読出しアドレスを伝える。なお、
主記憶読出しアドレス線L28はアドレス加算部116
から伝えられる信号である。
15、セレクタ114、アドレス用レジスタ113を有
する。加算器115は、アドレス用レジスタ113の値
に、((信号線L27を介して伝えられる送信ストライ
ド幅レジスタの値)×(送信単位データのバイトサイ
ズ))の値を加えてその結果を信号線L29に出力す
る。セレクタ114は、信号線L29の値と信号線L1
4を介して伝わる送信元アドレスレジスタ117の値の
うちどちらかを選択し、その値をアドレス用レジスタ1
13にセットする。ただし、セレクタ114が信号線L
14の値を選択するのは、信号線L6によって主記憶読
出し起動信号が伝わる時だけである。それ以外の場合
は、信号線L29の値を選択する。これによって、アド
レス用レジスタ113の値を信号線L28を介して主記
憶読出しアドレスとして供給するアドレス加算部116
は、主記憶読出し起動時にその回のデータメッセージ送
出に係わる転送元データ領域の先頭アドレスを供給し、
以降、その値にストライドを反映させた値を供給するこ
とができる。主記憶読出しデータ線L38を介して伝わ
る主記憶装置からの読出しデータは、逐次データ用レジ
スタ127で受け、信号線L36を介してメッセージ送
出部103に伝えられる。
メッセージ受信時にヘッダ解析部107から信号線L3
3を介して伝わる起動信号(主記憶書き込み要求)によ
って起動される。主記憶書き込み部128は内部にカウ
ンタ129およびデータ用レジスタ130を有する。カ
ウンタ129には、主記憶書き込み部128の起動時に
信号線L35を介してヘッダ解析部107内のヘッダレ
ジスタ108の該当領域から伝えられる送信データ長値
が初期値として設定される。以降、主記憶書き込み部1
28が主記憶書き込み要求を発行する度にカウンタ12
9の値は1づつ減じられる。主記憶書き込み部128
は、起動されてから以降、カウンタ129の値が0とな
るまで主記憶書き込み要求の発行を繰り返す。カウンタ
129の値が0となると、そのデータメッセージ受信に
係わる主記憶書き込みは完了する。主記憶書き込み要求
の発行時、主記憶書き込み部128は、主記憶アクセス
コマンド線であるL39に書き込みコマンドを伝え、同
時に主記憶読出しアドレス線L34で書き込みアドレス
を伝え、主記憶書き込みデータ線L40を介して、メッ
セージ受取部106から信号線L10を介してセットさ
れているデータ用レジスタ130の値を伝える。なお、
主記憶読出しアドレス線L34はアドレス加算部112
から伝えられる信号である。
116と同様に、内部に加算器111、セレクタ11
0、アドレス用レジスタ109を有する。加算器は、ア
ドレス用レジスタ109の値に、((信号線L32を介
してヘッダ解析部107内のヘッダレジスタ108の該
当領域から伝えられる送信ストライド幅値)×(送信単
位データのバイトサイズ))の値を加えてその結果を信
号線L30に出力する。セレクタ110は、信号線L3
0の値と信号線L31を介してヘッダ解析部107内の
ヘッダレジスタ108の該当領域から伝わる送信先(書
き込み先)アドレス値のうちどちらかを選択し、その値
をアドレス用レジスタ109にセットする。ただし、セ
レクタ110が信号線L31の値を選択するのは、信号
線L33によって主記憶書き込み起動信号が伝わる時だ
けである。それ以外の場合は、信号線L30の値を選択
する。これによって、アドレス用レジスタ109の値を
信号線L34を介して主記憶書き込みアドレスとして供
給するアドレス加算部112は、主記憶書き込み起動時
にその回のデータメッセージ受信に係わる転送先(書き
込み先)データ領域の先頭アドレスを供給し、以降、そ
の値にストライドを反映させた値を供給することができ
る。
ワークインタフェース208の構成および各部動作の説
明を終了する。次に、本発明に係わるデータ転送方法に
基づくデータ転送の処理の流れを説明する。データ転送
要求は、命令プロセッサ202から発行される。命令プ
ロセッサ202は、ネットワークインタフェース208
内の要求調停部122に対してデータ転送要求を発行
し、要求調停部122からの許可を待つ。この時要求調
停部122には、同じネットワークインタフェース20
8内のメッセージ受信部側(具体的には、ヘッダ解析部
107)からもデータメッセージ送出要求が届いている
場合があり、その場合には優先度制御の結果メッセージ
受信部側に許可がおりる場合もある。命令プロセッサ2
02は、要求調停部122からの許可を得ると、データ
転送のためのパラメータである“src−adr”すな
わち転送する一連のデータ群の先頭グローバルアドレ
ス、“dst−adr”すなわち転送データ群の書き込
み先の先頭グローバルアドレス、“length”すな
わち転送データ量、“stride”すなわち転送対象
データのメモリ領域における存在間隔をそれぞれ順番に
送信元アドレスレジスタ117、送信先アドレスレジス
タ118、送信データ長レジスタ119および送信スト
ライド幅レジスタ120にセットする。このパラメータ
の設定が終了すると、メッセージ送出部103へのデー
タ転送開始信号を伝達する。これでデータ転送が開始さ
れ、データ転送に係わる命令プロセッサ202の役割は
終了する。
タ転送に関して、送信元アドレスレジスタ117にセッ
トされているパラメータ“src−adr”すなわち転
送する一連のデータ群の先頭グローバルアドレスのPU
番号フィールド値が自プロセッサ番号である場合、メッ
セージ送出部103の制御の下、主記憶読出し部125
が自らの主記憶装置207からデータを読み出して、デ
ータメッセージの送出が始まる。すなわち、実際にデー
タの転送が始まる。このデータメッセージは、送信先ア
ドレスレジスタ118にセットされているパラメータ
“dst−adr”すなわち転送データ群の書き込み先
先頭グローバルアドレスのPU番号フィールド値が示す
要素プロセッサ201に対して送出される。データメッ
セージの送信先となった要素プロセッサ201は、ネッ
トワークインタフェース208内のメッセージ受取部1
06でメッセージを受け、データメッセージであること
を認識すると、メッセージ受取部106およびヘッダ解
析部107の制御の下、主記憶書き込み部128が受信
したデータを自らの主記憶装置207に書き込んでい
く。全データの書き込みが終了した時点でこのデータ転
送が完了する。
たデータ転送に関して、送信元アドレスレジスタ117
にセットされているパラメータ“src−adr”すな
わち転送する一連のデータ群の先頭グローバルアドレス
のPU番号フィールド値が自プロセッサ番号でない場
合、そのPU番号フィールド値が示す要素プロセッサ2
01に対してメッセージ送出部103が要求メッセージ
を送信する。要求メッセージの送信先となった要素プロ
セッサ201は、ネットワークインタフェース208内
のメッセージ受取部106でメッセージを受け、要求メ
ッセージであることを認識すると、ヘッダ解析部107
からデータメッセージ送信要求が発行される。ヘッダ解
析部107は、ネットワークインタフェース208内の
要求調停部122に対してデータメッセージ送信要求を
発行し、要求調停部122からの許可を待つ。この時要
求調停部122には、同じ要素プロセッサ201内の命
令プロセッサ202からもデータ転送要求が届いている
場合があり、その場合には優先度制御の結果命令プロセ
ッサ202に許可がおりる場合もある。
からの許可を得ると、ヘッダレジスタ108に格納され
ている送信元アドレス904、送信先アドレス905、
送信データ長906、送信ストライド幅907の各情報
をそれぞれ順番に送信元アドレスレジスタ117、送信
先アドレスレジスタ118、送信データ長レジスタ11
9および送信ストライド幅レジスタ120にセットす
る。この設定が終了すると、メッセージ送出部103へ
のデータメッセージ送出開始信号を伝達する。この時、
送信元アドレスレジスタ117にセットされているグロ
ーバルアドレスのPU番号フィールド値は常に自プロセ
ッサ番号である。したがって、これでデータメッセージ
送信が開始される。以降、メッセージ送出部103の制
御の下、主記憶読出し部125が自らの主記憶装置20
7からデータを読み出して、データメッセージを送出す
る。このデータメッセージは、送信先アドレスレジスタ
118にセットされているグローバルアドレスのPU番
号フィールド値が示す要素プロセッサ201に対して送
出される。このデータメッセージの送信先となった要素
プロセッサ201は、ネットワークインタフェース20
8内のメッセージ受取部106でメッセージを受け、デ
ータメッセージであることを認識すると、メッセージ受
取部106およびヘッダ解析部107の制御の下、主記
憶書き込み部128が受信したデータを自らの主記憶装
置207に書き込んでいく。全データの書き込みが終了
した時点でこのデータ転送が完了する。以上が本発明に
係わる実施例である。なお、本実施例の変形例として次
のものが考えられる。
タフェースを図4に示すようなインタフェースに変形す
る。図4の“src−adr”および“dst−ad
r”は、グローバルアドレスではなく、それぞれ、送信
元の要素プロセッサ201が所有する主記憶装置のアド
レスおよび送信先の要素プロセッサ201が所有する主
記憶装置のアドレスである。図4に示すインタフェース
では、“src−adr”および“dst−adr”を
グローバルアドレスとしない代わりに、データ転送の送
信元および送信先をそれぞれ明示するための新たなパラ
メータ“src−PU#”および“dst−PU#”を
定義する。残りの“length”、“stride”
については図3のそれと同じである。図4に示すインタ
フェースとした場合、図3に示すインタフェースのデー
タ転送に係わる要素プロセッサを意識しないでよいとい
う特徴は失われるが、任意の要素プロセッサ間(主記憶
装置間)のデータ転送を任意の要素プロセッサが起動で
きるという特徴はそのまま保有している。
の実施例からの機構上の主な変更点は以下の2点であ
る。 (1)図7のような構成であった送信元アドレスレジス
タ117および送信先アドレスレジスタ118を図8の
ような構成とし、このPU番号レジスタ801とPU内
アドレスレジスタ802を連結して用いる。連結して用
いれば、PU番号レジスタ801をPU番号フィールド
702として、さらに、PU内アドレスレジスタ802
をPU内アドレスフィールド703としてレジスタ70
1を擬似的に実現できる。 (2)図9、図10に示したメッセージヘッダをそれぞ
れ図11、図12に示すように変更する。細かく記述す
ると、図9の送信元アドレス904は、図11の送信元
PU内アドレス1104に代わり、図9の送信先アドレ
ス905は、図11の送信先PU番号1105と送信先
PU内アドレス1106に代わる。また、図10の送信
先アドレス905は、図12の送信先PU内アドレス1
205に代わる。
インタフェース203とネットワークインタフェース2
08を接続するのをやめ、メモリアクセスインタフェー
ス203とネットワークインタフェース208を直結と
する。この時、バスインタフェース部101に代わり新
たなインタフェース処理部がネットワークインタフェー
ス208内に必要となる。
機において、分散共有メモリ方式で実現される“データ
転送起動者がデータまたはデータ群の帰属先プロセッサ
を特別意識する必要がない”というプログラム記述容易
性の高さを継承した上で、分散共有メモリ方式上で実現
されるデータ転送方式によっては従来実現できなかった
数百、数千ワード以上のデータ群の一括転送が可能にな
った。さらに、本発明によれば、任意要素プロセッサ間
(任意主記憶装置間)のデータ転送が可能となり、ま
た、データ転送起動者を、データ転送元あるいはデータ
転送先のいずれとも規定しない。すなわち、要素プロセ
ッサBから要素プロセッサCへのデータ転送を要素プロ
セッサBでも要素プロセッサCでもない要素プロセッサ
Aが指示できるようになった。これは、一方向のみのイ
ンタフェースであった従来のメッセージ・パッシング・
インタフェースや、せいぜい2方向であった従来の分散
共有メモリ方式上で実現されるデータ転送インタフェー
スを凌駕する多方向のインタフェースであり、この特徴
によりプログラム記述容易性が一層向上する。
メモリ型並列計算機の根幹であるネットワークインタフ
ェースの構成図である。
セッサの構成例を示す図である。
す図である。
示す図である。
スを示す図である。
する図である。
ためのレジスタを示す図である。
アドレスを表現するための値の組を格納するレジスタ群
を示す図である。
である。
す図である。
す図である。
示す図である。
マットを例示する図である。
を説明するための図である。
る。
Claims (13)
- 【請求項1】 それぞれが主記憶装置を具備する複数の
要素プロセッサと、該複数の要素プロセッサを接続する
ネットワークを有し、該複数の要素プロセッサが具備す
る主記憶装置を参照可能なグローバルアドレスを定義
し、任意の要素プロセッサから、転送データの転送元グ
ローバルアドレスおよび転送先グローバルアドレスを設
定することによって要素プロセッサ間のデータ転送を行
う分散メモリ型並列計算機におけるデータ転送方法であ
って、 上記各要素プロセッサは、上記転送元グローバルアドレ
スから上記並列計算機を構成する要素プロセッサの1つ
を指定するプロセッサ番号を示す成分を抽出して転送元
の要素プロセッサを指定するプロセッサ番号とし、該転
送元の要素プロセッサを指定するプロセッサ番号が自身
のプロセッサ番号に一致した場合には、上記転送先グロ
ーバルアドレスから上記並列計算機を構成する要素プロ
セッサの1つを指定するプロセッサ番号を示す成分を抽
出して転送先の要素プロセッサ番号とし、該転送先の要
素プロセッサを指定するプロセッサ番号が指定する該要
素プロセッサに向けて、該転送元グローバルアドレスを
用いて自身が具備する主記憶装置から読み出したデータ
を転送する通常データ転送を実施し、該転送元の要素プ
ロセッサを指定するプロセッサ番号が自身のプロセッサ
番号に一致しなかった場合には、データ転送に際して設
定された各種のパラメータ値を、該転送元の要素プロセ
ッサを指定するプロセッサ番号が指定する該要素プロセ
ッサに向けてデータ転送要求メッセージとして送信する
ことを特徴とする分散メモリ型並列計算機におけるデー
タ転送方法。 - 【請求項2】 請求項1記載のデータ転送方法におい
て、該通常データ転送と該データ転送要求メッセージ送
信に際して、各々に必要な情報に応じたメッセージヘッ
ダを作成し、該通常データ転送と該データ転送要求メッ
セージ送信に先だって該メッセージヘッダを送出するこ
とを特徴とするデータ転送方法。 - 【請求項3】 請求項1または2記載のデータ転送方法
において、該要素プロセッサ内のメッセージ受信部が、
該通常データ転送を受信した場合には、該転送データの
転送先グローバルアドレスを用いて該転送データを自身
の主記憶装置に書き込み、該データ転送要求メッセージ
を受信した場合には、該データ転送要求メッセージの内
容に応じたデータ転送要求を自身に対して発行すること
を特徴とするデータ転送方法。 - 【請求項4】 請求項3記載のデータ転送方法におい
て、データ転送を要求する可能性のある候補としての該
要素プロセッサ内の命令プロセッサと該メッセージ受信
部の各々の要求を調停し、調停した順序でデータ転送を
実現することを特徴とするデータ転送方法。 - 【請求項5】 それぞれが主記憶装置を具備する複数の
要素プロセッサと、該複数の要素プロセッサを接続する
ネットワークを有し、任意の要素プロセッサから、要素
プロセッサの1つを指定するプロセッサ番号と該プロセ
ッサ番号が指定する要素プロセッサが具備する主記憶装
置のアドレスの組値で転送データの転送元および転送先
を設定することによって要素プロセッサ間のデータ転送
を行う分散メモリ型並列計算機におけるデータ転送方法
であって、 上記各要素プロセッサは、転送元として指定された前記
組値のうちのプロセッサ番号が自身のプロセッサ番号に
一致した場合には、転送先として指定された組値のうち
のプロセッサ番号が指定する該要素プロセッサに向け
て、転送データの転送元として設定された組値のうちの
主記憶装置のアドレスを用いて自身が所持する主記憶装
置から読み出したデータを転送する通常データ転送を実
施し、該転送データの転送元として設定された組値のう
ちのプロセッサ番号が自身のプロセッサ番号に一致しな
かった場合には、データ転送に際して設定された各種の
パラメータ値を、該転送データの転送元として設定され
た組値のうちのプロセッサ番号が指定する該要素プロセ
ッサに向けてデータ転送要求メッセージとして送信する
ことを特徴とするデータ転送方法。 - 【請求項6】 請求項5記載のデータ転送方法におい
て、該通常データ転送と該データ転送要求メッセージ送
信に際して、各々に必要な情報に応じたメッセージヘッ
ダを作成し、該通常データ転送と該データ転送要求メッ
セージ送信に先だって該メッセージヘッダを送出するこ
とを特徴とするデータ転送方法。 - 【請求項7】 請求項5または6記載のデータ転送方法
において、該要素プロセッサ内のメッセージ受信部が、
該通常データ転送を受信した場合には、該転送データの
転送先として設定された組値のうちの主記憶装置のアド
レスを用いて該転送データを自身の主記憶装置に書き込
み、該データ転送要求メッセージを受信した場合には、
該データ転送要求メッセージの内容に応じたデータ転送
要求を自身に対して発行することを特徴とするデータ転
送方法。 - 【請求項8】 請求項7記載のデータ転送方法におい
て、データ転送を要求する可能性のある候補としての該
要素プロセッサ内の命令プロセッサと該メッセージ受信
部の各々の要求を調停し、調停した順序でデータ転送を
実現することを特徴とするデータ転送方法。 - 【請求項9】 それぞれが主記憶装置を具備する複数の
要素プロセッサと、該複数の要素プロセッサを接続する
ネットワークを有し、該複数の要素プロセッサが具備す
る主記憶装置に対して定義されたグローバルアドレスに
よって、任意の要素プロセッサから、転送データの転送
元グローバルアドレスおよび転送先グローバルアドレス
を設定することによって要素プロセッサ間のデータ転送
を行う分散メモリ型並列計算機であって、 上記各要素プロセッサは、 該分散メモリ型並列計算機を構成する複数の要素プロセ
ッサが具備する主記憶装置に対して定義されたグローバ
ルアドレスによって転送データの転送元アドレスおよび
転送先のアドレスを指定する手段と、 該指定された転送元のグローバルアドレスから上記並列
計算機を構成する要素プロセッサの1つを指定するプロ
セッサ番号を示す成分を抽出して転送元の要素プロセッ
サを指定するプロセッサ番号を識別する転送元要素プロ
セッサ識別手段と、 該指定された転送先のグローバルアドレスから上記並列
計算機を構成する要素プロセッサの1つを指定するプロ
セッサ番号を示す成分を抽出して転送先の要素プロセッ
サを指定するプロセッサ番号を識別する転送先要素プロ
セッサ識別手段と、 該転送元要素プロセッサ識別手段が抽出したプロセッサ
番号と自身のプロセッサ番号を比較する比較手段と、 該比較手段による比較の結果、該転送元要素プロセッサ
識別手段が抽出したプロセッサ番号と自身のプロセッサ
番号が一致した場合には、該転送先要素プロセッサ識別
手段が抽出したプロセッサ番号が指定する要素プロセッ
サに向けて該転送元グローバルアドレスを用いて自身が
具備する主記憶装置から読み出したデータを転送する通
常データ転送を実行し、該転送元要素プロセッサ識別手
段が抽出したプロセッサ番号と自身のプロセッサ番号が
一致しなかった場合には、該転送元要素プロセッサ識別
手段が抽出したプロセッサ番号が指定する該要素プロセ
ッサに向けてデータ転送に際して設定された各種パラメ
ータ値をデータ転送要求メッセージとして送信するデー
タ転送要求メッセージ送信を行うデータ転送手段とを有
することを特徴とする分散メモリ型並列計算機。 - 【請求項10】 それぞれが主記憶装置を具備する複数
の要素プロセッサと、該複数の要素プロセッサを接続す
るネットワークを有し、任意の要素プロセッサから、要
素プロセッサの1つを指定するプロセッサ番号と該プロ
セッサ番号が指定する要素プロセッサが具備する主記憶
装置のアドレスの組値で転送データの転送元および転送
先を設定することによって要素プロセッサ間のデータ転
送を行う分散メモリ型並列計算機であって、 上記各要素プロセッサは、 該分散メモリ型並列計算機を構成する要素プロセッサの
1つを指定するプロセッサ番号と該プロセッサ番号が指
定する要素プロセッサが具備する主記憶装置のアドレス
の組値で転送データの転送元および転送先を指定する手
段と、 転送元として指定された前記組値のうちのプロセッサ番
号と自身のプロセッサ番号を比較する手段と、 該比較手段による比較の結果、転送元として指定された
前記組値のうちのプロセッサ番号と自身のプロセッサ番
号が一致した場合には、転送先として指定された組値の
うちのプロセッサ番号が指定する該要素プロセッサに向
けて、転送データの転送元として設定された組値のうち
の主記憶装置のアドレスを用いて自身が所持する主記憶
装置から読み出したデータを転送する通常データ転送を
実施し、該転送データの転送元として設定された組値の
うちのプロセッサ番号が自身のプロセッサ番号に一致し
なかった場合には、データ転送に際して設定された各種
のパラメータ値を、該転送データの転送元として設定さ
れた組値のうちのプロセッサ番号が指定する該要素プロ
セッサに向けてデータ転送要求メッセージとして送信を
行うデータ転送手段とを有することを特徴とする分散メ
モリ型並列計算機。 - 【請求項11】 複数の要素プロセッサと、該複数の要
素プロセッサを接続するネットワークとを有し、各要素
プロセッサは、それぞれ、それらの要素プロセッサによ
り共有される主記憶装置の異なる部分を構成する主記憶
用メモリを有する分散メモリ型並列計算機において、 該主記憶装置に対して定義されたグローバルアドレスで
もって記述された転送元アドレスと転送先アドレスを指
定するデータ転送要求をいずれかの第1の要素プロセッ
サにより発行し、 該第1の要素プロセッサから、その転送先アドレスが属
する主記憶用メモリを有する第2の要素プロセッサにそ
の転送要求を送信し、 その第2の要素プロセッサ内の主記憶用メモリ内の、該
送信された転送要求に含まれる該転送元アドレスを有す
る記憶位置から転送データを読み出し、 その転送要求に含まれる該転送先アドレスが属する主記
憶用メモリを有する第3の要素プロセッサにその読み出
されたデータを該転送先アドレスとともに転送し、 該第3の要素プロセッサの主記憶用メモリ内の、該転送
された転送先アドレスを有する記憶位置にその転送され
たデータを書き込むデータ転送方法。 - 【請求項12】 複数の要素プロセッサと、該複数の要
素プロセッサを接続するネットワークとを有し、 各要素プロセッサは、 それぞれそれらの要素プロセッサにより共有される主記
憶装置の複数の部分の一つとして使用する主記憶用メモ
リと、 該主記憶装置に対して定義されたグローバルアドレスで
もって記述された転送元アドレスと転送先アドレスを指
定するデータ転送要求を発行する回路と、 該転送要求に応答して、該各要素プロセッサから、その
転送先アドレスが属する主記憶用メモリを有するいずれ
かの要素プロセッサにその転送要求を送信する回路と、 いずれかのプロセッサから送信された転送要求に応答し
て、その送信された転送要求に含まれる該転送元アドレ
スを有する記憶位置から転送データを読み出す回路と、 その送信された転送要求に含まれる該転送先アドレスが
属する主記憶用メモリを有するいずれかの要素プロセッ
サにその読み出されたデータを該転送先アドレスととも
に送信する回路と、 いずれかの要素プロセッサから転送された転送先アドレ
スとデータとに応答して、該各要素プロセッサの該主記
憶用メモリ内の、該転送された転送先アドレスを有する
記憶位置にその転送されたデータを書き込む回路とを有
する分散メモリ型並列計算機。 - 【請求項13】 複数の要素プロセッサと、該複数の要
素プロセッサを接続するネットワークとを有し、各要素
プロセッサは、それぞれ、それらの要素プロセッサによ
り共用される主記憶装置の異なる部分を構成する主記憶
用メモリを有する分散メモリ型並列計算機のための要素
プロセッサであって、 それぞれそれらの要素プロセッサにより共用される主記
憶装置の複数の部分の一つとして使用する主記憶用メモ
リに対して定義されたグローバルアドレスでもって記述
された転送元アドレスと転送先アドレスを指定するデー
タ転送要求を発行する回路と、 該転送要求に応答して、該各要素プロセッサから、その
転送先アドレスが属する主記憶用メモリを有するいずれ
かの要素プロセッサにその転送要求を送信する回路と、 いずれかの要素プロセッサから送信された転送要求に応
答して、その送信された転送要求に含まれる該転送元ア
ドレスを有する記憶位置から転送データを読み出す回路
と、 その送信された転送要求に含まれる該転送先アドレスが
属する主記憶用メモリを有するいずれかの要素プロセッ
サにその読み出されたデータを該転送先アドレスととも
に送信する回路と、 いずれかの要素プロセッサから転送された転送先アドレ
スとデータとに応答して、該各要素プロセッサの該主記
憶用メモリ内の、該転送された転送先アドレスを有する
記憶位置にその転送されたデータを書き込む回路とを有
する要素プロセッサ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14939994A JP3641837B2 (ja) | 1994-06-30 | 1994-06-30 | 分散メモリ型並列計算機のデータ転送方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14939994A JP3641837B2 (ja) | 1994-06-30 | 1994-06-30 | 分散メモリ型並列計算機のデータ転送方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0816539A true JPH0816539A (ja) | 1996-01-19 |
| JP3641837B2 JP3641837B2 (ja) | 2005-04-27 |
Family
ID=15474288
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP14939994A Expired - Fee Related JP3641837B2 (ja) | 1994-06-30 | 1994-06-30 | 分散メモリ型並列計算機のデータ転送方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3641837B2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100367136C (zh) * | 2004-02-17 | 2008-02-06 | 联想(北京)有限公司 | 一种通用控制方法 |
| JP2017010319A (ja) * | 2015-06-23 | 2017-01-12 | 富士通株式会社 | 演算処理装置、情報処理装置、および情報処理装置の制御方法 |
-
1994
- 1994-06-30 JP JP14939994A patent/JP3641837B2/ja not_active Expired - Fee Related
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100367136C (zh) * | 2004-02-17 | 2008-02-06 | 联想(北京)有限公司 | 一种通用控制方法 |
| JP2017010319A (ja) * | 2015-06-23 | 2017-01-12 | 富士通株式会社 | 演算処理装置、情報処理装置、および情報処理装置の制御方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3641837B2 (ja) | 2005-04-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3601955B2 (ja) | データ転送方法およびそれに適した計算機システム | |
| US6125399A (en) | Computer system including a plurality of nodes for transferring through a data transfer network messages having distinguishing fields used for distinguishing the messages and controlling receipt thereof | |
| US6513091B1 (en) | Data routing using status-response signals | |
| US7290096B2 (en) | Full access to memory interfaces via remote request | |
| USRE41849E1 (en) | Parallel multi-threaded processing | |
| US5630059A (en) | Expedited message transfer in a multi-nodal data processing system | |
| JP3189727B2 (ja) | コプロセッサ内蔵パケット型メモリlsi、それを用いたメモリシステム及びそれらの制御方法 | |
| US5864738A (en) | Massively parallel processing system using two data paths: one connecting router circuit to the interconnect network and the other connecting router circuit to I/O controller | |
| JP3687990B2 (ja) | メモリアクセス機構 | |
| KR100895536B1 (ko) | 데이터 전송 방법, 시스템 및 컴퓨터 판독가능 매체 | |
| CN1641605A (zh) | 支持一致总线上改进突发传输的方法 | |
| JP2000112910A (ja) | 非一様メモリ・アクセス・コンピュ―タ・システム及びその操作方法 | |
| JP2010165022A (ja) | プロセッサ間通信装置、プロセッサ間通信方法、プログラムおよび記録媒体 | |
| US5204954A (en) | Remote storage management mechanism and method | |
| US6904465B2 (en) | Low latency inter-reference ordering in a multiple processor system employing a multiple-level inter-node switch | |
| JPH05274252A (ja) | コンピュータシステムにおけるトランザクション実行方法 | |
| WO2026040515A1 (zh) | 一种任务执行方法、装置、设备及存储介质 | |
| JPH01142964A (ja) | 記憶装置管理方法 | |
| WO2025138694A1 (zh) | 数据传输方法、设备及系统 | |
| CN100552623C (zh) | 用于在系统处理器和协处理器之间进行消息传送的系统和方法 | |
| US5860026A (en) | Information processing system for controlling operations of input/output devices of another clusters according to control instructions issued from a cluster | |
| JP3641837B2 (ja) | 分散メモリ型並列計算機のデータ転送方法 | |
| JPH08212178A (ja) | 並列計算機 | |
| JP2736237B2 (ja) | 遠隔メモリアクセス制御装置 | |
| JP2001236335A (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: 20040305 |
|
| 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: 20050104 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050117 |
|
| R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080204 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090204 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100204 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100204 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110204 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120204 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120204 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130204 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130204 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |