JPH05151181A - 並列計算機およびその全対全通信方法 - Google Patents

並列計算機およびその全対全通信方法

Info

Publication number
JPH05151181A
JPH05151181A JP31060591A JP31060591A JPH05151181A JP H05151181 A JPH05151181 A JP H05151181A JP 31060591 A JP31060591 A JP 31060591A JP 31060591 A JP31060591 A JP 31060591A JP H05151181 A JPH05151181 A JP H05151181A
Authority
JP
Japan
Prior art keywords
processor
phase
communication
processors
phases
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
JP31060591A
Other languages
English (en)
Other versions
JP2601591B2 (ja
Inventor
Kenichi Hayashi
憲一 林
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 JP31060591A priority Critical patent/JP2601591B2/ja
Priority to EP19920310824 priority patent/EP0544532B1/en
Priority to AU29678/92A priority patent/AU658951B2/en
Priority to US07/982,579 priority patent/US5826033A/en
Publication of JPH05151181A publication Critical patent/JPH05151181A/ja
Application granted granted Critical
Publication of JP2601591B2 publication Critical patent/JP2601591B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/06Deflection routing, e.g. hot-potato routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】多数のプロセッサがn次元トーラスネットワー
クで接続される並列計算機およびその全対全通信方法に
関し,全対全通信を短時間で完了させることができるよ
うにすることを目的とする。 【構成】並列計算機がa1 ×a2 ×…×an の直方体形
状のn次元トーラスネットワーク15を持つとき,フェー
ズ管理手段11によって,単方向チャネルの場合,amax
P/4個, 両方向チャネルの場合, amax P/8個(た
だし,Pはプロセッサ台数)のあらかじめ定められた送
受信フェーズを管理し,各フェーズにおける送信先情報
を保持しておく。メッセージ送信処理手段13は,全対全
通信を行う場合に,フェーズ管理手段11の管理情報に従
って, 各フェーズにおける送信先プロセッサへのメッセ
ージ送信を行う。これによって,全フェーズの終了時に
全対全通信が完了する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,多数のプロセッサがn
次元トーラスネットワークで接続される並列計算機にお
いて,最適な全対全通信を実現できるようにした並列計
算機およびその全対全通信方法に関する。
【0002】ハイパーキューブ,トーラス,メッシュな
どのネットワークで接続された並列計算機では,通信の
性能がアプリケーションに大きく影響する。そこで,ネ
ットワークの性能を最大限に引き出す通信アルゴリズム
を実現する必要がある。多くの応用で頻繁に使用される
通信パターンの中で,全てのプロセッサが送信先プロセ
ッサごとに異なるメッセージを全てのプロセッサに送信
する全対全通信が,最も多くの通信転送量を必要とす
る。この全対全通信は,マトリクスの転置,2次元FF
T,ADIなど多くのアプリケーションで頻繁に使用さ
れる通信であり,この全対全通信を高速化する技術が必
要とされる。
【0003】
【従来の技術】図12は,従来技術による全対全通信説
明図である。図12の(イ)は,2次元トーラスネット
ワークの例であって,PEはそれぞれCPUを備えたプ
ロセッサを表す。トーラスネットワークでは,メッシュ
の端と端が接続されているトーラス結合となっており,
メッシュネットワークの2倍の性能を実現することがで
きる構造になっている。
【0004】本発明が対象とする全対全通信は,全ての
プロセッサPEが送信先プロセッサごとに異なるメッセ
ージを全てのプロセッサに送信する通信である。従来,
ハイパーキューブネットワーク上やメッシュネットワー
ク上での回線接続方式あるいはワームホールルーティン
グに基づいた最適な全対全通信のアルゴリズムは知られ
ていたが,トーラスネットワーク上の最適な全対全通信
のアルゴリズムは知られていなかった。
【0005】そのため,各プロセッサPEが,他のプロ
セッサPEの振る舞いとは関係なく,例えば図12の
(ロ)に示すように,個々に送信先プロセッサPEを決
めて,全対全通信を実現することが行われていた。
【0006】図12の(ロ)に示す例の場合,各プロセ
ッサPEは,最初に右隣りのプロセッサPEへメッセー
ジを送り,次に同じ段の右方向に1つ離れたプロセッサ
PEへメッセージを送り,次に2つ離れたプロセッサP
Eへメッセージを送り,…というようにメッセージを送
信して,同じ段のプロセッサPEへのメッセージ送信が
終了したならば,次には,直下のプロセッサPEへメッ
セージを送り,次にその右隣りのプロセッサPEへメッ
セージを送り,……というように,順に全プロセッサP
Eへメッセージを送信している。
【0007】
【発明が解決しようとする課題】トーラスネットワーク
におけるルーティングの代表的な方式として,例えば最
初に送信元から送信先までの通信経路を全て確保してか
らメッセージを送る回線接続方式や,1つ隣りまでの通
信経路を,メッセージを送りながら送信先まで順に伸ば
していくワームホールルーティングがある。
【0008】このような回線接続方式またはワームホー
ルルーティングに基づく従来の全対全通信では,各プロ
セッサPEが独自にメッセージ送信を行うため,通信経
路に競合が生じて,待ちの時間が多くなり,効率よく短
時間で全対全通信を終了することができないという問題
があった。また,全対全通信の手順が確立されていない
ため,各アプリケーションごとに,その手順を作成しな
ければならず,アプリケーションの開発負担が大きいと
いう問題があった。
【0009】本発明は上記問題点の解決を図り,トーラ
スネットワーク上での最適な全対全通信を実現する手段
を提供することを目的としている。本発明は,1次元ト
ーラスから多次元トーラスのネットワークに適用するこ
とができ,また,正方形だけではなく長方形のネットワ
ークにも適用することができる。さらに,本発明は,接
続チャネルが単方向あるいは両方向のどちらに対しても
最適な方式を提供することができる。
【0010】
【課題を解決するための手段】図1は本発明の原理説明
図である。図1において,PE1〜PE8は並列計算機
を構成するプロセッサ,11はフェーズ管理手段,12
はフェーズ管理テーブル,13はメッセージ送信処理手
段,14はトーラスネットワークにおけるルーティング
制御を行うルーティングコントローラ,15はトーラス
ネットワークを表す。
【0011】本発明の並列計算機では,全対全通信を行
うにあたって,あらかじめトーラスネットワークの構造
とプロセッサ台数に応じて定められた個数の送受信フェ
ーズが用意され,その各フェーズごとに,あらかじめ決
められた送信元および送信先プロセッサの情報を,フェ
ーズ管理手段11によって記憶し保持するようになって
いる。例えば,フェーズ管理手段11は,送信元のプロ
セッサごとに,各フェーズにおける所定の送信先プロセ
ッサの情報を保持するフェーズ管理テーブル12を持
ち,フェーズ管理テーブル12によってフェーズを進め
る制御を行う。
【0012】メッセージ送信処理手段13は,各プロセ
ッサにおいて所定のフェーズの順番に従い,フェーズ管
理テーブル12からの情報を得て,自プロセッサが現フ
ェーズで送信元プロセッサになっているかどうかを判定
し,自プロセッサが送信元プロセッサになっている場合
に,そのフェーズにおける送信先プロセッサに対し,ル
ーティングコントローラ14を介して,自プロセッサか
らのメッセージを送信する。必要に応じて同期をとりな
がら,フェーズを進め,全フェーズが終了すると,全対
全通信が完了する。
【0013】請求項2記載の全対全通信方法は,a1 ×
2 ×…×an の直方体形状のn次元トーラスネットワ
ークを持つ並列計算機において,プロセッサ間の接続チ
ャネルが単方向である場合に,トーラスネットワークの
構造によって決まるa1 ,a 2 ,…,an の最大値をa
max ,プロセッサ台数をPとしたとき,amax P/4個
の所定の送受信フェーズを順番に進め,各プロセッサ
は,amax P/4個の各フェーズにおいてあらかじめ定
められた自プロセッサの送信先プロセッサに対し,メッ
セージを送信することにより,全対全通信を実現する。
【0014】請求項3記載の全対全通信方法では,前記
max P/4個の各フェーズにおける送信元プロセッサ
と送信先プロセッサの通信経路を定める際に,n次元ト
ーラスネットワークにおける1つのトーラスにおいてa
i 個のプロセッサを隣合うa i /2個の2つのグループ
に分け,第1のグループにおける端のプロセッサを第1
のプロセッサとし,第1のグループにおける残りのプロ
セッサの中から第2のプロセッサを選んだ後,第1のプ
ロセッサおよび第2のプロセッサからそれぞれai /2
個離れた第2のグループの中のプロセッサを,第3のプ
ロセッサおよび第4のプロセッサとして選び,第1,第
2,第3および第4のプロセッサにより4点サイクルを
形成する通信経路とする。
【0015】請求項4記載の全対全通信方法は,a1 ×
2 ×…×an の直方体形状のn次元トーラスネットワ
ークを持つ並列計算機において,プロセッサ間の接続チ
ャネルが両方向である場合に,トーラスネットワークの
構造によって決まるa1 ,a 2 ,…,an の最大値をa
max ,プロセッサ台数をPとしたとき,amax P/8個
の所定の送受信フェーズを順番に進め,各プロセッサ
は,amax P/8個の各フェーズにおいてあらかじめ定
められた自プロセッサの送信先プロセッサに対し,メッ
セージを送信することにより,全対全通信を実現する。
【0016】請求項5記載の全対全通信方法は,プロセ
ッサ間の接続チャネルが単方向である場合に想定される
前記amax P/4個のフェーズにおける互いに独立で相
異なる通信方向の2つのフェーズを重ね合わせて,プロ
セッサ間の接続チャネルが両方向である場合のamax
/8個のフェーズの通信経路をあらかじめ決定し,その
フェーズを用いて全対全通信を行う。
【0017】請求項6記載の全対全通信方法は,トーラ
スネットワークの次元が2以上のとき,各次元のトーラ
スネットワークが1次元のときに想定されるフェーズに
おける通信経路を組み合わせて,各フェーズにおける通
信経路を決定し,その中で複数の互いに独立な通信経路
を持つものを重ね合わせることにより,フェーズ数を削
減したフェーズを用いて全対全通信を行う。
【0018】
【作用】プロセッサとネットワークとのインタフェース
が1ポートであり,各プロセッサは,1つのメッセージ
の送信と1つのメッセージの受信とを同時に行うことが
できるものとする。
【0019】例えば,図1に示すようなa個(この例で
はa=8)のプロセッサPE1〜PE8をリング状に接
続した1次元トーラスネットワーク15であって,接続
チャネルが単方向の場合,後に詳述するように,全対全
通信のための送受信フェーズ数の理論的下限は,a2
4=64÷4=16である。
【0020】本発明では,あらかじめ16個のフェーズ
を用意し,フェーズ管理手段11によって各フェーズに
おける送信元および送信先プロセッサの情報を保持する
ようにしておく。プロセッサPE1のメッセージ送信処
理手段13は,全対全通信を行うとき,第1のフェーズ
では,フェーズ管理テーブル12の情報を参照してプロ
セッサPE2へメッセージを送る。
【0021】このとき,他のプロセッサでも同様に第1
のフェーズで定められた送信先へのメッセージ送信処理
を行う。これにより,第1のフェーズでは,として示
すように,プロセッサPE1からプロセッサPE2へ,
プロセッサPE2からプロセッサPE5へ,プロセッサ
PE5からプロセッサPE6へ,プロセッサPE6から
プロセッサPE1へ,それぞれメッセージが送られる。
【0022】次の第2のフェーズでは,プロセッサPE
1の送信は休止であり,として示すように,プロセッ
サPE2からプロセッサPE3へ,プロセッサPE3か
らプロセッサPE7へ,プロセッサPE7からプロセッ
サPE8へ,プロセッサPE8からプロセッサPE2へ
のメッセージ送信が行われる。
【0023】同様に第16のフェーズまで繰り返すこと
により,全てのプロセッサが全てのプロセッサに対し異
なるメッセージを送信する全対全通信が終了する。この
送受信フェーズ数を最適にするために,各フェーズで4
点サイクルを形成する。すなわち,図1の例に示すよう
に,1つのトーラスにおける4個のプロセッサが送信元
および送信先のプロセッサとなるように送信元と送信先
を定める。こうすることにより,回線接続方式またはワ
ームホールルーティングのいずれの方式によっても,通
信経路の確保に競合が生じることはない。
【0024】この4点サイクルは,図示省略するが,プ
ロセッサ数をa個とすると,a個のプロセッサを隣合う
a/2個の2グループG1 ,G2に分け,G1 の端のプ
ロセッサをAとし,G1 の残りのプロセッサの中からB
を選んだ後,CとDをG2 の中から,それぞれA,Bと
a/2個離れた位置に選ぶことにより形成することがで
きる。
【0025】図1は,接続が単方向チャネルの場合であ
るが,通信チャネルが同時に両方向に転送可能になって
いる両方向チャネルの場合には,単方向チャネルのとき
の16個のフェーズのうち,互いに独立で相異なる通信
方向の2つの4点サイクルを重ね合わせることにより,
理論的下限である8個のフェーズにすることができる。
【0026】例えば,プロセッサPE1からプロセッサ
PE2へ,プロセッサPE2からプロセッサPE5へ,
プロセッサPE5からプロセッサPE6へ,プロセッサ
PE6からプロセッサPE1へ,それぞれメッセージを
送る第1のフェーズは,プロセッサPE1,PE2,P
E5,PE6以外のプロセッサPE3,PE4,PE
7,PE8による4点サイクルで,通信方向が逆のもの
と重ね合わせて,両方向チャネルのときのフェーズとす
る。
【0027】すなわち,矢印(→)の左を送信元,右を
送信先として表すと,PE1→PE2→PE5→PE6
→PE1と,PE3→PE8→PE7→PE4→PE3
とを組み合わせて,両方向チャネルの場合のフェーズと
する。
【0028】トーラスネットワークの次元が2以上のと
き,次のように通信経路を定めることができる。まず,
各次元のプロセッサ数をもとに,トーラスネットワーク
が1次元のときのフェーズの通信経路を決める。その通
信経路を次元数n(n≧2)の分だけ組み合わせて,n
次元のフェーズの通信経路を決める。その中で複数の互
いに独立な通信経路を持つフェーズを重ね合わせること
により,最終的なフェーズを決定する。こうして,フェ
ーズ数を理論的下限の最適なものとすることができる。
【0029】
【実施例】本発明の実施例を説明するに先立ち,本発明
の理論的背景についてまず説明する。
【0030】〔モデル〕本発明で扱う通信モデルについ
て述べる。プロセッサは,一メッセージの送信と一メッ
セージの受信とを同時に行なうことができるものとす
る。通信チャネルは,両方向(同時に両方向転送可能)
チャネルと単方向チャネル(同時には両方向転送不可
能)の二つのモデルを扱う。単方向チャネルを持つネッ
トワーク上で両方向チャネルのアルゴリズムを実現する
ときは,理想的には半分の性能になる。ルーティング
は,回線接続あるいはワームホールを仮定する。
【0031】〔送受信フェーズ数の理論的下限につい
て〕ここでは全対全通信の送受信フェーズ数の理論的下
限を求める。隣合うプロセッサ間の距離を全て1とする
と,各プロセッサから送信したメッセージが目的のプロ
セッサに達するまでの移動距離は,プロセッサの数で表
現できる。この移動距離の平均Dにプロセッサの数P,
各プロセッサの送信するメッセージの数Sを掛け合わせ
れば,全対全通信に必要な通信路の数が求まる。
【0032】この値を通信路の総数N(この際,単方向
チャネルのとき隣合うプロセッサ間の通信路を1,両方
向チャネルのとき2として計算する)で割れば,各通信
路での通信の負荷が均一だとした場合の送受信フェーズ
数Lが得られる。すなわち, L=DPS/N である。
【0033】この値より少ないフェーズで送受信を行な
うプロセッサがあると,この値より大きいフェーズ数の
送受信を必要とするプロセッサが現れるので,全プロセ
ッサは,この値より少ないフェーズで全対全通信を終る
ことはできない。すなわち,この値が全対全通信に必要
なフェーズの理論的下限となる。
【0034】〔1次元トーラスの理論的下限〕上の議論
に基づき,1次元トーラスにおける全対全通信のフェー
ズの下限を求める。プロセッサの数をaとするとメッセ
ージの移動距離の平均は,aが偶数のときa/4,奇数
のとき(a2 −1)/4aとなる。また通信路の総数
は,単方向チャネルのときa,両方向のとき2aであ
る。よって,aが偶数のとき,単方向チャネルを用いた
場合の送受信フェーズの下限L1sは, L1s=(a×a/4×a)/a = a2 /4 また,両方向のときの下限L1dは, L1d =(a×a/4×a)/2a = a2 /8 となる。
【0035】〔1次元トーラスの下限を実現するアルゴ
リズム〕次に,図2に示す例をもとに,下限を実現する
アルゴリズムについて述べる。aを8以上の偶数とす
る。後で述べる特別な場合を除いて,各フェーズは4つ
のプロセッサ(A,B,C,D)を結ぶ一方方向のサイ
クルとなる。
【0036】まず,a個のプロセッサを隣合うa/2個
の2グループG1 ,G2 に分ける。G1 の端のプロセッ
サをAとし,G1 の残りのプロセッサの中からBを選
ぶ。CとDはG2 の中から,A,Bとそれぞれa/2離
れた位置に選ぶ。
【0037】(A→B→C→D→A)という1つのフェ
ーズを表現するのに,選ばれた4点間の距離をそれぞれ
コロンで区切って, α:β:α:β のように表すことにする。ここで2(α+β)=aであ
る。
【0038】例えば,図2の場合,1:3:1:3と表
せる。同じ表現で表されるフェーズに対して,Aを1つ
ずつずらしていくと,この表現で表される全てのフェー
ズを重複なく選ぶことができる。
【0039】この中には,β:α:β:αで表現される
フェーズも含まれているので,aが4の倍数のときに
は, (1) 1:a/2−1:1:a/2−1 2:a/2−2:2:a/2−2 3:a/2−3:3:a/2−3 … … … … a/4−1:a/4+1:a/4−1:a/4+1 までのa/(4−1)通りを,4の倍数でないときに
は, (2) 1:a/2−1:1:a/2−1 2:a/2−2:2:a/2−2 3:a/2−3:3:a/2−3 … … … … (a−2)/4:(a+2)/4:(a−2)/4:
(a+2)/4 までの(a−2)/4通りを考えればよい。この場合,
1つの表現に対して,逆方向を含めa通りのフェーズが
ある。
【0040】aが4の倍数のときには,この他に (3) a/4:a/4:a/4:a/4 の場合があり,この表現で表されフェーズはa/2通り
ある。
【0041】4点サイクルはこれで全て含まれている
が,この中には図2のAとCのようなa/2離れた点ど
うしの通信のフェーズが含まれていない。この2点サイ
クルは (4) a/2:a/2 と表現することとすると,a/2通りある。この場合,
(A→C→A)という2点サイクルになるが,図2に示
すE,F点では,自分自身に送信しているものと考え
る。
【0042】以上により,aが4の倍数のときには,
(1) ,(3) ,(4) の場合を合計して a×(a/4−1)+a/2+a/2=a2 /4 4の倍数でないときには,(2) ,(4) より a×(a−2)/4+a/2=a2 /4 となり,いずれの場合にも,単方向チャネルを用いた場
合の下限L1sが実現される。
【0043】図3は,単方向チャネルの場合に得られた
2つのフェーズの重ね合わせ説明図である。両方向チャ
ネルの場合には,単方向チャネルの場合に得られたフェ
ーズのうち,互いに向きの異なるサイクルどうしを重ね
合わせることで,最適なフェーズを実現できる。ただ
し,各プロセッサは1ポート通信としているので,4点
のうち1点でも共有するものは選ぶことはできない。ま
た,2つのフェーズを4点とも重ならないように選ぶの
で,aは8以上でなければならない。
【0044】先に述べた(1) ,(2) の場合とも,同じ表
現で表されるフェーズのうち,適当にAがずれて互いに
逆方向のサイクルを選ぶと,全ての表現について,図3
に示すように,2つのフェーズを4点とも共有すること
なく重ねることができて,各表現はa/2通りに半減す
る。aが4の倍数の場合には,上記(3) の場合も2点サ
イクルの場合も2つの互いに逆方向のフェーズを重ねら
れる。
【0045】しかし,aが4の倍数でない場合には,2
点サイクルのフェーズの数a/2が奇数であり,全ての
フェーズを2つずつ重ねることはできず,1フェーズ余
る。以上のことから,aが4の倍数の場合には, (1/2)×(a2 /4)=a2 /8 4の倍数でない場合には, 1/2×a×(a−2)/4+1/2×(a/2−1)+1 =(a2 +4)/8 となり,aが8以上の4の倍数の場合に両方向チャネル
を用いた場合の下限L1dが実現される。
【0046】〔2次元トーラスの理論的下限〕a×aの
2次元格子の端点が反対側の端点に繋がっている2次元
トーラスを考える。この2次元トーラスにおける全対全
通信では,メッセージの平均移動距離は,aが偶数のと
きa/2である。プロセッサの数はa2 ,通信路の数は
単方向チャネルのとき2a2 ,両方向のとき4a2 であ
る。したがって,単方向チャネルときの送受信フェーズ
の理論的下限L2s,また両方向チャネルときの理論的下
限L2dはそれぞれ L2s=(a2 ×a/2×a2 )/2a2 =a3 /4 L2d=(a2 ×a/2×a2 )/4a2 =a3 /8 となる。実際にこの下限は,次に述べるアルゴリズムで
実現される。
【0047】〔2次元トーラスの下限を実現するアルゴ
リズム〕図4は2次元トーラスについての本発明を説明
するためのクロス・プロダクトの例を示す図,図5は本
発明を説明するための2次元トーラスの通信経路を定め
る重ね合わせの例を示す図である。
【0048】2次元トーラスにおける全対全通信アルゴ
リズムは,1次元トーラスの最適全対全通信アルゴリズ
ムを,2次元トーラスの水平方向と垂直方向に適用し,
それらのクロス・プロダクトで通信路を決定することを
基本としている。
【0049】図4に示すように,水平方向の通信路は水
平方向に適用した1次元トーラスのアルゴリズムに従
い,垂直方向の通信路は垂直方向に適用した1次元トー
ラスのアルゴリズムに従って決定する。この際,通信路
決定は水平方向から行なうことにする。
【0050】単純に水平方向と垂直方向のアルゴリズム
を掛け合わせては,単方向チャネルの場合,全対全通信
に必要なフェーズは(a2 /4)2 =a4 /16となっ
て,理論的下限より大きくなってしまう。しかし1つの
フェーズでは,水平方向,垂直方向とも4つのプロセッ
サしか使われていないことに注目すると,もしaが4の
倍数なら,使われていないプロセッサの中から水平方
向,垂直方向それぞれ4つずつプロセッサを選ぶことに
よって,独立な複数のフェーズを重ねることが可能であ
る。
【0051】例えば,図5に示すように,水平方向,垂
直方向のそれぞれに1次元トーラスの1:3:1:3で
表現されるフェーズを適用する場合を考えてみる。この
フェーズで使われている通信路を太線で,使われていな
い通信路を細線で表すと,使われていない細線だけで独
立のフェーズを構成できることがわかる。このように,
aが4の倍数の場合には,a/4種類のフェーズを重ね
合わせることができるので,単方向チャネルの場合に必
要なフェーズは, (a4 /16)÷(a/4)=a3 /4 となり,理論的下限L2sと一致する。
【0052】両方向チャネルの場合も同様に重ね合わせ
ることが可能である。両方向の場合,水平方向,垂直方
向とも8つのプロセッサを使っているので,aが8の倍
数ならばa/8種類のフェーズを重ねることができる。
これにより,両方向チャネルの場合の全対全通信に必要
な送受信フェーズは, (a2 /8)2 ÷(a/8)=a3 /8 となり,理論的下限L2dと一致する。
【0053】この結果,ここで示した方法が,単方向チ
ャネルを用いた場合はaが4の倍数のとき,両方向チャ
ネルを用いた場合はaが8の倍数のとき,2次元トーラ
スにおける全対全通信の最適アルゴリズムであることが
わかる。
【0054】〔長方形形状トーラスへの拡張〕図6は,
本発明を説明するための長方形形状2次元トーラスの例
を示す図である。
【0055】2次元トーラスには,プロセッサ構成が前
に述べた正方形形状のものばかりでなく,128(8×
16),あるいは512(16×32)プロセッサのよ
うな長方形形状の構成も考えられる。このような長方形
形状の2次元トーラスに対しても前に述べたアルゴリズ
ムが最適であることを示す。
【0056】〔長方形形状2次元トーラスの理論的下
限〕まず,長方形形状2次元トーラスにおける全対全通
信の送受信の理論的下限を求める。長方形をa×b
(a,bは偶数)とし,図6の(イ)または(ロ)に示
すようにプロセッサを半分ずつ,2つのグループG1
2 に分ける。そして,2つのグループG1 ,G2
で,全対全通信をすることを考える。そうすると,この
とき発生するメッセージの総数は2×(ab/2)2
あり,これが図6の(イ)または(ロ)に太い線で示さ
れる通信路を通ることになる。
【0057】両方向チャネルとしたとき,太い線で示さ
れる通信路の数は,図6の(イ)の場合4a本,図6の
(ロ)の場合4b本である。この太い線で示された通信
路に注目すると,2×(ab/2)2 のメッセージが必
ずここを通るから,図6の(イ)の場合,少なくとも 2×(ab/2)2 ÷4a=ab2 /8 フェーズ必要であり,図6の(ロ)の場合には, 2×(ab/2)2 ÷4b=a2 b/8 フェーズ必要となる。
【0058】ここで,b≧aとすると,ab2 /8≧a
2 b/8であるのでa×bの長方形形状2次元トーラス
の全対全通信では,少なくともab2 /8フェーズ必要
である。
【0059】プロセッサを2つのグループに分け,グル
ープ間で全対全通信を行なう場合,プロセッサを同数に
分けたときに発生するメッセージ数が最大となり,ま
た,図6の(イ)に示すようにグループ分けしたとき,
2つのグループを結ぶ通信路の数が最も少なくなるか
ら,先に示した図6(イ)の場合のフェーズ数ab2
8が,長方形形状2次元トーラスにおける両方向チャネ
ルを用いたときの全対全通信の理論的下限L' 2dとな
る。単方向チャネルの場合にも,同様にab2 /4が理
論的下限L’2sとなる。
【0060】〔長方形形状2次元トーラスの下限を実現
するアルゴリズム〕実際に正方形形状の2次元トーラス
の全対全通信で最適なアルゴリズムを長方形にも適用す
ると,理論的下限が実現できることを次に示す。
【0061】正方形形状の2次元トーラスの場合と同様
に,水平方向,垂直方向それぞれに1次元トーラスでの
最適アルゴリズムを適用し,そのクロス・プロダクトで
通信路を決定する。この際いくつの独立したフェーズを
重ねられるかは,aとbのうち,小さい方に依存する。
よってb≧aの場合,aが8の倍数ならa/8個の独立
したフェーズを重ねることができるから,必要なフェー
ズは, (a2 /8)×(b2 /8)÷(a/8)=ab2 /8 となり,aが8の倍数のとき,理論的下限L’2dと一致
する。
【0062】単方向の場合も同様であり,aが4の倍数
のとき,a/4個の独立したフェーズを重ねることがで
きるから,必要なフェーズは, (a2 /4)×(b2 /4)÷(a/4)=ab2 /4 となり,理論的下限L’2sと一致する。
【0063】次に3次元以上の高次元トーラスについて
説明する。
【0064】〔3次元トーラスの理論的下限〕これまで
の議論は,より高次元のトーラスに対しても適用でき
る。2次元の場合と同様な議論によって,a×b×c
(c≧b≧a)の直方体形状の3次元トーラスにおける
全対全通信の理論的下限は,単方向チャネルのとき,
L’3s=abc2 /4,両方向チャネルのとき,L’3d
=abc2 /8となる。実際にこの下限は,2次元の場
合と同じアルゴリズムにより実現される。
【0065】〔3次元トーラスの下限を実現するアルゴ
リズム〕1次元トーラスでの最適アルゴリズムを,x,
y,z方向にそれぞれ適用し,クロス・プロダクトから
通信路を決定する。両方向チャネルの場合,a×bの2
次元トーラスに対し,aが8の倍数ならa/8個の独立
したフェーズを重ねることができ,また,b×cの2次
元トーラスに対し,bが8の倍数ならb/8個の独立し
たフェーズを重ねることができる。これにより,a,b
が共に8の倍数の場合,必要最小フェーズ数は, a2 /8×b2 /8×c2 /8÷a/8÷b/8=abc2 /8 となり,理論的下限L’3dと一致し,このアルゴリズム
が最適であることがわかる。
【0066】また単方向チャネルの場合にも,a,bが
共に4の倍数ならabc2 /4となり,理論的下限L’
3sと一致する。
【0067】〔一般の場合の理論的下限〕一般にa1 ×
2 ×…×an (an ≧an-1 ≧…≧a1)の直方体形
状のn次元トーラスにおける全対全通信の理論的下限
L’ndは,両方向チャネルのとき, L’nd=an ×(a1 ×a2 ×…×an )/8=an P/8 また,単方向チャネルのとき, L’ns=an P/4 となる。ここでPはプロセッサ台数である。
【0068】これに対し,1次元トーラスでの最適アル
ゴリズムをn個組合わせ,そのクロス・プロダクトから
通信路を決定し,独立なフェーズを重ね合わせることか
らなるアルゴリズムの必要フェーズ数も,両方向チャネ
ルの場合,a1 ,a2 ,…,an-1 が8の倍数のとき,
n P/8となり,理論的下限L’ndと一致し,最適な
アルゴリズムであることがわかる。
【0069】単方向チャネルの場合には,a1 ,a2
…,an-1 が4の倍数のとき,an P/4=L’nsとな
り,この場合もまた最適なアルゴリズムであることがわ
かる。
【0070】特に,a1 =a2 =…an =aの場合,n
次元トーラスにおける両方向チャネルを用いた全対全通
信の理論的下限Lndは,aが8の倍数なら, Lnd=P(n+1)/n /8 となる。
【0071】同様に,単方向チャネルの場合,n次元ト
ーラスにおける全対全通信の理論的下限Lnsは,aが4
の倍数ならば, Lns=P(n+1)/n /4 となる。
【0072】本発明では,以上のように理論的に導かれ
る最小の送受信フェーズをあらかじめ用意し,各フェー
ズにおいて,各プロセッサがメッセージ送信を行うこと
により,最適な全対全通信を行う。
【0073】次に,具体的な実施例について説明する。
【0074】〔プロセッサの構成〕図7は,本発明の実
施例に係る並列計算機のプロセッサの構成例を示す。本
発明を実施する並列計算機のハードウェアとしては,従
来のトーラスネットワークを持つ並列計算機と同じもの
でよい。図7において,70は中央処理装置(CP
U),71はデータや命令が格納されるメモリ,72は
データの送信に用いる送信DMA制御回路,73はデー
タの受信に用いる受信DMA制御回路,74はコントロ
ールバス,75はデータバス,76はルーティングコン
トローラ14における入出力制御部,77は東西(右
左)方向への回線接続またはワームホールルーティング
によるデータ転送制御を行うX方向ルーティング回路,
78は南北(下上)方向への回線接続方式またはワーム
ホールルーティングによるデータ転送制御を行うY方向
ルーティング回路を表す。
【0075】図7に示す並列計算機は,2次元トーラス
ネットワークで構成され,各プロセッサPEは,すべて
同様に構成される。ルーティングコントローラ14は,
例えば1チップのLSIで構成され,回線接続方式また
はワームホールルーティングによるルーティング制御機
能を持つ。なお,このようなルーティング制御に関する
技術については,各種のものが知られており,また本発
明の要旨から外れるので,ここでの詳しい説明は省略す
る。
【0076】CPU70は,メッセージを他のプロセッ
サに送信するとき,送信するデータに,送信先プロセッ
サのアドレスを設定したヘッダを付加し,送信DMA制
御回路72を起動する。送信DMA制御回路72は,指
定されたヘッダ付きのメッセージを,ルーティングコン
トローラ14にDMA転送し,これによって,ルーティ
ングコントローラ14の入出力制御部76は,その送信
先プロセッサへ向けてのメッセージの送信制御を行う。
一方,メッセージの受信の場合には,ルーティングコン
トローラ14によって受け取った自プロセッサ宛のメッ
セージを,受信DMA制御回路73によってメモリ71
内に取り込む。
【0077】全対全通信を行う場合,メモリ71内に用
意された図1に示すフェーズ管理テーブル12を参照
し,CPU70により実行されるアプリケーションが,
各フェーズごとに,送信DMA制御回路72を介して,
そのフェーズにおける送信先プロセッサに対してメッセ
ージを送信する。この図1に示すメッセージ送信処理手
段13を実現するプログラムについては,例えばあらか
じめライブラリ化しておき,アプリケーションの作成時
に,各アプリケーションに簡単に組み込むことができる
ようにするとよい。
【0078】〔単方向チャネルの場合の1次元トーラス
のフェーズの例〕図8は本発明の実施例による1次元ト
ーラス(単方向チャネル)のフェーズの例,図9は本発
明の実施例で用いるフェーズ管理テーブルの例を示す。
【0079】例えば,図8の(イ)に示すような1次元
トーラスネットワークを持つ並列計算機において,全対
全通信を行うための最適な送受信フェーズの例を以下に
説明する。接続チャネルは単方向であり,プロセッサと
ネットワークとのインタフェースは1ポートを仮定す
る。プロセッサ数は8台である。
【0080】先に説明したように,1次元トーラス(単
方向チャネル)の場合のフェーズ数の下限は,a2 /4
であり,a=8の場合,16フェーズが最も少ないフェ
ーズ数となる。各フェーズにおいて,8個のプロセッサ
を2つのグループに分け,前述したアルゴリズムによっ
て4点サイクルを形成するフェーズを求めると,例え
ば,図8の(ロ)に示すような16個のフェーズを定め
ることができる。なお,図8の(ロ)に示す8つの黒丸
が,各々図8の(イ)に示すプロセッサPE1〜PE8
に対応している。図8の(ロ)に示す各フェーズを表す
ものとして,図9の(イ)に示すようなフェーズ管理テ
ーブル12を作成する。このフェーズ管理テーブル12
は,各フェーズごとに,各プロセッサが送信すべき送信
先プロセッサの情報を持つようになっている。なお,こ
のフェーズ管理テーブル12は,全プロセッサに共通な
ものとして作成してもよく,また,各プロセッサごとに
自プロセッサが関係する情報だけを保持するように作成
してもよい。図9の(イ)に示す形式に限らず,各フェ
ーズごとに送信元プロセッサと送信先プロセッサの番号
を組にして対応させた情報を管理する形式にすることも
できる。
【0081】図9の(イ)に示すフェーズ管理テーブル
12の情報は,図8の(ロ)に示すフェーズ1〜フェー
ズ16に対応しており,フェーズ1では,プロセッサP
E1からプロセッサPE2へ,プロセッサPE2からプ
ロセッサPE5へ,プロセッサPE5からプロセッサP
E6へ,プロセッサPE6からプロセッサPE1へ,そ
れぞれ同時にメッセージを送信するようになっている。
プロセッサPE3,PE4,PE7,PE8は,フェー
ズ1ではメッセージの送信は行わない。
【0082】次のフェーズ2では,プロセッサPE2か
らプロセッサPE3へ,プロセッサPE3からプロセッ
サPE6へ,プロセッサPE6からプロセッサPE7
へ,プロセッサPE7からプロセッサPE2へ,それぞ
れ同時にメッセージを送信し,プロセッサPE1,PE
4,PE5,PE8は,メッセージの送信を休む。
【0083】図8の(ロ)に示す全フェーズの中で,プ
ロセッサPE1が送信するフェーズに着目してみると,
図9の(ロ)に示すようになる。なお,ここでは,プロ
セッサPE1が自分自身に送信する場合があるとし,そ
れをフェーズ0として表している。
【0084】プロセッサPE1は,フェーズ1でプロセ
ッサPE2へ,フェーズ4でプロセッサPE4へ,フェ
ーズ5でプロセッサPE6へ,フェーズ8でプロセッサ
PE8へ,フェーズ9でプロセッサPE3へ,フェーズ
11でプロセッサPE7へ,フェーズ13でプロセッサ
PE5へ,各々メッセージを送信しており,フェーズ1
3で全プロセッサへのメッセージの送信を終わってい
る。
【0085】受信に関しても同様であり,図8の(ロ)
に示す16フェーズのうちに,全プロセッサからの受信
が終了する。他のプロセッサについても同様であり,1
6フェーズで全対全通信が完了することになる。
【0086】〔両方向チャネルの場合の1次元トーラス
のフェーズの例〕両方向チャネルの場合には,単方向チ
ャネルのときのフェーズの中の互いに独立で相異なる通
信方向の2つの4点サイクルを重ね合わせることによ
り,フェーズ数を半減させることができる。ここで独立
とは,2つの4点サイクルの中で同じプロセッサが両方
とも送受信を行うことがないことを意味する。
【0087】具体的には,両方向チャネルの場合,図8
の(ロ)に示す単方向チャネルの場合の次のフェーズを
重ね合わせることで,フェーズ数を半減することができ
る。 (1) フェーズ1とフェーズ7 (2) フェーズ2とフェーズ8 (3) フェーズ3とフェーズ5 (4) フェーズ4とフェーズ6 (5) フェーズ9とフェーズ12 (6) フェーズ10とフェーズ11 (7) フェーズ13とフェーズ15 (8) フェーズ14とフェーズ16 図示省略するが,このように重ね合わせた(1) 〜(8)
を,両方向チャネルの場合の8個のフェーズとすること
により,1次元トーラス(両方向チャネル)の下限のフ
ェーズ数a2 /8=8で全対全通信を完了させることが
できる。
【0088】〔2次元トーラス(単方向チャネルの場
合)の例〕2次元以上のトーラスの場合には,1次元ト
ーラスのときの通信方法を重ね合わせて通信経路を決定
し,同様に理論的下限の最適なフェーズを決めることが
できる。図10は,その2次元トーラスにおける通信経
路の重ね合わせの例を説明するための図である。
【0089】1次元トーラスの場合には,両方向チャネ
ルの場合にだけ,2つの4点サイクルを重ね合わせて,
1つのフェーズを構成することができたが,2次元トー
ラスでは,単方向チャネルであっても,複数の4点サイ
クルを重ね合わせることができる。
【0090】例えば,8×8の2次元トーラスにおける
全対全通信では,8プロセッサの1次元トーラスにおけ
る全対全通信に16フェーズ必要となるので,水平方向
およひ垂直方向の単純なクロス・プロダクトでは,25
6フェーズ生じてしまう。
【0091】図10の(イ)〜(ニ)は,各々水平方
向,垂直方向の4点サイクルの通信経路を持つフェーズ
を表している。なお,図10の(ハ)および(ニ)の例
では,垂直方向が2点サイクルとなっているが,E点,
F点で自分自身に送信していると考えると,4点を利用
していることにかわりはない。
【0092】この図10に示す例を見ると明らかなよう
に,図10の(イ)と(ロ)は,送受信プロセッサおよ
び通信経路に重複するものがないので,重ね合わせるこ
とが可能である。また,図10の(ハ)と(ニ)につい
ても,重ね合わせることが可能である。
【0093】このように,水平方向およひ垂直方向の単
純なクロス・プロダクトで生成される256フェーズ
は,2つずつのフェーズの重ね合わせが可能であるの
で,半分の128フェーズに再構成することができ,こ
うして決められた128フェーズにより,全対全通信を
完了させることができる。これは理論的下限に一致す
る。
【0094】両方向チャネルの場合,および高次元トー
ラスについても,この方法を同様に拡張して,最適な全
対全通信を実現するフェーズを決めることができる。
【0095】〔実施例のフローチャート〕図11は,本
発明の実施例のフローチャートを示す。本発明による処
理の流れは,例えば図11に示す(a) 〜(f) のようにな
る。
【0096】(a) トーラスネットワークの構造に応じ
て,理論的下限となるフェーズ数分の各フェーズにおけ
る送信元,送信先の組み合わせのテーブル(フェーズ管
理テーブル12)を作る。
【0097】(b) 全対全通信を行うにあたって,フェー
ズ管理テーブル12から1つずつ順番にフェーズを選
ぶ。 (c) そのフェーズでは,自分が送信元になっているかど
うかをフェーズ管理テーブル12を参照して判定する。
送信元になっていない場合には,そのフェーズにおける
送信は休む。
【0098】(d) 自分が送信元になっていれば,そのフ
ェーズにおける送信先の情報をメッセージのヘッダに付
加し,メッセージを送信する。 (e) 各プロセッサのメッセージ送信が完了し,次のフェ
ーズへの移行が可能になるまで,プロセッサ間の同期を
とる。
【0099】(f) フェーズを全て選び終わったかどうか
を判定し,全て選び終わったならば,全対全通信を完了
する。未処理のフェーズがあれば,処理(b) へ戻り,同
様に次のフェーズの処理を行う。
【0100】例えば,以上のような全対全通信の手順を
実現するプログラムを,各アプリケーションが共通に使
用できるように,ソフトウェア部品化しておけば,どの
ようなアプリケーションもそのソフトウェア部品を組み
込んで,簡単に最適な全対全通信を実現することができ
るようになる。
【0101】1次元トーラスの場合のフェーズの送信
元,送信先の組み合わせのテーブルは,あらかじめ作成
し与えてもよいし,実行時に動的に作成するようにして
もよい。後者は,プロセッサの数が固定されていない場
合に有効である。
【0102】上記処理(e) における送信後の同期のとり
方は,並列計算機が同期のためのハードウェアを持って
いる場合には,それを利用する。持っていない場合に
は,例えば送信するデータの大きさと,通信路の通信レ
ートとから,送信に必要な時間を計算し,その時間ウェ
イト(Wait)した後,次の動作に移るようにして,
各フェーズ終了の同期を実現することができる。
【0103】
【発明の効果】以上説明したように,本発明によれば,
トーラスネットワークを持つ並列計算機において,最適
な全対全通信を実現することができる。その結果,全対
全通信を用いるアプリケーションの実行が高速化され,
並列計算機の効率的な利用が可能になる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明を説明するための4点サイクルの例を示
す図である。
【図3】本発明を説明するための2つのフェーズの重ね
合わせ説明図である。
【図4】2次元トーラスについての本発明を説明するた
めのクロス・プロダクトの例を示す図である。
【図5】本発明を説明するための2次元トーラスの通信
経路を定める重ね合わせの例を示す図である。
【図6】本発明を説明するための長方形形状2次元トー
ラスの例を示す図である。
【図7】本発明の実施例に係る並列計算機のプロセッサ
の構成例を示す図である。
【図8】本発明の実施例による1次元トーラス(単方向
チャネル)のフェーズの例を示す図である。
【図9】本発明の実施例で用いるフェーズ管理テーブル
の例を示す図である。
【図10】本発明の実施例を説明するための2次元トー
ラスの例を示す図である。
【図11】本発明の実施例のフローチャートを示す図で
ある。
【図12】従来技術による全対全通信説明図である。
【符号の説明】
PE1〜PE8 プロセッサ 11 フェーズ管理手段 12 フェーズ管理テーブル 13 メッセージ送信処理手段 14 ルーティングコントローラ 15 トーラスネットワーク
【手続補正書】
【提出日】平成3年11月28日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】図1
【補正方法】変更
【補正内容】
【図1】

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 a1 ×a2 ×…×an のn次元トーラス
    ネットワーク(15)を持ち,このトーラスネットワークを
    用いてプロセッサ間の全対全通信を行う並列計算機にお
    いて,全対全通信を行うにあたって,あらかじめトーラ
    スネットワークの構造とプロセッサ台数に応じて定めら
    れた個数の送受信フェーズが用意され,その各フェーズ
    ごとに,送信元および送信先プロセッサを決める情報を
    管理するフェーズ管理手段(11)と,各プロセッサにおい
    て所定のフェーズの順番に従い,自プロセッサが送信元
    プロセッサになっている場合に,そのフェーズにおいて
    前記フェーズ管理手段(11)により定められている送信先
    プロセッサに対し,自プロセッサからメッセージを送信
    するメッセージ送信処理手段(13)とを備え,プロセッサ
    間の全対全通信を行うように構成されていることを特徴
    とする並列計算機。
  2. 【請求項2】 a1 ×a2 ×…×an のn次元トーラス
    ネットワーク(15)を持つ並列計算機における全対全通信
    方法において,プロセッサ間の接続チャネルが単方向で
    ある場合に,トーラスネットワークの構造によって決ま
    るa1 ,a2 ,…,an の最大値をamax ,プロセッサ
    台数をPとしたとき,amax P/4個の所定の送受信フ
    ェーズを順番に進め,各プロセッサは,各フェーズにお
    いてあらかじめ定められた自プロセッサの送信先プロセ
    ッサに対し,メッセージを送信することを特徴とする並
    列計算機における全対全通信方法。
  3. 【請求項3】 請求項2記載の並列計算機における全対
    全通信方法において,各フェーズにおける送信元プロセ
    ッサと送信先プロセッサの通信経路を定める際に,n次
    元トーラスネットワークにおける1つのトーラスにおい
    てai 個のプロセッサを隣合うai /2個の2つのグル
    ープに分け,第1のグループにおける端のプロセッサを
    第1のプロセッサとし,第1のグループにおける残りの
    プロセッサの中から第2のプロセッサを選んだ後,第1
    のプロセッサおよび第2のプロセッサからそれぞれai
    /2個離れた第2のグループの中のプロセッサを,第3
    のプロセッサおよび第4のプロセッサとして選び,第
    1,第2,第3および第4のプロセッサにより4点サイ
    クルを形成する通信経路とすることを特徴とする並列計
    算機における全対全通信方法。
  4. 【請求項4】 a1 ×a2 ×…×an のn次元トーラス
    ネットワーク(15)を持つ並列計算機における全対全通信
    方法において,プロセッサ間の接続チャネルが両方向で
    ある場合に,トーラスネットワークの構造によって決ま
    るa1 ,a2 ,…,an の最大値をamax ,プロセッサ
    台数をPとしたとき,amax P/8個の所定の送受信フ
    ェーズを順番に進め,各プロセッサは,各フェーズにお
    いてあらかじめ定められた自プロセッサの送信先プロセ
    ッサに対し,メッセージを送信することを特徴とする並
    列計算機における全対全通信方法。
  5. 【請求項5】 請求項4記載の並列計算機における全対
    全通信方法において,プロセッサ間の接続チャネルが単
    方向である場合に想定されるフェーズにおける互いに独
    立で相異なる通信方向の2つのフェーズを重ね合わせ
    て,プロセッサ間の接続チャネルが両方向である場合の
    フェーズの通信経路が決定されたフェーズを用いること
    により,全対全通信を行うことを特徴とする並列計算機
    における全対全通信方法。
  6. 【請求項6】 請求項2,請求項3,請求項4または請
    求項5記載の並列計算機における全対全通信方法におい
    て,トーラスネットワークの次元が2以上のとき,各次
    元のトーラスネットワークが1次元のときに想定される
    フェーズにおける通信経路を組み合わせて,各フェーズ
    における通信経路を決定し,その中で複数の互いに独立
    な通信経路を持つものを重ね合わせることにより,フェ
    ーズ数が単方向チャネルの場合に前記amax P/4個,
    両方向チャネルの場合に前記amax P/8個となるフェ
    ーズを用いることを特徴とする並列計算機における全対
    全通信方法。
JP31060591A 1991-11-26 1991-11-26 並列計算機およびその全対全通信方法 Expired - Lifetime JP2601591B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP31060591A JP2601591B2 (ja) 1991-11-26 1991-11-26 並列計算機およびその全対全通信方法
EP19920310824 EP0544532B1 (en) 1991-11-26 1992-11-26 A parallel computer and its all-to-all communications method
AU29678/92A AU658951B2 (en) 1991-11-26 1992-11-26 A parallel computer and its all-to-all communications method
US07/982,579 US5826033A (en) 1991-11-26 1992-11-27 Parallel computer apparatus and method for performing all-to-all communications among processing elements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31060591A JP2601591B2 (ja) 1991-11-26 1991-11-26 並列計算機およびその全対全通信方法

Publications (2)

Publication Number Publication Date
JPH05151181A true JPH05151181A (ja) 1993-06-18
JP2601591B2 JP2601591B2 (ja) 1997-04-16

Family

ID=18007273

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31060591A Expired - Lifetime JP2601591B2 (ja) 1991-11-26 1991-11-26 並列計算機およびその全対全通信方法

Country Status (4)

Country Link
US (1) US5826033A (ja)
EP (1) EP0544532B1 (ja)
JP (1) JP2601591B2 (ja)
AU (1) AU658951B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008114440A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited 一意情報集団通信プログラム、コンピュータ、一意情報集団通信方法、および記録媒体
US7853147B2 (en) 2005-02-03 2010-12-14 Fujitsu Limited Information processing system, calculation node, and control method of information processing system
JP2011108202A (ja) * 2009-11-20 2011-06-02 Fujitsu Ltd コンピュータ、プロセス間通信プログラム、およびプロセス間通信方法
JP2011141751A (ja) * 2010-01-07 2011-07-21 Nec Corp 並列コンピュータシステム、プロセッサ、同期装置、通信方法および通信支援方法
JP2013037723A (ja) * 2009-11-16 2013-02-21 Internatl Business Mach Corp <Ibm> ネットワークを構成している複数のノード(プロセッサ)間において、全対全通信(A2A:all−to−allcommunication)を含む、複数の計算処理をスケジューリングする方法、プログラム及び並列計算機システム。
JP2014137732A (ja) * 2013-01-17 2014-07-28 Fujitsu Ltd 情報処理システム及び情報処理システムの制御方法
US10430375B2 (en) 2009-09-01 2019-10-01 Fujitsu Limited Parallel computing system and communication control program

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06290158A (ja) * 1993-03-31 1994-10-18 Fujitsu Ltd 再構成可能なトーラス・ネットワーク方式
FI102344B1 (fi) * 1996-02-05 1998-11-13 Nokia Telecommunications Oy Integroitu puheenkoodaus
US6289021B1 (en) 1997-01-24 2001-09-11 Interactic Holdings, Llc Scaleable low-latency switch for usage in an interconnect structure
US6023753A (en) * 1997-06-30 2000-02-08 Billion Of Operations Per Second, Inc. Manifold array processor
US6961782B1 (en) * 2000-03-14 2005-11-01 International Business Machines Corporation Methods for routing packets on a linear array of processors
US6967950B2 (en) * 2000-08-11 2005-11-22 Texas Instruments Incorporated Pull transfers and transfer receipt confirmation in a datapipe routing bridge
GB2370380B (en) 2000-12-19 2003-12-31 Picochip Designs Ltd Processor architecture
GB2396446B (en) * 2002-12-20 2005-11-16 Picochip Designs Ltd Array synchronization
GB2398650B (en) * 2003-02-21 2006-09-20 Picochip Designs Ltd Communications in a processor array
TW200416522A (en) 2003-02-25 2004-09-01 Asustek Comp Inc Portable computer carrying desktop computer processor and power management method thereof
US7185138B1 (en) 2004-05-14 2007-02-27 Peter Galicki Multi-dimensional data routing fabric
US7401203B2 (en) * 2004-09-14 2008-07-15 International Business Machines Corporation Method for wiring allocation and switch configuration in a multiprocessor environment
WO2009028231A1 (ja) * 2007-08-24 2009-03-05 Nec Corporation 通信方法
GB2454865B (en) 2007-11-05 2012-06-13 Picochip Designs Ltd Power control
US20090313413A1 (en) * 2008-06-12 2009-12-17 Yariv Aridor method for wiring allocation and switch configuration in a multiprocessor environment
US8131975B1 (en) 2008-07-07 2012-03-06 Ovics Matrix processor initialization systems and methods
US7958341B1 (en) 2008-07-07 2011-06-07 Ovics Processing stream instruction in IC of mesh connected matrix of processors containing pipeline coupled switch transferring messages over consecutive cycles from one link to another link or memory
US8145880B1 (en) 2008-07-07 2012-03-27 Ovics Matrix processor data switch routing systems and methods
US8327114B1 (en) * 2008-07-07 2012-12-04 Ovics Matrix processor proxy systems and methods
GB2470037B (en) 2009-05-07 2013-07-10 Picochip Designs Ltd Methods and devices for reducing interference in an uplink
GB2470891B (en) 2009-06-05 2013-11-27 Picochip Designs Ltd A method and device in a communication network
GB2470771B (en) 2009-06-05 2012-07-18 Picochip Designs Ltd A method and device in a communication network
GB2474071B (en) 2009-10-05 2013-08-07 Picochip Designs Ltd Femtocell base station
GB2482869B (en) 2010-08-16 2013-11-06 Picochip Designs Ltd Femtocell access control
GB2489919B (en) 2011-04-05 2018-02-14 Intel Corp Filter
GB2489716B (en) 2011-04-05 2015-06-24 Intel Corp Multimode base system
GB2491098B (en) 2011-05-16 2015-05-20 Intel Corp Accessing a base station
KR102610984B1 (ko) * 2017-01-26 2023-12-08 한국전자통신연구원 토러스 네트워크를 이용하는 분산 파일 시스템 및 토러스 네트워크를 이용하는 분산 파일 시스템의 운영 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163176A (en) * 1980-12-29 1992-11-10 Raytheon Company All weather tactical strike system (AWTSS) and method of operation
US4645874A (en) * 1982-07-16 1987-02-24 At&T Bell Laboratories Message routing through data communication networks
US4933933A (en) * 1986-12-19 1990-06-12 The California Institute Of Technology Torus routing chip
US5008882A (en) * 1987-08-17 1991-04-16 California Institute Of Technology Method and apparatus for eliminating unsuccessful tries in a search tree
US5105424A (en) * 1988-06-02 1992-04-14 California Institute Of Technology Inter-computer message routing system with each computer having separate routinng automata for each dimension of the network
JP3072646B2 (ja) * 1989-03-20 2000-07-31 富士通株式会社 並列計算機間通信制御方式
US5218676A (en) * 1990-01-08 1993-06-08 The University Of Rochester Dynamic routing system for a multinode communications network
CA2024997A1 (en) * 1990-03-06 1991-09-07 David J. Pope Adaptive equalisers
US5278975A (en) * 1990-06-14 1994-01-11 Fujitsu Limited Synchronization control system in a parallel computer
US5228138A (en) * 1991-01-23 1993-07-13 Massachusetts Institute Of Technology Synchronization of hardware oscillators in a mesh-connected parallel processor

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7853147B2 (en) 2005-02-03 2010-12-14 Fujitsu Limited Information processing system, calculation node, and control method of information processing system
WO2008114440A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited 一意情報集団通信プログラム、コンピュータ、一意情報集団通信方法、および記録媒体
US8185656B2 (en) 2007-03-20 2012-05-22 Fujitsu Limited Process and computer for collectively transmitting unique messages, and recording medium storing a program for collectively transmitting unique messages
JP5056844B2 (ja) * 2007-03-20 2012-10-24 富士通株式会社 一意情報集団通信プログラム、計算ノード、および一意情報集団通信方法
US10430375B2 (en) 2009-09-01 2019-10-01 Fujitsu Limited Parallel computing system and communication control program
JP2013037723A (ja) * 2009-11-16 2013-02-21 Internatl Business Mach Corp <Ibm> ネットワークを構成している複数のノード(プロセッサ)間において、全対全通信(A2A:all−to−allcommunication)を含む、複数の計算処理をスケジューリングする方法、プログラム及び並列計算機システム。
US9251118B2 (en) 2009-11-16 2016-02-02 International Business Machines Corporation Scheduling computation processes including all-to-all communications (A2A) for pipelined parallel processing among plurality of processor nodes constituting network of n-dimensional space
JP2011108202A (ja) * 2009-11-20 2011-06-02 Fujitsu Ltd コンピュータ、プロセス間通信プログラム、およびプロセス間通信方法
JP2011141751A (ja) * 2010-01-07 2011-07-21 Nec Corp 並列コンピュータシステム、プロセッサ、同期装置、通信方法および通信支援方法
JP2014137732A (ja) * 2013-01-17 2014-07-28 Fujitsu Ltd 情報処理システム及び情報処理システムの制御方法

Also Published As

Publication number Publication date
EP0544532A3 (ja) 1995-05-17
AU2967892A (en) 1993-06-17
EP0544532B1 (en) 2001-10-24
AU658951B2 (en) 1995-05-04
US5826033A (en) 1998-10-20
EP0544532A2 (en) 1993-06-02
JP2601591B2 (ja) 1997-04-16

Similar Documents

Publication Publication Date Title
JPH05151181A (ja) 並列計算機およびその全対全通信方法
US5944779A (en) Cluster of workstations for solving compute-intensive applications by exchanging interim computation results using a two phase communication protocol
Lin et al. Multicast communication in multicomputer networks
KR101298367B1 (ko) 전송 기능을 갖는 메모리 노드를 서로 접속한 스토리지 장치 및 데이터 처리 방법
Adachi et al. The design of ultra scalable MPI collective communication on the K computer
US7239606B2 (en) Scalable configurable network of sparsely interconnected hyper-rings
EP0419201A2 (en) Communication control system between parallel computers
CN115567501A (zh) 基于PoS共识的web3 Dapp跨链系统及方法
Goldman et al. Exchanging messages of different sizes
JP2013145592A (ja) 転送機能を有するメモリノードを相互に接続したストレージ装置及びデータ処理方法
Fortier CRC Handbook of Local Area Network Software: Concepts and Technology
CN112925739A (zh) 应用于众核芯片的通信方法、众核芯片及存储介质
US9948543B2 (en) Mechanism to extend the remote get to do async rectangle broadcast on a rectangle with wild cards in the packet header
Papadopoulos et al. Coordination of distributed and parallel activities in the IWIM model
Ranade et al. Nearly tight bounds for wormhole routing
CN113688352B (zh) 一种数据处理系统、方法及装置
JP5628397B2 (ja) ストレージ装置
Ghatpande et al. Analysis of divisible load scheduling with result collection on heterogeneous systems
Isaiah et al. Mobile agents in distributed environment for information retrieval
Uehara Metabolic Computing: Towards Truly Renewable Systems
US8010771B2 (en) Communication system for controlling intercommunication among a plurality of communication nodes
de Cerio et al. A Systematic Approach to Develop Efficient Complete Exchange Algorithms for Meshes and Tori
JP2625300B2 (ja) データ通信ネットワークシステム
Fleury et al. Analysis of deadlock-free path-based wormhole multicasting in meshes in case of contentions
Jia Process cooperation in multiple message broadcast

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19961126

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080129

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090129

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100129

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110129

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110129

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120129

Year of fee payment: 15

EXPY Cancellation because of completion of term