JP3982634B2 - トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステム - Google Patents

トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステム Download PDF

Info

Publication number
JP3982634B2
JP3982634B2 JP2004298359A JP2004298359A JP3982634B2 JP 3982634 B2 JP3982634 B2 JP 3982634B2 JP 2004298359 A JP2004298359 A JP 2004298359A JP 2004298359 A JP2004298359 A JP 2004298359A JP 3982634 B2 JP3982634 B2 JP 3982634B2
Authority
JP
Japan
Prior art keywords
switch
port
external port
external
module configured
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.)
Expired - Fee Related
Application number
JP2004298359A
Other languages
English (en)
Other versions
JP2005174289A (ja
Inventor
ラリー・ジェイ・ストックメイヤー
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2005174289A publication Critical patent/JP2005174289A/ja
Application granted granted Critical
Publication of JP3982634B2 publication Critical patent/JP3982634B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies
    • G06F15/17381Two dimensional, e.g. mesh, torus

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Description

本発明は並列コンピュータに関し、詳細には、トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステムに関する。
マイクロプロセッサやメモリなどのコンピュータ・ハードウェアのコストが減少し、コンピュータによる解決を必要とする問題の複雑さが増大するにつれて、並列計算処理がますます重要になってきている。並列コンピュータは、通常、密結合多重プロセッサ、すなわち、ケーブルによって相互接続され、単一のオペレーティング・システムの下で稼動するマイクロプロセッサの集合体を使用する。これは、それぞれがそれ自体のオペレーティング・システムを有するいくつかの単一プロセッサ・コンピュータが(イーサネット(R)などの)ネットワークで接続される、疎結合多重コンピュータと対照をなす。
密結合プロセッサ
効率を高めるために、密結合多重プロセッサ中の単一のマイクロプロセッサ(以後「プロセッサ」という)のハードウェアは、普通、以下の2部分に分けられる。
(1)多重プロセッサを含む並列コンピュータ上で動作するプログラムの処理を実行するのに使用される処理装置(以後「PU」という)、および
(2)そのプロセッサとコンピュータ中の他のプロセッサの間のやりとりを処理するのに使用されるスイッチ。
各プロセッサにおいて、PUおよびスイッチは論理的に結合される。通常、PUおよびスイッチは電気的に結合される。
スイッチ
各スイッチは、ある数の外部ポートおよび内部ポートを有する。図1にPU112およびスイッチ114に分けられた従来技術のプロセッサ110を示す。スイッチ114は、E1、E2、E3、E4とラベル付けされた4つの外部ポート、およびI1、I2とラベル付けされた2つの内部ポートを含む。あるスイッチの外部ポートは、別のスイッチの外部ポートにケーブルで接続され得る。各外部ポートには1本のケーブルだけしか接続できない。外部ポートにケーブルが接続されないこともあり得る。2つの内部ポートI1およびI2は、スイッチ114などのスイッチを、PU112などのPUに接続する。スイッチは、それ自体の(内部および外部)ポート対間の内部接続を行うことができ、しがたって、異なるPU間のケーブル接続を行うことができる。
典型的なスイッチ114は、少なくとも4つの外部ポート、少なくとも2つの内部ポート、およびフル・クロスバーのスイッチング機能を含み、スイッチの各ポートを任意の対にすることを考えると、このスイッチは、各対の2ポートを接続するように設定され得る。
スイッチ接続
各スイッチは、相互接続することができる。例えば、従来技術の図2には、2つのプロセッサ(PU/スイッチ組合せ)110および120が示され、プロセッサ120はPU122およびスイッチ124を含む。スイッチ114は、図2に示すように、ポートE1とポートI1、ポートE4とポートI2を接続するように設定される。スイッチ124は、図2に示すように、ポートE1とポートI1、ポートE2とポートI2、およびポートE3とポートE4を接続するように設定される。スイッチ114のポートE4とスイッチ124のポートE1の間のケーブル130も示されている。結果として、スイッチ114のポートI2はスイッチ124のポートI1に接続され、したがってそれら2つのPUを接続する。
ポートJとポートKの間の接続は対(J、K)で表される。スイッチの設定は、その各ポート間の接続の集合であり、各ポートは多くとも1つの接続対に出現するにすぎない。例えば、図2のスイッチ114の設定は、集合{(E1,I1),(E4,I2)}で表される。この図でのスイッチ124の設定は、集合{(E1,I1),(E2,I2),(E3,E4)}で表される。
接続の集合は空であることもあり、それは、そのスイッチのどのポートも相互に接続されていないことを示す。接続はスイッチ設定に動的に付加することも、そこから除去することも可能である。接続はいつでも除去することができる。
接続が付加され得るのは、その接続が、すでに既存の接続によって使用されているスイッチのポートを使用しない場合だけである。例えば、図2のスイッチ114の設定{(E1,I1),(E4,I2)}には、接続(E2、E3)が付加され得る。しかし、接続(E1、E3)は付加され得ない。というのは、図2のスイッチ114の設定では、ポートE1はすでに接続(E1、I1)によって使用されているからである。
相互接続アーキテクチャ
物理的制約のために、各スイッチは少数のポートだけしか持つことができず、そのため、1つのスイッチ(したがってそのPU)は、少数の他のスイッチ(PU)だけにしか直接接続され得ない。物理的制約と電気的制約とのために、各ケーブルの長さが何らかの指定された量を超えられないこともある。ケーブルが外部ポート間に配置される方式は、そのコンピュータの相互接続アーキテクチャを形成する。すなわち、それらのケーブルの配置は固定される。(ケーブルがポートに差込み可能な場合であっても、ケーブルの配置が変更されると、それは別の相互接続アーキテクチャを構成することになる。)
セルラー構造
プロセッサは、通常、しばしばセルラー構造と呼ばれる規則的な構造で配列される。1つの非常に一般的なセルラー構造では、プロセッサは1次元、2次元、または3次元配列のセルに配置される。配列は、各次元でのコンピュータの長さを指定することによって定義され、その長さはプロセッサの数によって与えられる。例えば、2次元配列の場合には、その2つの次元をXとYとすると、配列はX次元の長さLとY次元の長さLによって指定される。この配列は合計L×L個のプロセッサを含む。例えば、図3に、合計20個のプロセッサを含むL=5、L=4の2次元配列140を示す。配列中の各プロセッサは、図3に示すように、その配列中の座標によって識別される。これらの座標は、そのプロセッサを含むPUおよびスイッチも識別する。3次元配列では、各プロセッサ(PUおよびスイッチ)は、そのプロセッサのそれぞれX次元、Y次元、Z次元での座標を与える3座標の組合せ(x、y、z)によって識別される。
スイッチの外部ポートの接続
コンピュータの相互接続アーキテクチャは、各スイッチの外部ポート間でケーブルが配置される方式を指定する。通常、ケーブリングは各次元ごとに別々になされる。例えば、3次元配列の場合には、スイッチは、Xスイッチ、Yスイッチ、Zスイッチに分けられ、それぞれがそれ自体の4外部ポート、2内部ポートを備える。ケーブルは、2つのスイッチが同じ次元を持つ(両方がXスイッチであるなどの)場合に限り、あるスイッチの外部ポートを別のスイッチの外部ポートに接続することができる。
また、各次元の分離と共に、コンピュータは各次元での1次元の「ライン」にも分けられる。1ライン内では、1つを除くすべての座標が定数値を有し、定数以外の座標は、その座標の可能なすべての値をとる。例えば、図4には、座標yが1に固定されているXライン152、および座標xが4に固定されているYライン154が示されている。
コンピュータが単純で規則的な構造を持つために、次元Xを例にとると、ケーブルは同じXラインに属するスイッチ間だけに配置され、コンピュータ中のすべてのXラインは、通常、同じケーブリング構造を有する。例えば、長さL×L×Lの3次元コンピュータでは、X次元でのケーブリング(同じXラインに属するXスイッチ間に配置されるケーブル)は長さLの1ラインのケーブリングによって指定される。この1ラインのケーブリングはそのコンピュータ中のすべてのXラインに複製される。したがって、この種の「規則的」コンピュータでのケーブリング・アーキテクチャを指定するには、長さLのラインでのケーブリング、長さLのラインでのケーブリング、長さLのラインでのケーブリングの3つのケーブリングを指定すれば十分である。
メッシュおよびトーラス相互接続アーキテクチャ
2つの一般的な従来技術の相互接続アーキテクチャが、メッシュ・アーキテクチャおよびトーラス・アーキテクチャである。例えば、図5に示すように、従来技術のメッシュ・アーキテクチャ160は、スイッチ161、162、163、164、165、166、167、168を含む。また、例えば、図6に示すように、従来技術のトーラス・アーキテクチャ170は、スイッチ171、172、173、174、175、176、177、178を含む。
再び次元Xを例にとると、メッシュ・アーキテクチャ160では、1Xライン中のXスイッチは直線式に、すなわち、スイッチ161、162、163、164、165、166、167、168として接続される。トーラス・アーキテクチャ170では、Xスイッチは巡回式に、すなわち、171、173、175、177、178、176、174、172、から171に戻るように接続される。図5および6には長さ8のラインでのメッシュおよびトーラスが示されているが、これらが任意の長さのラインにどのように適用され得るかは明らかである。
トーラス・アーキテクチャ170は、スイッチ161とスイッチ168の間にケーブルを付加することによってメッシュ・アーキテクチャ160から得ることもできるはずである。しかし、これは、ケーブルの長さの制限に違反することになる可能性が高い。ケーブルを短く保つには、図6に示すようにそのサイクルが「折り畳まれる」。
メッシュおよびトーラスは、図5および6でのラインのメッシュおよびトーラス・ケーブリングを、そのコンピュータ中のすべてのXライン、Yライン、Zラインにそれぞれ複製することによって、2次元および3次元配列に定義される。
区画化
相互接続アーキテクチャの有用性での重要な一要因は、それがコンピュータをいくつかの独立部分に区画化する際の柔軟性である。区画化は、いくつかのプログラム、あるいは「ジョブ」をコンピュータ上で同時に走らせる際に重要である。ジョブの実行を開始するときに、ユーザは「区画」、すなわちそのジョブ専用に使用されるコンピュータの部分を指定する。「ユーザ」は、人間のユーザ、またはジョブ・スケジューラなどのシステム・ソフトウェアの一部とすることができる。コンピュータの1区画とは、1ジョブによって使用される1組のPUである。
PUの指定
区画Pは、各次元ごとに、X次元での座標の集合P、Y次元での座標の集合P、Z次元での座標の集合Pを与えることによって指定される。したがって、座標(x、y、z)のPUは、xがPに属し、yがPに属し、zがPに属する場合に限り、区画Pに属する。言い換えると、PUの座標の集合は、P、PおよびPのデカルト積である。例えば、8×8×8の3次元コンピュータでは、ユーザは、X次元での集合P={3,4}、Y次元での集合P={3,5}、Z次元での集合P={1}によって1区画を指定することができる。この区画に属するPUは、座標(3、3、1)、(3、5、1)、(4、3、1)、(4、5、1)のPUである。
各区画は、ジョブが開始、終了するときに、それぞれ、動的に形成され、解除される。あるジョブが別のジョブを妨害するのを防ぐために、異なるジョブは同じPUも、同じケーブルも使用することができない。異なるジョブは同じスイッチを使用できるが、スイッチの使用は、異なるジョブが同じPUまたはケーブルを使用できないという要件によって制限される。
接続タイプの指定
区画中のPUを指定する以外に、ユーザは、区画の接続タイプ、すなわちアーキテクチャも指定する。2つの非常に一般的な接続タイプがメッシュ・アーキテクチャおよびトーラス・アーキテクチャである。接続タイプの指定は、ユーザがコンピュータの1区画を取得している場合、そのユーザは、自分の区画がそのコンピュータ全体の小規模バージョン「に見える」ようにしようとすることを示すものである。
メッシュ・アーキテクチャ
メッシュ・アーキテクチャ160などのメッシュ・アーキテクチャは、あらゆる区画が、スイッチを適正に設定することによって(一般に、より小さい)メッシュとして相互接続され得るという望ましい特性を有する。例えば、図7には、区画{163,164,166,167}が、接続180、181、182、183、184、185、186、187、188、189、190を介して従来技術のメッシュとして相互接続されるために各スイッチがどのように設定されるかが示されている。より詳細には、図7は、区画{163,164,166,167}が、内部結合180、182、183、185、187、188、190および外部接続181、184、186、189を介して従来技術のメッシュとして相互接続されるために各スイッチがどのように設定されるかを示すものである。図7には、PU164と166など2つのPU間の接続が、外部接続184と186など連続する2つ以上の外部接続によってなされ得ることも示されている。PU165は、PU165が(a)別の既存の区画に属していた場合、あるいは(b)故障していた場合には、「スキップ」され得る。外部接続は、ケーブル、光ファイバ、または別のタイプの電磁的結合を用いて実装され得る。
より一般的には、2つの異なる区画が「オーバーラップ」しないという条件で、それぞれがメッシュとして相互接続された、複数の区画が同時に存在し得る。より正確には、1次元区画(座標の集合)のスパンは、その区画中の最小の座標とその区画中の最大の座標とを含むそれらの間にある座標の集合であると定義される。例えば、区画{163,164,166,167}のスパンは{163,164,165,166,167}である。2つの区画がオーバーラップしないという要件は、それらのスパンが共通の座標を含まないことである。
多次元設定中のオーバーラップ区画は、1次元の場合のオーバーラップ区画を一般化したものである。3次元の場合には、例えば、3次元区画Pが、座標集合P、P、Pのデカルト積によって定義される場合には、Pのスパンは、Pのスパン、Pのスパン、Pのスパンのデカルト積になる。2つの3次元区画PおよびQは、PのスパンとQのスパンが共通の座標を含む場合には、オーバーラップする。PがP、P、Pによって定義され、QがQ、Q、Qによって定義される場合、PおよびQは、PとQがオーバーラップし、PとQがオーバーラップし、あるいはPとQがオーバーラップする場合には、オーバーラップする。
トーラス・アーキテクチャ
図6のトーラス・アーキテクチャ170などのトーラス・アーキテクチャは、複数の非オーバーラップ区画中のあらゆる区画が(より小さい)トーラスの相互接続構造を持つように構成され得るという望ましい特性を持たない。図示のように、これは、サイズ2以上の任意の2区画について当てはまる。例えば、区画{171,172}はトーラスとして相互接続され得るが、それはライン中のケーブルすべてを使用した場合だけである。したがって、この区画は、例えば、{176,177}など、サイズが少なくとも2の任意のトーラス相互接続区画と同時に存在し得ない。
使用される接続数
がXラインの区画であるとし、NがP中の座標の数であるとすると、N≧2の場合には、Pの任意のトーラス相互接続は、Xライン中で少なくともN個の外部接続、またはケーブルを使用する。同じことがY次元とZ次元にも当てはまる。
区間区画
あるラインの1次元区画Pは、Pが{173,174,175,176,177}などの連続した座標の集合である場合には、区間区画である。ある配列の3次元区画Pは、P、PおよびPがすべて1次元区間区画である場合には、区間区画である。Pは、PのスパンがPそれ自体と同じである場合に限り区間区画である。
したがって、トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステムが求められている。
本発明は、トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法およびシステムを提供し、(a)プロセッサのそれぞれは処理装置およびスイッチを含み、(b)スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、(c)L個のプロセッサはR個の非オーバーラップ区画を含み、(d)区画のそれぞれは、プロセッサのうちの少なくとも1つの処理装置を含み、(e)Lは2以上の整数、Rは1以上の整数である。例示的実施形態では、この方法およびシステムは、(1)L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチを拡張トーラス・アーキテクチャで接続すること、および(2)区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定することを含む。
例示的実施形態では、接続することは、スイッチ1の第1の外部ポートとスイッチ2の第1の外部ポートを結合することを含む。別の実施形態では、接続することは、(a)L≧3の場合には、第(L−1)のスイッチの第4の外部ポートと第Lのスイッチの第4の外部ポートを接続すること、(b)1≦i≦L−1(iは整数)の場合には、第iのスイッチの第3の外部ポートと第(i+1)のスイッチの第2の外部ポートを接続すること、および(c)1≦i≦L−2(iは整数)の場合には、第iスイッチの第4の外部ポートと第(i+2)スイッチの第1の外部ポートを接続することを含む。具体的実施形態では、接続することは、L個のスイッチをケーブルで接続することを含む。
例示的実施形態では、設定することは、区画のスパンを計算することを含む。例示的実施形態では、計算することは、(a)区画中の最小座標、MINを探索すること、(b)区画中の最大座標、MAXを決定すること、および(c)その区画のスパンが座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定することを含む。別の実施形態では、計算することは、区画のスパンが厳密に1つの座標を含み、iがそのスパンに属する1座標である場合には、第iのスイッチの第1の内部ポートと第2の内部ポート(I1、I2)を接続することを含む。
別の実施形態では、計算することは、区画のスパンが厳密に2つの座標を含み、iおよびi+1がそのスパンに属する2座標である場合には、(1)i=1の場合は、(a)第1のスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続すること、(b)第1のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続すること、(c)第2のスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続すること、および(d)第2のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続することを、(2)i=L−1の場合は、(a)第(L−1)のスイッチの第3の外部ポートと第1の内部ポート(E3、I1)を接続すること、(b)第(L−1)のスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続すること、第Lのスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続すること、および(d)第Lのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続することを、(3)それ以外で、2≦i≦L−2の場合は、(a)第(i−1)のスイッチの第3の外部ポートと第4の外部ポート(E3、E4)を接続すること、(b)第iのスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続すること、(c)第iのスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続すること、(d)第(i+1)のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続すること、および(e)第(i+1)のスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続することを含む。
更に別の実施形態では、計算することは、区画のスパンが厳密に3つの座標を含み、i、i+1、i+2がそのスパンに属する3座標である場合には、(1)第iのスイッチの第3の外部ポートと第1の内部ポート(E3、I1)を接続すること、(2)第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続すること、(3)第(i+2)のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続すること、(4)第(i+2)のスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続すること、(5)(i+1)がその区画に属する場合には、(a)第(i+1)のスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続すること、および(b)第(i+1)のスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続すること、(6)(i+1)がその区画に属さない場合には、第(i+1)のスイッチの第2の外部ポートと第3の外部ポート(E2、E3)を接続することを含む。
また更に別の実施形態では、計算することは、区画のスパンが少なくとも4座標を含み、各座標iがMIN≦i≦MAXである場合には、(1)i=MINの場合は、(a)第iのスイッチの第3の外部ポートと第1の内部ポート(E3、I1)を接続すること、および(b)第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続することを、(2)i=MAXの場合は、(a)第iのスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続すること、および(b)第iのスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続することを、(3)i=MIN+1かつiがその区画に属する場合は、(a)第iのスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続すること、および第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続することを、(4)i=MIN+1かつiがその区画に属さない場合は、第iのスイッチの第2の外部ポートと第4の外部ポートを接続することを、(5)i=MAX−1かつiがその区画に属する場合は、(a)第iのスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続すること、および(b)第iのスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続することを、(6)i=MAX−1かつiがその区画に属さない場合は、第iのスイッチの第1の外部ポートと第3の外部ポート(E1、E3)を接続することを、(7)MIN+2≦i≦MAX−2かつiがその区画に属する場合は、(a)第iのスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続すること、および(b)第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続することを、(8)MIN+2≦i≦MAX−2かつiがその区画に属さない場合は、第iのスイッチの第1の外部ポートと第4の外部ポート(E1、E4)を接続することを含む。
例示的実施形態では、この方法およびシステムは、L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチを拡張トーラス・アーキテクチャで接続することを含む。例示的実施形態では、接続することは、スイッチ1の第1の外部ポートとスイッチ2の第1の外部ポートを接続することを含む。別の実施形態では、接続することは、(a)L≧3の場合は、第(L−1)のスイッチの第4の外部ポートと第Lのスイッチの第4の外部ポートを接続すること、(b)1≦i≦L−1(iは整数)の場合は、第iのスイッチの第3の外部ポートと第(i+1)のスイッチの第2の外部ポートを接続すること、および(c)1≦i≦L−2(iは整数)の場合は、第iのスイッチの第4の外部ポートと第(i+2)のスイッチの第1の外部ポートを接続することを含む。具体的実施形態では、接続することは、L個のスイッチをケーブルで接続することを含む。別の実施形態では、この方法およびシステムは、区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定することを含む。
本発明は、トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法およびシステムを提供し、(a)プロセッサのそれぞれは、処理装置およびスイッチを含み、(b)スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、(c)L個のプロセッサはR個の非オーバーラップ区画を含み、(d)各区画のそれぞれはプロセッサのうちの少なくとも1つの処理装置を含み、(e)Lは2以上の整数、Rは1以上の整数であり、(f)L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチは拡張トーラス・アーキテクチャで接続される。例示的実施形態では、この方法およびシステムは、区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定することを含む。
本発明は、トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する読取り可能なプログラム・コードが実施された、プログラマブル・コンピュータと共に使用可能なコンピュータ・プログラム製品を提供し、各プロセッサのそれぞれは処理装置およびスイッチを含み、スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、L個のプロセッサはR個の非オーバーラップ区画を含み、各区画のそれぞれはプロセッサのうちの少なくとも1つの処理装置を含み、Lは2以上の整数、Rは1以上の整数である。例示的実施形態では、このコンピュータ・プログラム製品は、(1)L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチを拡張トーラス・アーキテクチャで接続するためのコンピュータ可読コード、および(2)区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定するためのコンピュータ可読コードを含む。
本発明は、トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステムを提供する。例示的実施形態では、この方法およびシステムは、メッシュ・アーキテクチャ160などのメッシュ・アーキテクチャ、およびトーラス・アーキテクチャ170などのトーラス・アーキテクチャ中のスイッチの空き外部ポートを利用して、メッシュ・アーキテクチャおよびトーラス・アーキテクチャにはない有用な特性を備える相互接続アーキテクチャを実現する。例示的実施形態では、本発明は、トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法およびシステムを提供し、(a)プロセッサのそれぞれは処理装置およびスイッチを含み、(b)スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、(c)L個のプロセッサはR個の非オーバーラップ区画を含み、(d)区画のそれぞれは、プロセッサのうちの少なくとも1つの処理装置を含み、(e)Lは2以上の整数、Rは1以上の整数である。例示的実施形態では、この方法およびシステムは、(1)L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチを拡張トーラス・アーキテクチャで接続すること、および(2)区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定することを含む。
図12を参照すると、例示的実施形態では、本発明は、L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチを拡張トーラス・アーキテクチャで接続するステップ610、および各区画のそれぞれを相互接続するために接続されたL個のスイッチを設定するステップ612を含む。
スイッチの相互接続
例示的実施形態では、この方法およびシステムは、図8に、長さL=8個の対応するPUおよび8個の対応するスイッチ171、172、173、174、175、176、177、178を含む8プロセッサ(Lは2以上の整数)の例示的ラインで示すように、各スイッチの外部ポート間のL個のスイッチを拡張トーラス・アーキテクチャで相互接続することを含む。例示的実施形態では、各スイッチはケーブルで相互接続される。
例示的実施形態では、この方法およびシステムは、スイッチのすべてで外部ポートを接続する。例示的実施形態では、この方法およびシステムは、図8の接続210で例示するように、スイッチ171などのスイッチ1のポートE1とスイッチ172などのスイッチ2のポートE1を接続する。例示的実施形態では、L≧3の場合、この方法およびシステムは、220で例示するように、スイッチ177などのスイッチ(L−1)のポートE4とスイッチ178などのスイッチLのポートE4を接続する。例示的実施形態では、1≦i≦L−1であるすべての数iについて、この方法およびシステムは、接続230、231、232、233、234、235、236のように、スイッチiのポートE3とスイッチ(i+1)のポートE2を接続する。例示的実施形態では、1≦i≦L−2であるすべての数iについて、この方法およびシステムは、接続240、241、242、243、244、245のように、スイッチiのポートE4とスイッチ(i+2)のポートE1を接続する。具体的実施形態では、この方法およびシステムは、ケーブルで各ポートを接続する。
各スイッチには、多くとも4つのケーブルがそのスイッチの外部ポートに接続されるにすぎない。例示的実施形態では、各スイッチは、この方法およびシステムが適用される前は、最初に、少なくとも4つの空き外部ポートを有する。
図13を参照すると、例示的実施形態では、接続するステップ610は、スイッチ1の第1の外部ポートとスイッチ2の第1の外部ポートを結合するステップ710を含む。別の実施形態では、図14に示すように、接続するステップ610は、L≧3の場合は、第(L−1)のスイッチの第4の外部ポートと第Lのスイッチの第4の外部ポートを接続するステップ722と、1≦i≦L−1(iは整数)の場合は、第iのスイッチの第3の外部ポートと第(i+1)のスイッチの第2の外部ポートを接続するステップ724と、1≦i≦L−2(iは整数)の場合、第iのスイッチの第4の外部ポートと第(i+2)のスイッチの第1の外部ポートを接続するステップ726とを含む。具体的実施形態では、図15に示すように、接続するステップ610は、L個のスイッチをケーブルで接続するステップ732を含む。
スイッチの設定
例示的実施形態では、この方法およびシステムは、少なくとも1つの区画Pについて、その少なくとも1つの区画Pをトーラスとして相互接続するために、拡張トーラス・アーキテクチャ200などのトーラス・アーキテクチャで相互接続されているL個のスイッチを設定することを含む。本発明に従って相互接続されているスイッチのライン中の任意の複数の非オーバーラップ区画について、それらのスイッチは、個々の区画に属するPUがトーラスとして相互接続されるように設定される。例えば、図9には、区画{171}、{172,173,174,175}、および{176,177,178}について、これら3区画のそれぞれがトーラスとして相互接続されて、スイッチ設定300を生じるために、171、172、173、174、175、176、177、178がどのように設定されるかが示されている。これらの区画の1つによって使用されるケーブルおよびスイッチ接続を太線で示してある。
図10に、スイッチ174などのスイッチを使用して2つの異なる区画、すなわち、区画{171,172,173,174}と{175,176}のための相互接続が形成されるようなスイッチ設定400を生じる区画{171,172,173,174}、{175,176}、および{177,178}の例を示す。
図11に、スイッチ設定500を生じる区画{171,173,175,176}および{177,178}の例を示す。スイッチ設定500は、Pのスパンが{171,172,173,174,175,176}である場合など、PのスパンがP自体より大きい、{171,173,175,176}などの区画Pにトーラス相互接続を形成するために、この方法およびシステムが(a)Pのスパンにトーラス相互接続を形成し、(b)次いで、スイッチcを、Pのスパン内にあるがP自体にはないすべてのcについて、変更されたスイッチ設定がPUcを迂回するようにリセットする。
例示的実施形態では、この方法およびシステムはPのスパンを、(1)MINと呼ばれる、P中の最小座標を探索し、(2)MAXと呼ばれる、P中の最大座標を探索し、(3)S(Pのスパン)が、MIN≦i≦MAXである座標iの集合と等しくなるように設定することによって計算する。例示的実施形態では、Sが厳密に1座標を含む場合には、この方法およびシステムは、そのスパンに属する座標であるiを用いて、図9の接続310のように、スイッチiの設定に接続(I1、I2)を付加する。
図16を参照すると、例示的実施形態では、設定するステップ612は、区画のスパンを計算するステップ810を含む。図17を参照すると、例示的実施形態では、計算するステップ810は、区画中の最小座標、MINを探索するステップ822と、区画中の最大座標、MAXを決定するステップ824と、区画のスパンを座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するステップ826とを含む。
厳密に1座標を含むS
別の実施形態では、図18に示すように、計算するステップ810は、区画のスパンが厳密に1座標を含み、iがそのスパンに属する1座標である場合には、第iのスイッチの第1の内部ポートおよび第2の内部ポート(I1、I2)を接続するステップ910を含む。
厳密に2座標を含むS
例示的実施形態では、Sが厳密に2座標を含み、iおよびi+1がそのスパンSに属する2座標である場合には、(1)i=1の場合は、この方法およびシステムは、(a)スイッチ1の設定に接続(E3、I2)および(E1、I1)を付加し、(b)スイッチ2の設定に接続(E2、I2)および(E1、I1)を付加し、(2)i=L−1の場合は、この方法およびシステムは、(a)スイッチ(L−1)の設定に、それぞれ、図10のスイッチ177での接続410および412のように、接続(E3、I1)および(E4、I2)を付加し、(b)スイッチLの設定に、それぞれ、図10のスイッチ178での接続414および416のように、接続(E2、I1)および(E4、I2)を付加し、(3)それ以外で、2≦i≦L−2の場合は、この方法およびシステムは、(a)スイッチ(i−1)の設定に、図10のスイッチ174での接続420のように、接続(E3、E4)を付加し、(b)スイッチiの設定に、図10のスイッチ175での接続422および424のように、接続(E2、I1)および(E3、I2)を付加し、(c)スイッチ(i+1)の設定に、図10のスイッチ176での接続426および428のように、接続(E1、I1)および(E2、I2)を付加する。
別の実施形態では、図19に示すように、計算するステップ810は、区画のスパンが厳密に2座標を含み、iおよびi+1がそのスパンに属する2座標であり、i=1である場合には、(a)第1のスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続し、(b)第1のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続し、(c)第2のスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続し、(d)第2のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続するステップ1012を含む。
別の実施形態では、図20に示すように、計算するステップ810は、区画のスパンが厳密に2座標を含み、iおよびi+1がそのスパンに属する2座標であり、i=L−1である場合には、(a)第(L−1)のスイッチの第3の外部ポートと第1の内部ポート(E3、I1)を接続し、(b)第(L−1)のスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続し、(c)第Lのスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続し、(d)第Lのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続するステップ1022を含む。
別の実施形態では、図21に示すように、計算するステップ810は、区画のスパンが厳密に2座標を含み、iおよびi+1がそのスパンに属する2座標であり、2≦i≦L−2である場合には、(a)第(i−1)のスイッチの第3の外部ポートと第2の外部ポート(E3、E4)を接続し、(b)第iのスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続し、(c)第iのスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続し、(d)第(i+1)のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続し、(e)第(i+1)のスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続するステップ1032を含む。
厳密に3座標を含むS
例示的実施形態では、Sが厳密に3座標を含み、i、i+1、i+2がそのスパンに属する3座標である場合には、この方法およびシステムは、(1)スイッチiの設定に、図9のスイッチ176での接続320および322のように、接続(E3、I1)および(E4、I2)を付加し、(2)スイッチ(i+2)の設定に、図9のスイッチ178での接続330および332のように、接続(E1、I1)および(E2、I2)を付加し、(3)(i+1)が区画Pに属する場合には、スイッチ(i+1)の設定に、図9のスイッチ177での接続340および342のように、接続(E2、I1)および(E3、I2)を付加し、(4)(i+1)が区画Pに属さない場合には、スイッチ(i+1)の設定に、接続(E2、E3)を付加する。
別の実施形態では、図22に示すように、計算するステップ810は、区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンの属する3座標である場合には、第iのスイッチの第3の外部ポートと第1の内部ポート(E3、I1)を接続するステップ1112と、区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンの属する3座標である場合には、第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続するステップ1114と、区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンの属する3座標である場合には、第(i+2)のスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続するステップ1116と、区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンの属する3座標である場合には、第(i+2)のスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続するステップ1118を含む。
別の実施形態では、図23に示すように、計算するステップ810は、区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンの属する3座標であり、(i+1)がその区画に属する場合には、(a)第(i+1)のスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続し、(b)第(i+1)のスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続するステップ1122と、区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンの属する3座標であり、(i+1)がその区画に属さない場合には、第(i+1)のスイッチの第2の外部ポートと第3の外部ポート(E2、E3)を接続するステップ1124とを含む。
少なくとも4座標を含むS
例示的実施形態では、Sが少なくとも4座標を含み、各座標iがMIN≦i≦MAXである場合には、(1)i=MINの場合は、この方法およびシステムはスイッチiの設定に、図10のスイッチ171での接続430および432などの接続(E3、I1)および(E4、I2)を付加し、(2)i=MANの場合は、この方法およびシステムはスイッチiの設定に、図10のスイッチ174での接続440および442などの接続(E1、I1)および(E2、I2)を付加し、(3)i=MIN+1かつiがPに属する場合は、この方法およびシステムはスイッチiの設定に、スイッチ172での接続450および452などの接続(E2、I1)および(E4、I2)を付加し、(4)i=MIN+1かつiがPに属さない場合は、この方法およびシステムはスイッチiの設定に、図11のスイッチ172での接続510などの接続(E2、E4)を付加し、(5)i=MAX−1かつiがPに属する場合は、この方法およびシステムはスイッチiの設定に、図10のスイッチ173での接続460および462などの接続(E1、I1)および(E3、I2)を付加し、(6)i=MAX−1かつiがPに属さない場合は、この方法およびシステムはスイッチiの設定に接続(E1、E3)を付加し、(7)MIN+2≦i=MAX−2かつiがPに属する場合は、この方法およびシステムはスイッチiの設定に、図11のスイッチ173での接続520および522などの接続(E1、I1)および(E4、I2)を付加し、(8)MIN+2≦i=MAX−2かつiがPに属さない場合は、この方法およびシステムはスイッチiの設定に、図11のスイッチ174での接続530などの接続(E1、E4)を付加する。
別の実施形態では、図24に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、i=MINである場合には、(a)第iのスイッチの第3の外部ポートと第1の内部ポート(E3、I1)を接続し、(b)第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続するステップ1212を含む。
別の実施形態では、図25に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、i=MAXである場合には、(a)第iのスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続し、(b)第iのスイッチの第2の外部ポートと第2の内部ポート(E2、I2)を接続するステップ1222を含む。
別の実施形態では、図26に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、i=MIN+1かつiがその区画に属する場合には、(a)第iのスイッチの第2の外部ポートと第1の内部ポート(E2、I1)を接続し、(b)第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続するステップ1232を含む。
別の実施形態では、図27に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、i=MIN+1かつiがその区画に属さない場合には、第iのスイッチの第2の外部ポートと第4の外部ポート(E2、E4)を接続するステップ1242を含む。
別の実施形態では、図28に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、i=MAX−1かつiがその区画に属する場合には、(a)第iのスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続し、(b)第iのスイッチの第3の外部ポートと第2の内部ポート(E3、I2)を接続するステップ1252を含む。
別の実施形態では、図29に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、i=MAX−1かつiがその区画に属さない場合には、第iのスイッチの第1の外部ポートと第3の外部ポート(E1、E3)を接続するステップ1262を含む。
別の実施形態では、図30に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、MIN+2≦i≦MAX−2かつiがその区画に属する場合には、(a)第iのスイッチの第1の外部ポートと第1の内部ポート(E1、I1)を接続し、(b)第iのスイッチの第4の外部ポートと第2の内部ポート(E4、I2)を接続するステップ1272を含む。
別の実施形態では、図31に示すように、計算するステップ810は、区画のスパンが、各座標iがMIN≦i≦MAXである少なくとも4座標を含み、MIN+2≦i≦MAX−2かつiがその区画に属さない場合には、第iのスイッチの第1の外部ポートと第4の外部ポート(E1、E4)を接続するステップ1282を含む。
代替のスイッチ設定
例示的実施形態では、コンピュータのハードウェア設計に応じて、スイッチの設定への変更が必要とされることがある。例えば、特定のスイッチにあるポートI1およびI2への接続を入れ替える必要があることもある。例えば、Sが厳密に2座標を含み、iおよびi+1がそのスパンSに属する2座標であり、i=1である場合には、この方法およびシステムは、接続(E3、I2)および(E1、I1)ではなく、接続(E3、I1)および(E1、I2)を付加する。
スイッチの接続
図32を参照すると、例示的実施形態では、本発明は、L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチを拡張トーラス・アーキテクチャで接続するステップ1310を含む。図33を参照すると、例示的実施形態では、接続するステップ1310は、スイッチ1の第1の外部ポートとスイッチ2の第1の外部ポートを結合するステップ1322を含む。別の実施形態では、図34に示すように、接続するステップ1310は、L≧3の場合は、第(L−1)のスイッチの第4の外部ポートと第Lのスイッチの第4の外部ポートを接続するステップ1332と、1≦i≦L−1(iは整数)の場合は、第iのスイッチの第3の外部ポートと第(i+1)のスイッチの第2の外部ポートを接続するステップ1334と、1≦i≦L−2(iは整数)の場合は、第iのスイッチの第4の外部ポートと第(i+2)のスイッチの第1の外部ポートを接続するステップ1336とを含む。具体的実施形態では、図35に示すように、接続するステップ1310は、ケーブルでL個のスイッチを接続するステップ1342を含む。別の実施形態では、図36に示すように、本発明は、区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定するステップ1352を含む。例示的実施形態では、設定するステップ1352は、設定するステップ612を含む。
スイッチの設定
例示的実施形態では、本発明は、トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法およびシステムを提供し、(a)プロセッサのそれぞれは処理装置およびスイッチを含み、(b)スイッチは第1の外部ポート、および第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、第2の内部ポートを含み、(c)L個のプロセッサはR個の非オーバーラップ区画を含み、(d)区画のそれぞれはプロセッサのうちの少なくとも1つの処理装置を含み、(e)Lは2以上の整数、Rは1以上の整数であり、(f)L個のスイッチの外部ポート間のL個のプロセッサのL個のスイッチは拡張トーラス・アーキテクチャで接続される。図37を参照すると、例示的実施形態では、本発明は、区画のそれぞれをトーラスとして相互接続するために接続されたL個のスイッチを設定するステップ1410を含む。例示的実施形態では、設定するステップ1410は設定するステップ612を含む。
多次元配列
スイッチの相互接続
例示的実施形態では、この方法およびシステムは、PUおよびスイッチを備えるプロセッサのn次元配列(nは2以上の整数)でスイッチを相互接続することを含む。例えば、n=3次元配列では、この方法およびシステムは、(1)1Xライン、1Yライン、および1Zラインでのスイッチを相互接続し、(2)次いで、その結果生じる相互接続を、その配列のすべてのXライン、すべてのYライン、およびすべてのZラインに複製する。
スイッチの設定
例示的実施形態では、スイッチの設定は、PUおよびスイッチを備えるプロセッサのn次元配列(nは2以上の整数)に適用される。P、P、Pによって指定される区画を仮定すると、この方法およびシステムは、(1)1次元区画Pを用いたスイッチの設定を適用してすべてのXスイッチでのスイッチ設定を探索し、(2)1次元区画Pを用いたスイッチの設定を適用してすべてのYスイッチでのスイッチ設定を探索し、(3)1次元区画Pを用いたスイッチの設定を適用してすべてのZスイッチでのスイッチ設定を探索する。
例示的実施形態では、3次元配列における任意の複数M個の非オーバーラップ区画に、任意の順序で個々の区画ごとにスイッチを設定することによって、この方法およびシステムは、M中の個々の区画Pごとに、Pに属するPUが3次元トーラスとして相互接続されるようにスイッチを設定する。また、例示的実施形態では、3次元配列中の任意の複数M個の非オーバーラップ区画に任意の順序で個々の区画ごとに、それぞれ、サイズN、N、Nの集合P、P、Pによって定義されるM中の個々の区画Pごとに、その区画のXラインごとにスイッチを設定することによって、この方法およびシステムは、以下のようにトーラス・アーキテクチャを形成する。
(1)N=1の場合は、外部接続を使用したXライン中のPのトーラス相互接続は形成されない。
(2)Pが区間区画であり、N=2である場合は、多くとも3つの外部接続を使用してXライン中のPのトーラス相互接続が形成されるにすぎず、N=2はXライン中のPのトーラス相互接続を形成するのに必要とされる最小可能外部接続数よりせいぜい1大きいにすぎない。
(3)Pが区間区画であり、N≧3である場合は、多くともN個の外部接続を使用してXライン中のPの相互接続が形成されるにすぎず、N≧3はXライン中のPのトーラス相互接続を形成するのに必要とされる最小可能外部接続数である。
動的環境
本発明が、区画がいつでも形成され、解除され得る動的環境でも適用され得ることに留意すべきである。P1、P2、・・・PkがM中の区画を表すとすると、この方法およびシステムは、(1)P1に、P1のトーラス相互接続を実現するスイッチ接続の集合C1が得られるようにスイッチを設定し、(2)次いで、P2に、そのうちのどの接続もC1中の接続によって使用されるスイッチのポートを使用せず、そのうちの接続がC1中の接続のいずれも妨げることなく実施され得る、P2のトーラス相互接続を実現するスイッチ接続の集合C2が得られるようにスイッチを設定し、(3)次いで、P3に、そのうちのどの接続もC1またはC2中の接続によって使用されるスイッチのポートを使用せず、そのうちの接続がC1またはC2中の接続のいずれも妨げることなく実施され得る、P3のトーラス相互接続を実現するスイッチ接続の集合C3が得られるようにスイッチを設定し、(4)残りの区画についてもPkに達するまで同様にスイッチを設定する。
例示的実施形態では、P1、P2、・・・Pkが複数の非オーバーラップ区画であるとすると、個々の区画のトーラス相互接続を実現するスイッチ接続の集合を生成するためにスイッチを設定することによって、PがP1、P2、・・・Pkのいずれともオーバーラップしない任意の区画に関して、この方法およびシステムは、以前にP1、P2、・・・Pkについて得られたスイッチ接続のいずれも妨げることのないPのトーラス相互接続を実現するスイッチ接続の集合を得る。
例示的実施形態では、f(1)=0、f(2)=3、N≧3のすべてのNについてf(N)=Nによって定義される関数fを用いると、区画PがP1、P2、・・・Pkのいずれともオーバーラップしない区間区画である場合には、この方法およびシステムは、多くとも以下の外部接続数を有するにすぎないPのトーラス相互接続を形成する。
f(NX)NY NZ+NX f(NY)NZ+NX NY f(NZ)
もNもNも2ではない場合には、この方法およびシステムは、Pのトーラス相互接続を形成するのに必要とされる最小可能外部接続数を用いてPのトーラス相互接続を形成する。
結論
以上、本発明の好ましい実施形態および様々な代替手段について十分に説明してきたが、本明細書での教示が与えられた場合には、本発明から逸脱しない多数の代替手段および均等物が存在することを、当分野の技術者は理解するであろう。したがって、本発明は、前述の説明によってではなく、添付の特許請求の範囲によってのみ限定されるものである。
従来技術のプロセッサを示す構成図である。 2つの従来技術のプロセッサの従来技術の相互接続を示す構成図である。 従来技術の配列を示す図である。 従来技術の配列を示す図である。 従来技術のメッシュ相互接続アーキテクチャを示す構成図である。 従来技術のトーラス相互接続アーキテクチャを示す構成図である。 従来技術のメッシュ相互接続アーキテクチャを示す構成図である。 本発明の例示的実施形態による拡張トーラス・アーキテクチャを示す構成図である。 本発明の例示的実施形態によるスイッチ設定を示す構成図である。 本発明の例示的実施形態によるスイッチ設定を示す構成図である。 本発明の例示的実施形態によるスイッチ設定を示す構成図である。 本発明の例示的実施形態による流れ図である。 本発明の例示的実施形態による接続するステップを示す流れ図である。 本発明の例示的実施形態による接続するステップを示す流れ図である。 本発明の具体的実施形態による接続するステップを示す流れ図である。 本発明の例示的実施形態による設定するステップを示す流れ図である。 本発明の例示的実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の別の実施形態による計算するステップを示す流れ図である。 本発明の例示的実施形態による流れ図である。 本発明の例示的実施形態による接続するステップを示す流れ図である。 本発明の例示的実施形態による接続するステップを示す流れ図である。 本発明の具体的実施形態による接続するステップを示す流れ図である。 本発明の別の実施形態による流れ図である。 本発明の例示的実施形態による流れ図である。
符号の説明
110、120 プロセッサ
112、122 PU
114、124 スイッチ
130 ケーブル
140 2次元配列
152 Xライン
154 Yライン
160 メッシュ・アーキテクチャ
161〜168 スイッチ
170 トーラス・アーキテクチャ
171〜178 スイッチ
200 拡張トーラス・アーキテクチャ
300、400、500 スイッチ設定
E1〜E4 外部ポート
I1、I2 内部ポート

Claims (8)

  1. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法であって、前記プロセッサのそれぞれは処理装置およびスイッチを含み、
    前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、
    前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するステップと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するステップと
    前記設定するステップが、前記区画のスパンを計算するステップを含み、
    前記計算するステップが、
    前記区画中の最小座標、MINを探索するステップと、
    前記区画中の最大座標、MAXを決定するステップと、
    前記区画のスパンを座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するステップと、
    前記区画のスパンが厳密に1座標を含み、iがそのスパンに属する1座標である場合には、第iのスイッチの前記第1の内部ポートと前記第2の内部ポート(I1、I2)を接続するステップと、
    を含む方法。
  2. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法であって、前記プロセッサのそれぞれは処理装置およびスイッチを含み、
    前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、
    前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するステップと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するステップと、
    前記設定するステップが、前記区画のスパンを計算するステップを含み、
    前記計算するステップが、
    前記区画中の最小座標、MINを探索するステップと、
    前記区画中の最大座標、MAXを決定するステップと、
    前記区画のスパンを座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するステップと、
    前記区画のスパンが厳密に2座標を含み、iおよびi+1がそのスパンに属する2座標である場合には、
    i=1の場合は、
    第1のスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するステップと、
    第1のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップと、
    第2のスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するステップと、
    第2のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップを実行し、
    i=L−1の場合は、
    第(L−1)のスイッチの前記第3の外部ポートと前記第1の内部ポート(E3、I1)を接続するステップと、
    第(L−1)のスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するステップと、
    第Lのスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するステップと、
    第Lのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するステップを実行し、
    それ以外で、2≦i≦L−2の場合は、
    第(i−1)のスイッチの前記第3の外部ポートと前記第4の外部ポート(E3、E4)を接続するステップと、
    第iのスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するステップと、
    第iのスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するステップと、
    第(i+1)のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップと、
    第(i+1)のスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するステップと、
    を含む方法。
  3. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法であって、前記プロセッサのそれぞれは処理装置およびスイッチを含み、
    前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、
    前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するステップと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するステップと、
    前記設定するステップが、前記区画のスパンを計算するステップを含み、
    前記計算するステップが、
    前記区画中の最小座標、MINを探索するステップと、
    前記区画中の最大座標、MAXを決定するステップと、
    前記区画のスパンを座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するステップと、
    前記区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンに属する3座標である場合には、
    第iのスイッチの前記第3の外部ポートと前記第1の内部ポート(E3、I1)を接続するステップと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するステップと、
    第(i+2)のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップと、
    第(i+2)のスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するステップを実行し、
    (i+1)が前記区画に属する場合は、
    第(i+1)のスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するステップと、
    第(i+1)のスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するステップを、
    (i+1)が前記区画に属さない場合は、
    第(i+1)のスイッチの前記第2の外部ポートと前記第3の外部ポート(E2、E3)を接続するステップと、
    を含む方法。
  4. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続する方法であって、前記プロセッサのそれぞれは処理装置およびスイッチを含み、
    前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、
    前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するステップと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するステップと、
    前記設定するステップが、前記区画のスパンを計算するステップを含み、
    前記計算するステップが、
    前記区画中の最小座標、MINを探索するステップと、
    前記区画中の最大座標、MAXを決定するステップと、
    前記区画のスパンを座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するステップと、
    前記区画のスパンが少なくとも4座標を含み、各座標iがMIN≦i≦MAXである場合には、
    i=MINの場合は、
    第iのスイッチの前記第3の外部ポートと前記第1の内部ポート(E3、I1)を接続するステップと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するステップを実行し、
    i=MAXの場合は、
    第iのスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップと、
    第iのスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するステップを実行し、
    i=MIN+1かつiが前記区画に属する場合は、
    第iのスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するステップと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するステップを実行し、
    i=MIN+1かつiが前記区画に属さない場合は、
    第iのスイッチの前記第2の外部ポートと前記第4の外部ポート(E2、E4)を接続するステップを、
    i=MAX−1かつiが前記区画に属する場合は、
    第iのスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップと、
    第iのスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するステップを実行し、
    i=MAX−1かつiが前記区画に属さない場合は、
    第iのスイッチの前記第1の外部ポートと前記第3の外部ポート(E1、E3)を接続するステップを、
    MIN+2≦i≦MAX−2かつiが前記区画に属する場合は、
    第iのスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するステップと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するステップを実行し、
    MIN+2≦i≦MAX−2かつiが前記区画に属さない場合は、
    第iのスイッチの前記第1の外部ポートと前記第4の外部ポート(E1、E4)を接続するステップと、
    を含む方法。
  5. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続するシステムであって、
    前記プロセッサのそれぞれは処理装置およびスイッチを含み、前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するように構成された接続モジュールと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するように構成された設定モジュールと、
    前記設定モジュールが、
    前記区画のスパンを計算するように構成された計算モジュールを含み、
    前記計算モジュールが、
    前記区画中の最小座標、MINを探索するように構成された探索モジュールと、
    前記区画中の最大座標、MAXを決定するように構成された決定モジュールと、
    前記区画のスパンを、座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するように構成されたモジュールと、
    前記区画のスパンが厳密に1座標を含み、iがそのスパンに属する1座標である場合には、第iのスイッチの前記第1の内部ポートと前記第2の内部ポート(I1、I2)を接続するように構成された接続モジュールと、
    を備えるシステム。
  6. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続するシステムであって、
    前記プロセッサのそれぞれは処理装置およびスイッチを含み、前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するように構成された接続モジュールと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するように構成された設定モジュールと、
    前記設定モジュールが、
    前記区画のスパンを計算するように構成された計算モジュールを含み、
    前記計算モジュールが、
    前記区画中の最小座標、MINを探索するように構成された探索モジュールと、
    前記区画中の最大座標、MAXを決定するように構成された決定モジュールと、
    前記区画のスパンを、座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するように構成されたモジュールと、
    前記区画のスパンが厳密に2座標を含み、iおよびi+1がそのスパンに属する2座標である場合には、
    i=1の場合は、
    第1のスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するように構成された第1の接続モジュールと、
    第1のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第2の接続モジュールと、
    第2のスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するように構成された第3の接続モジュールと、
    第2のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第4の接続モジュールをさらに有し、
    i=L−1の場合は、
    第(L−1)のスイッチの前記第3の外部ポートと前記第1の内部ポート(E3、I1)を接続するように構成された第1の接続モジュールと、
    第(L−1)のスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するように構成された第2の接続モジュールと、
    第Lのスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するように構成された第3の接続モジュールと、
    第Lのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するように構成された第4の接続モジュールをさらに有し、
    それ以外で、2≦i≦L−2の場合は、
    第(i−1)のスイッチの前記第3の外部ポートと前記第4の外部ポート(E3、E4)を接続するように構成された第1の接続モジュールと、
    第iのスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するように構成された第2の接続モジュールと、
    第iのスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するように構成された第3の接続モジュールと、
    第(i+1)のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第4の接続モジュールと、
    第(i+1)のスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するように構成された第5の接続モジュールと、
    を備えるシステム。
  7. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続するシステムであって、
    前記プロセッサのそれぞれは処理装置およびスイッチを含み、前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するように構成された接続モジュールと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するように構成された設定モジュールと、
    前記設定モジュールが、
    前記区画のスパンを計算するように構成された計算モジュールを含み、
    前記計算モジュールが、
    前記区画中の最小座標、MINを探索するように構成された探索モジュールと、
    前記区画中の最大座標、MAXを決定するように構成された決定モジュールと、
    前記区画のスパンを、座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するように構成されたモジュールと、
    前記区画のスパンが厳密に3座標を含み、i、i+1、i+2がそのスパンに属する3座標である場合には、
    第iのスイッチの前記第3の外部ポートと前記第1の内部ポート(E3、I1)を接続するように構成された第1の接続モジュールと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するように構成された第2の接続モジュールと、
    第(i+2)のスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第3の接続モジュールと、
    第(i+2)のスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するように構成された第4の接続モジュールと、
    (i+1)が前記区画に属する場合は、
    第(i+1)のスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するように構成された第5の接続モジュールと、
    第(i+1)のスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するように構成された第6の接続モジュールを、
    (i+1)が前記区画に属さない場合は、
    第(i+1)のスイッチの前記第2の外部ポートと前記第3の外部ポート(E2、E3)を接続するように構成された第5の接続モジュールと、
    を備えるシステム。
  8. トーラス区画化を容易にするために並列コンピュータのL個のプロセッサを相互接続するシステムであって、
    前記プロセッサのそれぞれは処理装置およびスイッチを含み、前記スイッチは第1の外部ポート、第2の外部ポート、第3の外部ポート、第4の外部ポート、第1の内部ポート、および第2の内部ポートを含み、前記L個のプロセッサはR個の非オーバーラップ区画を含み、前記区画のそれぞれは、前記プロセッサのうちの少なくとも1つの前記処理装置を含み、Lは2以上の整数、Rは1以上の整数であり、
    前記L個のスイッチの前記外部ポート間の前記L個のプロセッサの前記L個のスイッチを拡張トーラス・アーキテクチャで接続するように構成された接続モジュールと、
    前記区画のそれぞれをトーラスとして相互接続するために前記接続されたL個のスイッチを設定するように構成された設定モジュールと、
    前記設定モジュールが、
    前記区画のスパンを計算するように構成された計算モジュールを含み、
    前記計算モジュールが、
    前記区画中の最小座標、MINを探索するように構成された探索モジュールと、
    前記区画中の最大座標、MAXを決定するように構成された決定モジュールと、
    前記区画のスパンを、座標iの集合(MIN≦i≦MAX、iは整数)と等しくなるように設定するように構成されたモジュールと、
    前記区画のスパンが少なくとも4座標を含み、各座標iがMIN≦i≦MAXである場合には、
    i=MINの場合は、
    第iのスイッチの前記第3の外部ポートと前記第1の内部ポート(E3、I1)を接続するように構成された第1の接続モジュールと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するように構成された第2の接続モジュールを含み、
    i=MAXの場合は、
    第iのスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第1の接続モジュールと、
    第iのスイッチの前記第2の外部ポートと前記第2の内部ポート(E2、I2)を接続するように構成された第2の接続モジュールを含み、
    i=MIN+1かつiが前記区画に属する場合は、
    第iのスイッチの前記第2の外部ポートと前記第1の内部ポート(E2、I1)を接続するように構成された第1の接続モジュールと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するように構成された第2の接続モジュールを含み、
    i=MIN+1かつiが前記区画に属さない場合は、
    第iのスイッチの前記第2の外部ポートと前記第4の外部ポート(E2、E4)を接続するように構成された接続モジュールを含み、
    i=MAX−1かつiが前記区画に属する場合は、
    第iのスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第1の接続モジュールと
    第iのスイッチの前記第3の外部ポートと前記第2の内部ポート(E3、I2)を接続するように構成された第2の接続モジュールを含み、
    i=MAX−1かつiが前記区画に属さない場合は、
    第iのスイッチの前記第1の外部ポートと前記第3の外部ポート(E1、E3)を接続するように構成された接続モジュールを含み、
    MIN+2≦i≦MAX−2かつiが前記区画に属する場合は、
    第iのスイッチの前記第1の外部ポートと前記第1の内部ポート(E1、I1)を接続するように構成された第1の接続モジュールと、
    第iのスイッチの前記第4の外部ポートと前記第2の内部ポート(E4、I2)を接続するように構成された第2の接続モジュールを含み、
    MIN+2≦i≦MAX−2かつiが前記区画に属さない場合は、
    第iのスイッチの前記第1の外部ポートと前記第4の外部ポート(E1、E4)を接続するように構成された接続モジュールと、
    を備えるシステム。
JP2004298359A 2003-12-13 2004-10-13 トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステム Expired - Fee Related JP3982634B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/734,340 US7191311B2 (en) 2003-12-13 2003-12-13 Method and system of interconnecting processors of a parallel computer to facilitate torus partitioning

Publications (2)

Publication Number Publication Date
JP2005174289A JP2005174289A (ja) 2005-06-30
JP3982634B2 true JP3982634B2 (ja) 2007-09-26

Family

ID=34653341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004298359A Expired - Fee Related JP3982634B2 (ja) 2003-12-13 2004-10-13 トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステム

Country Status (3)

Country Link
US (1) US7191311B2 (ja)
JP (1) JP3982634B2 (ja)
CN (1) CN1316399C (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7401203B2 (en) * 2004-09-14 2008-07-15 International Business Machines Corporation Method for wiring allocation and switch configuration in a multiprocessor environment
US7581079B2 (en) * 2005-03-28 2009-08-25 Gerald George Pechanek Processor composed of memory nodes that execute memory access instructions and cooperate with execution nodes to execute function instructions
US8516444B2 (en) * 2006-02-23 2013-08-20 International Business Machines Corporation Debugging a high performance computing program
US9330230B2 (en) * 2007-04-19 2016-05-03 International Business Machines Corporation Validating a cabling topology in a distributed computing system
CN101216815B (zh) * 2008-01-07 2010-11-03 浪潮电子信息产业股份有限公司 一种双翼可扩展多处理器紧耦合共享存储器体系结构
EP3382569A1 (en) 2008-05-15 2018-10-03 Fujitsu Limited Network for interconnecting computers
US20090313413A1 (en) * 2008-06-12 2009-12-17 Yariv Aridor method for wiring allocation and switch configuration in a multiprocessor environment
JP5920105B2 (ja) * 2012-08-16 2016-05-18 富士通株式会社 演算処理装置および演算処理装置の制御方法
US9287208B1 (en) * 2014-10-27 2016-03-15 Intel Corporation Architecture for on-die interconnect
US9893950B2 (en) 2016-01-27 2018-02-13 International Business Machines Corporation Switch-connected HyperX network
WO2020174840A1 (ja) * 2019-02-28 2020-09-03 ソニー株式会社 情報処理装置及び情報処理方法
US11516087B2 (en) * 2020-11-30 2022-11-29 Google Llc Connecting processors using twisted torus configurations

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715391A (en) * 1991-11-15 1998-02-03 International Business Machines Corporation Modular and infinitely extendable three dimensional torus packaging scheme for parallel processing
JPH06290158A (ja) * 1993-03-31 1994-10-18 Fujitsu Ltd 再構成可能なトーラス・ネットワーク方式
US5682491A (en) * 1994-12-29 1997-10-28 International Business Machines Corporation Selective processing and routing of results among processors controlled by decoding instructions using mask value derived from instruction tag and processor identifier
JPH10134007A (ja) * 1996-10-30 1998-05-22 Matsushita Electric Ind Co Ltd マルチプロセッサシステム
US6023753A (en) * 1997-06-30 2000-02-08 Billion Of Operations Per Second, Inc. Manifold array processor

Also Published As

Publication number Publication date
CN1627285A (zh) 2005-06-15
CN1316399C (zh) 2007-05-16
JP2005174289A (ja) 2005-06-30
US7191311B2 (en) 2007-03-13
US20050132163A1 (en) 2005-06-16

Similar Documents

Publication Publication Date Title
US7873811B1 (en) Polymorphous computing fabric
US5784636A (en) Reconfigurable computer architecture for use in signal processing applications
US6769056B2 (en) Methods and apparatus for manifold array processing
JP3290798B2 (ja) 並列コンピュータ
US5828894A (en) Array processor having grouping of SIMD pickets
JP3982634B2 (ja) トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステム
US5696922A (en) Recursive address centrifuge for distributed memory massively parallel processing systems
Shaw The non-von supercomputer
US5765181A (en) System and method of addressing distributed memory within a massively parallel processing system
CN111615685B (zh) 可编程乘加阵列硬件
Johnsson et al. Computing fast Fourier transforms on Boolean cubes and related networks
Kumhom et al. Design, optimization, and implementation of a universal FFT processor
JP7387017B2 (ja) アドレス生成方法及びユニット、深層学習処理器、チップ、電子機器並びにコンピュータプログラム
EP0733236B1 (en) Memory addressing for massively parallel processing systems
US7263543B2 (en) Method for manipulating data in a group of processing elements to transpose the data using a memory stack
JP2525117B2 (ja) アレイ・プロセッサ
Denholm et al. A unified approach for managing heterogeneous processing elements on FPGAs
Bokka et al. Constant-time convexity problems on reconfigurable meshes
Sabharwal et al. Optimization of fast fourier transforms on the Blue Gene/L supercomputer
JPH0652125A (ja) コンピュータ・システム
Pechanek et al. MFAST: a single chip highly parallel image processing architecture
Elumalai Parallelization of vector fitting algorithm for GPU platforms
Jain Parallel Processing With the TMS320C40 Parallel Digital Signal Processor
Tong et al. FEATHER: A Reconfigurable Accelerator with Data Reordering Support for Low-Cost On-Chip Dataflow Switching
Pechanek et al. An introduction to an array memory processor for application specific acceleration

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070423

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20070423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070424

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: 20070619

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20070620

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070627

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

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130713

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees