JPH0440551A - データ転送方式 - Google Patents

データ転送方式

Info

Publication number
JPH0440551A
JPH0440551A JP14744090A JP14744090A JPH0440551A JP H0440551 A JPH0440551 A JP H0440551A JP 14744090 A JP14744090 A JP 14744090A JP 14744090 A JP14744090 A JP 14744090A JP H0440551 A JPH0440551 A JP H0440551A
Authority
JP
Japan
Prior art keywords
processor
data
address information
address
memory
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.)
Pending
Application number
JP14744090A
Other languages
English (en)
Inventor
Toshiyuki Shimizu
俊幸 清水
Kenji Horie
堀江 健志
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP14744090A priority Critical patent/JPH0440551A/ja
Publication of JPH0440551A publication Critical patent/JPH0440551A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概  要] 分散メモリ型の並列計算機におけるデータ転送方式に関
し、 受信側プロセッサでの処理のオーバーヘッドを減少させ
、処理時間を軽減させることを目的とし、内部にメモリ
手段を有する複数のプロセッサから構成されるマルチプ
ロセッサシステムにおいて、送信側のプロセッサに、転
送データに、受信側のプロセッサで該転送データが格納
されるべきメモリアドレスを指定するためのアドレス情
報を付加するアドレス情報付加手段を有し、受信側のプ
ロセッサに、送信側のプロセッサから転送されてきた転
送データに付加されているアドレス情報を識〔産業上の
利用分野〕 本発明は、分散メモリ型の並列計算機におけるデータ転
送方式に関する。
〔従来の技術〕
近年、コンピュータシステムの高速化が要求されている
。高速化の1つの実現方式として分散メモリ型の並列計
算機がある。分散メモリ型計算機は、その特徴としてプ
ロセッサ台数を多くすることができる。しかし、プロセ
ッサ数が増加すると、プロセッサ相互の情報交換の頻度
が増し、逆に1回の情報交換のためのデータ(メツセー
ジ)の量は小さく(細かく)なる。このため、細かなメ
ツセージを効率良く、数多く転送できるデータ転送方式
が要求されている。
しかし、多数のプロセッサがメツセージを送出する場合
には、多くのメツセージの中から特定のプロセッサのメ
ツセージを見つけ出すことが困難である。また、転送経
路が動的に変化するような経路選択法を採用しているシ
ステムでは、同しプロセッサが送出したメツセージであ
っても順序が一定にならない、という問題が存在する。
従って、この問題を解決できる効率的なデータ転送方式
が望まれる。
今、第5図の如く、4つのプロセッサ51 (#A)〜
51 (#D)が、通信路52で接続された分散メツセ
ージ型の並列計算機を考える。プロセッサ51(#A)
、51 (#B)及び51 (#C)は、プロセッサ5
1(#D)に対し、データ(ao、al、a2)、(l
:+o、bl、b2)及び(cO,cl、c2)をそれ
ぞれ転送するとする。そして、プロセッサ51 (#D
)では、これら送られてきたデータを内部の特には図示
しないメモリ上に、第6図の如く、(ao、al、a2
.bO,bl、b2.co、cl、c2)という順序で
格納したいとする。
この場合、プロセッサ51 (#D)では、プロセッサ
51 (#A)、51 (#B)及び51 (#C)か
らどのような順序でデータが到着するかを知ることはで
きない。従って、例えば(ao、bO,cO,al、a
2.cl、c2.l)1゜b2)となるのか、(a2.
al、aO)となるのが等を一意に知ることができない
そこで従来は、第1のデータ転送方式として、第7図の
如(、受信したデータ(メツセージ)が、バッファアド
レスの設定された特定のバッファ領域に一度パソファリ
ングされ、その後必要になった時点で、そのデータがコ
ピーして使用されている。また、第2のデータ転送方式
として、第8図の如く、メツセージが受信される毎に、
バッファアドレスが設定されて、その設定された各バッ
ファ領域にメツセージがバッファリングされている。
そして、いずれの場合も、受信されたメツセージの順序
を保存するために、すなわち何番目のデータであるのか
を示すために、シーケンス番号等の識別情報が付与され
ている。
〔発明が解決しようとする課題〕
しかし、上述の第1の従来のデータ転送方式の場合、デ
ータの受信を終了した後に、受信側プロセッサのメモリ
上で、データの並べ換えの処理が必要となり、処理時間
がかかってしまうという問題点を有している。また、上
述の第2の従来のデータ転送方式の場合、1つのメツセ
ージが小ざい場合、メツセージ毎にバッファアドレスを
指定することに伴う処理のオーバーヘッドが大きくなり
、やはり処理時間がかかってしまうという問題点を有し
ている。
本発明は、受信側プロセッサでの処理のオーバーヘッド
を減少させ、処理時間を軽減させることを目的とする。
〔課題を解決するための手段〕 第1図は、本発明のブロック図である。本発明は、内部
にメモリ手段を有する複数のプロセッサから構成される
マルチプロセッサシステムを前提とする。
まず、送信側のプロセッサ101に、転送データ103
に、受信側のプロセッサ105で該転送データが格納さ
れるべきメモリアドレス109を指定するためのアドレ
ス情報104を付加するアドレス情報付加手段102を
有する。なお、転送データ103に上記アドレス情報1
04が付加されれば、その転送元は必ずしもプロセッサ
である必要はなく、I10装置等であってもよい。
次に、メモリ手段108を備えた受信側のプロセッサ1
05に、以下に示すアドレス情報識別手段106、デー
タ書込手段107を有する。
すなわち、アドレス情報識別手段106は、送信側のプ
ロセッサ101から転送されてきた転送データ103に
付加されているアドレス情報104を識別する。
また、データ書込手段107は、アドレス情報識別手段
106で識別されたアドレス情報104に基づいてメモ
リアドレス109を指定しながら、自プロセッサ105
内のメモリ手段108に転送データ103を書き込む。
上述の構成において、転送データ103に付加されるア
ドレス情報104は、送信側のプロセッサ101のプロ
セッサIDであり、データ書込手段107は、上述のア
ドレス情報104に基づいてメモリアドレス109を指
定しながら、メモリ手段108にプロセッサ毎の転送デ
ータ103を書き込むように構成することもできる。
また、アドレス情報104は、受信側のプロセッサ10
5で転送データ103が格納されるべきメモリアドレス
109のオフセットを指定するためのインデックスであ
ってもよい。
更にこの場合のインデックスは、送信側のプロセッサ1
01のプロセッサTDに転送データ103のデータサイ
ズを乗じたデータであるように構成してもよい。
ここで、転送データ103及びアドレス情報104は、
例えばパケットデータとして転送される。
〔作   用〕
本発明では、送信側のプロセッサ101等において、受
信側のプロセッサ105で転送データ103が格納され
るべきメモリアドレス109を指定するためのアドレス
情報104を付加したことが特徴であり、これにより、
受信側のプロセッサ105でメモリアドレスを設定する
ための処理のオーバーヘッドをなくすことができる。
ここで、アドレス情報104として、送信側のプロセッ
サ101のプロセッサIDを指定することにより、受信
側のプロセッサ105では、プロセッザ別に転送データ
103を重なり無くメモリ手段108に格納することが
できる。
一方、送信側のプロセッサ101が、受信側のプロセッ
サ105のメモリアドレス109を正確に知るのが困難
であるような場合には、送信側のプロセッサ101は、
アドレス情報104として、バッファリングを行う先頭
アドレスから数えてどの位置にデータを格納したいかと
いうインテ・ンクスを指定し、これに対して、受信側の
プロセッサ105では、例えばバッファリングを行うバ
ッファの先頭アドレスを保持しておき、これにインテッ
クスを加算することによりメモリアドレス109を算出
できる。これにより、自由度の高いアドレス指定を、処
理のオーバーヘッドを増加させることなく行える。
更に、プロセッサIDに転送データ103のデータサイ
ズを乗じたものをインデックスとすることにより、より
柔軟性に冨んだアドレス指定を、処理のオーバーヘッド
を増加させることなく行える。
〔実  施  例〕
以下、本発明の実施例につき詳細に説明する。
まず、本実施例は、分散メモリ型並列計算機を対象とし
ており、例えば前述した第5図と同様のシステム構成を
有する。
次に、第2図は、第5図のプロセッサ51についでの本
発明の実施例の構成図である。
通信路201 (第5図の通信路52に対応)から入力
したデータ(メツセージ)ば、■/○ボート208で受
信される。
I10ポート208は、後述するデータ転送パケットの
先頭を受信するとコントローラ210に接続されるva
lid線202を有効にし、同時に、I10ポー1−2
08に接続される1ndeX線211に受信したインデ
ックスデータ(後述する)を出力する。また、データ転
送パケットの最後を受信するとコントローラ210に接
続されるend線205を有効にする。
コントローラ210は、I10ポート208に接続され
るread線206を有効にすることにより、I10ボ
ート208で受信されたデータをデータバス203に読
み出す。また、メモリ209に接続されるwrite線
207を有効にすることにより、データバス203上の
データをメモリ209に書き込む。このとき、I10ポ
ート208は、アドレスバス204を介してメモリ20
9にアドレス指定を行う。
次に、第3図は、第2図の通信路201からI10ボー
ト208に人力するデータ転送パケ・ントの構成を示し
た図である。同図において、先頭のアドレス部301に
は、受信側プロセッサでデータが格納されるべきメモリ
 (バッファ)アドレスを指定するためのインデックス
データが格納される。このデータは、送信側プロセッサ
で書き込まれる。データ部302には、可変長のデータ
(メツセージ)が格納される。そして、最後のEND部
303には、パケットの終了を示すコードが格納されて
いる。このように本実施例では、送信側プロセッサにお
いて受信側プロセッサでデータが格納されるべきメモリ
(バッファ)アドレスを指定するためのデータを付加し
たことが特徴であり、これにより、受信側プロセッサで
バッファアドレスを設定するための処理のオーバーヘッ
ドをなくすことができる。
この場合、実際には、送信側プロセッサが、受信(1]
、lJプロセッサのバッファアドレスを正確に知るのが
困難な場合がある。仮想アドレスマシンであったり、ダ
イナミックなバッファ獲得方式を採用していたりした場
合等がこれにあたる。このため本実施例では、送信側プ
ロセッサがアドレスのオフセントを指定している。すな
わち、送信側プロセッサは、バッファの先頭から数えて
どの位置にデータを格納したいかというオフセットを指
定する。これに対して、受信側プロセッサでは、第2図
のコントローラ210内の特には図示しないレジスタに
へソファの先頭アドレス(ベースアドレス)を保持して
おき、後述する如く、このベースアドレスにオフセット
を加算することによりメモリアドレスを算出する。この
場合、オフセットとして、プロセッサJDにメツセージ
サイズ(第3図のデータ部302の大きさ)を乗じたも
のを指定することにより、第2図の受信側プロセッサの
メモリ209には、プロセッサID順にデータを重なり
無く受信することができる。このようなオフセットが、
第3図のアドレス部301にインデックスデータとして
設定される。
以上の構成の本実施例の動作について、第4図の動作タ
イミングチャートを用いて説明する。全体の動作は、第
4図(a)のタイミングで示されるクロックに同期する
まず、Llにおいて、第4図(d)又は(f)の如く、
前回の最終データの転送が終了して、コントローラ21
0はインデックス待ちになる。
次に、t2において、I10ボート208でデータ転送
パケットの先頭が受信され、第4図(b)の如く、va
lid線202線光02なる。これにより、コントロー
ラ210は、I10ポート208において先頭データ及
びインデックスデータが有効に受信されたことを判別す
る。これと共に、コントローラ210は、I10ポート
208から1ndeX線211に、第4図(C)の如く
出力されたインデックスデータを取り込み、予め内部の
特には図示しないレジスタに設定されているベースアド
レスからメモリアドレスaddr(start)を算出
する。続いてコントローラ210は、read線20線
表06ite線207を有効にし、アドレスバス204
に上述のメモリアドレスaddr(start)を出力
し、I10ボート208からデータハ゛ス203に読み
出されるデータ(data)を、メモリ209に書き込
む。
t3においては、第4図(b)の如く、valid線2
02が有効になっていないため、t4では何も起こらな
い。そして、t4、t、でvalid線202線光02
なることによりt5、L6でのメモリ転送が起こる。
これらの場合、コントローラ210は、アドレスバス2
04に出力するメモリアドレスを、第4図(e)の如く
、順次インクリメントする。
そして、L7でvalid線202線光02なることに
よりL8でのメモリ転送が起こる。このとき、第4図(
d)の如<、end線205が有効になるため、最終の
データの転送であることがわかる。
以上の各動作タイミングでは、valid線202線光
02て有効になっている。他の信号も先行させることに
よって、より効率的なデータ転送を実現することができ
る。
なお、コントローラ210の処理に余裕がある場合には
、第3図のデータ転送パケットのアドレス部301には
、プロセッサIDのみ格納し、受信側プロセッサのコン
トローラ210において、第3図のデータ部302のメ
ツセージサイズを抽出しプロセンサIDに乗算してイン
デシクスデー夕を算出し、ベースアドレスに加算するこ
とにより、メモリアドレスaddrを算出するようにし
てもよい。すなわち、ベースアドレスbase、メツセ
ージサイズ5ize及びインデックスデータ1ndex
を基に、メモリアドレスaddrは、 addr=base十(index<5ize)によっ
て得るようにしてもよい。ここで、“′(パはビットシ
フトの演算を示す。
〔発明の効果〕
本発明によれば、受信側のプロセッサでメモリアドレス
を設定するための処理のオーハーヘシドをなくすことが
でき、効率的なデータ転送処理を行うことが可能となる
また、アドレス情報として、送信側のプロセッサのプロ
セッサIDを指定することにより、受信側のプロセッサ
では、プロセッサ別に自動的にバッファを切り換えなが
ら転送データを重なり無く受信することが可能となる。
一方、アドレス情報としてインデックスを指定すること
により、受信側のプロセッサのメモリアドレスを正確に
知るのが困難であるような場合にも、自由度の高いアド
レス指定を行うことが可能となる。
【図面の簡単な説明】
第1図は、本発明のブロック図、 第2図は、本発明の実施例の構成図、 第3図は、本実施例におけるデータ転送パケットの構成
図、 第4図(a)〜(h)は、本実施例の動作タイミングチ
ャート、 第5図は、分散メモリ型並列計算機の一般的構成図、 第6図は、受信側プロセッサにおけるメモリ内容を示し
た図、 第7図は、第1の従来のデータ転送方式の動作フローチ
ャート、 第8図は、第2の従来のデータ転送方式の動作フローチ
ャートである。 ・送信側のプロセッサ、 ・アドレス情報付加手段、 ・転送データ、 ・アドレス情報、 ・受信側のプロセッサ、 ・アドレス情報識別手段、 ・データ書込手段、 ・メモリ手段、 ・メモリアドレス。 2、

Claims (1)

  1. 【特許請求の範囲】 1)内部にメモリ手段を有する複数のプロセッサから構
    成されるマルチプロセッサシステムにおいて、 送信側のプロセッサ(101)に、転送データ(103
    )に、受信側のプロセッサ(105)で該転送データが
    格納されるべきメモリアドレス(109)を指定するた
    めのアドレス情報(104)を付加するアドレス情報付
    加手段(102)を有し、 受信側のプロセッサ(105)に、 前記送信側のプロセッサ(101)から転送されてきた
    転送データ(103)に付加されている前記アドレス情
    報(104)を識別するアドレス情報識別手段(106
    )と、 該アドレス情報識別手段で識別されたアドレス情報(1
    04)に基づいてメモリアドレス(109)を指定しな
    がら、自プロセッサ(105)内のメモリ手段(108
    )に前記転送データ(103)を書き込むデータ書込手
    段(107)と、 を有する、 ことを特徴とするデータ転送方式。 2)内部にメモリ手段を有する複数のプロセッサから構
    成されるマルチプロセッサシステムにおいて、 送信側のプロセッサに、転送データに、自プロセッサの
    プロセッサIDを、受信側のプロセッサで該転送データ
    が格納されるべきメモリアドレスを指定するためのアド
    レス情報として付加するアドレス情報付加手段を有し、 受信側のプロセッサに、 前記送信側のプロセッサから転送されてきた転送データ
    に付加されている前記アドレス情報を識別するアドレス
    情報識別手段と、 該アドレス情報識別手段で識別されたアドレス情報に基
    づいてメモリアドレスを指定しながら、自プロセッサ内
    のメモリ手段に前記プロセッサ毎の転送データを書き込
    むデータ書込手段と、を有する、 ことを特徴とするデータ転送方式。 3)内部にメモリ手段を有する複数のプロセッサから構
    成されるマルチプロセッサシステムにおいて、 送信側のプロセッサに、転送データに、受信側のプロセ
    ッサで該転送データが格納されるべきメモリアドレスの
    オフセットを指定するためのインデックスをアドレス情
    報として付加するアドレス情報付加手段を有し、 受信側のプロセッサに、 前記送信側のプロセッサから転送されてきた転送データ
    に付加されている前記アドレス情報を識別するアドレス
    情報識別手段と、 該アドレス情報識別手段で識別されたアドレス情報に基
    づいてメモリアドレスを指定しながら、自プロセッサ内
    のメモリ手段に前記転送データを書き込むデータ書込手
    段と、 を有する、 ことを特徴とするデータ転送方式。 4)前記アドレス情報であるインデックスは、送信側の
    プロセッサのプロセッサIDに前記転送データのデータ
    サイズを乗じたデータであることを特徴とする請求項3
    記載のデータ転送方式。 5)前記転送データ及び前記アドレス情報は、パケット
    データとして転送されることを特徴とする請求項1、2
    、3又は4記載のデータ転送方式。 6)内部にメモリ手段を有する複数のプロセッサから構
    成されるマルチプロセッサシステムにおいて、 転送データに、受信側のプロセッサで該転送データが格
    納されるべきメモリアドレスを指定するためのアドレス
    情報が付加され、 受信側のプロセッサに、 前記送信側のプロセッサから転送されてきた転送データ
    に付加されている前記アドレス情報を識別するアドレス
    情報識別手段と、 該アドレス情報識別手段で識別されたアドレス情報に基
    づいてメモリアドレスを指定しながら、自プロセッサ内
    のメモリ手段に前記転送データを書き込むデータ書込手
    段と、 を有する、 ことを特徴とするデータ転送方式。
JP14744090A 1990-06-07 1990-06-07 データ転送方式 Pending JPH0440551A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14744090A JPH0440551A (ja) 1990-06-07 1990-06-07 データ転送方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14744090A JPH0440551A (ja) 1990-06-07 1990-06-07 データ転送方式

Publications (1)

Publication Number Publication Date
JPH0440551A true JPH0440551A (ja) 1992-02-10

Family

ID=15430387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14744090A Pending JPH0440551A (ja) 1990-06-07 1990-06-07 データ転送方式

Country Status (1)

Country Link
JP (1) JPH0440551A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659777A (en) * 1992-09-25 1997-08-19 Hitachi, Ltd. Method for intraprocessor communication
JPWO2010027064A1 (ja) * 2008-09-04 2012-02-02 日本電気株式会社 データ伝送方法、データ伝送システム、データ送信装置、データ受信装置、及び制御プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659777A (en) * 1992-09-25 1997-08-19 Hitachi, Ltd. Method for intraprocessor communication
US5867656A (en) * 1992-09-25 1999-02-02 Hitachi, Ltd. Method for interprocessor communication
JPWO2010027064A1 (ja) * 2008-09-04 2012-02-02 日本電気株式会社 データ伝送方法、データ伝送システム、データ送信装置、データ受信装置、及び制御プログラム

Similar Documents

Publication Publication Date Title
US20050144338A1 (en) Data transfer apparatus
JP2002366427A (ja) プロセッサ間通信システム及びそれに用いるプロセッサ間通信方法
JPH0440551A (ja) データ転送方式
US6795874B2 (en) Direct memory accessing
JPH0833869B2 (ja) データ処理装置
US5875299A (en) disk access apparatus for performing a stride processing of data
JPH02190059A (ja) バッファ制御装置
JPH05324529A (ja) データ転送装置及びデータ転送方法
JPH05342118A (ja) 同期制御とパイプライン制御を組み合わせたデータ通信方法およびその装置
JP3008837B2 (ja) Lanのスイッチング装置
JPH0817401B2 (ja) Lan接続システム
JPS5837739A (ja) バツフアメモリ装置
JPH0546565A (ja) データ処理装置
JPH08106430A (ja) データ転送方法
JPH0586577B2 (ja)
JPH04188350A (ja) メモリ回路および分散処理システム
JPH0442696B2 (ja)
JPH05268198A (ja) 送受信データ記憶方法
JPH04269037A (ja) パケット情報カウンタ
JP2000013444A (ja) パケットデータ受信装置
JPH01234962A (ja) バス制御方式
JPS63222549A (ja) 受信バツフア管理装置
JPH0457130A (ja) 情報処理装置
JPH0317756A (ja) 記憶装置のアクセス方式
JPH04253251A (ja) メッセージ処理方式