JP2677744B2 - 分散メモリ式デジタル計算システム - Google Patents

分散メモリ式デジタル計算システム

Info

Publication number
JP2677744B2
JP2677744B2 JP4301997A JP30199792A JP2677744B2 JP 2677744 B2 JP2677744 B2 JP 2677744B2 JP 4301997 A JP4301997 A JP 4301997A JP 30199792 A JP30199792 A JP 30199792A JP 2677744 B2 JP2677744 B2 JP 2677744B2
Authority
JP
Japan
Prior art keywords
processing unit
processing units
processing
adapter
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP4301997A
Other languages
English (en)
Other versions
JPH05242055A (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 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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、多重プロセッサ・シス
テムに関し、具体的には、あるプロセッサが、別のプロ
セッサ上に存在する記憶域をアドレスしアクセスするこ
とができるようにする装置および方法に関する。
【0002】
【従来の技術】
【発明が解決しようとする課題】処理システムのスルー
プットを増加させるための周知の方法の1つは、作業を
複数の工程に分割し、個々の工程を、それぞれ工程の一
部を処理する別々のプロセッサに結合するものである。
数台または数千台のプロセッサを使用する並列処理に
は、なんらかの形のプロセッサ間通信が必要である。プ
ロセッサ群が共有記憶域を共用する共用記憶型や、各プ
ロセッサがそれぞれ大域記憶域の一部を有する分散シス
テムなど、多数のタイプのシステムが存在する。結合に
は、密結合から疎結合まで様々なタイプがある。結合
は、LAN、クロスポイント交換機(スイッチ)または
クロスバー交換機、最近接型、階層式、ハイパーキュー
ブなどがある。これらのシステムのすべてにおいて、通
信の潜在的な非効率とオーバーヘッドが、システムの性
能を低下させる。このオーバーヘッドを減少させ、根本
的に異なる通信パターン、特性および資源を必要とする
非常に効率的なメッセージ受け渡しの方法および装置を
提供することが望ましく、これが本発明の目的である。
少数の高水準プロセッサを並列化するシステムあるいは
多数の低水準プロセッサを並列化するシステムが存在す
る(米国特許第4598400号明細書など)が、高水
準プロセッサの間での改良された柔軟な通信を伴う高水
準プロセッサの並列化が必要とされている。さらに、作
業要求の生成とスケジューリングを行う手段を設けなけ
ればならない。IBMのRISC System/60
00(RISC System/6000は、インター
ナショナル・ビジネス・マシーンズ・コーポレイション
の商標)などの高水準プロセッサを多数使用するシステ
ムは、数値計算中心の科学・技術適用業務などの大規模
で複雑な問題の処理に望ましい。
【0003】
【課題を解決するための手段】本発明の一実施例によれ
ば、並列コンピュータ・システムは、複数の独立コンピ
ュータを有し、独立コンピュータはそれぞれ、それ自体
のメモリがネットワークによって互いに結合されてい
る。各コンピュータ同志間に1対のアダプタが存在する
ように、ネットワークと各独立コンピュータの間にアダ
プタが結合される。このアダプタは、プロセッサとメモ
リを含んでいる。アプリケーションが、メモリ内の名前
(name)をマップするメモリ空間(以下、名前空間と称
する)と、プロセッサ間で通信経路を確立するためにそ
の空間をどのように使用するか(意味)のクラスを指定
するタグとを定義する。このアプリケーションによって
確立されたクラス内で定義される情報を使用して、デー
タがあるアダプタ・メモリから別のアダプタ・メモリに
送られる。
【0004】
【実施例】図1を参照すると、本発明の一実施例によ
る、数値計算中心の科学・技術適用業務研究用の並列処
理システム設計が示されている。システム10は、60
個のRS/6000マイクロプロセッサ・ノード191
〜1960を含み、これらのフィールドは、それぞれそれ
自体のRISC System/6000(以下、RS
/6000と略す)プロセッサ、メモリおよびディスク
記憶装置が、IBM9032エンタープライズ・システ
ム接続ディレクタ(ESCD)光学式交換機などのクロ
スポイント交換機23によって互いにリンクされてい
る。この交換機とプロトコルの詳細は米国特許出願第0
7/429267号にある。この交換機の入力線および
出力線は、直列光ファイバである。リンク・フレーム・
メッセージを復号して、適当なスイッチを制御する。こ
のクロスポイント交換機23は、高速チャネル(HS
C)13を介して3090システムなどのホスト・コン
ピュータ11にリンクされる。HSC13の接続は、米
国特許出願第07/358774号に記載されている。
この高速接続は、HIPPI交換機によって行ってもよ
い。上記の参照によって本明細書に組み込まれる関連特
許出願に記載されているように、拡張チャネルに指定さ
れる一義的ページ・アドレスのページング命令を用いて
ホスト・プロセッサを操作することによって、情報がや
り取りされる。ユーザ・インターフェース12は、プロ
グラムと命令をホストに入力し、その出力をシステムか
ら受け取る。実行のためプロセッサ・ノード記憶域にロ
ードされるデータとプログラムを記憶する大容量記憶装
置14もホストに接続されている。ホストは、緩衝記憶
域(バッファ)15、HSC13および変換アダプタ・
カード17を介してRS/6000プロセッサ・ノード
の1つ1960に結合される。変換アダプタ・カード17
は、米国特許出願第07/558003号に記載されて
いるように、AIX/370アーキテクチャをマイクロ
チャネル・アーキテクチャに変換する。ノード19
60は、他のプロセッサ間で作業またはタスクを分割し、
その回答をホストに戻す、監視プロセッサである。アダ
プタ211〜2160は、ノード191〜1960のそれぞれ
とクロスポイント交換機23の間に結合される。このア
ダプタは各プロセッサ・ノードが独立して動作すること
を許容し、このアダプタを用いると、どのプロセッサで
も、ソフトウェア制御の下で他のどのプロセッサとも通
信できるようになる。また、要素151、171、1
1、211から構成される、冗長ホスト・アクセス/監
視プロセッサ・リンクも設けられる。一方の経路を使用
してホストから信号を送ると同時に、他方が戻りの信号
をホストに結合することができる。ノード191〜19
60にある個々のRS/6000プロセッサが、複雑な計
またはタスクの異なる部分を処理し、他のノードにあ
る他のプロセッサと中間結果を交換することによって、
完全な解に到達する。このシステムに対するプログラミ
ング・インターフェースは、たとえば、各ノード191
〜1960上のAIXオペレーティング・システム環境で
走行する拡張クラスタ化FORTRANとすることがで
きる。簡単に理解できるプログラミング構造と標準の操
作環境を使用することによって、既存のアプリケーショ
ンの移行が改善される。
【0005】このシステムのソフトウェア構成要素は、
拡張クラスタ化FORTRAN機能、ジョブ管理プログ
ラム、ファイル・アクセス機構、システムの利用度を監
視し、ユーザ・インターフェースに報告を提供する性能
モニタ、呼出しのサービスを援助するファイル・アクセ
ス機構、およびデバッガである。このシステムは、ホス
ト・コンピュータ11上ではAIX/370オペレーテ
ィング・システム、ノード191〜1960上ではAIX
/3オペレーティング・システムを使用する。拡張クラ
スタ化FORTRAN言語は、並列処理の作成と実行、
プロセス間通信およびプロセス調整の諸機能をFORT
RANに追加したものである。ジョブ管理プログラム
は、ホスト・コンピュータ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/600
0プロセッサにある。図示の実施例では、各ノード19
ごとに1つのアダプタ・ドライバ副層がある。他の実施
例では、各ノード191〜1960ごとに別々の複数のア
ダプタがあってもよい。すべてのアダプタ21は、1つ
の装置ドライバによって管理される局所プロセッサ(こ
の例ではRS/6000)に接続される。ノード191
〜1960の各プロセッサ内にあるこの装置ドライバは、
AIXアーキテクチャ プログラム カーネル内で、処
理状況でも割込み状況でも走行する。装置ドライバは、
APIとNSCAアダプタの間のハードウェア・インタ
ーフェースとデータ構造を管理する。これには、バスへ
の接続、RS/6000内のキャッシュのフラッシュ、
割込みの処理、カーネル常駐待ち行列の連鎖/解除およ
びその管理が含まれる。装置ドライバは、APIによっ
て処理されるメッセージ・パケットを、アダプタ・ドラ
イバによって処理される作業パケットに変換し、また、
その逆の変換を行う。クライアントは、メッセージ・パ
ケットを作成し、消費し(対等通信として)、アダプタ
・ドライバは、作業パケットを作成し、消費する。作業
パケットとは、装置ドライバとアダプタ・ドライバの間
で交換される、サービスを求める要求を一般化したもの
である。一般に、1つのメッセージを送出しあるいは受
け取ると、1つの作業パケットが生成され、逆も同様で
ある。メッセージ・パケットには、それで運ばれるデー
タの量に応じて3つのタイプがある。3つのパケット・
タイプとは、アンテグラム・メッセージ、データグラム
・メッセージおよび緩衝記憶メッセージである(図4を
参照すると、ヘッダ、データグラムおよび緩衝記憶を伴
うメッセージのフォーマットが示されている)。アンテ
グラム・パケットとは、データを含まないメッセージ・
パケットである。アンテグラム・パケットは、短い命令
のブロックを含むプロトコル・ヘッダと制御情報だけを
含んでいる。データグラム・メッセージおよび緩衝記憶
メッセージは、プロトコル・ヘッダならびにデータを含
んでいる。データグラム・メッセージは、最大35バイ
トのデータを運び、緩衝記憶メッセージは、1ページま
でのデータを運ぶ。現在の実施態様では、このプロトコ
ルでは、64Kバイトまでのページ長が可能である。デ
ータグラム・メッセージおよび緩衝記憶メッセージは、
待ち行列に入れられ、受け取った順序で装置ドライバに
よって処理されなければならない。しかし、アンテグラ
ム・パケットは、プロトコル・ヘッダ内で要求される優
先順位に従って、保留中の他のすべてのメッセージより
前に処理することができる。作業パケットには、純、通
常、および、複合または2段階の3つのタイプがある。
純作業パケットは、割込みサービス・ルーチン(IS
R)への呼出しからなる。通常作業パケットは、プロト
コル・ヘッダと4バイトのフラグ情報を含んでいる。通
常作業パケットは、純作業パケットと同様に、ISRへ
の呼出しを含んでいるが、受信側要素によって処理され
る命令の制御ブロックと制御情報も含んでいる。受信側
要素は、状況に応じて、ノード19内の装置ドライバ、
またはアダプタ・ドライバである。通常作業パケット
は、たとえば28バイトであり、APIによって生成さ
れ処理されるアンテグラム・メッセージ・パケットおよ
びデータグラム・メッセージ・パケットを表す。複合作
業パケットまたは2段階作業パケットは装置間のマイ
クロチャネル・インターフェースを介する1転送分のデ
ータに含まれる複数の通常作業パケットからなる。2段
階作業パケットでは、制御情報が交換される段階の後の
別の段階でデータ転送が行われる。したがって、「2段
階」と称する。第3の副層であるアダプタ21内のアダ
プタ・ドライバ副層は、そのアダプタ自体に含まれる1
プログラムとして、完全にプロセッサの外部で走行す
る。アダプタ・ドライバは、作業パケット・インターフ
ェース(WPI)を介するファイバ上での出発と到着に
関して、緩衝記憶パケットのスケジューリングを行う。
アダプタ・ドライバは、緩衝記憶域属性の意味を解釈
し、ホスト・システムの仮想記憶域との間でのすべての
転送を手配する。図5を参照すると、このアダプタは、
待ち行列のシステムである作業パケット・インターフェ
ース70を含んでいる。WPI内の各構造は、アダプタ
・ドライバ宛(アウトバウンド)の作業パケット用の副
構造、装置ドライバ宛(インバウンド)の作業パケット
用の副構造、および装置ドライバからアダプタ・ドライ
バへ肯定応答禁止を渡すための副構造の、3つの副構造
に分けられる。WPI構造は、装置ドライバとアダプタ
・ドライバによって共用される記憶資源に常駐する。図
6を参照のこと。作業パケットのサービスは、下記のよ
うにして行われる。アダプタ・ドライバが、WPIアウ
トバウンド構造をポーリングし、見つかった作業パケッ
トに関して要求されるサービスのスケジューリングを行
う。これとは対照的に、装置ドライバは、ISR(割込
みサービス・ルーチン)によってその作業パケットの最
初の部分を受け取り、同じ割込みサイクルの間に残りの
パケットを受け取る。通常は、この装置ドライバのIS
Rに対して呼出しが行われ、その後、作業パケットが、
WPI構造から読み出され、順次処理される。装置ドラ
イバが作業パケットを送出する時、先に進むには2つの
方法がある。クライアントの代わりに、装置ドライバが
同期式にふるまい、第1水準肯定応答(FACK)が返
されるまで機することができる。あるいは、装置ドラ
イバは、FACKを待たずに、WPI上で複数の作業パ
ケットをパイプライン式に伝送することによって、非同
期式にふるまうこともできる。装置ドライバはまた、デ
ータがいつホスト・システムから移動されたかを示す送
信完了肯定応答(すなわち、純作業パケット)を要求す
ることができ、あるいは、データをいつ受信側ノードに
送出し終えたかを示す第2水準肯定応答(SACK)を
要求することもできる。SACKは、アンテグラム・メ
ッセージとしてソース・アプリケーション・クライアン
トにディスパッチされる通常作業パケットである。した
がって、本発明では、同期モードと非同期モードの両方
の動作が可能である。第4の層は、アダプタ21内の
リンク・プロトコル副層である。これは、図1に示すよ
うに、クロスポイント交換機のリンク・プロトコルと装
置プロトコルのサブセットを実施する。
【0008】マイクロチャネル・インターフェース・コ
ントローラMIC転送は、別のプロセッサ・エレメント
PEにアウトバウンドのメッセージ・パケットを送信す
るため、および別のPEからインバウンドのメッセージ
・パケットを受信するための2つのステージング緩衝記
憶域プールを介して行れる。この2つのステージング緩
衝記憶域プールを、それぞれ送出(xmit)緩衝記憶域お
よび受取(recv)緩衝記憶域と称する。
【0009】メッセージに関連するデータは、(1)A
IX仮想記憶域内の固定ページ境界上にあるかまたはそ
の内部に含まれなければならず、(2)装置ドライバが
そのページを「解放」するまでこのデータにアクセスし
てはならない。アダプタ・ドライバは、作業パケットが
待ち行列に入られた後の不確定な時点で、MICにデー
タ転送コマンドを発行する。したがって、メッセージを
送ることによって、たとえば、アダプタ・ドライバがま
だそのxmit緩衝記憶域プールにデータを転送しないうち
に、クライアントがAPIから戻ることができる。
【0010】緩衝記憶域の属性と待ち行列化の規律が、
実際のデータの移動を決定する。データが転送された
後、アダプタ・ドライバは、純作業パケットを装置ドラ
イバに送って、そのページを解放する。また、アダプタ
・ドライバは、4部分からなるアドレス(PE,channel,wo
rk-paket-unit,buffer-id)の経路指定上の意味を実施す
る。送出時と受取時に、アダプタ・ドライバは、クライ
アントが前もってバインドする属性ごとに、メッセージ
内の(*,*,work-paket-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とリンク・プ
ロトコル・ドライバのどちらが)次のxmit/recv変数ポ
インタを更新することを許されているのかを示すup_int
erlock_turn変数の、3つのメタデータ変数を保持す
る。xmit緩衝記憶域とrecv緩衝記憶域は、LDS内の循
環リスト・データ構造を形成し、メタデータは、LDS
またはLPSのどちらかに置くことができる。変数next
_recv_availとnext_xmit_avail(以下、この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緩衝記憶域、非送信請求受信の
ために維持される緩衝記憶域などが含まれる。クライア
ントから見ると、緩衝記憶域は、データの送信および受
信に使用される論理記憶資源である。この目的のため、
緩衝記憶域は、論理対(work-paket-unit,buffer-id)に
よってアドレスされる。
【0026】クライアントは、(1)ある緩衝記憶域の
名前空間と、(2)その緩衝記憶域の意味のクラスを指
定するタグとを定義する。これらの意味は、そのクライ
アントがそのタグを変更するかあるいはその名前をアン
バインドするまで、バインドされたままになる。属性
は、メッセージが送信または受信される時、システムに
とってよく定義された挙動を指定する。
【0027】(work-paket-unit,buffer-id)対は、論理
記憶域アドレスである。この対は、ある時点で物理記憶
域にバインドされなければならない。この設計は、後期
バインディングと早期バインディングの両方をサポート
する。主要な緩衝記憶域クラスは2つある。
【0028】バインディングが早期(かつ暗黙の条件か
ら静的)である場合には、緩衝記憶域の属性は、持続性
である。持続性の緩衝記憶域は、共用メモリと同様の挙
動を示す。(work-paket-unit,buffer-id)対から物理記
憶域への1対1のマッピングが存在する。この属性を有
する緩衝記憶域上での局所送信および局所受信の挙動
は、局所アクセスおよび局所更新と同様である。遠隔送
信および遠隔受信の挙動は、遠隔アクセスおよび遠隔更
新と同様である。この意味で、データ(および名前マッ
ピング)は持続する。
【0029】バインディングが後期(かつ暗黙の条件か
ら動的)である場合には、緩衝記憶域の属性は非持続性
である。非持続性の緩衝記憶域は、深さnのFIFOリ
ンクと同様の挙動を示す。(work-paket-unit, buffer-i
d)対から物理記憶域への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)発明者 オーウェン・キース・モンロー アメリカ合衆国、ニューヨーク州ポー ト・エウェン、ブロードウェイ 262 (72)発明者 ロバート・フレデリック・スタック アメリカ合衆国、ニューヨーク州ソージ ャティーズ、リッジ・ロード 9 (72)発明者 エリザベス・アン・ファンデルベック アメリカ合衆国、ニューヨーク州キング ストン、ビーバーキル・ロード 280 (72)発明者 スチーブン・エドワード・ベッロ アメリカ合衆国、ニューヨーク州キング ストン、ジョン・ストリート 95 (72)発明者 ジョン・ロバート・ハッタースリー アメリカ合衆国、ニューヨーク州ソージ ャティーズ、ブルーストーン・パーク・ ロード 25 (72)発明者 キエン・アン・ファ アメリカ合衆国、フロリダ州オビエド、 マッコール・コート 1012 (72)発明者 デービッド・レイモンド・プリュエット アメリカ合衆国、ニューヨーク州ソージ ャティーズ、チェリー・レーン 8 (72)発明者 ジェラルド・フランクリン・ロッロ アメリカ合衆国、ニューヨーク州ポーキ ープシー、プレザント・リッジ・ドライ ブ 40 (56)参考文献 特開 昭63−312750(JP,A) 特開 昭56−108137(JP,A) 特開 昭58−181166(JP,A) 特開 平2−33649(JP,A) 特公 平3−70950(JP,B2)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】a)各処理ユニットが下記(イ)乃至(ニ)に記
    載する手段を含む、複数の処理ユニットと、 (イ)タスクのある部分を実行するための局所プロセッサ
    手段 (ロ)処理ユニットの外部にある1つの他のプロセッサ手
    段によってアクセス 可能であり、該処理ユニット内の前記局所プロセッサ手
    段によって前記タスクのある部分に含まれるデータおよ
    びコマンドを記憶および検索するための局所メモリ手段 (ハ)前記各処理ユニットによって非制限的且つ連続的に
    アクセスすることが可能な外部通信経路手段 (ニ)転送要求が、前記処理ユニット内の前記局所プロセ
    ッサ手段および前記処理ユニット外の他の処理ユニット
    内のプロセッサ手段のいずれかで発せられ、前記処理ユ
    ニット内の前記局所メモリ手段からのデータに対する転
    送要求を管理するための、前記各処理ユニットを前記外
    部通信経路手段に接続するアダプタ・インタフェース手
    段であって、 1)前記転送要求に伴って要求された転送データを記憶す
    ることなく前記要求を待ち行列に入れるためのFIFO
    待ち行列化手段、および、 2)前記少なくとも1つの他のプロセッサ手段からの要求
    の受け取りにつれて前記処理ユニット内の前記プロセッ
    サ手段の介在を要さずに前記局所メモリ手段にアクセス
    しうるインテリジェント・アクセス手段、 を含む、アダプタ・インタフェース手段 b)複数の処理ユニット間における、タスクのそれぞれ
    の部分を実行するための命令の伝送およびタスクのそれ
    ぞれの部分の処理結果の伝送のために、前記外部通信経
    路手段をすべての処理ユニットに接続するためのクロス
    ポイント交換機手段と、 c)前記複数の処理ユニットおよび前記クロスポイント
    交換機手段のいずれの部分にも属さず、前記複数の処理
    ユニットによるタスクの実行のために、前記複数の処理
    ユニットに命令とデータを提供するための制御ホストコ
    ンピュータ・システムであって、 (イ)前記複数の処理ユニットによるタスクの実行のため
    に命令とデータを記憶するためのホスト記憶手段、およ
    び、 (ロ)命令を入力するためおよび制御ホストコンピュータ
    ・システムからの出力を受信するための、ユーザ・イン
    ターフェース手段、を含む、制御ホストコンピュータ・
    システムと、 d)前記複数の処理ユニットの内の少なくとも1つの処
    理ユニットに監視機能を付与し、前記複数の処理ユニッ
    トに対する監視手段となし、該監視手段は前記制御ホス
    トコンピュータ・システムからタスクを受け取り、その
    タスクを複数のタスクの部分に分割し、分割したタスク
    の部分を他の複数の処理ユニットに分配し、該タスクの
    処理結果を前記制御ホストコンピュータ・システムに提
    供し、前記複数の処理ユニットおよび前記クロスポイン
    ト交換機手段のいずれの部分にも属さず、前記制御ホス
    トコンピュータ・システムと上記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 JPH05242055A (ja) 1993-09-21
JP2677744B2 true 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

Family Cites Families (24)

* 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
JPS56108137A (en) * 1980-01-31 1981-08-27 Nec Corp Data communication controller
US4562533A (en) * 1981-12-03 1985-12-31 Ncr Corporation Data communications system to system adapter
JPS58181166A (ja) * 1982-04-16 1983-10-22 Nippon Telegr & Teleph Corp <Ntt> 多重並列計算方法およびその装置
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 株式会社日立製作所 自動催促方式
GB8713460D0 (en) * 1987-06-09 1987-07-15 Philips Nv Data processing system
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
JPH0233649A (ja) * 1988-07-25 1990-02-02 Matsushita Electric Ind Co Ltd マルチマスタプロセッサ装置
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
JPH0370950A (ja) * 1989-08-11 1991-03-26 Aisin Seiki Co Ltd 凝縮器
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

Also Published As

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

Similar Documents

Publication Publication Date Title
JP2677744B2 (ja) 分散メモリ式デジタル計算システム
US7539989B2 (en) Facilitating intra-node data transfer in collective communications
US5659701A (en) Apparatus and method for distributed program stack
Cheriton The V kernel: A software base for distributed systems
US5991797A (en) Method for directing I/O transactions between an I/O device and a memory
US4918595A (en) Subsystem input service for dynamically scheduling work for a computer system
US6799317B1 (en) Interrupt mechanism for shared memory message passing
US20040252709A1 (en) System having a plurality of threads being allocatable to a send or receive queue
JPH05282165A (ja) 通信システム
JPH10326262A (ja) コンピュータ使用可能媒体を含む製造品
JPH0816540A (ja) 並列計算機におけるメッセージ通信方式
CN109857545A (zh) 一种数据传输方法及装置
Geist Cluster computing: The wave of the future?
CN116383240A (zh) 基于fpga多数据库加速查询方法、装置、设备及介质
Tanenbaum A comparison of three microkernels
Roush The freeze free algorithm for process migration
EP0201065A2 (en) Virtual single machine with logical ring and with message-like hardware interrupts and processor exceptions
Schröder-Preikschat Peace—A distributed operating system for high-performance multicomputer systems
Bhargava et al. Evolution of a communication system for distributed transaction processing in Raid
EP0509946A2 (en) Apparatus and method for implementing a distributed program stack
Ahuja et al. A multi-microprocessor architecture with hardware support for communication and scheduling
JPH09288653A (ja) Cpu間のリファレンスによるコンピュータシステムデータi/o
JPH10307733A (ja) システム間データ・パイピング・システム
Schroeder-Preikschat GMD/FIRST|
Darden et al. MULTI: a shared memory approach to cooperative molecular modeling

Legal Events

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