JP2566681B2 - 多重プロセッシング・システム - Google Patents

多重プロセッシング・システム

Info

Publication number
JP2566681B2
JP2566681B2 JP2415183A JP41518390A JP2566681B2 JP 2566681 B2 JP2566681 B2 JP 2566681B2 JP 2415183 A JP2415183 A JP 2415183A JP 41518390 A JP41518390 A JP 41518390A JP 2566681 B2 JP2566681 B2 JP 2566681B2
Authority
JP
Japan
Prior art keywords
processor
data
destination
switch
identification information
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 - Lifetime
Application number
JP2415183A
Other languages
English (en)
Other versions
JPH04139566A (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 JPH04139566A publication Critical patent/JPH04139566A/ja
Application granted granted Critical
Publication of JP2566681B2 publication Critical patent/JP2566681B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/17393Indirect interconnection networks non hierarchical topologies having multistage networks, e.g. broadcasting scattering, gathering, hot spot contention, combining/decombining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/1423Reconfiguring to eliminate the error by reconfiguration of paths

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Bus Control (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は多重プロセッシング・シ
ステム及び多重プロセッシング・システムにおける誤り
回復の分野に関する。
【0002】
【従来の技術】多重プロセッシング・システム(MPS)と
は、複数の接続されたプロセッサを用いて複数のプログ
ラムを同時に実行する計算機システムである。因襲的
に、多重プロセッシング・システムはプロセッサ間の相
互接続に基づいて多くの型式に分類されている。
【0003】従来の多重プロセッシング・システムの第
1型式は「多重プロセッサ」即ち「共用メモリ」システ
ムである(図1)。共用メモリ・システムでは、多くの中
央演算プロセッサ102〜106が1つの共通グローバル・メ
モリ108を共用するという事実によって相互接続されて
いる。それぞれの中央演算プロセッサが1つのローカル
・キャッシュ・メモリを有することもあるが、クロス・
キャッシュの有効性検査によってキャッシュはユーザに
透明になり、システムはそれがあたかも1つのグローバ
ル・メモリを有するかに見える。
【0004】共用メモリ・システムも接続ネットワーク
を通じて複数のグローバル・メモリを共用する複数の中
央演算プロセッサの形をとる。このようなシステムの1
例はオメガ・ネットワークである(図2)。オメガ・ネッ
トワークでは、段階状に組織された複数のスイッチS01
〜S24がリクエスト中のプロセッサによって生成された2
進宛先タグを使用して複数のプロセッサP0〜P7及び複数
のグローバル・メモリM0〜M7の間でデータをルート割当
てする。これによってオメガ・ネットワークは中央制御
装置の必要性を回避する。
【0005】共用メモリ・システムの通常の特性はメモ
リ中のデータ片へのアクセス時間がリクエストを行うプ
ロセッサとは独立していることである。共用メモリ・シ
ステムの重要な制限はグローバル・メモリの総計帯域が
システム上に収容できるプロセッサの数を制限すること
である。
【0006】通常知られている多重プロセッシング・シ
ステムの第2型式は多重コンピュータ・メッセージ・パ
ス・ネットワーク(図3)である。メッセージ・パス・ネ
ットワークは多くのプロセッシング・ノードを相互接続
することによって構成される。各ノード302〜308は中央
演算プロセッサ及びグローバルにはアクセス可能でない
ローカル・メモリを含む。プロセッサ間でデータを共用
するアプリケーションのためにプログラマは指令を明示
的にコーディングして1つのノードから他のノードへデ
ータを移動させなければならない。共用メモリ・システ
ムと対照的に、データにアクセスするためにプロセッサ
に要する時間は現在ローカル・メモリにデータを有する
プロセッサからの距離(ノード数)に依存する。
【0007】図3のメッセージ・パス・ネットワーク構
成では、各ノードは他の各ノードへの直接接続部を有す
る。しかしこのような構成は非常に多くのプロセッサに
ついては非実用的である。超立方体構成などの解決法が
プロセッサ間の最大距離を制限するためにこれまで使用
されてきた。いずれにしても、ネットワーク中のプロセ
ッサの数は増えるので、間接接続部の数及びその結果の
アクセス時間は増加する傾向となる。
【0008】多重プロセッシング・システムの第3型式
はハイブリッド計算機である(図4)。ハイブリッド計算
機は共用メモリ・システムのいくつかの特性及びメッセ
ージ・パス・ネットワークのいくつかの特性を有する。
ハイブリッド計算機では、各々がローカル・メモリを持
つ多くのプロセッサ402〜406が接続ネットワーク408に
よって接続されている。すべてのメモリがローカルであ
っても、オペレーティング・システムは計算機を単一の
グローバル・メモリを有するかのように見せる。ハイブ
リッド計算機の1例としてはIBM RP3がある。ハイブリッ
ド計算機は典型的には、メッセージ・パス・ネットワー
クよりはるかに速い遠隔データへのアクセスを提供でき
る。そうであっても、データ・レイアウトはアルゴリズ
ム性能には重大な影響を持ち、通信ネットワークの総合
通信速度は収容できるプロセッサの数を制限する。
【0009】多重プロセッシング・システム接続ネット
ワークの変形はクラスタ接続ネットワーク(図5)であ
る。クラスタ接続ネットワークでは、それぞれがプロセ
ッサ群510〜516及びマルチプレクサ/制御装置を含む多
くのクラスタ502〜508がスイッチ・ネットワークを介し
て接続される。多数のプロセッサが所定数のポートを通
じてスイッチに効果的に接続されているクラスタ・ネッ
トワークは図4のトポロジー以上の利点を有する。クラ
スタ接続ネットワークの1つの制約はクラスタ制御装置
及びスイッチの両方の帯域幅がシステム性能に重大であ
るという点である。この理由のために、スイッチ及びク
ラスタ制御装置の設計は最高のシステム・サイズ及び性
能を決定する際の重要なファクタとなる。
【0010】
【発明が解決しようとする課題】本発明の目的は接続ネ
ットワークによって接続されたシステムにおけるハード
及びソフトの誤り回復のために効果的なシステムを提供
することである。
【0011】
【課題を解決するための手段】本発明の1つの態様で
は、少なくとも3つのノードを有する多重プロセッシン
グ・システムの2つのノードの間で転送されているデー
タの宛先フィールドにおける誤りから回復するためのシ
ステム及び方法が提供される。データが宛先アドレス・
フィールドにおける誤りによる不適切なノードに誤って
ルート割当てされると、誤りは検出され修正される。い
ったん誤りが修正されると、データは独立データ・パス
(即ちデータが受け取られたパスとは別のパス)によって
正しいノードに再ルート割当てされる。有利なことに
は、これは宛先アドレス・フィールドにおけるソフト及
びハード両方の誤りからの回復を可能にする。
【0012】
【実施例】本発明の多重プロセッシング・システムは広
帯域幅スイッチによって相互接続された多数のプロセッ
サ・エレメント(PE)を含む。ここに記載されたパケット
・アーキテクチャでは32768個までのプロセッサ・エレ
メントが可能であるが、以下の実施例では4096個までの
プロセッサ・エレメントを使用する。しかしながら、任
意の数のプロセッサ・エレメントがここに記載する原理
を使用して構成可能である。システム構成のサイズはプ
ロセッサ・エレメントを単位として計算要件に従って調
整することができる。
【0013】各プロセッサ・エレメントは1つ又は複数
の高性能(例えば50〜200MIPS)汎用マイクロプロセッ
サ、大容量ローカル記憶機構(例えば64〜256MB)及びプ
ロセッサの介入なしにスイッチを通じてメッセージを送
受するDMA制御装置を含む。各プロセッサ・エレメント
はまたデータベース・プロセッシング機能のための1つ
又は複数の任意選択ハードウエア・アクセレレータも含
むことができる。
【0014】個別のプリント回路カードの上に、各プロ
セッサ・エレメントを詰め込むことができる。プロセッ
サ・エレメントカードはまた関係データベース・ファイ
ル・システムへの直接アクセスのためのI/Oポート、ベ
クトル・プロセッシング・エンジン又はデータ暗号化機
構などの特殊目的のハードウエアを備えることもでき
る。特に、データベース・アクセレレータ・ハードウエ
アは述部評価、フィールド抽出、分類、組合せ及び結合
などの共通機能の性能を強化するために使用可能であ
る。
【0015】プロセッサ・エレメントを相互接続するス
イッチは階層的であり、クラスタのネットワークからな
る。64個までのプロセッサ・エレメントが組み合わされ
てクラスタを形成し、64個までのプロセッサ・エレメン
トはバンヤン・ネットワークによって結合される。メッ
セージはパケット形状のスイッチを通じてルート割当て
され、各パケットは4ワード長データ及び1つの制御情報
ワードを有する。
【0016】図6は本発明の多重プロセッシング・シス
テムの構造概略図である。図6のシステムは32個のクラ
スタ制御装置602(1)〜602(32)を含むクラスタ接続ネッ
トワーク(クラスタ・ネットワーク)である。各クラスタ
制御装置は64個のプロセッサ・エレメント(PE) 604(1〜
64)、604(65〜128)・・・604(1985〜2048)のためのシス
テム・インタフェースを含む。1つのクラスタ制御装置
及び64個のプロセッサ・エレメントの各グループを「ク
ラスタ」と呼ぶ。
【0017】所定のクラスタにおける各プロセッサは入
力バス(例えば612(1))及び独立(分離)した出力バス(例
えば614(1))によってクラスタ制御装置に接続される。
同様に、32個のクラスタ制御装置はそれぞれ入力バス60
8(1〜32)及び独立出力バス610(1〜32)によって32×32ス
イッチ・ネットワーク606に接続される。このため、全
システムは2048個のプロセッサ604(1〜2048)を含む。ク
ラスタ制御装置及びスイッチ・ネットワークの両方は高
速クロック(例えば5nsサイクル・タイム)の制御の下で
プロセッサ間でデータを同期的に組合せ転送するように
動作する。
【0018】例えば64×64スイッチ・ネットワークによ
って相互接続された64個のクラスタを有するシステム拡
張バージョンを同じ構造で実施することができる。多種
の大小の構成が同様に実用化可能である。
【0019】ホスト・コンピュータ(例えばIBM 3090シ
リーズ・システム)用の付加コプロセッサとして図6のク
ラスタ・ネットワークを有することが望まれる場合に
は、スイッチ・ネットワーク606上のポートがホスト・
インタフェースとしての使用のために供される。ホスト
・インタフェースは図6のクラスタ制御装置602(1)〜602
(32)の任意の1つの場所をとるホスト・アダプタ要素に
よって提供される。
【0020】ホスト・アダプタの1つの実施例を図17に
示す。ホスト・コンピュータ1800及びホスト・アダプタ
1700のリンクはホスト・コンピュータ中の高速データ・
リンクに接続する複数の光ファイバ又は銅線のケーブル
1702によって提供されるのが好ましい。このリンクは初
期接続手順プロトコルなしに両方向に同時転送する全二
重であることが好ましい。
【0021】ホスト・コンピュータ1800は(論理宛先ア
ドレス及び指令フィールドを含む)制御情報を含むヘッ
ダー・レコードに後続する1つ又は複数のデータ・レコ
ードを持つデータ・ブロックを伝送することが望まし
い。各データ・レコードのサイズの1例は4キロバイトで
ある。ホスト・コンピュータからクラスタ・ネットワー
クへの指令はデータ・レコードを伴わないヘッダー・レ
コードの特殊ケースとしてなされる。ホストからクラス
タへのネットワーク通信の好ましい構成は対称なピア・
ツー・ピア・メッセージ・パス方式であり、これによっ
てクラスタ・ネットワークはホスト・コンピュータ1800
に割込みを起こさせる指令を介してホスト・コンピュー
タへの非同期応答を発生させることができる。
【0022】データ転送速度の差異を調整するために、
ホスト・アダプタ1700にはデータ・ブロック・バッファ
・アレイ1704が備えられている。ホスト・コンピュータ
への及びそれからのデータ速度が個別のプロセッサ・エ
レメントのデータ速度をはるかに上回ることがあるの
で、バッファが準備されている。例えば、ホストは500M
B/から1GB/秒までのデータ速度域を有することがあり、
所定のデータ・ブロックを200MB/秒のピーク速度でしか
データを受け取ることができない単一プロセッサ・エレ
メントにルート割当てすることもある。このため、デー
タ・ブロック・バッファ・アレイ1704は速度マッチング
の目的のために複数のバッファ(少なくとも各々4KBが望
ましい)を含む。これにより、ホスト・アダプタ1700は
ホスト・コンピュータが許す最高速度でホスト・リンク
を動作させるためにいくつかの並行動作を管理できるよ
うになる。
【0023】ホスト・コンピュータ1800はクラスタ・ネ
ットワークを大きな線形アドレス空間としてアドレス指
定する。ルート割当て論理1706によって実現されたマッ
ピング・テーブルを介してホスト・アダプタ1700は各ホ
スト・アドレスをプロセッサ・エレメントのメモリにお
ける物理アドレスへ変換する。このため、データ・ブロ
ックのホスト・アドレス空間はプロセッサ・エレメント
のすべてにわたってそれらのローカル・メモリ内の1つ
の帯域として分布される。この目的のために、プロセッ
サ・エレメントのローカル・メモリ空間の半分を使用す
ることが意図される。
【0024】マッピングはホスト・アダプタ1700内のマ
イクロプロセッサ1708によって管理される。マイクロプ
ロセッサ1708は作業データやマイクロコードのためのロ
ーカル記憶機構1710を持ち、(複数の照会を取り扱うた
めの多重プロセッサの論理分割を含む)構成制御を提供
する機能を実施する。実際のデータ転送は後述するよう
にマイクロプロセッサ1708自体によってではなく支援要
素によって取り扱われる。
【0025】インタフェース論理1712はホストからのデ
ータ・ブロックをパケットに変換してスイッチ・ネット
ワークを介してプロセッサ・エレメントへ伝送し、パケ
ットからの逆アセンブリも行なう。ホスト・アダプタ17
00のホスト側ではリンク・アダプタ1714がデータを内部
ホスト・アダプタ・フォーマットから適当なリンク・フ
ォーマット(例えばファイバ・オプティック・フォーマ
ット)に変換し、その逆も行なう。またリンク・アダプ
タ1714はリンク・レベル・プロトコルを取り扱う。前記
のようにルート割当て論理1706は論理アドレスがプロセ
ッサにマッピングする場所を決定する。
【0026】物理的には、ホスト・アダプタ1700はプロ
セッサ・エレメント・カードで使用されるものと同じ技
術を用いて多くの通常の論理カード及びメモリ・カード
を保持するマザーボードを使用して実施されることが望
ましい。図6の多重プロセッサはホストへの接続を設け
ることなく独立多重プロセッシング・システムとして動
作可能であることを理解すべきである。
【0027】図7は図6の32×32スイッチ・ネットワーク
606のより詳しい図である。スイッチ・ネットワーク606
は8個の相互接続された8×8スイッチ702〜716を含み、
各スイッチは熱伝導モジュール(TCM)上に実現されるこ
とが好ましい。スイッチ702〜708の第1コラム(段)は32
個のクラスタ制御装置602(1)〜602(32)の各々から来る
パケットを受け取る。第1コラムにおける各スイッチの
出力部は出力バスの対を介して第2コラム(段)に配置さ
れた4個の8×8スイッチ710〜716の各々へ接続される。
第2スイッチ・コラムは32個のクラスタ制御装置602(1)
〜602(32)の任意の1つのデータ入力部へ受け取られたデ
ータ・パケットをルート割当てするために接続される。
【0028】8×8スイッチ702〜716は自己ルート割当て
型(即ち入って来るメッセージ内の内部フィールドを復
号してルート割当てを決定するもの)であり、これは任
意の入力ポート及び任意の出力ポートの間の接続をもた
らすことができる。更に、8×8スイッチは選択されたル
ート割当てに従って8個の入力ポートすべて及び8個の出
力ポートすべての間の同時接続及び通信をもたらす。
【0029】スイッチの64×64バージョンが64個のクラ
スタ制御装置を有する実施例で使用される。64×64スイ
ッチは8個×2コラムに配置された全部で16個のスイッチ
のそれぞれに更に8つの8×8スイッチを加えて作られ
る。64×64構成に対してただ1つのバスが第1段及び第2
段における各スイッチの間に設けられる。64×64スイッ
チ実施例の第1コラムにおける各スイッチのすべての出
力部が第2コラムにおける1つのスイッチに個別に接続さ
れるので、ただ1つのバスしか必要としない。
【0030】図8は8×8スイッチ702〜716の代表的な1つ
を示す。各8×8スイッチは8個の8×1スイッチ/待ち行列
を含む。これらのスイッチ/待ち行列802の代表的な1つ
の相互接続を示す。各8×8スイッチ/待ち行列の入力ポ
ートの各々は8個の8×1スイッチ/待ち行列すべてにバス
で接続されている。各8×1スイッチ/待ち行列はその入
力(5ワード・パケット)を最大8個まで受け取り、それら
をネットワーク・クロックの各サイクルにおいて単一FI
FO(先入れ先出し法)出力待ち行列に入力することができ
る。同じサイクルで、単一パケット(待ち行列のトップ)
は待ち行列を離れてスイッチ・ネットワークの次段又は
最終宛先へ渡されることが可能である。待ち行列がサイ
クル開始時に空である場合には、有効入力パケットが待
ち行列を迂回して出力部に直接到達することができ、こ
れによってさもなければ不必要なステージングで無駄に
なったであろうサイクルを節約する。
【0031】各パケットはそれ自体の宛先アドレスを有
する。アドレス指定機構は次の機能を提供する。所定の
スイッチ待ち行列によって表された出力ポートに対して
正しくアドレス指定されたパケットのみが実際にそのポ
ートにエンキューされることになる。更に、各パケット
はただ1つの待ち行列に入れられることになる。アドレ
スは1つのアドレスが発信元及び宛先の間の一意的な通
路に対応するようなものでなければならない。各アドレ
ス内の3ビット群は各スイッチ内のローカル・アドレス
を表す。同時入力パケットの各々はどの順序で待ち行列
に入れられるかを決めるために固定優先順位を使用す
る。もっと複雑精巧な優先方式が使用することもできる
が、どの5ワード・パケットも各サイクルで待ち行列に
入る機会があるので、固定優先順位は本来「フェア」な
ものである(即ち単一の発信元は他の発信元がその出力
ポートのためのデータを有していない場合を除くと待ち
行列上で占有するエントリは割り当て分だけである)。
【0032】図9は図8に示す代表的なスイッチ/待ち行
列802の更に詳しいダイヤグラムである。各スイッチ/待
ち行列は64パケットまでの待ち行列902を有する。各パ
ケットは5ワードのサイズである。各ワードは32データ
・ビット及び4ECCビットからなる。入力ポートからのパ
ケットはパケットの制御ワード部分に含まれる宛先アド
レスに基づいて単一スイッチ/待ち行列の認識論理904に
よって選択される。8パケット(各入力ポートに1パケッ
ト)までが各サイクル中に所定の出力ポートにエンキュ
ーされることが可能である。同時に、各出力ポートは伝
送用のパケットをそのローカル・エンキュー902又は短
絡論理906のいずれかから選択することができ、この短
絡論理によって待ち行列が空のときに単一入力が出力ポ
ート・レジスタ910に直接行くことができるようにな
る。使用中論理908がダウンストリーム待ち行列がフル
のときに、パケットの送信を防ぐために設けられる。こ
の設計は活動期間中に出力部が使用中に見えることを防
ぎこれによって使用中条件が送信側に伝播することを阻
止する。
【0033】動作例として、8×8スイッチの8個の入力
部のうち3個が有効アドレスを有し、これらが入力部を
第2出力ポートへ向けると仮定する。認識論理904はスイ
ッチの当該部分へゲートされるべきこれら3つのアドレ
スに対して選択動作を行なう。出力ポート待ち行列902
が空でも一杯でもない場合には、入力パケットは待ち行
列に入れられる(エンキューされる)。出力ポート待ち行
列902が一杯の場合には、使用中論理908はパケットの入
力を防ぐ。出力ポート待ち行列902が空の場合には、短
絡論理906は通常の優先順位方式に従って3つの入力パケ
ットの1つを選択して出力ポート・レジスタ910へ直接渡
し、それと同時に残りの2つのパケットを待ち行列902に
入れる。出力ポート・レジスタ910におけるパケットは
スイッチの次のレベルが使用中でない限りそのレベルに
ゲートされる。
【0034】図10は図6のクラスタ制御装置602(1)〜602
(32)の1例の更に詳しい図である。クラスタ制御装置1
602(1)を例として使用することにする。スイッチ・ネッ
トワーク(スイッチ710〜716)の第2段から来て入力バス6
08(1)に受け取られたデータは6入力9出力スイッチ1002
へルート割当てされる。このスイッチ1002は6つの入力
を受け取る。即ちスイッチ・ネットワーク606から1つ、
グローバル記憶機構1004から1つ及びアセンブリ・バッ
ファ1006から4つである。6入力9出力スイッチ1002は(6
つの入力から)受け取ったデータを適当な「オクタン
ト」へ又はグローバル記憶機構1004へ配分する。グロー
バル記憶機構1004はプロセッサ・エレメント間の共用状
況、プロセス調整、共用アルゴリズム制御及び共用デー
タを含む種々の機能のために使用可能である。
【0035】受け取ったデータを適当なオクタントへル
ート割当てするために、6入力9出力スイッチ1002は内部
パケット宛先アドレス(DST)からの3つのビットを復号す
る。代替としてグローバル記憶機構1004はグローバル記
憶アクセス指令を復号するスイッチ1002によってアクセ
スされる。6入力9出力スイッチ1002からの出力について
のいかなる競合も通常の優先順位及びラウンド・ロビン
方式によって解決される。スイッチ・ネットワーク608
(1)からの接続は常に最高の優先順位を持つ。
【0036】6入力9出力スイッチ1002の9つの出力1010
(1〜9)のうち8つはプロセッサ・エレメント待ち行列の
オクタントに接続される。オクタントの1例を参照番号1
008で示す。8つの出力1010(1)〜1010(8)の各々はこの型
式の個々のオクタントに接続される。各オクタントは8
つのプロセッサ・エレメント待ち行列を含む。各待ち行
列は16パケットの深さで使用中/満杯論理及び空待ち行
列用短絡機構を含む。各オクタントは(6入力9出力スイ
ッチからの)ただ1つの入力及び1つの出力を有し、1つの
読取り及び1つの書込みを同時に起こさせる。
【0037】各クラスタ制御装置602(1)〜602(32)は更
に32個のプロセッサ・エレメントポート(PEP)1012(1)〜
1012(32)を含む。各プロセッサ・エレメントポートは2
つのプロセッサ・エレメントにインタフェースするため
のサブポートを含む。各サブポートは2つのプロセッサ
・エレメントの各々について、プロセッサ・エレメント
入力バス612(1〜64)の対応する1つに接続された2バイト
出力ポート及びプロセッサ・エレメント出力バス614(1
〜64)の対応する1つに接続された1バイト入力ポートを
含む。各待ち行列の出力部はオクタントにおける8個の
プロセッサ・エレメントのための)4つのPEPすべてにバ
ス接続される。PEPはアドレス復号を使用して適当なプ
ロセッサ・エレメントにアドレス指定されるパケットの
みをインゲートする。各PEPはバッファが空のときにオ
クタント待ち行列に信号を与えるための論理を持つ出力
ポート用のパケット・バッファを含む。
【0038】8つのオクタントの各々は個別に動作して
パケットが使用可能である場合に、各サイクルに1つの5
ワードを8つのPEPバッファのうちの1つに供給する。PEP
からパケットは適当なプロセッサ・エレメント入力バス
を通ってアドレス指定されたプロセッサ・エレメントに
一度に2バイトで送られる。入力バス及び出力バスの非
対称性(1バイト対2バイト)は待ち行列満杯状態を防ぐ助
力となる。
【0039】内方向へは(即ちプロセッサ・エレメント
からは)、1バイトのデータが入力バスの1つを通ってプ
ロセッサ・エレメントから対応するプロセッサ・エレメ
ント・ポート(即ちPEが接続されるPEP)へ来る。プロセ
ッサ・エレメントポートに入ってきたデータ・バイトは
連続するバイトを受け取って5ワード・パケットを形成
するアセンブリ・バッファ1006のポートに直接ルート割
当てされる。アセンブリ・バッファは64個のスロット(5
ワード・メモリ位置)1014(1)〜1014(64)を有する。つま
り、各プロセッサ・エレメントのためにアセンブリ・バ
ッファに1個のスロットがあり、各々は個別に動作し専
用のバイト計数及び使用中論理(図示せず)を有する。
【0040】アセンブリ・バッファ・スロットは4コラ
ムに配列される。各コラムは専用のラウンド・ロビン論
理を有し、完全なスロットの1つを選択する。ネットワ
ーク・クロックのサイクル毎に各コラムにおける1スロ
ットからの1つの5ワード・パケットがアウトゲートされ
ることができる。アウトゲートされたパケットは6入力9
出力スイッチ1002及び5入力択一セレクタ1016へ行く。1
セクタ1016への第5入力はグローバル記憶機構1004から
来る。セレクタ1016はアドレス及びラウンド・ロビン論
理に基づいてスイッチ・ネットワーク606を通じてルー
ト割当てされる必要のある1つのパケットを取り、これ
をその通路に送る。5入力択一セレクタ又は6入力9出力
スイッチを通ってゲートされないパケットはそのスロッ
トの中に残ってラウンド・ロビン・アルゴリズムによる
次回の選択対象となる。
【0041】メッセージを一様に分配する場合のクラス
タ制御装置の動作例は次の通りである。接続されたプロ
セッサ・エレメントからの1つの入力は1サイクル1バイ
トでアセンブリ・バッファの各々に読み込まれる。サイ
クルあたり5つの5ワード・パケットは5入力択一セレク
タにアウトゲートされ、これによってサイクルあたり1
つの5ワード・パケットが他のクラスタ制御装置に送ら
れる。
【0042】PE方向への出力部では、6つまでの5ワード
・パケットが9つまでの宛先に待合せによってゲートさ
れることができる。クラスタ制御装置のサイクルを5ns
とし、PEバスへの入出力のサイクルを10nsとすると、ク
ラスタ制御装置はPEから6.4GB/秒(100MB/秒/PE)で入力
することができる。アセンブリ・バッファ及びグローバ
ル・メモリは12.8GB/秒で出力することができ、そのう
ちの3.2GB/秒まで他のクラスタ制御装置に出力すること
ができる。19.2GB/秒までは出力待ち行列に入ることが
でき、出力待ち行列自体はPEP及びグローバル記憶機構
に28.8GB/秒までを送ることができる。PEPはそれぞれの
PEに200MB/秒を送ることができ、これを集合すると、ク
ラスタ制御装置からPEへ12.8GB/秒までを流出させるこ
とができる。これらはピーク値であるが、設計は3.2GB/
秒の定常流がPEから他のクラスタに流れ、12.8GB/秒ま
でがPEへもどるようになっている。更に設計は待ち行列
が一杯になりスイッチの上流側でコンテンションが起こ
ることを防ぐようになっている。
【0043】図12は図6のプロセッサ・エレメント604
(1)〜604(2048)の好ましい実施例である。本発明のマル
チプロセッサは他の型式のプロセッサをプロセッサ・エ
レメントとして使用することもできるということを理解
すべきである。プロセッサ・エレメントの中央プロセッ
サ1202は最新のRISCマイクロプロセッサであることが好
ましい。これは通常の方法によって命令やデータに速い
アクセス時間をもたらすプロセッサ・キャッシュ1204に
接続される。キャッシュ1204からのバスはDMA制御装置1
206につながる。DMA制御装置1206はスイッチ・バッファ
1208及びプロセッサ・エレメント(PE)記憶機構1210の各
々にキャッシュ1208の両方向ポートを提供する。スイッ
チ・バッファ1208はクラスタ制御装置への及びそれから
のデータ及びプロトコルを取り扱う入出力バッファであ
る。クラスタ制御装置は個々のバス1212、1214に接続さ
れた2つの単方向ポートによって、スイッチ・バッファ1
208を通じてプロセッサ・エレメントに接続する。第1単
方向ポートはクラスタ制御装置からプロセッサ・エレメ
ントへのトラフィックを取り扱い、一方第2単方向ポー
トはプロセッサ・エレメントからクラスタ制御装置へ出
て行くトラフィックを取り扱う。
【0044】図13は図12のDMA制御装置1206のより詳し
いダイヤグラムである。入力メッセージを処理するため
に、1つの5ワード・アセンブリ・バッファ1302はクラス
タ制御装置からプロセッサ・エレメントへのデータを2
バイトずつ受け取り、パケットを再アセンブリする。EC
C論理1304はデータの完全性を検査して復元しまた同時
にパケットが適切な宛先に到着したかを検査する。
【0045】いったんデータの完全性が確証又は修正さ
れて、パケットが適切な宛先に到着したことが判定され
ると、入力メッセージ制御論理1308はデータをPE記憶機
構1210の待ち行列に置く。このタスクはPE記憶機構1210
のための複数のリクエストを取り扱うことができ、いか
なる記憶機構競合も解決することのできる記憶機構アー
ビトレーション制御装置1310によって達成される。次に
入力メッセージ制御論理1308はメッセージが利用可能で
あるという信号をPEマイクロプロセッサ1202に送る。
【0046】PEマイクロプロセッサ1202が他のPEへメッ
セージを送ることを望むと、それはまずメッセージをPE
記憶機構1210中の宛先待ち行列に待合せさせる。次にマ
イクロプロセッサ1202はメッセージが使用可能であると
いう信号が出力メッセージ制御論理1312に送る。これは
「記憶」操作を固定アドレスに行なうことによって可能
である。このアドレスはPE記憶機構1210の中には存在し
ないが、記憶アービトレーション制御装置1310によって
1つの特別信号として復号される。「記憶」操作用のデ
ータはPE記憶機構1210中の宛先待ち行列に向く。
【0047】クラスタ制御装置に送られる前に、宛先待
ち行列における各メッセージはヘッダーがつけられる。
このヘッダーはDMA制御装置1206の宛先PE待ち行列ヘッ
ダー・アレイ1314に保持される。メッセージ・ヘッダー
はバイト数で表わしたメッセージの全長(4096バイトま
で)、メッセージが送られるべきPEの識別子(15ビットDS
T識別子)及びこの伝送PEの識別子(15ビットSRC識別子)
を指定する。
【0048】広スイッチ帯域幅を達成するために、DMA
制御装置は複数のメッセージを順次に送るのではなく、
それらのメッセージからパケットをインタリーブする。
しかし、1つのプロセッサ・エレメントから他のプロセ
ッサ・エレメントへのメッセージはすべて順に送られ
る。スイッチの設計は1つのプロセッサ・エレメントに
よって他の特定のプロセッサ・エレメントから受け取っ
たパケットがそれらが送られた順序と同じ順序で受け取
られるということを保証する。出力メッセージ制御論理
は種々の宛先に対する先頭メッセージのすべて又は一部
を出力メッセージ・バッファ1316へ事前に取り出す。出
力メッセージ・バッファ1316からデータは1度に5ワード
ずつ5ワード分解バッファ1318へ取り出され、そこから1
度に1バイトずつクラスタ制御装置に送られる。
【0049】更に別の機能として、DMA制御装置1206は
また伝送の前に各パケットのための9ビットSEC/DED誤り
訂正コード(ECC)を生成する。
【0050】このシステムの誤り訂正機能を以下に更に
詳しく説明する。前記のように、メッセージ・パケット
がプロセッサ・エレメントに到達すると、DMA制御装置1
206はECCを適用し、ついでパケット指令フィールドによ
って指定された機能を実施する。受信パケットのDST識
別子内で単一ビット誤りが発生したことをECCが示す場
合には、そのパケットは他のプロセッサ・エレメントに
行くはずであったものであり、このためDMA制御装置120
6はDST識別子を訂正して、パケットを正しいプロセッサ
・エレメントに再送する。ホスト・プロセッサを含むク
ラスタ・ネットワークが構築されている場合、DMA制御
装置1206はまたこの誤り事象をホスト・プロセッサ・サ
ービス・サブシステムに報告する。これはホスト・プロ
セッサのソフトウェアに割込みをかけて、しきい値プロ
セッシング・アルゴリズムの制御の下で誤りをサービス
・サブシステムに報告することによって達成される。
【0051】ECCは送信プロセッサ・エレメントで生成
され、受信プロセッサ・エレメントで検査されるが、パ
ケットがTCMに入ったりTCMから離れたりする度にそして
宛先プロセッサ・エレメントによる受信の度にパリティ
検査も実施される。こうして、訂正可能な誤りが検出さ
れ、それが発生するとすぐにサービス・システムに報告
することができる。
【0052】本システムの自己訂正操作は図6を参照す
ればより良く理解される。ここで例として、クラスタ制
御装置602(1)及び32×32スイッチ・ネットワーク606の
間の通信路に問題があり、入力バケットの宛先アドレス
・フィールドでハード誤りを引き起こすと仮定する。更
にこの入力パケットはクラスタ制御装置602(1)上のプロ
セッサ・エレメント604(3)の送られるはずであったが、
ハード誤りのために同じクラスタ制御装置上のプロセッ
サ・エレメント604(1)に到達したと仮定する。
【0053】受信プロセッサ・エレメント604(1)は入力
パケットを6入力9出力スイッチ及びPEP出力バスによっ
て受信する。いったんパケットが受信されると、プロセ
ッサ・エレメントは宛先フィールド誤りをECCを用いて
訂正し、PEP入力バス及びアセンブリ・バッファによっ
てクラスタ制御装置602(1)のパケットを正しいPE 604
(3)に再送する。パケットはもはや問題のあった通路を
通らないので、ハード誤りはこのパケットについては繰
り返されないことになる。
【0054】クラスタ制御装置からスイッチ・ネットワ
ーク606へのバス上で誤った宛先アドレスが生じた場合
も、同様な手法で誤りを訂正することができる。各クラ
スタは別々の入力バス及び出力バスを有するということ
に留意されたい。したがって、出力パケットの宛先アド
レスがバスの出力側における誤接続によって変えられ、
そのためパケットが間違ったクラスタ制御装置に送られ
た場合には、正しいクラスタ制御装置及び受信/訂正中
のクラスタ制御装置の間の経路は送信元のプロセッサ及
び受信/訂正中のプロセッサの間の経路とはまったく異
なることになる。
【0055】スイッチ・ネットワーク606自体はルート
割り当てされたプロセッサがシステム内に存在するか又
は動作しているプロセッサであるか否かを判断する誤り
訂正論理回路を含む。存在していない又は動作していな
いプロセッサ・エレメントにパケットがルート割当てさ
れた場合には、スイッチは発信元及び宛先フィールドを
入れ替え、パケットを誤りの指示と共に送信側に送り返
す。
【0056】図11は図6のシステムと共に使用されるパ
ケット・フォーマットの好ましい実施例を示す。各パケ
ットは180ビット幅であり、5ビット指令フィールド(CM
D)、8ビット順序番号フィールド(SEQ)、15ビット宛先ア
ドレス・フィールド(DST)、15ビット発信元アドレス・
フィールド(SRC)、128ビット・データ・フィールド及び
9ビット誤り訂正コード(ECC)を含む。
【0057】指令フィールド(CMD)はクラスタ制御装置
及び受信プロセッサ・エレメントにパケットの取扱い法
を告げる5ビット指令を含む。順序番号フィールド(SEQ)
は発信元プロセッサ・エレメントによって順番に割り当
てられる8ビット・パケット順序番号を含む。受信シス
テムはこの順序番号からメッセージ中の合計パケット・
カウンタのどのパケット番号を受信したかを識別するこ
とができる。
【0058】宛先アドレス・フィールド(DST)は15ビッ
トの宛先プロセッサ・エレメント番号を含む。宛先フィ
ールドはパケットを自己ルート割当てするためにスイッ
チ及びクラスタ制御装置によって使用され、パケットが
適切なアドレスにルート割当てされたことを確認するた
めに受信(宛先)プロセッサ・エレメントによって使用さ
れる。
【0059】発信元アドレス・フィールド(SRC)は15ビ
ットの発信元プロセッサ・エレメント番号を含む。発信
元フィールドはスイッチ及びクラスタ制御装置によって
使用されて動作不能又は不在のプロセッサ・エレメント
の番号が宛先アドレス・フィールド(DST)に現われた場
合にパケットを発信元に戻し、そして受信(宛先)プロセ
ッサによって使用されてメッセージ又は指令に対する任
意の応答を適切にアドレス指定する。
【0060】データ・フィールドは128ビットの情報を
含む。データ・フィールド中の情報のタイプは指令フィ
ールド(CMD)によって定義される。
【0061】ECCフィールド(ECC)はSEC/DED(単一誤り訂
正/二重誤り検出)コードを含む。
【0062】メッセージ・ヘッダー・パケットの場合、
順序フィールドはメッセージの全長を指定し、そしてDM
A制御装置はこの長さのメッセージ・バッファをPEロー
カル・メモリ内に割り振り、データの最初の4ワードを
メッセージ・バッファに書き込み、そしてこのメッセー
ジのためにもっと多くのデータ・パケットがある場合に
は、ローカル・ハードウエア・ポインタ、長さ及び順序
レジスタを設定する。これはまたメモリ中にメッセージ
長、DST識別子及びSRC識別子を含むメッセージ・ヘッダ
ーを構築する。
【0063】メッセージ本体パケットの場合、順序番号
フィールドは順序レジスタに対して検査され、パケット
が順序通りに到着しており、各4ワード・データがメッ
セージ・バッファに加えられるということを検証する。
メッセージが完全に受信されると、これはローカル・プ
ロセッサによる処理のためにローカル・メモリにおける
入力待ち行列に入れられる。入力待ち行列がこのメッセ
ージを加える前に空になっていた場合には、ローカル・
プロセッサに割込みがかけられ、それに保留作業を通知
する。
【0064】記憶アクセス指令パケットの場合、DMA制
御装置はリクエストされた取出し又は記憶動作をPEロー
カル・メモリに実施し(ダブル・ワード・データの転
送)、取出しについては応答パケットがSRCフィールド及
びDST識別子フィールドを入れ替えることによって構築
され、次にスイッチを通じて送られ、リクエストされた
ダブル・ワード・データを戻す。
【0065】グローバル記憶アクセス指令を含むパケッ
トはローカル記憶アクセス指令がDMA制御装置によって
取り扱われたのと同じ方法でクラスタ制御装置によって
取り扱われる。両方の場合とも、メモリ動作は自律的で
比較・置換(COMPARE AND SWAP)能力を含む。
【0066】図14はプロセッサ・エレメント/クラスタ
・ボードの好ましいレイアウトを示す。物理的レイアウ
トの点では、クラスタは64個までのプロセッサ・エレメ
ントカード(即ちそれぞれが1つのプロセッサ・エレメン
トを実現する回路板)が直接取り付けられた多層回路板1
400及び少なくとも1つのクラスタ制御装置熱伝導モジュ
ール(TCM)1402を含むことが好ましい。各クラスタ制御
装置はクラスタ内でのローカル・メッセージ通信を取り
扱い、スイッチ・ネットワーク606に接続する。
【0067】図15は8つのフレーム1502〜1516の各々に4
つのクラスタを有するシステム・フレームのレイアウト
を示す。スイッチ・ネットワーク熱伝導モジュールは中
央フレーム1518〜1524に実現されることが好ましい。ホ
スト・アダプタ1700(図17)はフレーム1502〜1516の任意
の1つに常駐することができる。利用可能性及び構成可
能性の理由のために追加のホスト・アダプタ1700をフレ
ーム1502〜1516の他の1つに設けることができる。
【0068】図16は高性能RISCマイクロプロセッサ120
2、任意選択データベース加速装置1602、DMA制御装置12
06及びローカル・メモリ1210を含むプロセッサ・エレメ
ントカード1600のための好ましいレイアウトを示す。プ
ロセッサ・エレメントカード1600はクラスタ制御装置TC
Mに接続可能な数の2倍のピン数を有する。したがって、
PEバスの第2セット(第2 「PEポート」)がプロセッサ・
エレメントカードに設けられてマザーボード(TCMマザー
ボード)上に取り出され、ここで第2(予備)クラスタ制御
装置TCM位置(1404、図14)にルート割当てされる。これ
は今後の拡張を可能にする。即ち、CMOS密度が向上する
と、第2PEを各カードにパッケージできるようになり、
更に2つのクラスタ制御装置/スイッチ・ネットワークTC
Mを配線済みのボードにプラグインできるので、システ
ムのサイズ、即ちPEの数を倍の4096にできる。代替とし
て、任意選択クラスタ制御装置/スイッチ・ネットワー
クTCMを設けてクラスタ制御装置への各PEの2つのポート
を帯域幅を高くするために又は耐故障性を改善するため
に使用することができる。
【0069】前記のシステムは独立型の多重プロセッシ
ング・システム又はデータベース・プロセッサとして作
ることができ、また従来の本体ホストに対するコプロセ
ッサとして使用することもできる。後者の場合、ホスト
・システムはセッション管理、トランザクション処理、
データベース・ロッキング及び回復を含むフロントエン
ドMVS/DB2システム機能を提供する。本発明の多重プロ
セッサはバックエンド・システムとして採用されること
もでき、これは読取り専用の複雑な照会処理機能をホス
トからアンロードし加速する。
【0070】
【発明の効果】パケット・フォーマットによって、ハー
ド誤り処理が可能となる。各パケットで発信元(SRC)識
別子及び宛先(DST)識別子と共にECCを使用すると、効率
的な誤り訂正が可能である。ハードウエアの誤りがパケ
ットの誤ったルート割当てを起こさせた場合には、次の
2つのうちのいずれかが生じる。即ち、 (1)存在しない
又は動作していないプロセッサ・エレメントにパケット
が誤ってルート割当てされた場合、クラスタ制御装置は
SRCフィールド及びDSTフィールドを入れ替え、パケット
を誤りフラグと共に送信側に返す。又は(2)動作してい
る他のプロセッサ・エレメントにパケットが誤ってルー
ト割当てされた場合、このプロセッサ・エレメントは
(必要に応じてECCを適用した後に)パケットを再送する
ことになる。再送はソフト誤りを克服することができ、
そして(2)の場合には、別のハードウエア通路を使用す
ることによりいくつかのハード誤りを回避することがで
きる。
【図面の簡単な説明】
【図1】従来の技術による共用メモリ・システムのブロ
ック図である。
【図2】オメガ相互接続を用いて構成された従来の技術
による共用メモリ・システムのブロック図である。
【図3】従来の技術によるメッセージ・パス・ネットワ
ークのブロック図である。
【図4】従来の技術によるハイブリッド・システムのブ
ロック図である。
【図5】従来の技術によるクラスタ接続システムのブロ
ック図である。
【図6】本発明の実施例による多重プロセッシング・シ
ステムのブロック図である。
【図7】図6の32×32スイッチのより詳細なブロック図
である。
【図8】図7の32×32スイッチの実施例に使用された型
式の8×8スイッチのより詳細なブロック図である。
【図9】図8の典型的なスイッチ/待ち行列のより詳細な
ブロック図である。
【図10】図6の多重プロセッシング・システムの実施
例に使用された型式のクラスタ制御装置のより詳細なブ
ロック図である。
【図11】図6の多重プロセッシング・システムの実施
例に使用された好ましいパケット・フォーマットの図で
ある。
【図12】プロセッサ・エレメント、メモリ、DMA制御
装置及びクラスタ制御装置の間の相互接続を示す典型的
なプロセッサ・エレメントのより詳細なブロック図であ
る。
【図13】機能ブロック及びそれらの相互接続の各々を
示す図12のDMA制御装置のより詳細なブロック図であ
る。
【図14】プロセッサ・エレメントクラスタ・ボードの
図である。
【図15】図6の多重プロセッシング・システムのため
のフレーム・レイアウトを示す図である。
【図16】プロセッサ・エレメントカードのためのレイ
アウトを示す図である。
【図17】ホスト・アダプタ及びホスト・システムへの
接続のブロック図である。
【符号の説明】
602 クラスタ制御装置 604 プロセッサ・エレメント 606 32×32スイッチ・ネットワーク 608 入力バス 610 出力バス 612 入力バス 614 出力バス
フロントページの続き (72)発明者 ジェームス・ウォルター・ライマクザヤ ク アメリカ合衆国ニューヨーク州ポキプシ ー、ダラ・レーン 6番地 (56)参考文献 1982 INT’L CONFEREN CE ON PAPALLEL PRO CESSING P123−125 J.E. LILIENKAMP,D.H.LAW RIE,PEN−CHUNG YEW [A FAULT TOLERANT INTERCONNECTION NE TWORK USING ERROR CORRECTING CODES]

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】少なくとも第1、第2及び第3ノード並びに
    前記第1、第2及び第3ノードに共通に接続され前記第1、
    第2及び第3ノードの間でデータを該データに含まれる宛
    先識別情報に応じてルート割当てする手段を有する自己
    ルート割当てスイッチを具備する多重プロセッシング・
    システムにおいて、 前記第1、第2及び第3ノードの各々は独立した入力及び
    出力経路を介して前記自己ルート割当てスイッチに結合
    されており、 前記第1ノードは前記第2ノードを表す宛先識別情報を持
    つデータを送信する手段を有し、 前記第3ノードは前記第1ノードに結合され、前記第1ノ
    ードから第1経路を介して送信されてきたデータを受信
    する手段、受信したデータの宛先識別情報内の1ビット
    誤りを検出して訂正するECC手段及び前記データを訂正
    後の宛先識別情報で表されるノードへルート割当てし直
    して前記第1経路とは独立した第2経路を介して送信する
    手段を有する、 ことを特徴とする多重プロセッシング・システム。
  2. 【請求項2】前記第1、第2及び第3ノードはプロセッサ
    であり、 前記データはパケット化データであり、前記宛先識別情
    報を含む宛先フィールド及び発信元プロセッサを識別す
    る発信元フィールドを有することを特徴とする請求項1
    記載の多重プロセッシング・システム。
  3. 【請求項3】前記自己ルート割当てスイッチは前記宛先
    フィールドが前記多重プロセッシング・システムに存在
    しないプロセッサを示しているか否かを検出する手段及
    び存在しないプロセッサを示していることの検出に応答
    して前記発信元フィールド及び前記宛先フィールドを入
    れ替えて前記データを前記発信元プロセッサに戻す手段
    を含む誤り訂正論理回路を具備することを特徴とする請
    求項2記載の多重プロセッシング・システム。
  4. 【請求項4】少なくとも第1、第2及び第3プロセッサ並
    びに前記第1、第2及び第3プロセッサに共通に接続され
    前記第1、第2及び第3プロセッサの間でパケット化デー
    タを該パケット化データに含まれる宛先情報に応じてル
    ート割当てする自己ルート割当てスイッチを具備する多
    重プロセッシング・システムにおいて、 前記パケット化データはメッセージ本体、宛先プロセッ
    サを示す宛先識別情報を含む宛先フィールド及び発信元
    プロセッサを示す発信元識別フィールドを含む発信元フ
    ィールドを有し、 前記第1、第2及び第3プロセッサの各々は独立した入力
    及び出力経路を介して前記自己ルート割当てスイッチに
    結合されており、 前記第1プロセッサは前記第2プロセッサを表す宛先識別
    情報を持つパケット化データを送信する手段を有し、 前記第3プロセッサは前記第1プロセッサに結合され、前
    記第1プロセッサから第1経路を介して送信されてきたパ
    ケット化データを受信する手段、受信したパケット化デ
    ータの宛先識別情報内の1ビット誤りを検出して訂正す
    るECC手段及び前記パケット化データを訂正後の宛先識
    別情報で表されるプロセッサへルート割当てし直して前
    記第1経路とは独立した第2経路を介して送信する手段を
    有し、 前記自己ルート割当てスイッチは前記宛先フィールドが
    前記多重プロセッシング・システムに存在しないプロセ
    ッサを示しているか否かを検出する手段及び存在しない
    プロセッサを示していることの検出に応答して前記発信
    元フィールド及び前記宛先フィールドを入れ替えて前記
    データを前記発信元プロセッサに戻す手段を含む誤り訂
    正論理回路を具備する ことを特徴とする多重プロセッシング・システム。
JP2415183A 1990-02-02 1990-12-27 多重プロセッシング・システム Expired - Lifetime JP2566681B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/474,440 US5161156A (en) 1990-02-02 1990-02-02 Multiprocessing packet switching connection system having provision for error correction and recovery
US474440 1990-02-02

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP6305977A Division JP2576846B2 (ja) 1990-02-02 1994-12-09 クラスタ制御装置及びクラスタ接続多重多重プロセッシング・システム

Publications (2)

Publication Number Publication Date
JPH04139566A JPH04139566A (ja) 1992-05-13
JP2566681B2 true JP2566681B2 (ja) 1996-12-25

Family

ID=23883543

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2415183A Expired - Lifetime JP2566681B2 (ja) 1990-02-02 1990-12-27 多重プロセッシング・システム
JP6305977A Expired - Lifetime JP2576846B2 (ja) 1990-02-02 1994-12-09 クラスタ制御装置及びクラスタ接続多重多重プロセッシング・システム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP6305977A Expired - Lifetime JP2576846B2 (ja) 1990-02-02 1994-12-09 クラスタ制御装置及びクラスタ接続多重多重プロセッシング・システム

Country Status (4)

Country Link
US (2) US5161156A (ja)
EP (1) EP0439693B1 (ja)
JP (2) JP2566681B2 (ja)
DE (1) DE69021710T2 (ja)

Families Citing this family (202)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07104871B2 (ja) * 1989-08-31 1995-11-13 三菱電機株式会社 リレーショナル・データベースにおけるジョイン処理方式
US5265207A (en) * 1990-10-03 1993-11-23 Thinking Machines Corporation Parallel computer system including arrangement for transferring messages from a source processor to selected ones of a plurality of destination processors and combining responses
JP2575557B2 (ja) * 1990-11-13 1997-01-29 インターナショナル・ビジネス・マシーンズ・コーポレイション スーパーコンピユータシステム
JPH04245751A (ja) * 1991-01-31 1992-09-02 Nec Corp イベント処理分散型網監視システム
US5825773A (en) * 1991-03-20 1998-10-20 Hitachi, Ltd. Switching system for transferring broadcast packet held in broadcast buffer received from input port to output ports according to the state of each output port
US5617547A (en) * 1991-03-29 1997-04-01 International Business Machines Corporation Switch network extension of bus architecture
JP3679813B2 (ja) * 1991-07-22 2005-08-03 株式会社日立製作所 並列計算機
JPH05134954A (ja) * 1991-11-15 1993-06-01 Fujitsu Ltd ネツトワーク処理装置
EP0570648A1 (en) * 1992-05-21 1993-11-24 International Business Machines Corporation Apparatus for generating and checking the error correction codes of messages in a message switching system
JP2552075B2 (ja) * 1992-05-22 1996-11-06 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・システム
US5758053A (en) * 1992-07-22 1998-05-26 Hitachi, Ltd. Fault handling and recovery for system having plural processors
JPH06214969A (ja) * 1992-09-30 1994-08-05 Internatl Business Mach Corp <Ibm> 情報通信方法および装置
US5781715A (en) * 1992-10-13 1998-07-14 International Business Machines Corporation Fault-tolerant bridge/router with a distributed switch-over mechanism
US20020091850A1 (en) 1992-10-23 2002-07-11 Cybex Corporation System and method for remote monitoring and operation of personal computers
JP3461520B2 (ja) * 1992-11-30 2003-10-27 富士通株式会社 マルチプロセッサシステム
US5499377A (en) * 1993-05-03 1996-03-12 Designed Enclosures, Inc. Multi-computer access switching system
JP3176482B2 (ja) * 1993-07-07 2001-06-18 富士通株式会社 論理シミュレーション装置
FR2707777B1 (fr) * 1993-07-15 1995-08-18 Bull Sa Ensemble informatique à mémoire partagée.
FR2707776B1 (fr) 1993-07-15 1995-08-18 Bull Sa Procédé de gestion de mémoires d'un système informatique, système informatique mémoire et support d'enregistrement mettant en Óoeuvre le procédé.
FR2707778B1 (fr) * 1993-07-15 1995-08-18 Bull Sa NÓoeud de processeurs.
US5485573A (en) * 1993-07-16 1996-01-16 Unisys Corporation Method and apparatus for assisting in the determination of the source of errors in a multi-host data base management system
CA2129882A1 (en) * 1993-08-12 1995-02-13 Soheil Shams Dynamically reconfigurable interprocessor communication network for simd multiprocessors and apparatus implementing same
JPH07105128A (ja) * 1993-10-07 1995-04-21 Mitsubishi Electric Corp データ転送装置
EP0651336A1 (en) * 1993-10-28 1995-05-03 International Business Machines Corporation Switch network extension of bus architecture
US5765146A (en) * 1993-11-04 1998-06-09 International Business Machines Corporation Method of performing a parallel relational database query in a multiprocessor environment
WO1995015529A1 (en) * 1993-12-01 1995-06-08 Marathon Technologies Corporation Fault resilient/fault tolerant computing
US5581705A (en) * 1993-12-13 1996-12-03 Cray Research, Inc. Messaging facility with hardware tail pointer and software implemented head pointer message queue for distributed memory massively parallel processing system
US5495589A (en) * 1993-12-23 1996-02-27 Unisys Corporation Architecture for smart control of bi-directional transfer of data
US5450578A (en) * 1993-12-23 1995-09-12 Unisys Corporation Method and apparatus for automatically routing around faults within an interconnect system
US6088768A (en) * 1993-12-28 2000-07-11 International Business Machines Corporation Method and system for maintaining cache coherence in a multiprocessor-multicache environment having unordered communication
US5664223A (en) * 1994-04-05 1997-09-02 International Business Machines Corporation System for independently transferring data using two independently controlled DMA engines coupled between a FIFO buffer and two separate buses respectively
JP3544390B2 (ja) * 1994-06-29 2004-07-21 富士通株式会社 並列計算機で用いられるメッセージ通信方法
US5630045A (en) * 1994-12-06 1997-05-13 International Business Machines Corporation Device and method for fault tolerant dual fetch and store
DE69531410T2 (de) * 1994-12-09 2004-05-06 British Telecommunications P.L.C. Mehrrechnerumgebungen
KR100220570B1 (ko) * 1995-03-16 1999-09-15 김영환 패킷교환기의 에러검출장치
US5634068A (en) * 1995-03-31 1997-05-27 Sun Microsystems, Inc. Packet switched cache coherent multiprocessor system
US5721921A (en) * 1995-05-25 1998-02-24 Cray Research, Inc. Barrier and eureka synchronization architecture for multiprocessors
US5632013A (en) * 1995-06-07 1997-05-20 International Business Machines Corporation Memory and system for recovery/restoration of data using a memory controller
US5925099A (en) * 1995-06-15 1999-07-20 Intel Corporation Method and apparatus for transporting messages between processors in a multiple processor system
US5721842A (en) * 1995-08-25 1998-02-24 Apex Pc Solutions, Inc. Interconnection system for viewing and controlling remotely connected computers with on-screen video overlay for controlling of the interconnection switch
US5740175A (en) * 1995-10-03 1998-04-14 National Semiconductor Corporation Forwarding database cache for integrated switch controller
US6055618A (en) * 1995-10-31 2000-04-25 Cray Research, Inc. Virtual maintenance network in multiprocessing system having a non-flow controlled virtual maintenance channel
US5864738A (en) * 1996-03-13 1999-01-26 Cray Research, Inc. 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
US5841973A (en) * 1996-03-13 1998-11-24 Cray Research, Inc. Messaging in distributed memory multiprocessing system having shell circuitry for atomic control of message storage queue's tail pointer structure in local memory
US5923847A (en) * 1996-07-02 1999-07-13 Sun Microsystems, Inc. Split-SMP computer system configured to operate in a protected mode having repeater which inhibits transaction to local address partiton
US5812556A (en) * 1996-07-03 1998-09-22 General Signal Corporation Fault tolerant switch fabric with control and data correction by hamming codes and error inducing check register
US5805614A (en) * 1996-07-03 1998-09-08 General Signal Corporation Fault tolerant switch fabric with control and data correction by hamming codes
US6393581B1 (en) * 1996-08-29 2002-05-21 Cornell Research Foundation, Inc. Reliable time delay-constrained cluster computing
US5790397A (en) 1996-09-17 1998-08-04 Marathon Technologies Corporation Fault resilient/fault tolerant computing
US6791947B2 (en) 1996-12-16 2004-09-14 Juniper Networks In-line packet processing
US6282195B1 (en) 1997-01-09 2001-08-28 Silicon Graphics, Inc. Packetized data transmissions in a switched router architecture
US6067567A (en) * 1997-02-20 2000-05-23 International Business Machines Corporation Message distribution capability which uses distribution nodes to collect acknowledgements for a primary node
US5923840A (en) * 1997-04-08 1999-07-13 International Business Machines Corporation Method of reporting errors by a hardware element of a distributed computer system
US6098104A (en) * 1997-04-08 2000-08-01 International Business Machines Corporation Source and destination initiated interrupts for message arrival notification, and related data structures
US6098105A (en) * 1997-04-08 2000-08-01 International Business Machines Corporation Source and destination initiated interrupt method for message arrival notification
US6105071A (en) * 1997-04-08 2000-08-15 International Business Machines Corporation Source and destination initiated interrupt system for message arrival notification
US5968189A (en) * 1997-04-08 1999-10-19 International Business Machines Corporation System of reporting errors by a hardware element of a distributed computer system
US6304895B1 (en) 1997-08-22 2001-10-16 Apex Inc. Method and system for intelligently controlling a remotely located computer
US6167437A (en) * 1997-09-02 2000-12-26 Silicon Graphics, Inc. Method, system, and computer program product for page replication in a non-uniform memory access system
ATE254778T1 (de) * 1997-09-05 2003-12-15 Sun Microsystems Inc Nachschlagtabelle und verfahren zur datenspeicherung darin
US6249802B1 (en) * 1997-09-19 2001-06-19 Silicon Graphics, Inc. Method, system, and computer program product for allocating physical memory in a distributed shared memory network
US6289424B1 (en) 1997-09-19 2001-09-11 Silicon Graphics, Inc. Method, system and computer program product for managing memory in a non-uniform memory access system
US6000024A (en) * 1997-10-15 1999-12-07 Fifth Generation Computer Corporation Parallel computing system
US20010044843A1 (en) * 1997-10-28 2001-11-22 Philip Bates Multi-user computer system
US6101181A (en) * 1997-11-17 2000-08-08 Cray Research Inc. Virtual channel assignment in large torus systems
US6085303A (en) * 1997-11-17 2000-07-04 Cray Research, Inc. Seralized race-free virtual barrier network
US6230252B1 (en) 1997-11-17 2001-05-08 Silicon Graphics, Inc. Hybrid hypercube/torus architecture
US5970232A (en) * 1997-11-17 1999-10-19 Cray Research, Inc. Router table lookup mechanism
US6633945B1 (en) 1997-12-07 2003-10-14 Conexant Systems, Inc. Fully connected cache coherent multiprocessing systems
US6065077A (en) 1997-12-07 2000-05-16 Hotrail, Inc. Apparatus and method for a cache coherent shared memory multiprocessing system
US6516442B1 (en) * 1997-12-07 2003-02-04 Conexant Systems, Inc. Channel interface and protocols for cache coherency in a scalable symmetric multiprocessor system
US6418537B1 (en) 1997-12-07 2002-07-09 Conexant Systems, Inc. Accurate timing calibration for each of multiple high-speed clocked receivers using a single DLL
EP1042435B1 (en) * 1997-12-19 2002-07-24 Unilever N.V. Olive oil containing food composition
US6341132B1 (en) 1998-02-04 2002-01-22 Cisco Technology, Inc. ATM node having local error correcting procedures
US6256753B1 (en) * 1998-06-30 2001-07-03 Sun Microsystems, Inc. Bus error handling in a computer system
IL142119A0 (en) 1998-09-22 2002-03-10 Cybex Computer Prod Corp System and method for accessing and operating personal computers remotely
US6216174B1 (en) 1998-09-29 2001-04-10 Silicon Graphics, Inc. System and method for fast barrier synchronization
US6618379B1 (en) * 1998-12-08 2003-09-09 Nec Corporation RRGS-round-robin greedy scheduling for input/output terabit switches
JP3277906B2 (ja) * 1998-12-18 2002-04-22 日本電気株式会社 階層構造作成方法及び装置
US6920562B1 (en) 1998-12-18 2005-07-19 Cisco Technology, Inc. Tightly coupled software protocol decode with hardware data encryption
US6256683B1 (en) * 1998-12-23 2001-07-03 Bops, Inc. Methods and apparatus for providing direct memory access control
US6389494B1 (en) * 1998-12-30 2002-05-14 Emc Corporation System for interfacing a data storage system to a host utilizing a plurality of busses for carrying end-user data and a separate bus for carrying interface state data
US7073020B1 (en) 1999-01-04 2006-07-04 Emc Corporation Method for message transfer in computer storage system
US7117275B1 (en) 1999-01-04 2006-10-03 Emc Corporation Data storage system having separate data transfer section and message network
US6388453B1 (en) 1999-01-25 2002-05-14 Bryan D. Greer Swept-frequency dielectric moisture and density sensor
EP1203275A4 (en) * 1999-06-25 2004-12-01 Massively Parallel Computing I MASSIVE SUMMARY NETWORK PROCESSING SYSTEM AND METHOD
US6469988B1 (en) 1999-07-08 2002-10-22 Conexant Systems, Inc. Low-level circuit implementation of signal flow graphs for real-time signal processing of high-speed digital signals
US6378014B1 (en) 1999-08-25 2002-04-23 Apex Inc. Terminal emulator for interfacing between a communications port and a KVM switch
US6711170B1 (en) * 1999-08-31 2004-03-23 Mosaid Technologies, Inc. Method and apparatus for an interleaved non-blocking packet buffer
US7139899B2 (en) * 1999-09-03 2006-11-21 Cisco Technology, Inc. Selected register decode values for pipeline stage register addressing
US6674720B1 (en) 1999-09-29 2004-01-06 Silicon Graphics, Inc. Age-based network arbitration system and method
US6751698B1 (en) 1999-09-29 2004-06-15 Silicon Graphics, Inc. Multiprocessor node controller circuit and method
US6681341B1 (en) 1999-11-03 2004-01-20 Cisco Technology, Inc. Processor isolation method for integrated multi-processor systems
US7032226B1 (en) 2000-06-30 2006-04-18 Mips Technologies, Inc. Methods and apparatus for managing a buffer of events in the background
US7649901B2 (en) 2000-02-08 2010-01-19 Mips Technologies, Inc. Method and apparatus for optimizing selection of available contexts for packet processing in multi-stream packet processing
US7058064B2 (en) * 2000-02-08 2006-06-06 Mips Technologies, Inc. Queueing system for processors in packet routing operations
US7155516B2 (en) 2000-02-08 2006-12-26 Mips Technologies, Inc. Method and apparatus for overflowing data packets to a software-controlled memory when they do not fit into a hardware-controlled memory
US7082552B2 (en) 2000-02-08 2006-07-25 Mips Tech Inc Functional validation of a packet management unit
US7165257B2 (en) 2000-02-08 2007-01-16 Mips Technologies, Inc. Context selection and activation mechanism for activating one of a group of inactive contexts in a processor core for servicing interrupts
US6834295B2 (en) * 2000-02-24 2004-12-21 Pts Corporation Methods and apparatus for providing bit-reversal and multicast functions utilizing DMA controller
US6990063B1 (en) * 2000-03-07 2006-01-24 Cisco Technology, Inc. Distributing fault indications and maintaining and using a data structure indicating faults to route traffic in a packet switching system
US7010575B1 (en) 2000-03-31 2006-03-07 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US7007194B1 (en) 2000-06-29 2006-02-28 Emc Corporation Data storage system having point-to-point configuration
US6779071B1 (en) 2000-04-28 2004-08-17 Emc Corporation Data storage system having separate data transfer section and message network with status register
US6651130B1 (en) 2000-04-28 2003-11-18 Emc Corporation Data storage system having separate data transfer section and message network with bus arbitration
US8325761B2 (en) * 2000-06-26 2012-12-04 Massivley Parallel Technologies, Inc. System and method for establishing sufficient virtual channel performance in a parallel computing network
US7418470B2 (en) 2000-06-26 2008-08-26 Massively Parallel Technologies, Inc. Parallel processing systems and method
US6816916B1 (en) * 2000-06-29 2004-11-09 Emc Corporation Data storage system having multi-cast/unicast
US6735620B1 (en) 2000-07-18 2004-05-11 International Business Machines Corporation Efficient protocol for retransmit logic in reliable zero copy message transport
US7089289B1 (en) 2000-07-18 2006-08-08 International Business Machines Corporation Mechanisms for efficient message passing with copy avoidance in a distributed system using advanced network devices
US6799200B1 (en) 2000-07-18 2004-09-28 International Business Machines Corporaiton Mechanisms for efficient message passing with copy avoidance in a distributed system
US6675254B1 (en) * 2000-09-29 2004-01-06 Intel Corporation System and method for mid-plane interconnect using switched technology
US7106693B1 (en) 2000-11-02 2006-09-12 Cisco Technology, Inc. Method and apparatus for pacing the flow of information sent from a device
US7012889B1 (en) 2000-11-02 2006-03-14 Cisco Technology, Inc. Method and apparatus for controlling input rates within a packet switching system
US6826645B2 (en) 2000-12-13 2004-11-30 Intel Corporation Apparatus and a method to provide higher bandwidth or processing power on a bus
US6907490B2 (en) * 2000-12-13 2005-06-14 Intel Corporation Method and an apparatus for a re-configurable processor
US6779049B2 (en) 2000-12-14 2004-08-17 International Business Machines Corporation Symmetric multi-processing system with attached processing units being able to access a shared memory without being structurally configured with an address translation mechanism
US7401161B2 (en) * 2000-12-18 2008-07-15 Sun Microsystems, Inc. High performance storage array interconnection fabric using multiple independent paths
US6718428B2 (en) 2000-12-18 2004-04-06 Sun Microsystems, Inc. Storage array interconnection fabric using a torus topology
US7072976B2 (en) 2001-01-04 2006-07-04 Sun Microsystems, Inc. Scalable routing scheme for a multi-path interconnection fabric
TW567695B (en) * 2001-01-17 2003-12-21 Ibm Digital baseband system
US7027397B1 (en) 2001-02-15 2006-04-11 Cisco Technology, Inc. Method and apparatus for accumulating and distributing traffic and flow control information in a packet switching system
US7007189B2 (en) 2001-05-07 2006-02-28 Sun Microsystems, Inc. Routing scheme using preferred paths in a multi-path interconnection fabric in a storage network
US6909695B2 (en) 2001-05-07 2005-06-21 Sun Microsystems, Inc. Fault-tolerant, self-healing routing scheme for a multi-path interconnection fabric in a storage network
US6807640B2 (en) * 2001-05-08 2004-10-19 Intersil Americas, Inc. Programmable interface controller suitable for spanning clock domains
US20030009509A1 (en) * 2001-06-22 2003-01-09 Fish Russell H. Distributed means of organizing an arbitrarily large number of computers
US8086738B2 (en) 2007-05-24 2011-12-27 Russell Fish Distributed means of organizing an arbitrarily large number of computers
US20030033463A1 (en) * 2001-08-10 2003-02-13 Garnett Paul J. Computer system storage
US7103636B2 (en) * 2002-05-28 2006-09-05 Newisys, Inc. Methods and apparatus for speculative probing of a remote cluster
US7155525B2 (en) * 2002-05-28 2006-12-26 Newisys, Inc. Transaction management in systems having multiple multi-processor clusters
US7281055B2 (en) * 2002-05-28 2007-10-09 Newisys, Inc. Routing mechanisms in systems having multiple multi-processor clusters
US7251698B2 (en) * 2002-05-28 2007-07-31 Newisys, Inc. Address space management in systems having multiple multi-processor clusters
US7181674B2 (en) * 2002-06-28 2007-02-20 Sun Microsystems, Inc. Computer system including a network employing redundant information and slicing
AU2003273044A1 (en) * 2002-10-18 2004-05-04 Matsushita Electric Industrial Co., Ltd. Method and device for roaming-connection in global network
US8185602B2 (en) 2002-11-05 2012-05-22 Newisys, Inc. Transaction processing using multiple protocol engines in systems having multiple multi-processor clusters
US7577755B2 (en) * 2002-11-19 2009-08-18 Newisys, Inc. Methods and apparatus for distributing system management signals
US7324438B1 (en) 2003-02-13 2008-01-29 Cisco Technology, Inc. Technique for nondisruptively recovering from a processor failure in a multi-processor flow device
US7826445B2 (en) * 2003-03-13 2010-11-02 International Business Machines Corporation Message formation and distribution in heterogeneous networks
US7324455B2 (en) 2003-03-14 2008-01-29 International Business Machines Corporation Transfer of error-analysis and statistical data in a fibre channel input/output system
US7386626B2 (en) * 2003-06-23 2008-06-10 Newisys, Inc. Bandwidth, framing and error detection in communications between multi-processor clusters of multi-cluster computer systems
US7577727B2 (en) * 2003-06-27 2009-08-18 Newisys, Inc. Dynamic multiple cluster system reconfiguration
US7353362B2 (en) * 2003-07-25 2008-04-01 International Business Machines Corporation Multiprocessor subsystem in SoC with bridge between processor clusters interconnetion and SoC system bus
US7159137B2 (en) * 2003-08-05 2007-01-02 Newisys, Inc. Synchronized communication between multi-processor clusters of multi-cluster computer systems
US7103823B2 (en) 2003-08-05 2006-09-05 Newisys, Inc. Communication between multi-processor clusters of multi-cluster computer systems
US7395347B2 (en) * 2003-08-05 2008-07-01 Newisys, Inc, Communication between and within multi-processor clusters of multi-cluster computer systems
US7117419B2 (en) * 2003-08-05 2006-10-03 Newisys, Inc. Reliable communication between multi-processor clusters of multi-cluster computer systems
US7536674B2 (en) * 2003-08-13 2009-05-19 Intel Corporation Method and system for configuring network processing software to exploit packet flow data locality
US7735088B1 (en) 2003-08-18 2010-06-08 Cray Inc. Scheduling synchronization of programs running as streams on multiple processors
US7421565B1 (en) 2003-08-18 2008-09-02 Cray Inc. Method and apparatus for indirectly addressed vector load-add -store across multi-processors
US7379424B1 (en) 2003-08-18 2008-05-27 Cray Inc. Systems and methods for routing packets in multiprocessor computer systems
US7334110B1 (en) 2003-08-18 2008-02-19 Cray Inc. Decoupled scalar/vector computer architecture system and method
US7503048B1 (en) 2003-08-18 2009-03-10 Cray Incorporated Scheduling synchronization of programs running as streams on multiple processors
US8307194B1 (en) 2003-08-18 2012-11-06 Cray Inc. Relaxed memory consistency model
US7543133B1 (en) 2003-08-18 2009-06-02 Cray Inc. Latency tolerant distributed shared memory multiprocessor computer
US7519771B1 (en) 2003-08-18 2009-04-14 Cray Inc. System and method for processing memory instructions using a forced order queue
US7366873B1 (en) 2003-08-18 2008-04-29 Cray, Inc. Indirectly addressed vector load-operate-store method and apparatus
US7743223B2 (en) 2003-08-18 2010-06-22 Cray Inc. Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system
US7437521B1 (en) 2003-08-18 2008-10-14 Cray Inc. Multistream processing memory-and barrier-synchronization method and apparatus
GB2405228B8 (en) * 2003-08-19 2007-09-13 Ibm A method, apparatus and computer program for verifying the order of a queue of work items
WO2005024644A2 (en) * 2003-09-09 2005-03-17 Koninklijke Philips Electronics N.V. Integrated data processing circuit with a plurality of programmable processors
US7259482B2 (en) 2003-09-24 2007-08-21 Belkin International, Inc. Distance extender and method making use of same
US7889674B2 (en) * 2004-05-04 2011-02-15 Samsung Electronics Co., Ltd. Zigbee network device for assigning addresses to child nodes after constructing cluster-tree structure, address assigning method and routing method
US20050286526A1 (en) * 2004-06-25 2005-12-29 Sood Sanjeev H Optimized algorithm for stream re-assembly
US20060004933A1 (en) * 2004-06-30 2006-01-05 Sujoy Sen Network interface controller signaling of connection event
US7461173B2 (en) * 2004-06-30 2008-12-02 Intel Corporation Distributing timers across processors
US20060031474A1 (en) * 2004-07-19 2006-02-09 Linden Cornett Maintaining reachability measures
US7366889B2 (en) * 2004-08-27 2008-04-29 Sun Microsystems, Inc. Computer cluster control network comprising a first network to communicate control data and a second network to communicate non-control data between processing nodes
US8331234B1 (en) 2004-09-08 2012-12-11 Q1 Labs Inc. Network data flow collection and processing
US20060059411A1 (en) * 2004-09-16 2006-03-16 Sony Corporation And Sony Electronics, Inc. Method and system for increasing channel coding gain
US7512135B2 (en) * 2004-12-10 2009-03-31 International Business Machines Corporation Method for transferring data among a logical layer, physical layer, and storage device
US7590777B2 (en) * 2004-12-10 2009-09-15 International Business Machines Corporation Transferring data between system and storage in a shared buffer
JP2006178550A (ja) 2004-12-21 2006-07-06 Nec Corp 二重化同期システム、及び二重化同期システムの動作方法
DE102005034652B4 (de) * 2005-03-02 2013-08-08 Rohde & Schwarz Gmbh & Co. Kg Bussystem und Verfahren zum Betreiben des Bussystems
US7478769B1 (en) 2005-03-09 2009-01-20 Cray Inc. Method and apparatus for cooling electronic components
US7523342B1 (en) * 2005-10-28 2009-04-21 Sun Microsystems, Inc. Data and control integrity for transactions in a computer system
US20070150699A1 (en) * 2005-12-28 2007-06-28 Schoinas Ioannis T Firm partitioning in a system with a point-to-point interconnect
WO2007096987A1 (ja) * 2006-02-24 2007-08-30 Fujitsu Limited エラー制御装置
US8009173B2 (en) 2006-08-10 2011-08-30 Avocent Huntsville Corporation Rack interface pod with intelligent platform control
US8427489B2 (en) 2006-08-10 2013-04-23 Avocent Huntsville Corporation Rack interface pod with intelligent platform control
US8108512B2 (en) * 2006-09-01 2012-01-31 Massively Parallel Technologies, Inc. System and method for accessing and using a supercomputer
KR20090067151A (ko) * 2006-09-06 2009-06-24 엔엑스피 비 브이 클러스터 커플러, 네트워크 및 네트워크 통신 방법
US8634470B2 (en) * 2007-07-24 2014-01-21 Samsung Electronics Co., Ltd. Multimedia decoding method and multimedia decoding apparatus based on multi-core processor
US7496784B1 (en) 2008-01-10 2009-02-24 International Business Machines Corporation Method and system for thresholding hardware errors
US7958194B2 (en) * 2008-08-25 2011-06-07 Massively Parallel Technologies, Inc. System and method for parallel processing using a Type I Howard Cascade
FR2938943B1 (fr) * 2008-11-21 2010-11-12 Thales Sa Systeme multiprocesseur.
US20100251259A1 (en) * 2009-03-31 2010-09-30 Howard Kevin D System And Method For Recruitment And Management Of Processors For High Performance Parallel Processing Using Multiple Distributed Networked Heterogeneous Computing Elements
US7925736B2 (en) * 2009-06-15 2011-04-12 Microsoft Corporation Message redirection within a messaging infrastructure
US10216692B2 (en) * 2009-06-17 2019-02-26 Massively Parallel Technologies, Inc. Multi-core parallel processing system
US11042211B2 (en) 2009-08-07 2021-06-22 Advanced Processor Architectures, Llc Serially connected computing nodes in a distributed computing system
US9429983B1 (en) 2013-09-12 2016-08-30 Advanced Processor Architectures, Llc System clock distribution in a distributed computing environment
US8554506B2 (en) * 2009-08-07 2013-10-08 Advanced Processor Srchitectures, LLC Distributed computing
US9645603B1 (en) 2013-09-12 2017-05-09 Advanced Processor Architectures, Llc System clock distribution in a distributed computing environment
US20130282352A1 (en) * 2011-05-20 2013-10-24 Grayskytech Llc Real time logic simulation within a mixed mode simulation network
US20130212363A1 (en) * 2011-05-20 2013-08-15 Grayskytech Llc Machine transport and execution of logic simulation
US20150178092A1 (en) * 2013-12-20 2015-06-25 Asit K. Mishra Hierarchical and parallel partition networks
US10061531B2 (en) * 2015-01-29 2018-08-28 Knuedge Incorporated Uniform system wide addressing for a computing system
US9552327B2 (en) 2015-01-29 2017-01-24 Knuedge Incorporated Memory controller for a network on a chip device
US20170116154A1 (en) * 2015-10-23 2017-04-27 The Intellisis Corporation Register communication in a network-on-a-chip architecture
US10027583B2 (en) 2016-03-22 2018-07-17 Knuedge Incorporated Chained packet sequences in a network on a chip architecture
US10346049B2 (en) 2016-04-29 2019-07-09 Friday Harbor Llc Distributed contiguous reads in a network on a chip architecture
JP6784160B2 (ja) * 2016-12-08 2020-11-11 富士通株式会社 並列処理装置及びノード間通信プログラム
JP6885237B2 (ja) * 2017-07-11 2021-06-09 富士通株式会社 ノード間通信装置、並列処理装置及びノード間通信経路制御方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4306286A (en) * 1979-06-29 1981-12-15 International Business Machines Corporation Logic simulation machine
US4344134A (en) * 1980-06-30 1982-08-10 Burroughs Corporation Partitionable parallel processor
JPS60191536A (ja) * 1984-03-13 1985-09-30 Nec Corp デ−タ処理装置障害通知方式
US4754394A (en) * 1984-10-24 1988-06-28 International Business Machines Corporation Multiprocessing system having dynamically allocated local/global storage and including interleaving transformation circuit for transforming real addresses to corresponding absolute address of the storage
JPS61260350A (ja) * 1985-05-14 1986-11-18 Fujitsu Ltd 並列処理制御方式
US4723244A (en) * 1985-10-01 1988-02-02 Harris Corporation Method and apparatus for preserving the integrity of the error detection/correction word in a code word
US4811210A (en) * 1985-11-27 1989-03-07 Texas Instruments Incorporated A plurality of optical crossbar switches and exchange switches for parallel processor computer
IT1184015B (it) * 1985-12-13 1987-10-22 Elsag Sistema multiprocessore a piu livelli gerarchici
US5060140A (en) * 1986-01-16 1991-10-22 Jupiter Technology Inc. Universal programmable data communication connection system
US5021947A (en) * 1986-03-31 1991-06-04 Hughes Aircraft Company Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing
JP2954220B2 (ja) * 1987-07-27 1999-09-27 株式会社日立製作所 並列計算機のためのデータ転送ネットワーク
JPH01126760A (ja) * 1987-11-11 1989-05-18 Toshiba Corp 並列計算機システム
US4875206A (en) * 1988-03-31 1989-10-17 American Telephone And Telegraph Comopany, At&T Bell Laboratories High bandwidth interleaved buffer memory and control

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1982 INT’L CONFERENCE ON PAPALLEL PROCESSING P123−125 J.E.LILIENKAMP,D.H.LAWRIE,PEN−CHUNG YEW [A FAULT TOLERANT INTERCONNECTION NETWORK USING ERROR CORRECTING CODES]

Also Published As

Publication number Publication date
JP2576846B2 (ja) 1997-01-29
US5166674A (en) 1992-11-24
US5161156A (en) 1992-11-03
EP0439693A3 (en) 1992-06-24
EP0439693B1 (en) 1995-08-16
JPH04139566A (ja) 1992-05-13
DE69021710T2 (de) 1996-04-18
JPH07210527A (ja) 1995-08-11
EP0439693A2 (en) 1991-08-07
DE69021710D1 (de) 1995-09-21

Similar Documents

Publication Publication Date Title
JP2566681B2 (ja) 多重プロセッシング・システム
US5276684A (en) High performance I/O processor
US5282201A (en) Dynamic packet routing network
US5226039A (en) Packet routing switch
US8537828B2 (en) Scalable interface for connecting multiple computer systems which performs parallel MPI header matching
US6778548B1 (en) Device to receive, buffer, and transmit packets of data in a packet switching network
US7668923B2 (en) Master-slave adapter
US7145837B2 (en) Global recovery for time of day synchronization
US6134647A (en) Computing system having multiple nodes coupled in series in a closed loop
US20050081080A1 (en) Error recovery for data processing systems transferring message packets through communications adapters
US20040139365A1 (en) High-availability disk control device and failure processing method thereof and high-availability disk subsystem
JPH118636A (ja) ファイバチャネルスイッチングシステム及びその方法
JPH086854A (ja) アウトボードファイルキャッシュ外部処理コンプレックス
JPH07282025A (ja) クロック回路
US7382736B2 (en) Method for scoring queued frames for selective transmission through a switch
US20050080869A1 (en) Transferring message packets from a first node to a plurality of nodes in broadcast fashion via direct memory to memory transfer
US20050080920A1 (en) Interpartition control facility for processing commands that effectuate direct memory to memory information transfer
US6728258B1 (en) Multi-processor system and its network
US6687797B1 (en) Arbitration system and method
US20050080945A1 (en) Transferring message packets from data continued in disparate areas of source memory via preloading
JP2000506645A (ja) マルチプロセッサ中央処理ユニット
US20050078708A1 (en) Formatting packet headers in a communications adapter
US7272151B2 (en) Centralized switching fabric scheduler supporting simultaneous updates
US6868516B1 (en) Method for validating write data to a memory
US6609185B1 (en) Data storage system having majority gate filter

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20091003

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20091003

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20101003

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20101003

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20111003

Year of fee payment: 15