JPH05242055A - マルチプロセッサ・システム - Google Patents

マルチプロセッサ・システム

Info

Publication number
JPH05242055A
JPH05242055A JP4301997A JP30199792A JPH05242055A JP H05242055 A JPH05242055 A JP H05242055A JP 4301997 A JP4301997 A JP 4301997A JP 30199792 A JP30199792 A JP 30199792A JP H05242055 A JPH05242055 A JP H05242055A
Authority
JP
Japan
Prior art keywords
adapter
processor
memory
data
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4301997A
Other languages
English (en)
Other versions
JP2677744B2 (ja
Inventor
John J Coleman
ジョン・ジョーゼフ・コールマン
Ronald G Coleman
ロナルド・ジェラルド・コールマン
Owen K Monroe
オーウェン・キース・モンロー
Robert Frederick Stucke
ロバート・フレデリック・スタック
Elizabeth A Vanderbeck
エリザベス・アン・ファンデルベック
Stephen E Bello
スチーブン・エドワード・ベッロ
John R Hattersley
ジョン・ロバート・ハッタースリー
Kien A Hua
キエン・アン・ファ
David R Pruett
デービッド・レイモンド・プリュエット
Gerald F Rollo
ジェラルド・フランクリン・ロッロ
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 JPH05242055A publication Critical patent/JPH05242055A/ja
Application granted granted Critical
Publication of JP2677744B2 publication Critical patent/JP2677744B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/17375One dimensional, e.g. linear array, ring

Abstract

(57)【要約】 【目的】 クロスポイント交換機またはクロスバー交換
機を使用して互いに結合された複数の高水準プロセッサ
を備える並列コンピュータ・システムの提供。 【構成】 本発明のシステムは、各プロセッサと交換機
の間に1つのアダプタを含む。交換機の駆動、ページ転
送およびプロセッサ間の転送スケジューリングを行うた
めのプロトコル処理が、このアダプタによって実行され
る。このプロトコルは、送信中または受信中のメッセー
ジの意味をクライアントがバインドできるようにする、
タイプ付きまたはタグ付きの緩衝記憶管理の概念を使用
する。これらの意味は、メッセージ・パケットが出発す
る時または到着する時のプロトコル内での挙動を指定す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、多重プロセッサ・シス
テムに関し、具体的には、あるプロセッサが、別のプロ
セッサ上に存在する記憶域をアドレスしアクセスするこ
とができるようにする装置および方法に関する。
【0002】
【従来の技術】
【発明が解決しようとする課題】処理システムのスルー
プットを増加させるための周知の方法の1つは、作業を
複数の工程に分割し、個々の工程を、それぞれ工程の一
部を処理する別々のプロセッサに結合するものである。
数台または数千台のプロセッサを使用する並列処理に
は、なんらかの形のプロセッサ間通信が必要である。プ
ロセッサ群が共有記憶域を共用する共用記憶型や、各プ
ロセッサがそれぞれ大域記憶域の一部を有する分散シス
テムなど、多数のタイプのシステムが存在する。結合に
は、密結合から疎結合まで様々なタイプがある。結合
は、LAN、クロスポイント交換機(スイッチ)または
クロスバー交換機、最近接型、階層式、ハイパーキュー
ブなどがある。これらのシステムのすべてにおいて、通
信の潜在的な非効率とオーバーヘッドが、システムの性
能を低下させる。このオーバーヘッドを減少させ、根本
的に異なる通信パターン、特性および資源を必要とする
非常に効率的なメッセージ受け渡しの方法および装置を
提供することが望ましく、これが本発明の目的である。
少数の高水準プロセッサを並列化するシステムあるいは
多数の低水準プロセッサを並列化するシステムが存在す
る(米国特許第4598400号明細書など)が、高水
準プロセッサの間での改良された柔軟な通信を伴う高水
準プロセッサの並列化が必要とされている。さらに、作
業要求の生成とスケジューリングを行う手段を設けなけ
ればならない。IBMのRISC System/60
00(RISC System/6000は、インター
ナショナル・ビジネス・マシーンズ・コーポレイション
の商標)などの高水準プロセッサを多数使用するシステ
ムは、数値計算中心の科学・技術適用業務などの大規模
で複雑な問題の処理に望ましい。
【0003】
【課題を解決するための手段】本発明の一実施例によれ
ば、並列コンピュータ・システムは、複数の独立コンピ
ュータを有し、独立コンピュータはそれぞれ、それ自体
のメモリがネットワークによって互いに結合されてい
る。各コンピュータ対の間に1対のアダプタが存在する
ように、ネットワークと各独立コンピュータの間にアダ
プタが結合される。このアダプタは、プロセッサとメモ
リを含んでいる。アプリケーションが、メモリ内の名前
空間と、プロセッサ間で通信経路を確立するためにその
空間をどのように使用するか(意味)を指定するタグと
を定義する。このアプリケーションによって確立された
クラス内で定義される情報を使用して、データがあるア
ダプタ・メモリから別のアダプタ・メモリに送られる。
【0004】
【実施例】図1を参照すると、本発明の一実施例によ
る、数値計算中心の科学・技術適用業務研究用の並列処
理システム設計が示されている。システム10は、60
個のRS/6000マイクロプロセッサ・ノード191
〜1960を含み、これらのフィールドは、それぞれそれ
自体のRISC System/6000(以下、RS
/6000と略す)プロセッサ、メモリおよびディスク
記憶装置が、IBM9032エンタープライズ・システ
ム接続ディレクタ(ESCD)光学式交換機などのクロ
スポイント交換機23によって互いにリンクされてい
る。この交換機とプロトコルの詳細は米国特許出願第0
7/429267号にある。この交換機の入力線および
出力線は、直列光ファイバである。リンク・フレーム・
メッセージを復号して、適当な交換機を制御する。この
クロスポイント交換機23は、高速チャネル(HSC)
13を介して3090システムなどのホスト・コンピュ
ータ11にリンクされる。HSC13の接続は、米国特
許出願第07/358774号に記載されている。この
高速接続は、HIPPI交換機によって行ってもよい。
上記の参照によって本明細書に組み込まれる関連特許出
願に記載されているように、拡張チャネルに指定される
一義的ページ・アドレスのページング命令を用いてホス
ト・プロセッサを操作することによって、情報がやり取
りされる。ユーザ・インターフェース12は、プログラ
ムと命令をホストに入力し、その出力をシステムから受
け取る。実行のためプロセッサ・ノード記憶域にロード
されるデータとプログラムを記憶する大容量記憶装置1
4もホストに接続されている。ホストは、緩衝記憶域
(バッファ)15、HSC13および変換アダプタ・カ
ード17を介してRS/6000プロセッサ・ノードの
1つ1960に結合される。変換アダプタ・カード17
は、米国特許出願第07/558003号に記載されて
いるように、AIX/370アーキテクチャをマイクロ
チャネル・アーキテクチャに変換する。ノード19
60は、他のプロセッサ間で作業を分割し、その回答をホ
ストに戻す、監視プロセッサである。アダプタ211
2160は、ノード191〜1960のそれぞれとクロスポ
イント交換機23の間に結合される。このアダプタを用
いると、どのプロセッサでも、ソフトウェア制御の下で
他のどのプロセッサとも通信できるようになる。また、
要素151、171、191、211から構成される、冗長
ホスト・アクセス/監視プロセッサ・リンクも設けられ
る。一方の経路を使用してホストから信号を送ると同時
に、他方が帰還信号をホストに結合することができる。
ノード191〜1960にある個々のプロセッサが、複雑
な計算の異なる部分を処理し、他のノードにある他のプ
ロセッサと中間結果を交換することによって、完全な解
に到達する。このシステムに対するプログラミング・イ
ンターフェースは、たとえば、各ノード191〜1960
上のAIX環境で走行する拡張クラスタ化FORTRA
Nとすることができる。簡単に理解できるプログラミン
グ構造と標準の操作環境を使用することによって、既存
のアプリケーションの移行が改善される。
【0005】このシステムのソフトウェア構成要素は、
拡張クラスタ化FORTRAN機能、ジョブ管理プログ
ラム、ファイル・アクセス機構、システムの利用度を監
視し、ユーザ・インターフェースに報告を提供する性能
モニタ、呼出しのサービスを援助するファイル・アクセ
ス機構、およびデバッガである。このシステムは、ホス
ト・コンピュータ11上ではAIX/370、ノード1
1〜1960上ではAIX 3.1を使用する。拡張ク
ラスタ化FORTRAN言語は、並列処理の作成と実
行、プロセス間通信およびプロセス調整の諸機能をFO
RTRANに追加したものである。ジョブ管理プログラ
ムは、ホスト・コンピュータ11上で走行し、ジョブの
コンパイル、実行、デバッグ、消去および取消しのため
のAIXサービスを提供する。ファイル・サーバまたは
ファイル・アクセス機構を用いると、アプリケーション
が、ホスト・ファイルにアクセスし、計算結果をユーザ
・ディレクトリに返せるようになる。性能モニタは、ハ
ードウェア機能とソフトウェア機能の図形分析を提供す
ることによって、プログラムのデバッグと最適化を簡単
にする。
【0006】アダプタ21は、マイクロ・チャネルとク
ロスポイント交換機(この例ではやはりAIX/370
チャネル)の間に結合される。同様に、各ノード19と
クロスポイント交換機23の間には、新型の直列チャネ
ル・アダプタであるアダプタ21がある。各ノード19
はそれぞれ、局所記憶用のメモリ・セクションと、大域
アクセス用の第2のメモリ・セクションを有する。
【0007】システム10のアーキテクチャは、多層式
であり、新型直列チャネル・アダプタ、RS/6000
およびAIXオペレーティング・システムのシステム構
造に含まれるハードウェアに従う。図2を参照された
い。また、インターフェースを通るメッセージの流れを
示す図3を参照されたい。新型直列アダプタであるアダ
プタ21は、たとえばインテルのi960プロセッサな
ど、それ自体のプロセッサを有する。論理リンク制御ア
ーキテクチャは、5つの副層に分割される1つの層であ
る。最上層は、トランスポート・プロトコルとネットワ
ーク・プロトコル用のシステム・レベルのアプリケーシ
ョン・プログラム・インターフェース(API)を提供
する。これは、ノード191〜1960にある各プロセッ
サにある。この層は、クライアントまたはアプリケーシ
ョンを「バインド」し「アンバインド」する機能、メッ
セージの送受、ならびに、アプリケーションが必要とす
る他の機能を提供する。第2層は、装置ドライバであ
る。これも、ノード191〜1960のRS/6000プ
ロセッサにある。図示の実施例では、各ノード19ごと
に1つのアダプタ・ドライバ副層がある。他の実施例で
は、各ノード191〜1960ごとに別々の複数のアダプ
タがあってもよい。すべてのアダプタ21は、1つの装
置ドライバによって管理される局所プロセッサ(この例
ではRS/6000)に接続される。ノード191〜1
60の各プロセッサ内にあるこの装置ドライバは、AI
Xカーネル内で、処理状況でも割込み状況でも走行す
る。装置ドライバは、APIとNSCAアダプタの間の
ハードウェア・インターフェースとデータ構造を管理す
る。これには、バスへの接続、RS/6000内のキャ
ッシュのフラッシュ、割込みの処理、カーネル常駐待ち
行列の連鎖/解除およびその管理が含まれる。装置ドラ
イバは、APIによって処理されるメッセージ・パケッ
トを、アダプタ・ドライバによって処理される作業パケ
ットに変換し、また、その逆の変換を行う。クライアン
トは、メッセージ・パケットを作成し、消費し(対等通
信として)、アダプタ・ドライバは、作業パケットを作
成し、消費する。作業パケットとは、装置ドライバとア
ダプタ・ドライバの間で交換される、サービスを求める
要求を一般化したものである。一般に、1つのメッセー
ジを送出しあるいは受け取ると、1つの作業パケットが
生成され、逆も同様である。メッセージ・パケットに
は、それで運ばれるデータの量に応じて3つのタイプが
ある。3つのパケット・タイプとは、アンテグラム・メ
ッセージ、データグラム・メッセージおよび緩衝記憶メ
ッセージである(図4を参照すると、ヘッダ、データグ
ラムおよび緩衝記憶を伴うメッセージのフォーマットが
示されている)。アンテグラム・パケットとは、データ
を含まないメッセージ・パケットである。アンテグラム
・パケットは、短い命令のブロックを含むプロトコル・
ヘッダと制御情報だけを含んでいる。データグラム・メ
ッセージおよび緩衝記憶メッセージは、プロトコル・ヘ
ッダならびにデータを含んでいる。データグラム・メッ
セージは、最大35バイトのデータを運び、緩衝記憶メ
ッセージは、1ページまでのデータを運ぶ。現在の実施
態様では、このプロトコルでは、64Kバイトまでのペ
ージ長が可能である。データグラム・メッセージおよび
緩衝記憶メッセージは、待ち行列に入れられ、受け取っ
た順序で装置ドライバによって処理されなければならな
い。しかし、アンテグラム・パケットは、プロトコル・
ヘッダ内で要求される優先順位に従って、保留中の他の
すべてのメッセージより前に処理することができる。作
業パケットには、純、通常、および、複合または2段階
の3つのタイプがある。純作業パケットは、割込みサー
ビス・ルーチン(ISR)への呼出しからなる。通常作
業パケットは、プロトコル・ヘッダと4バイトのフラグ
情報を含んでいる。通常作業パケットは、純作業パケッ
トと同様に、ISRへの呼出しを含んでいるが、受信側
要素によって処理される命令の制御ブロックと制御情報
も含んでいる。受信側要素は、状況に応じて、ノード1
9内の装置ドライバ、またはアダプタ・ドライバであ
る。通常作業パケットは、たとえば28バイトであり、
APIによって生成され処理されるアンテグラム・メッ
セージ・パケットおよびデータグラム・メッセージ・パ
ケットに対応する。複合作業パケットまたは2段階作業
パケットは、通常作業パケットと、装置間のマイクロチ
ャネル・インターフェースを介する1転送分のデータか
らなる。2段階作業パケットでは、制御情報が交換され
る段階の後の別の段階でデータ転送が行われる。したが
って、「2段階」と称する。アダプタ21内のアダプタ
・ドライバ副層は、そのアダプタ自体に含まれる1プロ
グラムとして、完全にプロセッサの外部で走行する。ア
ダプタ・ドライバは、作業パケット・インターフェース
(WPI)を介するファイバ上での出発と到着に関し
て、緩衝記憶パケットのスケジューリングを行う。アダ
プタ・ドライバは、緩衝記憶域属性の意味を解釈し、ホ
スト・システムの仮想記憶域との間でのすべての転送を
手配する。図5を参照すると、このアダプタは、待ち行
列のシステムである作業パケット・インターフェース7
0を含んでいる。WPI内の各構造は、アダプタ・ドラ
イバ宛(アウトバウンド)の作業パケット用の副構造、
装置ドライバ宛(インバウンド)の作業パケット用の副
構造、および装置ドライバからアダプタ・ドライバへ肯
定応答禁止を渡すための副構造の、3つの副構造に分け
られる。WPI構造は、装置ドライバとアダプタ・ドラ
イバによって共用される記憶資源に常駐する。図6を参
照のこと。作業パケットのサービスは、下記のようにし
て行われる。アダプタ・ドライバが、WPIアウトバウ
ンド構造をポーリングし、見つかった作業パケットに関
して要求されるサービスのスケジューリングを行う。こ
れとは対照的に、装置ドライバは、ISR(割込みサー
ビス・ルーチン)によってその作業パケットの最初の部
分を受け取り、同じ割込みサイクルの間に残りのパケッ
トを受け取る。通常は、この装置ドライバのISRに対
して呼出しが行われ、その後、作業パケットが、WPI
構造から読み出され、順次処理される。装置ドライバが
作業パケットを送出する時、先に進むには2つの方法が
ある。クライアントの代わりに、装置ドライバが同期式
にふるまい、第1水準肯定応答(FACK)が返される
までスピン待機することができる。あるいは、装置ドラ
イバは、FACKを待たずに、WPI上で複数の作業パ
ケットをパイプライン式に伝送することによって、非同
期式にふるまうこともできる。装置ドライバまたは、デ
ータがいつホスト・システムから移動されたかを示す送
信完了肯定応答(すなわち、純作業パケット)を要求す
ることができ、あるいは、データをいつ受信側ノードに
送出し終えたかを示す第2水準肯定応答(SACK)を
要求することもできる。SACKは、アンテグラム・メ
ッセージとしてソース・アプリケーション・クライアン
トにディスパッチされる通常作業パケットである。した
がって、本発明では、同期モードと非同期モードの両方
の動作が可能である。第4の層は、アダプタ21内のリ
ンク・プロトコル副層である。これは、図1に示すよう
に、クロスポイント交換機のリンク・プロトコルと装置
プロトコルのサブセットを実施する。
【0008】MIC転送は、別のPEにアウトバウンド
のメッセージ・パケットを送信するため、および別のP
Eからインバウンドのメッセージ・パケットを受信する
ための2つのステージング緩衝記憶域プールを介してス
テージングされる。この2つのステージング緩衝記憶域
プールを、それぞれ送出(xmit)緩衝記憶域および受取
(recv)緩衝記憶域と称する。
【0009】メッセージに関連するデータは、(1)A
IX仮想記憶域内の固定ページ境界上にあるかまたはそ
の内部に含まれなければならず、(2)装置ドライバが
そのページを「解放」するまでこのデータにアクセスし
てはならない。アダプタ・ドライバは、作業パケットが
待ち行列に入られた後の不確定な時点で、MICにデー
タ転送コマンドを発行する。したがって、メッセージを
送ることによって、たとえば、アダプタ・ドライバがま
だそのxmit緩衝記憶域プールにデータを転送しないうち
に、クライアントがAPIから戻ることができる。
【0010】緩衝記憶域の属性と待ち行列化の規律が、
実際のデータの移動を決定する。データが転送された
後、アダプタ・ドライバは、純作業パケットを装置ドラ
イバに送って、そのページを解放する。また、アダプタ
・ドライバは、4部分からなるアドレス(PE,channel,pe
ck-unit,buffer-id)の経路指定上の意味を実施する。送
出時と受取時に、アダプタ・ドライバは、クライアント
が前もってバインドする属性ごとに、メッセージ内の
(*,*,peck-unit,buffer-id)を解釈する。送出時に、ア
ダプタ・ドライバは、(PE,channel,*,*)を交換機上の物
理ポート番号にマッピングする。その後、このポート番
号を使用して、その交換機を介する接続を指示する。
【0011】アダプタ・ドライバの下にリンク・プロト
コル・ドライバがある。このリンク・プロトコル・ドラ
イバは、完全にNSCA上のリンク・プロトコル・ドラ
イバ・エンジン内で走行する。これは、図7に示すよう
に、クロスポイント交換機のリンク・プロトコルと装置
プロトコルのサブセットを実施する。リンク・プロトコ
ル・ドライバは、交換機接続を作成または破壊し、交換
機フレームを介してLSPパケットをパックまたはアン
パックし、これらのパケットをxmitおよびrecv緩衝記憶
方式を介して、緩衝記憶ディレクトリ・パケットとして
送出しまたは受け取る。緩衝記憶ディレクトリ・パケッ
トとは、アダプタ・ドライバとリンク・プロトコル・ド
ライバの間で情報を交換するための戦略を一般化したも
のである。
【0012】i960プロセッサとリンク・プロトコル
・ドライバの間のインターフェースは、局所データ記憶
域(LDS)内または局所プロセッサ記憶域(LPS)
内の共用領域を介する。この共用領域は、(1)次に使
用可能な受信緩衝記憶域を指す変数next_recv_avail、
(2)次に使用可能な送信緩衝記憶域を指す変数next_x
mit_avail、および(3)何が(i960とMCMのど
ちらが)次のxmit/recv変数ポインタを更新することを
許されているのかを示すup_interlock_turn変数の、3
つのメタデータ変数を保持する。xmit緩衝記憶域とrecv
緩衝記憶域は、LDS内の循環リスト・データ構造を形
成し、メタデータは、LDSまたはLPSのどちらかに
置くことができる。変数next_recv_availとnext_xmit_a
vail(以下、この2つをまとめてnext変数と称する)
は、実際にはhead(頭部)副フィールドとtail(尾部)
副フィールドを含んでいる。
【0013】アダプタ・ドライバと、リンク・プロトコ
ル・ドライバのどちらかが非静止状態である。アダプタ
・ドライバが非静止状態の時は、たとえばWPIを走査
するなどでアダプタ・ドライバが使用中である。アダプ
タ・ドライバは、静止する時、リンク・プロトコル・ド
ライバの値をインターロックに書き込み、続行する。ア
ダプタ・ドライバは、これを行う時、next変数を更新し
ないことに同意する。すなわち、アダプタ・ドライバか
ら見ると、これらの変数の状態は静止している。
【0014】リンク・プロトコル・ドライバが非静止状
態の時は、リンク・プロトコル・ドライバはnext変数を
自由に更新することができる。また、リンク・プロトコ
ル・ドライバは、アウトバウンド(の伝送物があるなら
ば、それ)を受諾でき、またインバウンドの伝送物(が
あるなら、それ)を受諾することができる。リンク・プ
ロトコル・ドライバが、行うべき作業がない場合、すな
わち、アウトバウンドの伝送物もインバウンドの伝送物
もない場合は、リンク・プロトコル・ドライバは、アダ
プタ・ドライバの値をインターロックに書き込むことに
よって静止する。前述のアダプタ・ドライバと同様に、
リンク・プロトコル・ドライバは、そうすることによっ
てnext変数を更新しないことに同意する。
【0015】静止状態の間に、アダプタ・ドライバは、
おそらく3つのことを行っている。1つは、受信データ
をrecv緩衝記憶域からMICを介してシステム・メモリ
に押し戻すことである。もう1つは、送信データをシス
テム・メモリからMICを介してxmit緩衝記憶域に押し
出すことである。最後に、アダプタ・メモリは、必要に
応じて作業パケットを処理しながら、WPIを走査する
こともできる。
【0016】アダプタ・ドライバは、非静止状態の時、
xmit/recv緩衝記憶域の状態を収集する。その後、アダ
プタ・ドライバは、静止し、上述の3項目の処理を継続
する。したがって、アダプタ・ドライバは、(1)1つ
の項目だけが送信待ち行列の先頭にあり、(2)かつそ
れが非静止状態である場合に、遊休状態になる。
【0017】静止状態では、リンク・プロトコル・ドラ
イバは、おそらくはデータの送信と受信という2つのこ
とを行うことができる。アダプタ・ドライバと同様に、
リンク・プロトコル・アダプタは、非静止状態の間にxm
it/recvデータを収集し、その後、静止する。
【0018】静止状態にあるリンク・プロトコル・ドラ
イバは、もう1度非静止状態になるまでに、ちょうどn
個の入力伝送物を受諾することができる。値nは、使用
可能なrecv緩衝記憶域の数である。構成要素headは、リ
ンク・プロトコル・ドライバが非静止状態の時、リンク
・プロトコル・ドライバによって進められる。構成要素
tailは、アダプタ・ドライバが非静止状態の時に、アダ
プタ・ドライバによって進められる。
【0019】リンク・プロトコル・ドライバの処理の詳
細を図7に示す。図7は、リンク・プロトコル・ドライ
バの制御ループを示す図である。リンク・プロトコル・
ドライバは、アウトバウンドの作業を処理しているか、
インバウンド接続を待っているか、あるいは非静止状態
になるのを待っているかのいずれかである。i960用
の類似のアルゴリズムを作ることができる。
【0020】この通信管理システムでは、アプリケーシ
ョンが、使用可能メモリ内の緩衝記憶域の名前空間と、
論理プロセッサ間の通信経路を確立するためにその名前
空間をどう使用するか(意味)のクラスを指定するタグ
とを定義する。この意味は、そのアプリケーションがそ
の緩衝記憶域に関連するタグを変更するか、あるいはそ
の緩衝記憶域を解放するまで、その名前空間にバインド
される。アプリケーションから見ると、そのアプリケー
ションによって確立されたクラスで定義される情報を使
用して、データが、ある論理緩衝記憶域から別の論理緩
衝記憶域へ送られる。これは、論理プロセッサの外部の
ハードウェアによって行われ、プロセッサは、通信割込
みの処理から解放される。論理プロセッサは、通信管理
プログラムの機能を呼び出し、各プロセッサは、協力し
通信する論理プロセッサのグループ内で、一義的な識別
子をもたなければならない。
【0021】アウトバウンドのアダプタ・ドライバは、
低水準インターフェースの細部をプロセッサから隠し、
低水準ヘッダを作成し、低水準機能呼出しを生成し、ア
プリケーションから与えられるページ・サイズのデータ
・ブロックを分解して媒体特有のフレームにし、クラス
特性を名前空間(緩衝記憶域)にマッピングする。アウ
トバウンドのアダプタ・ドライバは、アプリケーション
によって静的に構成される緩衝記憶域の意味に関して、
インバウンドとアウトバウンドの伝送をスケジューリン
グし、キャッシュ記憶する。アウトバウンドのアダプタ
・ドライバは、緩衝記憶域プールを管理し、すべての待
ち行列化を実施する。
【0022】通信管理プログラムは、インバウンドとア
ウトバウンドのデータ要求を、深さnのFIFO待ち行
列に入れる。宛先毎に1つの待ち行列がある。データ自
体は待ち行列化されず、データを求める要求だけが待ち
行列に入れられる。要求は、名前空間(緩衝記憶域)の
受信属性に従って待ち行列から外される。このようにし
て、順序が保存され、宛先使用中状態が、ソース側で取
り除かれる。
【0023】属性とは、特定の名前空間の特性を記述す
る静的値である。たとえば、緩衝記憶域属性は、「送
信」特性または「受信」特性を指定することができる。
クラスとは、アプリケーションに対して使用可能にされ
た属性の組であり、アダプタ・ドライバが緩衝記憶域を
管理する論理的な方法を反映する。図8を参照のこと。
【0024】定義済みクラス(属性の組)の数は有限で
ある。これらのクラスをアプリケーションが変更するこ
とはできないが、アプリケーションは、それが制御する
すべての緩衝記憶域のクラスを変更することができる。
効率的な通信を保証するために、アプリケーションは、
属性の他の組合せを定義しない。
【0025】本段では、緩衝記憶域および緩衝記憶域管
理の概念を説明する。このシステムは、数種類の緩衝記
憶域を使用する。内部目的に使用される緩衝記憶域は、
クライアントから不可視である。これらの緩衝記憶域の
例には、補助xmit/recv緩衝記憶域、非送信請求受信の
ために維持される緩衝記憶域などが含まれる。クライア
ントから見ると、緩衝記憶域は、データの送信および受
信に使用される論理記憶資源である。この目的のため、
緩衝記憶域は、論理対(peck-unit,buffer-id)によって
アドレスされる。
【0026】クライアントは、(1)ある緩衝記憶域の
名前空間と、(2)その緩衝記憶域の意味を指定するタ
グとを定義する。これらの意味は、そのクライアントが
そのタグを変更するかあるいはその名前をアンバインド
するまで、バインドされたままになる。属性は、メッセ
ージが送信または受信される時、システムにとってよく
定義された挙動を指定する。
【0027】(peck-unit,buffer-id)対は、論理記憶域
アドレスである。この対は、ある時点で物理記憶域にバ
インドされなければならない。この設計は、後期バイン
ディングと早期バインディングの両方をサポートする。
主要な緩衝記憶域クラスは2つある。
【0028】バインディングが早期(かつ暗黙の条件か
ら静的)である場合には、緩衝記憶域の属性は、持続性
である。持続性の緩衝記憶域は、共用メモリと同様の挙
動を示す。(peck-unit,buffer-id)対から物理記憶域へ
の1対1のマッピングが存在する。この属性を有する緩
衝記憶域上での局所送信および局所受信の挙動は、局所
アクセスおよび局所更新と同様である。遠隔送信および
遠隔受信の挙動は、遠隔アクセスおよび遠隔更新と同様
である。この意味で、データ(および名前マッピング)
は持続する。
【0029】バインディングが後期(かつ暗黙の条件か
ら動的)である場合には、緩衝記憶域の属性は非持続性
である。非持続性の緩衝記憶域は、深さnのFIFOリ
ンクと同様の挙動を示す。(peck-unit, buffer-id)対か
ら物理記憶域への1対多のマッピングが、潜在的に存在
する。この属性を有する緩衝記憶域上での送信および受
信は、遠隔PEに向けてアウトバウンドに待ち行列化さ
れるか、あるいは遠隔PEからインバウンドに待ち行列
化される。データは、持続しない。
【0030】受信タイプの属性を有する緩衝記憶域は、
遠隔PEからデータを受け取ることができる。この緩衝
記憶域を使ってメッセージを送信することはできない。
受信属性には、3つの異なる属性がある。これらの属性
は、受信通知をいつどのように配布するのかを指定す
る。受信通知(RVN)とは、宛先クライアント向けの
メッセージが受信されたことを伝える、宛先クライアン
トに送られる「信号」である。属性が受信通過の場合に
は、メッセージが到着するごとにRVNが送られる。1
0個のメッセージが到着する場合、通知ルーチンへの1
0回の呼出しがスケジューリングされる。属性が受信遅
延の場合には、1メッセージ・ブロックにつき1つのR
VNだけが送られる。ブロックのサイズは、単一の割込
みサイクル中にアダプタ・ドライバによって作成される
作業パケットの数によって決定される。1つの割込みの
間に3つのメッセージが到着し、別の割込みの間に7つ
のメッセージが到着する場合、RVNルーチンへの2回
の呼出しがスケジューリングされる。これら2つの属性
は、スループットと応答の間のヒューリスティックなト
レードオフを表している。それ自体の緩衝記憶域管理を
実行する高性能クライアントは、これらの属性のうちの
1つを選択するであろう。属性が受信ポーリングの場
合、RVNは送られない。クライアントは、APIの受
信機能を呼び出すことによって、そのメッセージを求め
て「ポーリング」を行わなければならない。この属性
は、それ自体の緩衝記憶域管理を実行しない低性能クラ
イアントに有用である。この場合、このシステムの内部
緩衝記憶域が使用され、メモリ間コピーによって、その
データがカーネル・メモリからクライアントのメモリに
移される。
【0031】送信タイプの属性を有する緩衝記憶域は、
遠隔PEにデータを送るのに使用することができる。こ
れを使ってメッセージを受信することはできない。送信
属性には、3つの異なる属性がある。これらの属性は、
送信通知(XTN)をいつどのように送るのかを指定す
る。XTNとは、メッセージのデータ・ページが再度ア
クセス可能になった時にソース・クライアントに送られ
る「信号」である。緩衝記憶域属性が送信通過の場合に
は、各ページがアダプタ上のxmit緩衝記憶域にDMA転
送された後に、XTNが送られる。この時点で、クライ
アントは、そのページを割振り解除するか、あるいはそ
のページを使って別のメッセージを送ることができる。
ただし、XTNは、そのメッセージがシステムを出たこ
とを意味するものではない。その目的には、別の機構で
あるSACKが使用される。緩衝記憶域属性が送信遅延
の場合には、DMA転送される1ページ・ブロックにつ
き1つのXTNだけが送られる。このブロックのサイズ
は、アダプタ・ドライバを介してディスパッチできるメ
ッセージ数に依存する。やはり、これら2つの属性は、
応答とスループットの間のヒューリスティックなトレー
ドオフを表している。緩衝記憶域属性が送信の場合に
は、XTNは全く送られない。この属性は、それ自体の
緩衝記憶域管理を実行するクライアントに有用である。
この場合、たとえば、クライアント・レベルの肯定応答
を使用して、いつページが解放されたのかを通知する。
【0032】アダプタ専用という意味は、主に、その緩
衝記憶域がLDSアダプタ空間内で割り振られることを
指定する。
【0033】取出し可能属性という意味は、別のアダプ
タ・ドライバがその緩衝記憶域に遠隔アクセスできるか
否かを指定する。この緩衝記憶域は、取出し可能な有効
状態でなければならない。すなわち、ある緩衝記憶域内
のデータは、その緩衝記憶域内のデータが有効である場
合に限って取出し可能である。クライアントは、API
の送信要求呼出しを使って、別のクライアントの取出し
可能緩衝記憶域に遠隔アクセスできる。
【0034】緩衝記憶域属性には、組み合わされた時に
意味を有するものもあれば、そうでないものもある。緩
衝記憶域は、持続性か非持続性のどちらかでなければな
らない。その両方になることは不可能である。さらに、
緩衝記憶域は、送信専用タイプ、受信専用タイプ、また
は送信受信組合せタイプでなければならない。これらの
属性の6つの組合せのうちのどれももたない緩衝記憶域
は無意味である。取出し可能属性は、その緩衝記憶域が
持続性であることも暗示している。アダプタ専用属性に
ついても同じことがいえる。たとえば、ある緩衝記憶域
が、取出し可能(またはアダプタ専用)であり、かつ非
持続性であることは不可能である。アンテグラムは、形
式上は記憶域のないメッセージ・パケットである。アン
テグラムは、緩衝記憶資源を必要としないが、どのよう
な場合であっても、このクラス属性パラダイム内で処理
される。
【0035】たとえば、上記のタイプの意味を実行する
能力を有する知能アダプタを介して通信を実行する、コ
ンピュータまたはデータ・サーバまたはデータ・マネジ
ャー資源間の有効な2地点間通信の手段を提供する、ク
ロスバー接続式またはカスケード式のクロスバー交換機
のネットワークも、本明細書に記載のタイプの分散メモ
リ式計算システムとみなされるはずである。前に提案し
た数値計算中心の科学・技術用システムの他に、このよ
うなシステムも、照会処理、トランザクション処理また
は様々なワークステーション・サーバ機能などの様々な
市販アプリケーションを実行できるはずである。さら
に、"ESCD"クロスバ交換機を、1つの可能な相互接
続ファブリックとして提案したが、他の交換機も本発明
の実施に適しているはずである。また、このようなシス
テムは、同一のラックや格納装置中など、互いに物理的
に接近して実装することもでき、また選択されたファブ
リックによってサポートされる距離を隔てて分散してい
ても、なおかつ本発明から利益を得ることができるはず
である。
【図面の簡単な説明】
【図1】本発明の一実施例によるシステムの全体ブロッ
ク図である。
【図2】アーキテクチャ層を示す図である。
【図3】メッセージの流れを示す図である。
【図4】メッセージ・パケットのフォーマットを示す図
である。
【図5】アダプタを示す図である。
【図6】WPIの動作を示す図である。
【図7】リンク・プロトコル・ドライバ処理の流れ図で
ある。
【図8】クラスと属性の組合せ表である。
【符号の説明】
10 システム 11 ホスト・コンピュータ 12 ユーザ・インターフェース 13 高速チャネル(HSC) 14 大容量記憶装置 15 緩衝記憶域 17 変換アダプタ・カード 19 ノード 21 アダプタ 22 メモリおよびディスク記憶装置 23 クロスポイント交換機 70 作業パケット・インターフェース(WPI)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロナルド・ジェラルド・コールマン アメリカ合衆国、ニューヨーク州ハイド・ パーク、シーニック・ドライブ 14 (72)発明者 オーウェン・キース・モンロー アメリカ合衆国、ニューヨーク州ポート・ エウェン、ブロードウェイ 262 (72)発明者 ロバート・フレデリック・スタック アメリカ合衆国、ニューヨーク州ソージャ ティーズ、リッジ・ロード 9 (72)発明者 エリザベス・アン・ファンデルベック アメリカ合衆国、ニューヨーク州キングス トン、ビーバーキル・ロード 280 (72)発明者 スチーブン・エドワード・ベッロ アメリカ合衆国、ニューヨーク州キングス トン、ジョン・ストリート 95 (72)発明者 ジョン・ロバート・ハッタースリー アメリカ合衆国、ニューヨーク州ソージャ ティーズ、ブルーストーン・パーク・ロー ド 25 (72)発明者 キエン・アン・ファ アメリカ合衆国、フロリダ州オビエド、マ ッコール・コート 1012 (72)発明者 デービッド・レイモンド・プリュエット アメリカ合衆国、ニューヨーク州ソージャ ティーズ、チェリー・レーン 8 (72)発明者 ジェラルド・フランクリン・ロッロ アメリカ合衆国、ニューヨーク州ポーキー プシー、プレザント・リッジ・ドライブ 40

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】それぞれそれ自体のプロセッサとメモリと
    オペレーティング・システムとを有し、前記メモリが局
    所記憶区画と大域記憶区画とを有する、複数の独立コン
    ピュータと、 複数のポートと、前記ポート間の選択的結合手段とを有
    する多重ネットワーク手段と、 前記ポートのそれぞれと前記独立コンピュータの間に結
    合され、データを記憶するだけでなく、所与の1組の意
    味に基づいて受信データに作用するためのプロセッサと
    知能メモリ手段とを含む、前記ネットワーク手段と前記
    コンピュータの間の経路接続を維持し、それによって、
    2つのアダプタを通過して2つのコンピュータ間を結合
    するためのアダプタ手段とを備える並列コンピュータ・
    システム。
  2. 【請求項2】それぞれ局所プロセッサを含む、複数の処
    理ユニットと、 局所プロセッサと、処理ユニットの外部にある少なくと
    も1つの他のプロセッサとによって、データおよびコマ
    ンドを記憶および検索するためのメモリと、 前記処理ユニットによるアクセスを可能にする外部通信
    経路と、 前記局所プロセッサを前記外部通信経路に接続するため
    のインターフェースと、 前記外部通信経路によって前記処理ユニットを接続する
    ためのクロスポイント交換機と、 デジタル計算システムの作用を受けるデータおよび動作
    を記憶するための記憶装置と、 ユーザ・インターフェース、および前記記憶装置に対す
    るアクセスを提供するためのホスト・コンピュータと、 前記処理ユニットのうちの少なくとも1つと前記ホスト
    ・コンピュータの間の通信を可能にするためのホスト通
    信経路とを備えることを特徴とする、分散メモリ式デジ
    タル計算システム。
  3. 【請求項3】情報を記憶および検索するための前記メモ
    リが、さらに、実行時またはそれ以前に定義されたタイ
    プおよび属性を有する緩衝記憶域を備え、緩衝記憶域の
    前記タイプおよび属性が、そこに書き込まれるかまたは
    そこから読み取られるメッセージに対する応答を決定す
    ることを特徴とする、請求項2に記載の形式の分散メモ
    リ式デジタル計算システム。
  4. 【請求項4】それぞれ局所プロセッサと、通信アダプタ
    と、前記局所プロセッサまたは局所通信アダプタから発
    行されたコマンドによってのみアクセス可能なメモリと
    を有する複数の処理ノードを備え、前記通信アダプタ
    が、アダプタ・プロセッサと、保留中の局所プロセッサ
    作業要求を記憶するための第1データ構造および保留中
    のアダプタ・プロセッサ作業要求を記憶するための第2
    データ構造を備えるアダプタ記憶域と、局所プロセッサ
    作業要求が前記第1データ構造にいつ書き込まれたかを
    検出するための書込み標識と、前記書込み標識に応答し
    て、前記アダプタ記憶域内での局所プロセッサ作業要求
    の位置を表す局所プロセッサ作業要求信号を生成し、前
    記局所プロセッサに伝送するための手段と、前記作業要
    求および前記局所プロセッサに応答して、前記作業要求
    を前記第1データ構造から検索するための手段と、前記
    アダプタ・プロセッサに応答して、前記第2データ構造
    をポーリングして前記アダプタ・プロセッサ作業要求を
    前記アダプタ・プロセッサに伝送するための手段と、前
    記アダプタ・プロセッサおよび前記アダプタ・プロセッ
    サ作業要求に応答して、作業要求を伝送するための外部
    通信経路と、前記外部通信経路によって前記処理ノード
    を接続するためのクロスポイント交換機と、デジタル計
    算システムの作用を受けるデータおよび動作を記憶する
    ための記憶装置と、ユーザ・インターフェースおよび前
    記記憶装置に対するアクセスを提供するためのホスト・
    コンピュータと、前記ノードのうちの少なくとも1つと
    前記ホスト・コンピュータの間の通信を可能にするため
    のホスト通信経路とを備える、分散メモリ式デジタル計
    算システム。
JP4301997A 1991-11-19 1992-11-12 分散メモリ式デジタル計算システム Expired - Fee Related JP2677744B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US79474991A 1991-11-19 1991-11-19
US794749 1991-11-19

Publications (2)

Publication Number Publication Date
JPH05242055A true JPH05242055A (ja) 1993-09-21
JP2677744B2 JP2677744B2 (ja) 1997-11-17

Family

ID=25163570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4301997A Expired - Fee Related JP2677744B2 (ja) 1991-11-19 1992-11-12 分散メモリ式デジタル計算システム

Country Status (4)

Country Link
US (1) US5517662A (ja)
EP (1) EP0543512B1 (ja)
JP (1) JP2677744B2 (ja)
DE (1) DE69230093T2 (ja)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870089A (en) * 1994-10-27 1999-02-09 Dazel Corporation Apparatus and process for distributing information using an electronic package representation
JP3125842B2 (ja) * 1995-03-03 2001-01-22 株式会社日立製作所 並列計算機での通信処理方法及びそのシステム
US7577782B2 (en) * 1996-02-02 2009-08-18 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
US6631435B1 (en) * 1996-02-02 2003-10-07 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
US6519268B1 (en) * 1996-03-07 2003-02-11 Sony Corporation Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US6233637B1 (en) 1996-03-07 2001-05-15 Sony Corporation Isochronous data pipe for managing and manipulating a high-speed stream of isochronous data flowing between an application and a bus structure
US5841992A (en) * 1996-03-25 1998-11-24 Snap-On Tools Company Network-to-serial device intelligent converter
US6243667B1 (en) * 1996-05-28 2001-06-05 Cisco Systems, Inc. Network flow switching and flow data export
US5890207A (en) * 1996-11-27 1999-03-30 Emc Corporation High performance integrated cached storage device
US6477584B1 (en) 1997-03-21 2002-11-05 Lsi Logic Corporation Message FIFO empty early warning method
US5950014A (en) * 1997-03-21 1999-09-07 Lsi Logic Corporation Methodology for pull model invocation
US6219692B1 (en) * 1997-03-21 2001-04-17 Stiles Invention, L.L.C. Method and system for efficiently disbursing requests among a tiered hierarchy of service providers
US6611895B1 (en) * 1998-06-08 2003-08-26 Nicholas J. Krull High bandwidth cache system
US6301637B1 (en) * 1998-06-08 2001-10-09 Storage Technology Corporation High performance data paths
US6425002B1 (en) * 1998-11-23 2002-07-23 Motorola, Inc. Apparatus and method for handling dispatching messages for various applications of a communication device
US6542961B1 (en) 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
US6889260B1 (en) * 1999-06-10 2005-05-03 Ec Enabler, Ltd Method and system for transferring information
US6678271B1 (en) * 1999-07-12 2004-01-13 Nortel Networks Limited High performance system and method having a local bus and a global bus
US6985431B1 (en) 1999-08-27 2006-01-10 International Business Machines Corporation Network switch and components and method of operation
US6973650B1 (en) 1999-11-09 2005-12-06 Microsoft Corporation Method of pipelined processing of program data
US7137116B2 (en) * 1999-11-09 2006-11-14 Microsoft Corporation Method and system for performing a task on a computer
US6484224B1 (en) 1999-11-29 2002-11-19 Cisco Technology Inc. Multi-interface symmetric multiprocessor
US6977924B1 (en) * 1999-12-22 2005-12-20 Alcatel Control and distribution protocol for a portable router framework
US6718370B1 (en) * 2000-03-31 2004-04-06 Intel Corporation Completion queue management mechanism and method for checking on multiple completion queues and processing completion events
US6981027B1 (en) 2000-04-10 2005-12-27 International Business Machines Corporation Method and system for memory management in a network processing system
US6965922B1 (en) 2000-04-18 2005-11-15 International Business Machines Corporation Computer system and method with internal use of networking switching
US6603625B1 (en) * 2000-09-11 2003-08-05 Western Digital Technologies, Inc. Spindle synchronizing a plurality of spindles connected to a multi-dimensional computer network
CN1295609C (zh) * 2001-12-14 2007-01-17 皇家飞利浦电子股份有限公司 数据处理系统、通信装置和处理数据的方法
US7239669B2 (en) * 2002-04-30 2007-07-03 Fulcrum Microsystems, Inc. Asynchronous system-on-a-chip interconnect
US7161954B2 (en) * 2002-05-28 2007-01-09 International Business Machines Corporation Technique for controlling selection of a write adapter from multiple adapters connected to a high speed switch
US7177322B2 (en) * 2002-05-28 2007-02-13 International Business Machines Corporation Technique for controlling selection of a peek adapter or a read adapter from multiple adapters connected to a high speed switch
US20030223352A1 (en) * 2002-05-29 2003-12-04 Williams Ricki Dee Reduction of forward crosstalk using time division multiplexing
US7299467B2 (en) * 2002-12-23 2007-11-20 Hewlett-Packard Development Company, L.P. Method and system for minimizing memory access latency in a computer system
US7480657B1 (en) * 2003-01-06 2009-01-20 Cisco Technology, Inc. Caching information for multiple service applications
US7853695B2 (en) * 2003-02-21 2010-12-14 Microsoft Corporation Using expressive session information to represent communication sessions in a distributed system
JP4261992B2 (ja) * 2003-06-10 2009-05-13 パイオニア株式会社 情報データの送受信装置及び送受信方法
US7827248B2 (en) * 2003-06-13 2010-11-02 Randy Oyadomari Discovery and self-organization of topology in multi-chassis systems
EP1639488B1 (en) 2003-06-30 2013-11-06 JDS Uniphase Corporation Propagation of signals between devices for triggering capture of network data
US8190722B2 (en) * 2003-06-30 2012-05-29 Randy Oyadomari Synchronization of timestamps to compensate for communication latency between devices
US20060036721A1 (en) * 2004-06-15 2006-02-16 Dong Zhao Run-time tool for network management application
US20050278708A1 (en) * 2004-06-15 2005-12-15 Dong Zhao Event management framework for network management application development
US20060004856A1 (en) * 2004-06-15 2006-01-05 Xiangyang Shen Data management and persistence frameworks for network management application development
US20050278693A1 (en) * 2004-06-15 2005-12-15 Brunell Edward G Distribution adaptor for network management application development
US20050278709A1 (en) * 2004-06-15 2005-12-15 Manjula Sridhar Resource definition language for network management application development
US7555743B2 (en) * 2004-06-15 2009-06-30 Alcatel-Lucent Usa Inc. SNMP agent code generation and SNMP agent framework for network management application development
US20060070082A1 (en) * 2004-06-15 2006-03-30 Manjula Sridhar Managed object framework for network management application development
US20050278361A1 (en) * 2004-06-15 2005-12-15 Brunell Edward G View definition language for network management application development
US7461173B2 (en) * 2004-06-30 2008-12-02 Intel Corporation Distributing timers across processors
US8543999B2 (en) * 2005-03-30 2013-09-24 Welch Allyn, Inc. Communication of information between a plurality of network elements
CN101005649A (zh) * 2006-01-19 2007-07-25 华为技术有限公司 一种多方通信业务的连接建立方法及系统
JP4546413B2 (ja) * 2006-03-17 2010-09-15 富士通株式会社 並列計算機のリダクション処理方法及び並列計算機
US7933205B1 (en) 2006-05-01 2011-04-26 At&T Mobility Ii Llc Generalized interconnection apparatus for delivering services based on real time performance requirements
US8923853B1 (en) 2006-05-04 2014-12-30 At&T Mobility Ii Llc Dynamic provisioning system for policy-based traffic navigation for roaming traffic
US8819242B2 (en) * 2006-08-31 2014-08-26 Cisco Technology, Inc. Method and system to transfer data utilizing cut-through sockets
US7853639B2 (en) * 2006-09-12 2010-12-14 International Business Machines Corporation Performing process migration with allreduce operations
AU2007307196B2 (en) * 2006-10-04 2012-02-09 Welch Allyn, Inc. Dynamic medical object information base
US8370844B2 (en) * 2007-09-12 2013-02-05 International Business Machines Corporation Mechanism for process migration on a massively parallel computer
US20100156888A1 (en) * 2008-12-23 2010-06-24 Intel Corporation Adaptive mapping for heterogeneous processing systems
US10169072B2 (en) * 2009-09-23 2019-01-01 Nvidia Corporation Hardware for parallel command list generation
EP2813977A1 (en) 2010-08-17 2014-12-17 Sigram Schindler Beteiligungsgesellschaft mbH The FSTP expert system
US9772876B2 (en) 2014-01-06 2017-09-26 International Business Machines Corporation Executing an all-to-allv operation on a parallel computer that includes a plurality of compute nodes

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56108137A (en) * 1980-01-31 1981-08-27 Nec Corp Data communication controller
JPS58181166A (ja) * 1982-04-16 1983-10-22 Nippon Telegr & Teleph Corp <Ntt> 多重並列計算方法およびその装置
JPS63312750A (ja) * 1987-06-09 1988-12-21 エヌ・ベー・フィリップス・フルーイランペンファブリケン データ処理システム
JPH0233649A (ja) * 1988-07-25 1990-02-02 Matsushita Electric Ind Co Ltd マルチマスタプロセッサ装置
JPH0370950A (ja) * 1989-08-11 1991-03-26 Aisin Seiki Co Ltd 凝縮器

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4491916A (en) * 1979-11-05 1985-01-01 Litton Resources Systems, Inc. Large volume, high speed data processor
US4400778A (en) * 1979-11-05 1983-08-23 Litton Resources Systems, Inc. Large-volume, high-speed data processor
US4562533A (en) * 1981-12-03 1985-12-31 Ncr Corporation Data communications system to system adapter
NL8400186A (nl) * 1984-01-20 1985-08-16 Philips Nv Processorsysteem bevattende een aantal stations verbonden door een kommunikatienetwerk, alsmede station voor gebruik in zo een processorsysteem.
GB2156554B (en) * 1984-03-10 1987-07-29 Rediffusion Simulation Ltd Processing system with shared data
US4811210A (en) * 1985-11-27 1989-03-07 Texas Instruments Incorporated A plurality of optical crossbar switches and exchange switches for parallel processor computer
US4851988A (en) * 1986-03-31 1989-07-25 Wang Laboratories, Inc. Loosely-coupled computer system using global identifiers to identify mailboxes and volumes
JPH063934B2 (ja) * 1986-11-25 1994-01-12 株式会社日立製作所 自動催促方式
US5008882A (en) * 1987-08-17 1991-04-16 California Institute Of Technology Method and apparatus for eliminating unsuccessful tries in a search tree
US4949299A (en) * 1987-12-04 1990-08-14 Allen-Bradley Company, Inc. Industrial control communication network and method
US4994985A (en) * 1987-12-23 1991-02-19 International Business Machines Corporation Methods of appending a reply in an electronic mail system
US4908823A (en) * 1988-01-29 1990-03-13 Hewlett-Packard Company Hybrid communications link adapter incorporating input/output and data communications technology
US4991133A (en) * 1988-10-07 1991-02-05 International Business Machines Corp. Specialized communications processor for layered protocols
CA2011935A1 (en) * 1989-04-07 1990-10-07 Desiree A. Awiszio Dual-path computer interconnect system with four-ported packet memory control
US5020020A (en) * 1989-04-07 1991-05-28 Digital Equipment Corporation Computer interconnect system with transmit-abort function
US5226125A (en) * 1989-11-17 1993-07-06 Keith Balmer Switch matrix having integrated crosspoint logic and method of operation
US5265250A (en) * 1990-03-29 1993-11-23 At&T Bell Laboratories Apparatus and methods for performing an application-defined operation on data as part of a system-defined operation on the data
CA2076293A1 (en) * 1991-10-11 1993-04-12 Prathima Agrawal Multiprocessor computer for solving sets of equations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56108137A (en) * 1980-01-31 1981-08-27 Nec Corp Data communication controller
JPS58181166A (ja) * 1982-04-16 1983-10-22 Nippon Telegr & Teleph Corp <Ntt> 多重並列計算方法およびその装置
JPS63312750A (ja) * 1987-06-09 1988-12-21 エヌ・ベー・フィリップス・フルーイランペンファブリケン データ処理システム
JPH0233649A (ja) * 1988-07-25 1990-02-02 Matsushita Electric Ind Co Ltd マルチマスタプロセッサ装置
JPH0370950A (ja) * 1989-08-11 1991-03-26 Aisin Seiki Co Ltd 凝縮器

Also Published As

Publication number Publication date
EP0543512A3 (ja) 1995-02-01
JP2677744B2 (ja) 1997-11-17
EP0543512B1 (en) 1999-10-06
US5517662A (en) 1996-05-14
DE69230093D1 (de) 1999-11-11
DE69230093T2 (de) 2000-04-13
EP0543512A2 (en) 1993-05-26

Similar Documents

Publication Publication Date Title
JP2677744B2 (ja) 分散メモリ式デジタル計算システム
US5859981A (en) Method for deadlock-free message passing in MIMD systems using routers and buffers
US5659701A (en) Apparatus and method for distributed program stack
US7539989B2 (en) Facilitating intra-node data transfer in collective communications
US4754395A (en) Network interface module with minimized data paths
Cheriton The V kernel: A software base for distributed systems
US4694396A (en) Method of inter-process communication in a distributed data processing system
US8607004B2 (en) Distributed symmetric multiprocessing computing architecture
JPH05282165A (ja) 通信システム
JPH03126158A (ja) スケジユーリング方法及び装置
Dally The J-machine: System support for Actors
US7640549B2 (en) System and method for efficiently exchanging data among processes
JPH10326262A (ja) コンピュータ使用可能媒体を含む製造品
EP0201063A2 (en) Method of locating processes in a distributed data processing system
Bétourné et al. Process management and resource sharing in the multiaccess system in ESOPE
Tanenbaum A comparison of three microkernels
EP0201065A2 (en) Virtual single machine with logical ring and with message-like hardware interrupts and processor exceptions
Roush The freeze free algorithm for process migration
Schröder-Preikschat Peace—A distributed operating system for high-performance multicomputer systems
Giloi et al. Very high-speed communication in large MIMD supercomputers
Partridge Late-Binding RPC: A Paradigm for Distributed Computation in a Gigabit Environment
EP0509946A2 (en) Apparatus and method for implementing a distributed program stack
Kepecs et al. SODA: A simplified operating system for distributed applications
JPH10307733A (ja) システム間データ・パイピング・システム
JP3312361B2 (ja) 分散共有メモリシステム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees