JP2004536372A - コンピューティング構造のグローバル・ツリー・ネットワーク - Google Patents
コンピューティング構造のグローバル・ツリー・ネットワーク Download PDFInfo
- Publication number
- JP2004536372A JP2004536372A JP2002568222A JP2002568222A JP2004536372A JP 2004536372 A JP2004536372 A JP 2004536372A JP 2002568222 A JP2002568222 A JP 2002568222A JP 2002568222 A JP2002568222 A JP 2002568222A JP 2004536372 A JP2004536372 A JP 2004536372A
- Authority
- JP
- Japan
- Prior art keywords
- tree
- node
- virtual
- global
- network
- 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
Links
- 230000009467 reduction Effects 0.000 claims abstract description 50
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 32
- 238000004891 communication Methods 0.000 claims abstract description 13
- 230000006870 function Effects 0.000 claims abstract description 13
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 9
- 230000007246 mechanism Effects 0.000 claims description 15
- 238000002347 injection Methods 0.000 claims description 11
- 239000007924 injection Substances 0.000 claims description 11
- 240000007182 Ochroma pyramidale Species 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000000903 blocking effect Effects 0.000 claims description 3
- 230000009471 action Effects 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000001802 infusion Methods 0.000 claims 2
- 230000004888 barrier function Effects 0.000 abstract description 6
- 230000001360 synchronised effect Effects 0.000 abstract description 2
- 238000001914 filtration Methods 0.000 description 7
- 238000007792 addition Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/20—Modifications to facilitate cooling, ventilating, or heating
- H05K7/20709—Modifications to facilitate cooling, ventilating, or heating for server racks or cabinets; for data centers, e.g. 19-inch computer racks
- H05K7/20836—Thermal management, e.g. server temperature control
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F04—POSITIVE - DISPLACEMENT MACHINES FOR LIQUIDS; PUMPS FOR LIQUIDS OR ELASTIC FLUIDS
- F04D—NON-POSITIVE-DISPLACEMENT PUMPS
- F04D25/00—Pumping installations or systems
- F04D25/16—Combinations of two or more pumps ; Producing two or more separate gas flows
- F04D25/166—Combinations of two or more pumps ; Producing two or more separate gas flows using fans
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F04—POSITIVE - DISPLACEMENT MACHINES FOR LIQUIDS; PUMPS FOR LIQUIDS OR ELASTIC FLUIDS
- F04D—NON-POSITIVE-DISPLACEMENT PUMPS
- F04D27/00—Control, e.g. regulation, of pumps, pumping installations or pumping systems specially adapted for elastic fluids
- F04D27/004—Control, e.g. regulation, of pumps, pumping installations or pumping systems specially adapted for elastic fluids by varying driving speed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
- G06F15/17381—Two dimensional, e.g. mesh, torus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/003—Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G5/006—Details of the interface to the display terminal
- G09G5/008—Clock recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
- H04L7/0337—Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
- H04L7/0338—Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals the correction of the phase error being performed by a feed forward loop
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F24—HEATING; RANGES; VENTILATING
- F24F—AIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
- F24F11/00—Control or safety arrangements
- F24F11/70—Control systems characterised by their outputs; Constructional details thereof
- F24F11/72—Control systems characterised by their outputs; Constructional details thereof for controlling the supply of treated air, e.g. its pressure
- F24F11/74—Control systems characterised by their outputs; Constructional details thereof for controlling the supply of treated air, e.g. its pressure for controlling air flow rate or air velocity
- F24F11/77—Control systems characterised by their outputs; Constructional details thereof for controlling the supply of treated air, e.g. its pressure for controlling air flow rate or air velocity by controlling the speed of ventilators
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B30/00—Energy efficient heating, ventilation or air conditioning [HVAC]
- Y02B30/70—Efficient control or regulation technologies, e.g. for control of refrigerant flow, motor or heating
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mechanical Engineering (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Discrete Mathematics (AREA)
- Databases & Information Systems (AREA)
- Thermal Sciences (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
【解決手段】グローバル・ツリー・ネットワークによって、複数の相互接続された処理ノードを有するコンピュータ構造内で実行される並列アルゴリズム動作中に集合リダクション動作を実行することが、最適に可能にされる。リンクを介してツリーのノードを相互接続するルータ装置が含まれて、仮想ツリーおよびサブツリー構造のノードでの短待ち時間グローバル処理動作の実行が容易になる。グローバル動作に、仮想ツリーのルート・ノードから葉ノードへの下流方向のグローバル・ブロードキャスト動作、仮想ツリーの葉ノードからルート・ノードへの上流方向のグローバル・リダクション動作、および仮想ツリーの任意のノードからルート・ノードへのポイントツーポイント・メッセージ受渡の1つまたは複数が含まれる。仮想ツリー・ネットワークの1つのノードが、入出力ノードに結合され、入出力ノードとして機能して、仮想ツリーの各ノードに外部システムとの入出力機能性を与える。グローバル・ツリー・ネットワークを構成して、同期式または非同期の形でグローバル・バリアおよび割込み機能性を提供することができる。したがって、たとえば並列コンピューティング・システムで使用される、並列アルゴリズム処理動作を、並列アルゴリズム動作のある動作相に従って最適に実行することができる。大量並列スーパーコンピューティング構造で実施される時に、グローバル・ツリー・ネットワークは、処理アルゴリズムの必要に従って、物理的および論理的に分割可能である。
Description
【0001】
本発明は、全般的には分散メモリ・メッセージ受渡並列コンピュータの設計およびシステム・ソフトウェアに関し、具体的には、たとえば大量並列分散メモリ・コンピュータで使用される個々のプロセッサを相互接続する新規の方法および装置に関する。
【背景技術】
【0002】
大量並列コンピューティング構造(「ウルトラスケール・コンピュータ」または「スーパーコンピュータ」とも称する)では、多数の計算ノードが、一般に、グリッド、格子、またはトーラスなどの非常に規則的な構造の形で相互接続される。
【0003】
そのような大量並列システムで一般に直面する問題の1つが、多数のノードを伴う集合的な算術演算または論理演算の効率的な計算である。そのようなシステムで一般に直面する第2の問題が、すべてのノードによる限られた数の外部入出力の効率的な共用である。多数の計算ノードでの集合算術演算を用いる一般的な計算の1つの例が、グローバル合計に基づくグローバル内積を必要とする疎な線形方程式の反復解法である。
【0004】
端で「ラップ」される単純な3次元最近傍相互接続を含む図1に示された3次元トーラス相互接続コンピューティング構造10は、ほとんどのタイプのプロセッサ間通信でよく機能するが、計算ノード12のそれぞれによって供給されるオペランドから単一の結果が計算されるリダクションなどの集合演算については、または外部入出力接続(図示せず)などの限られたリソースの効率的な共用については、それほどよく実行しない。
【0005】
したがって、グローバル・リダクション計算などのグローバル算術演算、データ分配、同期化、および限られたリソースの共用を必要とするものを含む多数のクラスの動作を効率的に信頼性のある形で実行するために最適化された処理ノードの独自の相互接続を含む、ウルトラスケール・スーパーコンピューティング・アーキテクチャを提供することが、非常に望ましい。
【0006】
トーラスなどの高速ネットワークの通常の接続性は、単純に、より長い待ち時間のゆえに、この目的に完全に適してはいない。
【0007】
すなわち、物理トーラス相互接続へのツリー通信パターンの単なるマッピングは、隣接するツリー・ノードがトーラス上で隣接することが必要である場合に、必要以上に深いツリーをもたらし、あるいは、これらのノードがトーラス内で隣接しない時に、より長い待ち時間を有するツリーをもたらす。相互接続リソースが限られる時に最も効率的に集合演算を計算するためには、真のツリー・ネットワークすなわち、ノードの間の物理的相互接続が、ノードをツリーに形成するネットワークが必要である。
【特許文献1】
米国仮出願番号______(YOR920020029US1(15272))
【特許文献2】
米国仮出願番号______(YOR920010211US2、D# 15275)
【特許文献3】
米国仮出願番号______(YOR982001−1002)
【特許文献4】
米国仮出願番号______(YOR982001−1005)
【特許文献5】
米国仮出願番号______(YOR982001−1009)
【特許文献6】
米国仮出願番号______(YOR920020031US1)
【特許文献7】
米国仮出願番号______(YOR920020032US1(15258))
【発明の開示】
【発明が解決しようとする課題】
【0008】
本発明の目的は、コンピューティング構造の個々の処理ノードを相互接続し、その結果、これらのノードが効率的に信頼性のある形でグローバル・リダクションを計算し、データを分配し、同期化し、限られたリソースを共用できるようにするシステムおよび方法を提供することである。
【0009】
本発明のもう1つの目的は、ツリー相互接続として配置され、グローバル動作、算術演算、および集合動作を容易にする、大量並列分散メモリ・コンピュータの個々のプロセッサを相互接続する独立の単一の物理ネットワークを提供することである。
【0010】
本発明のもう1つの目的は、物理ネットワークのサブツリーである仮想ツリー・ネットワークの1つまたは複数のノードに外部入出力およびサービス機能性を提供するグローバル・ツリー相互接続として配置される、大量並列分散メモリ・コンピュータの個々のプロセッサを相互接続する独立の単一の物理ネットワークを提供することである。そのようなグローバル・ツリー相互接続システムに、メッセージ受渡トーラスまたはグリッド・コンピューティング構造からメッセージ・トラフィックを離す専用の入出力ノードを含めることができる。
【課題を解決するための手段】
【0011】
本発明によれば、ツリー・ネットワーク構造に従って相互接続された処理ノードの間での高速短待ち時間グローバル通信を可能にするシステムおよび方法が提供される。グローバル・ツリー・ネットワークによって、複数の相互接続された処理ノードを有するコンピュータ構造内で実行される並列アルゴリズム動作中に集合リダクション動作を実行することが、最適に可能にされる。リンクを介してツリーのノードを相互接続するルータ装置が含まれて、ツリーのノードでの短待ち時間グローバル処理動作の実行が容易になる。ツリー・ネットワーク内の全ノードのサブセットを構成する「仮想ツリー」の定義を可能にする構成オプションが含まれる。グローバル動作に、仮想ツリーのルート・ノードから葉ノードへの下流方向のグローバル・ブロードキャスト動作、仮想ツリーの葉ノードからルート・ノードへの上流方向のグローバル・リダクション動作、および仮想ツリーの任意のノードからルート・ノードへのポイントツーポイント・メッセージ受渡の1つまたは複数が含まれる。仮想ツリー・ネットワークの1つのノードが、入出力ノードに結合され、入出力ノードとして機能して、仮想ツリーの各ノードに外部システムとの入出力機能性を与える。グローバル・ツリー・ネットワークを構成して、同期式または非同期の形でグローバル・バリアおよび割込み機能性を提供することができる。これは、同時係属の米国仮出願番号______(YOR920020029US1(15272))に記載されている。したがって、たとえば並列コンピューティング・システムで使用される、並列アルゴリズム処理動作を、並列アルゴリズム動作のある動作相に従って最適に実行することができる。大量並列スーパーコンピューティング構造で実施される時に、グローバル・ツリー・ネットワークは、処理アルゴリズムの必要に従って、物理的および論理的に分割可能である。
【0012】
大量並列コンピュータでは、計算ノードのすべてが、一般に、ファイル・システムなどの外部リソースへのアクセスを必要とする。限られた数の外部入出力接続を効率的に共用するという問題は、そのような接続を設けるコストが、個々の計算ノードのコストよりかなり高いので生じる。したがって、入出力接続を効率的に共用することによって、入出力帯域幅がシステム・スケーラビリティに関する制限的コスト要因にならないことが保証される。限られたプロセッサ間相互接続を仮定すると、平均待ち時間に関する単一リソース共用の最も効率的なネットワークは、共用リソースがツリーのルートにあるグローバル・ツリーである。
【0013】
グローバル動作および集合動作に関して、単一の大きいツリーを使用して、すべてのプロセッサを相互接続することができる。しかし、ファイル・システム入出力は、入出力機能がルートにある、多数の小さいツリーを必要とする。大きいツリーには、複数のより小さいサブツリーが含まれるので、外部接続を大きいツリー内の適当なサイズのサブツリーのルート戦略的に配置することによって、ファイル・システム入出力に単一の大きいツリーを使用することができる。さらに、ファイル・システム入出力は、本発明によって使用可能にされ、集合動作には必要ない、ポイントツーポイント・メッセージングを必要とする。
【0014】
有利なことに、本発明のグローバル・ツリー・ネットワークを組み込んだスケーラブル大量並列スーパーコンピュータは、生命科学の分野で実行される並列アルゴリズムによく適する。
【0015】
本発明の装置および方法のさらなる特徴、態様、および長所は、以下の説明、請求項、および添付図面に関してよりよく理解される。
【発明を実施するための最良の形態】
【0016】
本発明は、本明細書に組み込まれる、本願の所有者が所有する、同時係属の米国仮出願番号______(YOR920010211US2、D# 15275)に記載のものなどのコンピュータ構造で実施され、この米国仮出願番号______(YOR920010211US2、D# 15275)には、広範囲のアプリケーションにテラOPS(1兆演算毎秒)程度の処理能力を引き渡すように設計された、3次元トーラスの形の新規の大量並列スーパーコンピュータ・アーキテクチャが記載されている。この大量並列スーパーコンピュータ・アーキテクチャは、説明される例示的実施形態で、64×32×32個の3次元トーラスとして編成された65536個の処理ノードが含まれ、各処理ノードは、6つの隣接するノード12に接続される。図1に、8つのノード12からなるそのようなトーラスを示すが、3つのすべての次元に沿ってノード12の数を増やすことによって、この相互接続がどのようにスケーリングされるかが、明らかにわかる。現在の技術を用いると、このアーキテクチャを、通信よりかなり多くの計算を必要とするか、最近傍通信だけを必要とするアプリケーションに、数百テラOPSまで活用することができる。本発明を、スーパーコンピュータ以外の多数の他のコンピュータ構造で実施できることを理解されたい。
【0017】
前に述べたように、トーラス処理ノードを接続する相互接続ネットワークは、ほとんどのタイプのプロセッサ間通信でよく機能するが、ノードのそれぞれによって供給されるオペランドから単一の結果が計算されるリダクションなどの集合演算については、それほどよく機能しない。
【0018】
本明細書に組み込まれる、本願の所有者が所有する、同時係属の米国仮出願番号______(D#15275)に記載されているように、トーラスでの集合リダクション動作を実行する、最小待ち時間に関する最も効率的な機構は、真のツリー・ネットワークすなわち、ノード間の物理接続によってノードがツリーに形成されるネットワークを提供することである。
【0019】
したがって、本発明の好ましい実施形態によれば、ノードASICごとに1つの複数の相互接続されたルータ装置を含むグローバル・ツリー・ネットワークが提供される。各ルータは、3つの「子」ポートおよび1つの「親」ポートを提供し、このポートのそれぞれが、選択的に使用可能にされる。2つの子ポートは、ツリー・トポロジを作成するのに十分である。より多くの子によって、ツリーの高さ、またはルートに達するのに必要な接続が減る。したがって、より多くの子によって、より多くの相互接続を犠牲にして、集合動作の待ち時間を減らすことができる。ツリーは、親を有しない(すなわち、その親ポートに何も接続されていない)「ルート」ノードから開始することによって形成される。ルート・ノードは、ツリーの最上位「レベル」を形成する。次の下のレベルは、1つまたは複数のルートの子ポートを他のルータの親ポートに接続することによって形成される。この場合に、ルート・ノードは、その下のレベルのノードの「親」である。この処理は、子を有しない(すなわち、そのルータの子ポートのどれにも何も接続されない)ノードに達するまで再帰的に継続される。これらのノードを、ツリーの「葉」と称する。たとえば、図2の例のツリー・ネットワーク100に示されているように、ノードB110が、ルート・ノードであり、葉は、ルート・ノードから最も遠い最下部のノード120である。本明細書では、ツリーを上にルートに向かって移動するデータを、「アップ・ツリー」トラフィックと称し、ルートから離れて葉に向かって移動するデータを、「ダウン・ツリー」トラフィックと称する。
【0020】
下で詳細に説明するように、ツリー・ネットワークに、ルータ(ノード)を相互接続するリンク上の仮想チャネルによってサポートされる、複数の独立の「仮想ネットワーク」を含めることができる。リンクを共用するために、仮想ネットワーク・データ・ストリームが、パケット化され、公平な形でインターリーブされる。仮想ネットワークのそれぞれが、それ自体のストレージ・リソースを有し、ある仮想ネットワークでの機能デッドロックは、他の仮想ネットワークに影響しない。
【0021】
各仮想ネットワークを、仮想ツリー(またはサブツリー)にさらに再分割することができ、この仮想ツリーは、独立(各仮想ネットワーク内で)または非独立とすることができる。任意のノードを、16個の仮想ツリーの1つのルートになるように構成することができる。仮想ツリーには、ルートとして指定されたノードと、a)同一の仮想ツリー番号のルートとしても指定されたノードと、b)a)を満足するノードの子とを除く、ルートの子のすべてが含まれる。したがって、同一の仮想ツリー番号を有する仮想ツリーは、オーバーラップすることができないが、異なる番号を有する仮想ツリーは、オーバーラップすることができる。
【0022】
ノードを、任意の数の仮想ツリーに参加するか、全く参加しないように構成することができる。参加する場合に、ノードは、リダクション動作にオペランドを与えるなど、すべてのツリー・セマンティクスに従うことが期待される。ノードは、複数の仮想ツリーに参加することができるので、ノードが仮想ネットワークに注入するすべてのパケットについて、仮想ツリー番号を指定しなければならない。
【0023】
本発明に従って使用される例のツリー構造100を、図2に示す。具体的に言うと、図2には、35個のノード(円によって表される)と、35個のノードのすべてを接続するツリー・ネットワーク100を含む仮想ツリー・ネットワークの例が示されている。ツリー・ネットワーク100は、これから詳細に示すように、グローバル・リダクションおよびブロードキャストに使用される。入出力および外部システムとのリソース共用のために、図2の例の仮想ネットワーク100のノードは、仮想ツリー1から5として図2で参照される5つのオーバーラップしない仮想サブツリーにグループ化される。すなわち、仮想サブツリーのそれぞれが、円の中の異なる番号によって示される。各めいめいのサブツリー1から5のめいめいのルートにあるノード111、112、113、114、および110には、外部システム(たとえばホストまたはファイル・システム)へのインターフェース接続が含まれる。したがって、各入出力接続では、それがルートに接続されるサブツリーの7つのノードのすべてのトラフィックが処理される。好ましい実施形態では、各サブツリーのルートにあるノードが、入出力専用であるが、これが必ず必要なわけではない。
【0024】
図2および、そのルートにノードA 111がある仮想ツリー番号1を参照すると、この構造から外にデータを送ることを望む通常のノード115は、メッセージを、上に、仮想ツリーのルート・ノード111に渡し、このルート・ノード111で、メッセージが外部接続に転送される。外部ネットワーク接続に達するデータを、本明細書で詳細に説明するように、他のすべてのノードをフィルタ・アウトするブロードキャスト・フィルタを使用することによって、115などの特定のノードに転送することができる。グローバル・ツリー・ネットワークの動作、特に入出力、プログラム・ロード、システム管理、並列ジョブ監視、およびデバッグに使用されるプログラマブル・ポイントツーポイントまたはサブツリー・メッセージングをサポートする機能性に関するさらなる詳細は、本明細書に組み込まれる、本願の所有者が所有する、同時係属の米国仮出願番号______(YOR982001−1002)、米国仮出願番号______(YOR982001−1005)、および米国仮出願番号______(YOR982001−1009)に記載されている。
【0025】
図2に戻ると、一般に、入出力トラフィックは、そのルートに外部接続を有する仮想ツリー内に残る。しかし、外部接続に障害が発生する場合に、外部接続を有するもう1つのノードを、フェイルオーバに使用することができる。たとえば、図2のノードA 111への外部入出力接続に障害が発生する場合に、ルートがノードAであるサブツリー内のノードのすべてが、ノードB 110を介して外部のファイル・システムまたはホスト・システムと通信することができる。
【0026】
ツリー20に作られるハードウェア機能性に、整数加算、整数最大値、最小値、ビット単位論理AND、ビット単位論理OR、ビット単位論理XOR(排他的OR)、およびブロードキャストが含まれるが、これに制限されないことを理解されたい。これらの機能は、最短待ち時間が可能な形で実施される。たとえば、加算機能は、ワードの最下位バイトがまずグローバル・ネットワークに送られることをもたらす。この下位バイトは、即座に他のソースからの他方のバイトに加算され(ハードウェア内で)、結果は、ツリーの次のレベルにシフト・アウトされる。この形で、たとえば8バイト・ワードが、上位バイトがシフト・アウトされる前に、既にツリーの複数の層を上に進行している。これによって、計算機全体を介する非常に短い待ち時間の加算の可能性がもたらされる。同時係属の米国仮出願番号______(YOR920020031US1)および米国仮出願番号______(YOR920020032US1(15258))、表題「ArithmeticFunctions in Torus and Tree Networks」に記載されているように、最小値および減算などの他の算術機能を、データの適当な事前条件設定によって達成することができる。浮動小数点合計も、ツリーでの2パスによって、グローバル・コンバイニング・ツリーなしでこの結果を達成する方法と比較して非常に短い待ち時間で、達成することができる。必ず、ツリーでの算術演算または論理演算が、ツリーの上への流れをもたらし、ツリーの上部ですべての結果が組み合わされ、後続のルートからツリーの下への流れがもたらされ、結果がすべての分岐に分配される。後で説明するように、ある種の分岐を、制御された形で計算から省略することができる。
【0027】
好ましい実施形態では、本発明のグローバル・ツリー・ネットワークに、ノードごとに1つの、それぞれがデータの移動ならびに集合リダクションの計算を行う、相互接続されたルータが含まれる。図3に、図2のツリー・ネットワークのルータ装置200の基本的なアーキテクチャを示す。図3からわかるように、各ルータ装置200には、複数の、たとえば4つの、ポートが含まれ、これらのポートを、別のルータに接続する、または接続されない時に使用不可にするのいずれかが可能である。図3からわかるように、ルータは、4つの入力ポート210aから213aと、対応する4つの出力ポート210bから213bを有して、3ツリーを構成できるデータパスを形成する。一実施形態では、4つのポートの1つだけを、親ノードへの接続として指定することができ、残りのポートのうちの3つまでを、子ノードに接続することができる。ツリーの最下部の葉ノードは、親に接続された1つのポートだけを使用可能にされ、ツリーのルートは、親を使用可能にされるのではなく、少なくとも1つの子を使用可能にされる。データパスが、図3に示されているようにクロスバ・スイッチ215を介して作成されることを理解されたい。
【0028】
説明のために、図3のルータ装置200では、データが必ず左から右に流れる。したがって、パケットは、ローカル注入FIFO202またはルータの入力ポート210aから213aの1つのいずれかからルータ装置200に入ることができる。パケットがポートに入る場合に、そのパケットは、それが2つの仮想ネットワークのどちらであるかに応じて、2つの入力FIFOの1つ(たとえばAまたはB)に置かれる。パケットは、最終的に、アップ・ツリー選択ブロック220内に設けられるALUユニット240によって実行される論理演算および算術演算か、ダウン・ツリー選択ブロック230のいずれかによって消費される。アップ・ツリー論理またはダウン・ツリー選択の結果は、4つの出力ポート210bから213bのすべてにブロードキャストされ、これらの出力ポートのそれぞれは、動作に応じてそれを処理することもしないこともでき、宛先のポートに出力する。選択ブロック220および230には、パケット(1つまたは複数)がルータを介して移動されるかどうかを判断するアービタ回路(図示せず)が含まれる。アップ・ツリーとダウン・ツリーで同時にトラフィックがある場合があることを理解されたい。
【0029】
ツリーへのソフトウェア・アクセスは、注入インターフェース202および受取インターフェース204と、1組の構成レジスタ218によってもたらされる。一般に、構成レジスタ218は、ルータを構成し、その状況を判定するのに使用され、注入インターフェース202および受取インターフェース204は、アプリケーションによって、それぞれオペランドを供給し、結果を受け取るのに使用される。具体的に言うと、各仮想ツリーは、各ルータの仮想ツリー構成レジスタ218に適当な値を保管することによって構成され、この仮想ツリー構成レジスタ218は、仮想ツリーごとに1つある。仮想ツリーのそれぞれについて、構成レジスタによって、ノードが、1)ツリーのルートとして機能するか否か、2)ツリーに参加するか否か、および/または3)アップ・ツリー・ブロードキャスト・パケットの受取を強制するか否かを指定できるようになる。さらに仮想ツリー構成レジスタ218によって、子のうちのどれが、ツリーに参加する、またはその下に参加するノードを有するのいずれかであることを指定できるようになる。これは、疎なツリーをサポートするのに必要である。
【0030】
アプリケーションは、CPU注入202インターフェースおよびCPU受取204インターフェースを介してツリーと相互作用する。データは、明示的または直接メモリ・アクセス(DMA)を介するのいずれかで、パケットとして注入インターフェース202に保管されることによって、ツリーに送られる。同様に、結果は、明示的にまたはDMAを介するのいずれかで、受取インターフェース204からパケットとして読み取られることによって、ツリーから除去される。
【0031】
図示されてはいないが、ルータの間で、たとえばスラックの価値がある複数のパケットを許可するトークンベースのプロトコルを使用して、フロー制御技法が実施されることを理解されたい。すなわち、使用可能にされているすべての出力ポート210bから213bが、別のルータの単一の入力ポートに接続される。一般に、その入力ポートの各仮想チャネルは、出力ポートの対応する仮想チャネルに、その入力FIFO内のバッファ空間の価値があるすべてのパケットに関するトークンを与える。出力ポートは、パケットを送出する際にトークンを消費し、入力ポートは、FIFO空間を解放するかのように出力ポートにトークンを返す。したがって、出力ポートは、使用可能なトークンを有する限り、パケットの送出を継続することができる。
【0032】
好ましい実施形態のルータ装置内の演算論理装置(ALU)ブロック240は、4つのオペランド・サイズに対する5つのリダクション動作を実行するために使用可能にされる。動作は、整数加算、整数最大値、ビット単位論理OR、ビット単位論理XOR、およびビット単位論理ANDである。オペランド・サイズは、32ビット、64ビット、128ビット、および2048ビットである。図3に示されたアーキテクチャで、動作またはオペランド・サイズに関する異なる選択が除外されないことを理解されたい。具体的に言うと、ソフトウェアを使用して、動作およびオペランド・サイズを選択する。
【0033】
通常、リダクション動作に参加するノードは、CPU注入FIFO202に保管することによって、「リダクション」タイプのパケットを注入する。リダクションは、パケットの粒度で実行され、パケットは、一実施形態によれば、たとえば256バイトのペイロードを担持する。個々のパケットは、必ず同一サイズのオペランドを担持し、オペランドのすべてに対して同一のリダクションを実行する。どのノードでも、各仮想ツリーのリダクションに参加しないように構成することができる。この場合に、ノードは、リダクションにデータを供給せず、結果を受け取らない。
【0034】
仮想ツリーのそれぞれについて、ルータ装置200は、子のどれがリダクションに参加するかを指定するように構成される。ルータ装置は、そのルータの参加する子のそれぞれおよびローカル注入FIFO(ローカル・ノードが参加していないのでない限り)からリダクション・パケットを受け取る時に、パケットの内容に対して、指定されたリダクション動作を計算し、結果を単一のパケットとして親に送る。すなわち、各パケットの第1ワードを組み合わせて、結果パケットの第1ワードを作る、各パケットの第2ワードを組み合わせて、結果パケットの第2ワードを作り、以下同様である。この形で、グローバル結果が、ツリーの上へ再帰的に計算され、最終的に、リダクション・ツリーのルート・ノードで、結果を含む単一のパケットとして完了する。
【0035】
どのノードでも、仮想リダクション・ツリーのルートとして構成できることが好ましい。リダクションがそのノードに達したならば、単一の組み合わされたパケットが、受け取られるか、すべての参加する子にブロードキャストされるか、その両方である。ルータは、ダウン・ツリーの子ノード宛のリダクション・パケットを受け取る時に、そのパケットのコピーをその子のそれぞれに転送する。ルータは、その仮想ツリー上のリダクションに参加するように構成されている場合に、そのパケットのコピーをローカル受取FIFO204にも置く。
【0036】
好ましい実施形態では、物理的な相互接続の幅が、オペランドの幅より狭く、したがって、オペランドは、直列化された形でツリー上で送られる。可能な最短待ち時間を達成するために、整数オペランドは、最下位ビットを先に送られ、その結果、オペランドが到着する際に結果を計算でき、転送もできるようにされる。この形で、結果は、潜在的に、その上位ビットがシフト・アウトされる前にツリーの数レベル上に進行し、すべてのノードにわたる非常に短い待ち時間がもたらされる。数は、異なる最上位のビットに基づいて異なることがわかるので、パイプライン化された最大値演算が、最上位ビットを含むワードから開始して計算されることを理解されたい。ハードウェアは、注入され受け取られる最大値オペランドを自動的に逆転し、その結果、計算が、最上位ビットから最下位ビットへと実行される。
【0037】
整数リダクションをさらに使用して、浮動小数点リダクションを計算することができる。たとえば、グローバル浮動小数点合計を、ツリーを2回使用することによって実行することができ、この場合に、1回目で、すべての指数の最大値を求め、2回目で、すべてのシフトされた仮数を加算する。
【0038】
前に述べたように、本発明のツリー・ネットワーク100は、効率的なグローバル・ブロードキャストを実行するのに理想的な構造である。ハードウェア・ブロードキャスト動作は、必ずツリーのルートから実行されるが、どのノードでも、まずルート・ノードのルータ装置にポイントツーポイント「ブロードキャスト」タイプ・メッセージを送ることによってブロードキャストすることができ、このメッセージによって、ブロードキャストが自動的に開始される。グローバル・ブロードキャストでは、大部分は、リダクションの規則および制限が尊重されるが、アップ・ツリーでの挙動は異なる。どのノードでも、ブロードキャスト・タイプのパケットを仮想ツリーに注入することによって、ペイロードのブロードキャストを実行することができる。パケットは、仮想ツリーのルートとして構成されたノードに達するまで、変更されずにツリーを上へ移動する。ルートでは、パケットが向きを換え、その仮想ツリーの参加する子のすべてにブロードキャストされる。したがって、そのパケットは、仮想ツリー上のリダクションに参加するノードによってのみ受け取られる。
【0039】
本発明によるブロードキャストの受取は、さらに、パケット内に含まれる情報をフィルタリングすることによって制御される。好ましい実施形態のフィルタリング機構は、パケットに含まれる値を、各ルータに保管された事前に構成された値と突き合わせ、値が一致する場合に限ってパケットを受け取ることによって機能する。一般に、システム内のすべてのノードに、一意の値(アドレス)が割り当てられ、したがって、このブロードキャスト・フィルタリング機構によって、ルート・ノードからその下の単一のノードにメッセージを送れるようになる。一意でないアドレスを使用して、ノードのサブセットによる受取を引き起こすこともできる。ブロードキャスト・フィルタリングを一般化できる多数の形がある。たとえば、アドレスの代わりにビット・ベクトルを使用することによって、ノードの複数のばらばらの構成可能なサブセットがブロードキャストを受け取れるようになる。
【0040】
外部入出力接続の効率的な共用は、ブロードキャスト・フィルタリングと「ルート」パケット・タイプの組合せによってもたらされる。ルートタイプ・パケットは、仮想ツリーのルートとして指定されたノードに出会うまで常に仮想ツリーを上に移動し、そのノードで、無条件で受け取られる。これによって、ルート以外のノードがルートにメッセージを送れるようになり、ルートで、メッセージを外部接続に転送することができる。外部接続に達するデータを、所期の宛先と一致するアドレスを用いたフィルタリング・ブロードキャストを使用して、特定の非ルート・ノードに転送することができる。
【0041】
外部接続に障害が発生する場合に、その接続を使用するノードは、ツリーの上側で外部接続を有する次のノードにフェール・オーバすることができる。ノードからのトラフィックに関して、これは、単に、障害を発生した外部接続を有するノードを再構成し、その結果、そのノードが、もはや仮想ツリーのルートにならないようにし、フェールオーバ・ノードを新しいルートとして再構成することによって実行される。ノードへのトラフィックは、より複雑である。というのは、フェールオーバ・ルートからのブロードキャストが、障害を発生したノードの下の子だけではなく、フェールオーバ・ルートの下のすべての子に向かうからである。たとえば、図2のノードA 111が、ノードB 110にフェール・オーバする場合に、ノードBからのパケットが、ツリー全体にブロードキャストされるようになる。
【0042】
不要なトラフィックを防ぐために、どのルータ装置でも、各仮想ツリーのダウン・ツリー・トラフィックを独立にブロックするように構成することができる。ブロックするように構成された仮想ツリーのアップ・ツリー・リンクのルータに入るパケットは、単純に捨てられる。たとえば、図2のノードA 111の下のノードが、ツリー1という符号を付けられた仮想ツリーを使用して、ノードA 111の接続を使用して外部入出力を送受すると仮定する。ノードAでの接続をノードBにフェール・オーバするために、ノードBを、ノードAの代わりに仮想ツリー1のルートになるように構成し、ノードCおよびノードDを、仮想ツリー1のダウン・ツリー・トラフィックをブロックするように構成する。このダウン・ツリー・ブロック機構を、仮想ツリーの枝刈りに一般的に使用できることを理解されたい。
【0043】
どのパケットでも、割込み要求を付加してツリー・ネットワークに注入することができる。これの最終的な効果は、そのパケットを受け取るすべてのノードでマスク可能割込みを引き起こすことであり、あるいは、リダクションの場合には、パケットから結果が計算される。リダクション結果は、その結果に寄与する注入されたパケットのどれかによって割込みが要求された場合に、割込みを引き起こす。さらに、グローバル・リダクション動作を使用して、割込み機構を用いてソフトウェア・バリアを実行することができる。簡単に言うと、各ノードは、その割込みフラグをクリアし、その後、グローバル・リダクションに寄与することによって、バリアに入る。このノードは、割込みフラグをポーリングするか、割込みを受け取ることによって、バリアの完了を検出する。グローバル・コンバイニング・ツリーおよびバリア・ネットワークの動作に関するさらなる詳細は、本明細書に組み込まれる、本願の所有者が所有する、同時係属の米国仮出願番号______(YOR 8−2001−1009)に記載されている。
【0044】
本発明のツリー・ネットワークでは、基本的な順序付けの規則に従う動作である限り、動作の正しい完了が保証される。すなわち、パケットは、受け取られた順序でルータ200によって処理されるので、仮想ネットワークのデッドロックは、仮想ツリーでの動作に参加するノードが、同一の順序でリダクション・オペランドを注入しないか、オペランドを注入できない場合に発生する。同様に、デッドロックは、2つの仮想ツリーが、同一の仮想ネットワークでオーバーラップし、オペランド注入が、仮想ネットワークの厳密な順序付け規則に違反する場合に発生する可能性がある。ブロードキャスト動作またはポイントツーポイント・メッセージング動作に対する順序付け制限がなく、これらの動作を、リダクションとインターリーブできることが好ましい。
【0045】
正しく順序付けられた動作の保証された完了は、ハードウェア・エラー回復機構によってもたらされる。簡単に言うと、各ルータは、グローバル・ツリー・ネットワーク・リンクを介して送られるパケットが、エラーなしで受け取られたことの肯定応答を受け取るまで、それらのパケットのすべてのコピーを保存する。パケットCRC付きのスライディング・ウィンドウ・プロトコルなど、破壊されたパケットの検出の機構と、保存されたコピーを使用してそれらのパケットを再送出させる機構とを含む、リンクレベル通信プロトコルを実施することができる。
【0046】
前に述べたように、フロー制御は、トークンベースの通信プロトコルの使用を介して維持される。「下流」ルータにパケットを送る「上流」ルータは、下流ルータの空き記憶容量を表す個数のトークンを有する。上流ルータは、パケットを送る時に、必ず、トークンを消費し、トークンが残っていなければパケットを送ることができない。逆に、下流ルータは、記憶空間を解放した時に、必ず上流ルータにトークンを発行する。記憶空間とパケット待ち時間の間のバランスによって、リンクが常に使用中の状態に保たれることが保証される。
【0047】
通常は単一のパケットが複数のダウン・ツリー・リンクを介して送られ、ローカルに受け取られるダウン・ツリー・ブロードキャストでは、フロー制御を実施して、ダウン・ツリー・リンクのすべてでトークンが使用可能であり、CPU受取FIFO204に余地があるようになるまで、パケットの進行を防ぐことができる。しかし、この保守的な手法は、単一の宛先に向けられたフィルタリング・ブロードキャストのスループットに影響する可能性がある。というのは、その宛先が、トークンを有するリンクの下にあるが、パケットが、トークンを有しない別のリンクで待たなければならない可能性があるからである。したがって、好ましい実施形態では、ツリー・ネットワークが、「積極的な」ブロードキャストを実行し、このブロードキャストでは、基本的に、個々のダウン・ツリー・リンクでのフロー制御が分離される。図3を参照すると、パケットは、適当なダウン・ツリー・リンクおよび仮想ネットワークのすべてで十分な記憶空間が使用可能になると、すぐに、ダウン・ツリー・リンクおよび仮想ネットワークの出FIFO250に転送される。その後、各出FIFO250は、トークンが使用可能になる時に、出力ポート210bから213bに個別にドレーンされる。前に説明したように、再送出を介する伝送エラー回復のために、いずれにせよパケットの個々のコピーを各出FIFO250に置かなければならないことに留意されたい。
【0048】
好ましい実施形態では、本願の所有者が所有する、同時係属の米国仮出願番号______(YOR9−20010211US2(15275))、表題「A Novel Massively Parallel Supercomputer」に詳細に記載され、図1から3に関して本明細書で説明したように、各処理ノード12が、システムオンアチップ・プロセスに基づく、すなわち、経路指定機能を含むコンピュータ・ノードのすべての機能が、単一のASICに集積され、ノード・サイズに関する劇的なサイズおよび電力の削減がもたらされる。このスーパーコンピュータ・アーキテクチャをさらに活用して、ノード密度を高め、これによって、計算機の総合的なコスト/性能を下げることができる。各ノードで、PowerPC 440組込み処理コア、浮動小数点コア、組込みDRAM、統合外部DDRメモリ・コントローラ、メッセージ・プロセッサ、イーサネット(R)・アダプタ、ならびにネットワーク・ルータを含むがこれに制限されない、多数の機能がコンピュータASICに組み込まれることが好ましい。一実施形態では、同一の計算ASICノードを、ファイルサーバ通信動作および入出力動作を処理するために、コンピュータ・ノードのサブセット、たとえば64個のノードに関連する入出力ノードとして使用することができる。すなわち、入出力ノードは、コンピュータ・ノードに非常に似ているが、たとえばギガビット・イーサネット(R)などの外部ネットワーク・インターフェースの他に、外部メモリ構成に関してのみ異なる場合がある。本明細書に記載のツリー・ネットワーク・ルータが、好ましい実施形態の集積されたデバイスの他に、独立の装置として機能することができることを理解されたい。
【0049】
本発明の例示的な事前に形成された実施形態に関して本発明を具体的に図示し、説明してきたが、形態および詳細における前述および他の変更を、本発明の趣旨および範囲から逸脱せずに行うことができ、本発明の趣旨および範囲が、請求項の範囲のみによって制限されなければならないことを理解されたい。
【図面の簡単な説明】
【0050】
【図1】8つの計算ノードを相互接続する3次元トーラス・ネットワークを示す図である。
【図2】35個のノード(円によって表される)およびノードのすべてを接続するツリー・ネットワーク100を含む通常のシステムの例を示す図である。
【図3】図2のグローバル・ツリー・ネットワークで実施されるルータ装置の基本的なアーキテクチャを示す図である。
Claims (33)
- 複数の処理ノードを含むコンピューティング構造で実行される並列アルゴリズム動作中に、集合リダクション、ブロードキャスト、およびポイントツーポイント・メッセージ受渡を実行する装置であって、
前記ノードをツリー構成で相互接続する経路指定装置を含むグローバル・ツリー・ネットワークであって、前記ツリー構成が、1つまたは複数のその仮想ツリー・ネットワークを含み、前記グローバル・ツリー・ネットワークが、指定された仮想ツリー・ネットワークのルート・ノードから葉ノードへの下流へのグローバル・ブロードキャスト動作と、前記仮想ツリーの葉ノードからルート・ノードへの上流へのグローバル・リダクション動作と、前記仮想ツリーの任意のノードから前記仮想ツリーのルート・ノードへのポイントツーポイント・メッセージ受渡との1つまたは複数を含むグローバル処理動作を必要に応じて使用可能にする、グローバル・ツリー・ネットワーク
を含み、前記グローバル・ツリー・ネットワークおよび経路指定装置構成が、前記コンピューティング構造で短待ち時間通信を提供するために最適化される
装置。 - 前記コンピューティング構造が、第1ネットワークを形成するために相互接続された複数の処理ノードを含み、前記1つまたは複数の仮想ツリー・ネットワークおよび前記第1ネットワークが、並列アルゴリズム処理性能を最適化するために並列アルゴリズムの帯域幅要件および待ち時間要件に従って集合的にまたは独立に利用される、請求項1に記載の装置。
- 仮想ツリー・ネットワークのルート・ノードが、外部システムへの高速接続を含む入出力ノードとして機能し、前記入出力ノードが、前記第1ネットワークで実行される処理と独立に、仮想ツリー・ネットワークに関する入出力動作を実行する、請求項1に記載の装置。
- 各前記ルータが、仮想ツリーの他のノードからパケットを受け取る入力装置と、前記ツリーの他のノードにパケットを転送する出力装置と、パケットを前記ツリーに注入するローカル注入装置と、前記ツリーからパケットを除去するローカル受取装置とを含み、前記装置が、さらに、前記仮想ツリーに参加するまたは参加しないのいずれかに前記ルータを構成する手段を含む、請求項3に記載の装置。
- 前記ルータを構成する前記手段が、さらに、リダクション動作に関する仮想ツリーのルートとしての前記ノードの参加を指定する、請求項4に記載の装置。
- 前記ルータを構成する前記手段が、さらに、リダクション動作中のオペランドの供給に関する入力装置およびローカル注入装置の参加を指定する、請求項5に記載の装置。
- 前記ルータが、さらに、寄与する場合に、寄与する入力装置およびローカル注入装置によって受け取られるパケット内容に対する指定されたリダクション動作を計算する手段と、前記出力装置を介してそのノードの上流の親ノードへの計算結果の伝送を引き起こす手段とを含む、請求項6に記載の装置。
- 前記仮想ツリー・ネットワークが、前記ルート・ノードでの単一パケットとしての完了のために、グローバルに組み合わされた結果が前記仮想ツリーで上に計算されることを再帰的に引き起こすようにプログラムされる、請求項7に記載の装置。
- 仮想ツリーでのリダクションにオペランドを与えるように構成された参加する子のすべてのそれぞれに前記ルートでの単一の組み合わされたパケットをブロードキャストする手段をさらに含む、請求項8に記載の装置。
- 前記高速接続を介して外部システムに宛てられたポイントツーポイント・パケットを仮想ツリーのルートにある入出力ノードに送ることを計算ノードが行えるようにする機構をさらに含む、請求項3に記載の装置。
- 仮想ツリーのノードでのブロードキャスト・パケットの受取を制御するフィルタ機構をさらに含み、前記受取が、前記仮想ツリーでのノード・アドレスおよび参加に基づく、請求項9に記載の装置。
- 各ノードが、アドレスを含み、前記システムが、さらに、各前記仮想ツリーのノードの間でのポイントツーポイント・メッセージングを可能にするプログラマブル手段を含み、前記アドレスが、外部ホスト・システムがすべてのノードまたは前記ノードのサブセットに直接に通信できるようにする、請求項11に記載の装置。
- ローカル受取装置によって受け取られるパケットの内容に基づいて、処理ノードのプロセッサへのハードウェア割込みを生成する機構をさらに含む、請求項9に記載の装置。
- 各仮想ツリーで不要なダウン・ツリー・トラフィックを独立にブロックする機構をさらに含む、請求項9に記載の装置。
- パケットを通信する時にルータの間のフロー制御を提供する機構をさらに含む、請求項11に記載の装置。
- 積極的なブロードキャストを実行するために、前記フロー制御機構から分離された個々のダウンストリーム・リンクでパケットをブロードキャストできるようにする手段をさらに含む、請求項15に記載の装置。
- 前記第1ネットワークが、n次元トーラスを含み、nが、1以上である、請求項2に記載の装置。
- 複数の相互接続された処理ノードを有するコンピュータ構造で実行される並列アルゴリズム動作中に、集合リダクション、ブロードキャスト、およびメッセージ受渡を実行する方法であって、
グローバル・ツリー・ネットワーク構造に従ってリンクを介して前記ノードを相互接続するルータ装置を設けることであって、前記ツリー構造が、1つまたは複数の1つまたは複数の仮想サブツリー構造を含む、設けることと、
前記仮想ツリー構造のノードで短待ち時間グローバル処理動作を実行できるようにすることであって、前記グローバル動作が、前記並列アルゴリズム動作を実行する時の必要に応じて、指定されたツリー仮想サブツリー・ネットワークのルート・ノードから葉ノードへの下流へのグローバル・ブロードキャスト動作と、前記ツリーの葉ノードからルート・ノードへの上流へのグローバル・リダクション動作と、前記仮想ツリーの任意のノードから前記仮想ツリーのルート・ノードへのポイントツーポイント・メッセージ受渡との1つまたは複数を含む、実行できるようにすることと
を含む方法。 - 前記コンピューティング構造が、第1ネットワークを形成するために相互接続された複数の処理ノードを含み、前記方法が、並列アルゴリズム処理性能を最適化するために並列アルゴリズムの帯域幅要件および待ち時間要件に従って前記グローバル・ツリー・ネットワークおよび前記第1ネットワークを集合的にまたは独立に利用するステップをさらに含む、請求項18に記載の方法。
- 各仮想ツリー・ネットワークのルート・ノードが、外部システムへの高速接続を含む入出力ノードとして機能し、前記方法が、前記第1ネットワークで実行される動作と独立に、仮想ツリー・ネットワークに関するノード入出力動作を実行するステップを含む、請求項18に記載の方法。
- 各前記ルータが、仮想ツリーの他のノードからパケットを受け取る入力装置と、前記ツリーの他のノードにパケットを転送する出力装置と、パケットを前記ツリーに注入するローカル注入装置と、前記ツリーからパケットを除去するローカル受取装置とを含み、前記方法が、さらに、仮想ツリーに参加するまたは参加しないのいずれかに前記ルータを構成するステップを含む、請求項20に記載の方法。
- 前記ルータを構成するステップが、さらに、リダクション動作を実行する時の仮想ツリーのルートとしてのノードの参加を指定するステップを含む、請求項20に記載の方法。
- 前記ルータを構成するステップが、さらに、
リダクション動作中にオペランドを注入するための前記ルータに結合された前記処理ノードの参加を指定するステップと、
リダクション動作中にオペランドを注入するための前記ルータに結合された前記処理ノードの参加を指定するステップと
の1つまたは複数を含む、請求項22に記載の方法。 - 寄与する子ノードおよび前記処理ノードから受け取られるパケット内容に対する指定されたリダクション動作を計算するように前記ルータを構成するステップと、出力装置を介するそのノードの上流親ノードへの計算結果の伝送を行わせるステップとをさらに含む、請求項23に記載の方法。
- 前記ルート・ノードでの単一パケットとしての完了のために、グローバルに組み合わされた結果が前記仮想ツリーで上に計算されることを再帰的に引き起こすステップをさらに含む、請求項24に記載の方法。
- 仮想ツリーでのリダクションにオペランドを与えるように構成された参加する子のすべてのそれぞれに前記ルートでの単一の組み合わされたパケットをブロードキャストするステップをさらに含む、請求項25に記載の方法。
- 前記高速接続を介して外部システムに宛てられたポイントツーポイント・パケットを仮想ツリーのルートにある入出力ノードに送ることを計算ノードが行えるようにするステップをさらに含む、請求項20に記載の方法。
- 仮想ツリーのノードでのブロードキャスト・パケットの受取を制御するステップをさらに含み、前記受取が、前記仮想ツリーでの前記ノードの前記アドレスおよび参加に基づく、請求項26に記載の方法。
- 各ノードが、アドレスを含み、前記方法が、さらに、各前記仮想ツリーのノードの間でのポイントツーポイント・メッセージングおよびサブツリー・メッセージングを可能にするステップを含み、前記アドレスが、ホスト・システムがすべてのノードまたは前記ノードのサブセットに直接に通信できるようにする、請求項28に記載の方法。
- ローカル受取装置によって受け取られるパケットの内容に基づいて、処理ノードのプロセッサへのハードウェア割込みを生成するステップをさらに含む、請求項26に記載の方法。
- 各仮想ツリーで不要なダウン・ツリー・トラフィックを独立にブロックするステップをさらに含む、請求項26に記載の方法。
- パケットを通信する時にルータの間のフロー制御を提供するステップをさらに含む、請求項28に記載の方法。
- 前記フロー制御機構から分離することによって、個々のダウンストリーム・リンクでパケットの積極的なブロードキャストを可能にするステップをさらに含む、請求項32に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US27112401P | 2001-02-24 | 2001-02-24 | |
PCT/US2002/005586 WO2002069168A1 (en) | 2001-02-24 | 2002-02-25 | A global tree network for computing structures |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004536372A true JP2004536372A (ja) | 2004-12-02 |
JP4127791B2 JP4127791B2 (ja) | 2008-07-30 |
Family
ID=68499836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002568222A Expired - Fee Related JP4127791B2 (ja) | 2001-02-24 | 2002-02-25 | コンピューティング構造のグローバル・ツリー・ネットワーク |
Country Status (8)
Country | Link |
---|---|
US (1) | US7650434B2 (ja) |
EP (1) | EP1381959A4 (ja) |
JP (1) | JP4127791B2 (ja) |
KR (1) | KR100553143B1 (ja) |
CN (1) | CN100476785C (ja) |
CA (1) | CA2437661A1 (ja) |
IL (1) | IL157512A0 (ja) |
WO (1) | WO2002069168A1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008527521A (ja) * | 2005-01-12 | 2008-07-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | グリッド・ジョブに関するグリッド・プロバイダの選択を自動的に制御するための方法、システム、およびコンピュータ・プログラム |
WO2012127619A1 (ja) * | 2011-03-22 | 2012-09-27 | 富士通株式会社 | 並列計算機システム及び並列計算機システムの制御方法 |
US8386624B2 (en) | 2006-03-14 | 2013-02-26 | Fujitsu Limited | Broadcast processing method for network system and network system |
US10430375B2 (en) | 2009-09-01 | 2019-10-01 | Fujitsu Limited | Parallel computing system and communication control program |
JP2021052386A (ja) * | 2019-08-16 | 2021-04-01 | ウルトラソック、テクノロジーズ、リミテッドUltrasoc Technologies Limited | システムオンチップにおけるイベントメッセージのブロードキャスティング |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060259607A1 (en) * | 2001-09-13 | 2006-11-16 | Network Foundation Technologies, Llc | System and method for distributing data over a computer network |
WO2006020298A2 (en) * | 2004-07-19 | 2006-02-23 | Blumrich Matthias A | Collective network for computer structures |
US8626957B2 (en) | 2003-08-22 | 2014-01-07 | International Business Machines Corporation | Collective network for computer structures |
US7478156B1 (en) * | 2003-09-25 | 2009-01-13 | Juniper Networks, Inc. | Network traffic monitoring and reporting using heap-ordered packet flow representation |
CA2577129C (en) * | 2004-07-09 | 2016-07-05 | Network Foundation Technologies, Llc | Systems for distributing data over a computer network and methods for arranging nodes for distribution of data over a computer network |
US8117288B2 (en) * | 2004-10-12 | 2012-02-14 | International Business Machines Corporation | Optimizing layout of an application on a massively parallel supercomputer |
US20060227774A1 (en) * | 2005-04-06 | 2006-10-12 | International Business Machines Corporation | Collective network routing |
US8516444B2 (en) * | 2006-02-23 | 2013-08-20 | International Business Machines Corporation | Debugging a high performance computing program |
US7697443B2 (en) * | 2006-04-13 | 2010-04-13 | International Business Machines Corporation | Locating hardware faults in a parallel computer |
US20070242611A1 (en) * | 2006-04-13 | 2007-10-18 | Archer Charles J | Computer Hardware Fault Diagnosis |
US7796527B2 (en) * | 2006-04-13 | 2010-09-14 | International Business Machines Corporation | Computer hardware fault administration |
CN100451972C (zh) * | 2006-09-26 | 2009-01-14 | 杭州华三通信技术有限公司 | 提高多核系统访问临界资源速度的方法和装置 |
US7953684B2 (en) * | 2007-01-31 | 2011-05-31 | International Business Machines Corporation | Method and system for optimal parallel computing performance |
US9330230B2 (en) * | 2007-04-19 | 2016-05-03 | International Business Machines Corporation | Validating a cabling topology in a distributed computing system |
CN101311917B (zh) * | 2007-05-24 | 2011-04-06 | 中国科学院过程工程研究所 | 一种面向粒子模型的多层直连集群并行计算系统 |
EP2174442A4 (en) * | 2007-07-20 | 2012-03-07 | Blue Danube Labs Inc | METHOD AND SYSTEM FOR MULTI-POINT SIGNAL GENERATION WITH PHASE SYNCHRONIZED LOCAL BEARINGS |
US8296457B2 (en) * | 2007-08-02 | 2012-10-23 | International Business Machines Corporation | Providing nearest neighbor point-to-point communications among compute nodes of an operational group in a global combining network of a parallel computer |
US7831866B2 (en) * | 2007-08-02 | 2010-11-09 | International Business Machines Corporation | Link failure detection in a parallel computer |
US8423663B2 (en) * | 2007-08-06 | 2013-04-16 | International Business Machines Corporation | Providing full point-to-point communications among compute nodes of an operational group in a global combining network of a parallel computer |
JP2009104300A (ja) * | 2007-10-22 | 2009-05-14 | Denso Corp | データ処理装置及びプログラム |
US8381220B2 (en) * | 2007-10-31 | 2013-02-19 | International Business Machines Corporation | Job scheduling and distribution on a partitioned compute tree based on job priority and network utilization |
GB0803238D0 (en) * | 2008-02-22 | 2008-04-02 | Isis Innovation | Parallel processing |
US7958184B2 (en) * | 2008-03-04 | 2011-06-07 | International Business Machines Corporation | Network virtualization in a multi-node system with multiple networks |
US8108467B2 (en) * | 2008-06-26 | 2012-01-31 | International Business Machines Corporation | Load balanced data processing performed on an application message transmitted between compute nodes of a parallel computer |
JP5077104B2 (ja) * | 2008-06-30 | 2012-11-21 | 富士通株式会社 | ネットワーク障害検知プログラム、システム、及び方法 |
US8194678B2 (en) * | 2008-07-21 | 2012-06-05 | International Business Machines Corporation | Providing point to point communications among compute nodes in a global combining network of a parallel computer |
US8121816B2 (en) * | 2008-08-13 | 2012-02-21 | Verizon Patent And Licensing Inc. | Identifying causes of service level agreement performance violations |
US8387064B2 (en) | 2008-10-09 | 2013-02-26 | International Business Machines Corporation | Balancing a data processing load among a plurality of compute nodes in a parallel computer |
US9110860B2 (en) * | 2009-11-11 | 2015-08-18 | Mellanox Technologies Tlv Ltd. | Topology-aware fabric-based offloading of collective functions |
US8103910B2 (en) * | 2009-11-13 | 2012-01-24 | International Business Machines Corporation | Local rollback for fault-tolerance in parallel computing systems |
US8571834B2 (en) * | 2010-01-08 | 2013-10-29 | International Business Machines Corporation | Opcode counting for performance measurement |
US8811417B2 (en) * | 2009-11-15 | 2014-08-19 | Mellanox Technologies Ltd. | Cross-channel network operation offloading for collective operations |
US8904118B2 (en) | 2011-01-07 | 2014-12-02 | International Business Machines Corporation | Mechanisms for efficient intra-die/intra-chip collective messaging |
US20120179896A1 (en) | 2011-01-10 | 2012-07-12 | International Business Machines Corporation | Method and apparatus for a hierarchical synchronization barrier in a multi-node system |
US9195550B2 (en) | 2011-02-03 | 2015-11-24 | International Business Machines Corporation | Method for guaranteeing program correctness using fine-grained hardware speculative execution |
US8898289B1 (en) * | 2011-03-22 | 2014-11-25 | Netapp, Inc. | Distributed event processing method and architecture |
CN102141975B (zh) * | 2011-04-01 | 2013-10-09 | 华为技术有限公司 | 计算机系统 |
EP2573643B1 (en) | 2011-07-26 | 2015-09-23 | Huawei Technologies Co., Ltd. | Computer system and clock configuration method thereof |
US20130218795A1 (en) * | 2012-02-20 | 2013-08-22 | Michel Rienzo | System for creating an entertainment network conglomerate via a global computer network and methods thereof |
US9665531B2 (en) * | 2012-06-13 | 2017-05-30 | International Business Machines Corporation | Performing synchronized collective operations over multiple process groups |
US9160607B1 (en) | 2012-11-09 | 2015-10-13 | Cray Inc. | Method and apparatus for deadlock avoidance |
WO2014151773A1 (en) * | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for implementing a line speed interconnect structure |
US9405724B2 (en) * | 2013-06-28 | 2016-08-02 | Intel Corporation | Reconfigurable apparatus for hierarchical collective networks with bypass mode |
US20150091909A1 (en) * | 2013-09-30 | 2015-04-02 | Alcatel Lucent | Systems And Methods For Distance Approximation In Graphs |
US9495204B2 (en) * | 2014-01-06 | 2016-11-15 | International Business Machines Corporation | Constructing a logical tree topology in a parallel computer |
US10360050B2 (en) * | 2014-01-17 | 2019-07-23 | International Business Machines Corporation | Simulation of high performance computing (HPC) application environment using virtual nodes |
US9553784B2 (en) | 2014-07-29 | 2017-01-24 | International Business Machines Corporation | Selection of message passing collectives in presence of system noise |
CN104184828B (zh) * | 2014-09-09 | 2018-05-11 | 清华大学 | 混合网络系统、通信方法和网络节点 |
US10284383B2 (en) | 2015-08-31 | 2019-05-07 | Mellanox Technologies, Ltd. | Aggregation protocol |
US10521283B2 (en) | 2016-03-07 | 2019-12-31 | Mellanox Technologies, Ltd. | In-node aggregation and disaggregation of MPI alltoall and alltoallv collectives |
US10425358B2 (en) * | 2016-09-29 | 2019-09-24 | International Business Machines Corporation | Network switch architecture supporting multiple simultaneous collective operations |
CN107835175B (zh) * | 2017-11-09 | 2020-09-22 | 深圳市云盾科技有限公司 | 采用平衡二叉树算法的网络连接跟踪方法 |
US11277455B2 (en) | 2018-06-07 | 2022-03-15 | Mellanox Technologies, Ltd. | Streaming system |
CN111475250B (zh) * | 2019-01-24 | 2023-05-26 | 阿里巴巴集团控股有限公司 | 一种云环境下的网络优化方法和装置 |
CN109857810B (zh) * | 2019-02-02 | 2023-06-23 | 立旃(上海)科技有限公司 | 基于区块链的数据同步装置及方法 |
US11625393B2 (en) | 2019-02-19 | 2023-04-11 | Mellanox Technologies, Ltd. | High performance computing system |
EP3699770A1 (en) | 2019-02-25 | 2020-08-26 | Mellanox Technologies TLV Ltd. | Collective communication system and methods |
CN110690991B (zh) * | 2019-09-10 | 2021-03-19 | 无锡江南计算技术研究所 | 一种基于逻辑树的无阻塞网络归约计算装置、方法 |
US11750699B2 (en) | 2020-01-15 | 2023-09-05 | Mellanox Technologies, Ltd. | Small message aggregation |
US11252027B2 (en) * | 2020-01-23 | 2022-02-15 | Mellanox Technologies, Ltd. | Network element supporting flexible data reduction operations |
CN111770173B (zh) * | 2020-06-29 | 2022-09-06 | 中国人民解放军国防科技大学 | 一种基于网络控制器的归约方法及系统 |
US11876885B2 (en) | 2020-07-02 | 2024-01-16 | Mellanox Technologies, Ltd. | Clock queue with arming and/or self-arming features |
US11556378B2 (en) | 2020-12-14 | 2023-01-17 | Mellanox Technologies, Ltd. | Offloading execution of a multi-task parameter-dependent operation to a network device |
JP2022108373A (ja) * | 2021-01-13 | 2022-07-26 | 富士通株式会社 | 情報処理装置、情報処理方法、およびシステム |
US11922237B1 (en) | 2022-09-12 | 2024-03-05 | Mellanox Technologies, Ltd. | Single-step collective operations |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59140694A (ja) * | 1983-01-31 | 1984-08-13 | Sharp Corp | ダイナミツクramのリフレツシユ方法 |
US4843540A (en) | 1986-09-02 | 1989-06-27 | The Trustees Of Columbia University In The City Of New York | Parallel processing method |
US4860201A (en) * | 1986-09-02 | 1989-08-22 | The Trustees Of Columbia University In The City Of New York | Binary tree parallel processor |
US4845744A (en) * | 1986-10-16 | 1989-07-04 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of overlaying virtual tree networks onto a message passing parallel processing network |
US5191578A (en) * | 1990-06-14 | 1993-03-02 | Bell Communications Research, Inc. | Packet parallel interconnection network |
US5353412A (en) * | 1990-10-03 | 1994-10-04 | Thinking Machines Corporation | Partition control circuit for separately controlling message sending of nodes of tree-shaped routing network to divide the network into a number of partitions |
US5224100A (en) * | 1991-05-09 | 1993-06-29 | David Sarnoff Research Center, Inc. | Routing technique for a hierarchical interprocessor-communication network between massively-parallel processors |
US5367692A (en) * | 1991-05-30 | 1994-11-22 | Thinking Machines Corporation | Parallel computer system including efficient arrangement for performing communications among processing node to effect an array transposition operation |
US5379415A (en) * | 1992-09-29 | 1995-01-03 | Zitel Corporation | Fault tolerant memory system |
US5802278A (en) * | 1995-05-10 | 1998-09-01 | 3Com Corporation | Bridge/router architecture for high performance scalable networking |
US5721921A (en) * | 1995-05-25 | 1998-02-24 | Cray Research, Inc. | Barrier and eureka synchronization architecture for multiprocessors |
US5923593A (en) * | 1996-12-17 | 1999-07-13 | Monolithic Systems, Inc. | Multi-port DRAM cell and memory system using same |
KR100272108B1 (ko) * | 1998-10-13 | 2000-11-15 | 윤종용 | Ieee 1394 가상 네트웍 생성방법 및 그 콘트롤러 |
JP3708801B2 (ja) * | 2000-06-16 | 2005-10-19 | 松下電器産業株式会社 | 半導体記憶装置 |
-
2002
- 2002-02-25 IL IL15751202A patent/IL157512A0/xx unknown
- 2002-02-25 JP JP2002568222A patent/JP4127791B2/ja not_active Expired - Fee Related
- 2002-02-25 CN CNB028055209A patent/CN100476785C/zh not_active Expired - Fee Related
- 2002-02-25 EP EP02719068A patent/EP1381959A4/en not_active Ceased
- 2002-02-25 CA CA002437661A patent/CA2437661A1/en not_active Abandoned
- 2002-02-25 KR KR1020037010998A patent/KR100553143B1/ko not_active IP Right Cessation
- 2002-02-25 WO PCT/US2002/005586 patent/WO2002069168A1/en active IP Right Grant
- 2002-02-25 US US10/469,000 patent/US7650434B2/en not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008527521A (ja) * | 2005-01-12 | 2008-07-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | グリッド・ジョブに関するグリッド・プロバイダの選択を自動的に制御するための方法、システム、およびコンピュータ・プログラム |
US8386624B2 (en) | 2006-03-14 | 2013-02-26 | Fujitsu Limited | Broadcast processing method for network system and network system |
US10430375B2 (en) | 2009-09-01 | 2019-10-01 | Fujitsu Limited | Parallel computing system and communication control program |
WO2012127619A1 (ja) * | 2011-03-22 | 2012-09-27 | 富士通株式会社 | 並列計算機システム及び並列計算機システムの制御方法 |
JPWO2012127619A1 (ja) * | 2011-03-22 | 2014-07-24 | 富士通株式会社 | 並列計算機システム及び並列計算機システムの制御方法 |
JP5696779B2 (ja) * | 2011-03-22 | 2015-04-08 | 富士通株式会社 | 並列計算機システム及び並列計算機システムの制御方法 |
US9258358B2 (en) | 2011-03-22 | 2016-02-09 | Fujitsu Limited | Parallel computing system and control method of parallel computing system |
JP2021052386A (ja) * | 2019-08-16 | 2021-04-01 | ウルトラソック、テクノロジーズ、リミテッドUltrasoc Technologies Limited | システムオンチップにおけるイベントメッセージのブロードキャスティング |
JP7326231B2 (ja) | 2019-08-16 | 2023-08-15 | シーメンス インダストリー ソフトウェア インコーポレイテッド | システムオンチップにおけるイベントメッセージのブロードキャスティング |
Also Published As
Publication number | Publication date |
---|---|
US7650434B2 (en) | 2010-01-19 |
JP4127791B2 (ja) | 2008-07-30 |
CN1493040A (zh) | 2004-04-28 |
CN100476785C (zh) | 2009-04-08 |
IL157512A0 (en) | 2004-03-28 |
KR100553143B1 (ko) | 2006-02-22 |
US20040078493A1 (en) | 2004-04-22 |
EP1381959A1 (en) | 2004-01-21 |
CA2437661A1 (en) | 2002-09-06 |
EP1381959A4 (en) | 2008-10-29 |
KR20040002870A (ko) | 2004-01-07 |
WO2002069168A1 (en) | 2002-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4127791B2 (ja) | コンピューティング構造のグローバル・ツリー・ネットワーク | |
JP6856612B2 (ja) | 多層相互接続による分散型プロセッサを有する処理システム | |
US8001280B2 (en) | Collective network for computer structures | |
US10069599B2 (en) | Collective network for computer structures | |
Mohapatra | Wormhole routing techniques for directly connected multicomputer systems | |
JP4478390B2 (ja) | クラス・ネットワーク経路指定 | |
KR100586768B1 (ko) | 글로벌 인터럽트 및 배리어 네트워크 | |
WO2002065700A2 (en) | An interconnection system | |
US20070053350A1 (en) | Buffering data packets according to multiple flow control schemes | |
Adda et al. | Routing and fault tolerance in Z-fat tree | |
MiSiC et al. | Communication aspects of the star graph interconnection network | |
Wu et al. | A hybrid multicast routing approach with enhanced methods for mesh-based networks-on-chip | |
Bogdanski | Optimized routing for fat-tree topologies | |
WO2007124514A2 (en) | Method and apparatus for a scalable hybrid architecture for polyvertexic extensible networks | |
Koibuchi et al. | Performance evaluation of routing algorithms in RHiNET-2 cluster | |
Moadeli et al. | Quarc: A novel network-on-chip architecture | |
Alimi et al. | Network-on-Chip Topologies: Potentials, Technical Challenges, Recent Advances and Research Direction | |
Wang et al. | METRO: A software-hardware co-design of interconnections for spatial DNN accelerators | |
Azimi et al. | On-chip interconnect trade-offs for tera-scale many-core processors | |
Ravindran et al. | Issues in the Design of Direct Multiprocessor Networks | |
Ruggiero | NoC Architectures | |
Lu | Wormhole data routing in multiprocessors: networks and algorithms | |
Ben Abdallah et al. | Multicore SoC On-Chip Interconnection Networks | |
Tseng et al. | FM/sup 2: a simulator for fine-grained message-passing multicomputers in k-ary n-cube networks | |
Demaine et al. | A novel routing algorithm for k-ary n-cube interconnection networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060123 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060131 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060419 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060426 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060719 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060719 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20060719 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060720 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070629 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20070629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080408 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080408 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080508 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20080508 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080512 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130523 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140523 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |