JP2006511878A - マルチプロセッサシステムにおけるハイパートランスポートルーティングテーブルをプログラミングするための方法及びシステム - Google Patents

マルチプロセッサシステムにおけるハイパートランスポートルーティングテーブルをプログラミングするための方法及びシステム Download PDF

Info

Publication number
JP2006511878A
JP2006511878A JP2004564868A JP2004564868A JP2006511878A JP 2006511878 A JP2006511878 A JP 2006511878A JP 2004564868 A JP2004564868 A JP 2004564868A JP 2004564868 A JP2004564868 A JP 2004564868A JP 2006511878 A JP2006511878 A JP 2006511878A
Authority
JP
Japan
Prior art keywords
link
processor
routing
memory
routing table
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
JP2004564868A
Other languages
English (en)
Other versions
JP4820095B2 (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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2006511878A publication Critical patent/JP2006511878A/ja
Application granted granted Critical
Publication of JP4820095B2 publication Critical patent/JP4820095B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

幾つかの実施形態において、本発明がマルチプロセッサシステム内のHTテーブル(114)を動的にプログラミングするシステム及び方法を記載する。HTテーブルは、故障調整、診断、パフォーマンス分析、プロセッサホットプラグ等に関するマルチプロセッサシステムのトポロジーを改変するように動的に再プログラミングされる。HTリンク(105)がHTテーブルを再構成することによって分離され得るし、分離されたHTリンクを通じて診断を可能にする。HTリンクは、ある種のリンクを通じてパケットトラフィックをルートするように再構成され得、HTリンクに関するパフォーマンス対策を可能にする。HTテーブルは、プロセッサが全体のシステムをダウン状態にすることなく置換され得るようにプロセッサを分離するよう再構成され得る。

Description

本発明は、概して、マルチプロセッサコンピュータシステムにおけるトポロジー管理に関し、より具体的には、マルチプロセッサコンピュータシステムにおけるハイパートランスポートルーティングテーブルの動的プログラミングに関する。
マルチプロセッサコンピュータシステムにおいて、個々のプロセッサ及び周辺デバイスは、概して、ハイパートランスポート(HT:Hyper Transport)テクノロジー入力/出力リンクを通じて結合される。HTリンクはパケット化されたローカルバスであり、デバイス間の高速データ転送を可能にし、結果として高度なスループットをもたらす。
HTリンクにおいて、アドレス、データ及びコマンドは、情報‘パケット’を利用して同じ配線を通じて送信される。情報パケットは、デバイス情報を含み、ソースとパケットの宛先を識別する。コンピュータシステムにおける各デバイス(例、プロセッサ等)は、ハイパートランスポートテーブルと称され、パケットのルーティングを決める。HTテーブルは、システムトポロジー(例、プロセッサ相互接続アーキテクチャ、又はルーティング情報)のようなシステムコンフィギュレーション情報を保持する。第1デバイス(例、プロセッサ等)が、パケットを受信すると、このパケットは第1デバイス用であるのか、あるいはシステムにおける他の何れかのデバイス用であるかを判断する。このパケットが第1デバイス自体用であれば、第1デバイスがパケットを処理し、パケットが他のデバイス宛に指定されれば、第1デバイスがパケットの宛先ルーティングに関するテーブルを調べて、パケットをその宛先に転送するために何れのHTリンクを使用するかを判断し、この宛先に対して適切なHTリンクを通じてパケットを転送する。
これらのHTリンクは、システム初期化中にコンフィグレーションがなされる。初期化ソフトウェア(例、BIOS等)が、起動プロセス中コンピュータシステムを構築する。初期化ソフトウェアは、オペレーションシステムに関する必要なデータ構造を生成し、システムハードウェアコンポーネントを初期化し、ハードウェアコンフィギュレーションレジスタを設定し、プラットフォームコンポーネントのコントロールを構成する。HTテーブルは、起動直後初期化ソフトウェアによってプログラムされ、システムが再初期化されるまで全てのデバイスによって利用される。HTテーブルは一度初期化されると、システム整合性を保持するために何れのシステムソフトウェア(例、オペレーションシステム、アプリケーション等)によっても変更されない。
しかし、HTリンクに関連するシステムエラーが生じると(例、リンクにおける高エラー率、リンク故障率、リンクにおけるデバイス故障率等)、システムが、HTテーブルを再構成するために再初期化されなければならない。例えば、HTリンクが故障し、他のルートが使用不可能であるとき、システムは故障する。同様に、デバイス(例、プロセッサ、メモリ等)が故障すれば、システムはデバイスを置換するためにパワーダウンしなければならない。システムのパワーダウンと再初期化は、結果として重要なデータと生産性の損失をもたらし得る。従って、マルチプロセッサシステムにおけるHTテーブルを動的にプログラムするためのシステムと方法が求められる。
本発明の実施形態において、マルチプロセッサシステムにおけるHTテーブルを動的にプログラムするシステム及び方法が提供される。ある変形例においては、HTテーブルが動的に再プログラムされ、故障調整、診断、パフォーマンス分析、プロセッサホットプラグ等に関するマルチプロセッサシステムのトポロジーを修正する。幾つかの実施形態において、HTリンクはHTテーブルを再構築することによって分離され得、分離されたHTリンクにおける診断を可能にする。幾つかの様々な形態において、HTリンクがある種のリンクを通じてパケットトラフィックをルートさせるために再構成され得、HTリンクに関するパフォーマンス対策を可能にする。幾つかの実施形態において、プロセッサがシステム全体をダウンさせることなく置換され得るようにHTテーブルがプロセッサを分離するために再構成され得る。
本文は、マルチプロセッサシステムに関する方法について記載する。この方法は、少なくとも1あるいはそれ以上のシステムアクティビティの実行を一部停止し、1あるいはそれ以上プロセッサに1あるいはそれ以上のルーティングテーブルを動的に変更する。幾つかの様々な形態において、ルーティングテーブルの各々は、受信データパケットに関するルーティング宛先を表す。幾つかの実施形態において、ルーティング宛先は1あるいはそれ以上のプロセッサである。幾つかの様々な形態において、この方法は変更されたルーティングテーブルを使用し、マイクロプロセッサシステムにおける少なくとも1の所定の送出リンクに受信パケットを転送することを指定する。
幾つかの実施形態において、この方法は全ての継続中のオペレーションが完了した後、システムアクティビティを停止する。幾つかの様々な形態において、この方法では、少なくとも置換メモリを一つ識別し、第1メモリから置換されたメモリにデータを転送し、メモリマッピングを更新する。幾つかの様々な形態において、この方法では、少なくともつの置換入力/出力リンクを識別し、入力/出力データをこの置換入力/出力リンクに転送し、入力/出力マップを更新する。様々な形態において、この方法は第1メモリに結合された第1プロセッサを無効化し、第1プロセッサを置換する。幾つかの様々な形態において、第1プロセッサの無効化では、第1プロセッサを通じて駆動している全てのプロセスをサスペンドし、第1プロセッサへの電力供給を停止するステップの一方あるいは双方を含む。
幾つかの様々な形態において、この方法は1あるいはそれ以上のシステムアクティビティの実行をレジュームする。幾つかの実施形態において、診断、故障調整、メンテナンス及びパフォーマンス対策のうち1あるいはそれ以上に関するテストが実行される。幾つかの様々な形態において、この方法は、1つあるいはそれ以上のプロセッサを通じて1つあるいはそれ以上のルーティングテーブルをレストアし、1つあるいはそれ以上のシステムアクティビティの実行をレジュームするシステムアクティビティのうち1あるいはそれ以上を停止する。幾つかの実施形態において、ルーティングテーブルをレストアするステップは、テストの結果に基づきルーティングテーブルを変更する。
上述された記載は、詳細の概要であり、それ故、当然、簡素化、概略化、及び省略を包含する。結果として当業者にとって、この概要が例示目的のみのためであり、多少なりとも制限されることが意図されていないことが理解されよう。また、この技術分野の熟練者にとって、本明細書に開示されたオペレーションは、多くの方法によって実装され、及びそのような変更及び修正は、本発明の趣旨の範囲を逸脱することなしにより幅広い態様において行われ得ることが明りょうとなろう。本発明の他の態様、進歩性のあるフィーチャ、及び利点は、請求項によってのみ定義され、以下に記載された詳細に制限されないことが明白となるだろう。
本発明の多くの対象物、フィーチャ、及び利点は、当業者にとって添付の図面を参照することによってより理解されよう。
図1Aは、本発明の一実施形態に従った例示的なシステム100を表す。システム100は、多数のプロセッシングノード110(1)〜110(4)を備えたマルチプロセッサであり、リンク105を通じて互いに通信を行う。プロセッシングノードの各々は、プロセッサ115(1)〜115(4)、ルーティングテーブル114、及びノースブリッジ回路117(1)〜117(4)を含む。この例において例示目的のため、4つのプロセッシングノードが示されるが、しかし、当業者であれば、システム100はプロセッシングノード数は任意のであることが理解されよう。リンク105は全てのリンクであり得る。この例において、リンク105は、例えば、ハイパートランスポート(HT)プロトコルのようなスプリットトランザクションバスプロトコルに従ったデュアルポイントツーポイントのリンクである。リンク105はダウンストリームデータフロー及びアップストリームデータフローを含み得る。リンク信号は通常、クロック、コントロール、コマンド、アドレス及びデータ情報及びリンクサイドバンド信号のようなリンクトラフィックを含み、デバイス間を流れるトラフィックを認証し、同期化する。
ルーティングテーブル114は、システムアーキテクチャ(例、システムトポロジー等)のコンフィギュレーションを含む。ルーティングテーブル114は、プロセッシングノード110によって利用され、データ(例、他のプロセッシングノード用のノードによって生成あるいは他のノードから受信されたデータ)のルーティングを判断する。ノースブリッジの各々は、メモリアレイ120(1)〜120(4)の対応する1つと通信を行う。この例において、プロセッシングノード110(1)〜110(4)及び対応するメモリアレイ120(1)〜120(4)は、システム100の“コヒーレント”部分である。このコヒーレンシーはメモリのキャッシングに関連し、プロセッサ間におけるHTリンクはこのHTプロトコルがキャッシュプロトコルを管理するメッセージを含むので、cHTリンクである。他の(非プロセッサ−プロセッサ間)HTリンクは、メモリキャッシュを有さないのでncHTリンクである。ビデオデバイス130は、他のHTリンクを通じてプロセッシングノード110の1つに結合され得る。ビデオデバイス130は、他のHTリンクを通じてサウスブリッジ140に結合され得る。I/Oデバイス150の1あるいはそれ以上は、サウスブリッジ140に結合され得る。この例において、ビデオデバイス130、サウスブリッジ140及びI/Oデバイス150は、システムの“非コヒーレント”部分である。当業者であれば、システム100が図示されるより複合的なシステムで有り得るし、例えば、追加のプロセッシングノード110がシステムのコヒーレント部分を形成し得ることが理解されよう。加えて、プロセッシングノード110は、“ラダーアーキテクチャ(ladder architecture)”で表されるが、プロセッシングノード110は、様々な方法(例えばスター型、メッシュ型等)でインターコネクトされ得るし、より複合的な結合を有し得る。
図1Bは、本発明の一実施形態に従ったシステム100のプロセッシングノード110の一例を表す。プロセッシングノード110は、プロセッサ115、複数のHTリンクインターフェース112(0)〜112(2)及びメモリコントローラ111を含む。各HTリンクインターフェースは、HTリンクを通じて結合されるデバイスとの通信を行うために対応するHTリンクとの結合を与える。メモリコントローラ111は、メモリインターフェース及び対応するメモリアレイ110(図示せず)に関する管理を実行する。クロスバー113は、他のプロセッシングノード110から受信あるいはプロセッサ115によって生成されたようなリクエスト、応答、及び同報通信メッセージを、それぞれプロセッサ115及び/又は適切なHTリンク112に転送する。リクエスト、応答及び同報通信メッセージの転送は、各プロセッシングノード110に位置する複数のコンフィグレーションルーティングテーブル114によって指示される。この例において、ルーティングテーブル114はクロスバー113に含まれるが、ルーティングテーブル114はプロセッシングノード110における何れの箇所(例、メモリ、プロセッサの内部ストレージ、外部的にアドレス指定可能なデータベース等内)においても構成され得る。当業者であれば、プロセッシングノード110が他のプロセッシングエレメント(例、冗長性HTリンクインターフェース、プロセッサ及びメモリコントローラ用に必要とされる様々な周辺エレメント等)を含み得ることを理解されよう。
図2は、本発明の一実施形態に従ったルーティングテーブル200のコンフィギュレーションの一例を表す。プロセッシングノードは、複数のコンフィグレーションルーティングテーブル200を含み得る。例示目的のみのため、この実施例において、32ビットテーブルが示される。しかし、当業者であれば、ルーティングテーブルが何れのビット数を用いても構成され得るし、ルーティングテーブルのビットの各々は、特定的なアプリケーションによって要請されるように指定され得ることを理解されよう。
この例において、ルーティングテーブル200が3エントリ、すなわち、同報通信ルーティング情報202、応答ルーティング情報204、及びリクエストルーティング情報206を含む。例示目的のため、情報に関連付けられたルーティングの各セットは、各HTリンク(例、HTリンク112(0)〜112(2)等)に関して1ビット及びプロセッシングノード自体に対して1ビットを有する。 1ルーティングテーブルが、各プロセッシングノードに割り当てられ、例えば、1つの8プロセッシングノードシステムにおいて、各プロセッシングノードは8コンフィグレーションルーティングテーブルを有する。ルーティングテーブルにおけるエントリは、読み出し及び書き込みされ得るし、通常、持続型ではない。ルーティングテーブルにおけるエントリは何れの仕様を用いてプログラムしてもよく、例えば、01h値は対応するリンクを通じて受信されたパケットを受信プロセッサが受けいれるべきであることを示し、00h値は、パケットが適切なリンクに転送あるいはその逆が行われなければならないことを示すようにしてもよいく、またその逆としてもよい。
リクエストルーティング情報206は指示されたリクエストによって利用される。送出リンクがその特定的な宛先ノードに向けて指示されたリクエストパケットに関して利用される。例えば、あるビットポジションにおける1は、このリクエストが対応するHTリンクを通じてルートされたことを示し得る。最も重要でないビットが1に設定されると、そのリクエストは受信プロセッシングノードのプロセッサに送信されることを示し得る。リクエストルーティング情報フィールド206は、何れのリンクがリクエストパケットを転送するために利用され得るかを示す。リクエストパケットは通常、1つの宛先のみにルーティングされ、ルーティングテーブルはリクエストパケットのリクエストルーティング情報フィールドにおける宛先ノード識別子を用いて索引(検索される)される。例えば、リクエストパケットのリクエストルーティング情報フィールドにおけるビットが、Bit[0]−受信ノードへのルート、Bit[1]−HTリンク0へのルート、Bit[2]−HTリンク1へのルート及びBit[3]−HTリンク2へのルート等として構成され得る。当業者であれば、このルーティングテーブルがマルチプロセッサシステムのトポロジーを反映するため、様々な方法で構成され得ることが理解されよう。例えば、複雑なルーティングスキームがルーティングテーブルマトリックスの組み合わせを用いて実装され得るし、あるいはクロスバー113が構成され得、システム等における適切なルーティングに関する受信パケットをさらに処理し、変更する。
応答ルーティング情報204は、予め受信したリクエストパケットに対する応答用に利用される。各エントリにおける値は送出HTリンクを表し、その宛先ノードに対する個別の応答パケットを指示するために利用される。応答ルーティング情報フィールド204は、応答パケットが転送されるノードあるいはリンクを表す。応答パケットは通常、1つの宛先のみにルーティングされ、ルーティングテーブルは応答パケットにおける宛先ノード識別子を用いて索引が付される。例えば、あるビットポジションにおける「1」という値は、応答が対応する出力リンクを通じてルートされることを示し得るし、「ゼロ」という値は、この応答がプロセッシングノードのプロセッサに送信されることを示し得る。4プロセッシングノードシステムにおいてビットは、Bit[0]−このノードへのルート、Bit[1]−HTリンク0へのルート、Bit[2]−HTリンク1へのルート及びBit[3]−HTリンク2へのルート等として構成され得る。
同報通信ルーティング情報202は、同報通信及びプローブ形式のデータパケットで使用される。同報通信及びプローブデータパケットは、概して、システムにおける全てのプロセッシングノードに転送される。例えば、プロセッシングノードは、システムにおける全てのノードと情報の通信を行い、各プロセッシングノードの現況(例、メモリ使用可能性、プロセッシング性能、リンク状況等)に関して問い合わせるためにプローブパケットを送信するように同報通信パケットを使用し得る。各エントリはノードに結合されるHTリンクの各々に関するシングルビットを包含し得る。例えば、4リンクシステムにおいて、4ビットが各リンクを表すために割り当てられ得る。他の形態として、2ビットがバイナリ形式で各リンクを表すために割り当てられ得る。当業者であれば、全てのスキームは、システムにおけるリンクを表すように構成され得ることが理解されよう。対応するビットがそれに従って設定されれば、パケットが全てのリンクを通じて転送され得る。例えば、Bitゼロが「1」の値に設定されると、同報通信が受信プロセッシングノードのプロセッサに送信されることを示し得る。同報通信ルーティング情報フィールドは、同報通信パケットが転送されるノードあるいはリンク先を示す。同報通信は1より多い宛先にルーティングされ得る。受信パケットのソースフィールドにおけるノードIDは、ルーティングテーブル内のインデックスとなることができ、ノード識別子を示し得る。例えば、Bit[0]−このノードへのルート、Bit[1]−HTリンク0へのルート、Bit[2]−HTリンク1へのルート及びBit[3]−HTリンク2へのルート等である。
リクエストがプロセッシングノードによって受信されると、プロセッシングノードの対応するノースブリッジが宛先識別子を調べ、何れのノードがリクエストの宛先であるかを判断し、それに従ってパケットを転送する。当業者であれば、本文に1つの32ビットエントリが記載される一方で、ルーティングテーブルが様々なフィールドの組み合わせを用いて構成され得ることが理解されよう。例えば、個々のルーティングテーブルがデータパケットの形式(例、リクエスト、応答、同報通信等)に基づき定義され得るので、データパケットがプロセッシングノードによって受信されると、プロセッシングノードは、データパケットの形式に従って適切なルーティングテーブルを参照し得る。同様に、ビット及びルーティングテーブルの様々な組み合わせは、システムに関して相異なる及び可能性として比較的複合的なルーティングスキームを構成するように使用され得る。
図3は、本発明の一実施形態に従った動的な故障調整のプロセス中実行されるオペレーションの例示的なシーケンスを表す概略図である。オペレーションが特定的な順序で記載される一方、本文に記載されたオペレーションはオペレーション間の依存が可能である限り他のシーケンスの順序(あるいは併存して)で実行され得る。オペレーションの特定的なシーケンスは概して、設計選択の事項であり、当業者であれば、この明細書に基づき様々なシーケンスが可能であることを理解されよう。
最初に、デバイス(例、プロセッサあるいはリンク等)に関する通知が受信される(305)。この通知はコンピュータシステムを通じて実行するソフトウェアルーチン(例、ドライバ、システムアプリケーション等)によって受信され得る。当業者であれば、このソフトウェアルーチンは、システムメモリに常駐するソフトウェアとしてプロセッサによって実行され得るし、あるいはコマンドの発行(例、ユーザアプリケーション、システムコール、手動コマンド等)に基づき実行され得ることが理解されよう。この通知は、システムによってレポートされるエラーメッセージ(例、プロセッサ/リンク故障、メモリアレイエラー等)あるいはユーザによって入力された手動コマンドであり得る。この通知は、又、システムにおいて実行するユーザアプリケーションに統合され得る。通知が受信された後、プロセスは欠陥デバイスを識別する(310)。このデバイス識別は、通知の一部であり得る。この欠陥デバイスは、システムによって割り当てられた固有なデバイス識別あるいはシステムによって利用される他の手段を用いて識別され得、オペレーション中デバイスをアドレス指定する。例示目的のため、この実施例において、このデバイスは、マルチプロセッサシステムにおける幾つかのプロセッサの1つである。当業者であれば、このプロセスがシステムにおける全ての他のデバイスに関して実行され得ることが理解されよう。
デバイスがプロセッサであるとき、このプロセスは欠陥プロセッサのメモリをリマップするために置換メモリが他のプロセッサで十分に使用可能であるか否かを判断する(315)。他のプロセッサが欠陥プロセッサのメモリに置換する十分なスペアメモリを有さなければ、プロセスが適切なエラーを生成する(320)。欠陥プロセッサのメモリに置換するためにメモリが十分に使用可能でないとき、システムがパワーダウンすることを要請してもよい。他のプロセッサにおいてメモリが十分であれば、プロセスが入力/出力(I/O)HTリンクが欠陥プロセッサ(325)に結合されるか否かを判断する。通常、マルチプロセッサにおいてI/Oデバイスが、例えば、図1に示されるプロセッサ115(1)のようなプロセッサの何れかに結合される。I/Oデバイスが、欠陥プロセッサに結合されれば、他のプロセッサは欠陥プロセッサがダウンしたとき、I/Oデバイスと通信することが継続し得るようにI/Oリンクが再度割り当てられなければならない。欠陥プロセッサに結合された入力/出力HTリンクがなければ、プロセスはトポロジーインパクトを判断するために先へ進む(355)。
入力/出力HTリンクが欠陥プロセスに結合されれば、プロセスは、置換HTリンクが置換リンクを通じてI/Oトラフィックをルートするように使用可能であるか否かを最初に判断する(330)。マルチプロセッサにおいて、他の冗長性HTリンクがシステム信頼度を改善するために構築され得る。他のI/Oリンクが使用可能でなければ、プロセスは、欠陥プロセッサのローカルDRAMを315において識別された他のメモリに転送する(335)。ローカルDRAMの転送がシステムのDRAMマッピングの更新を要請するので、デバイスが欠陥プロセッサのDRAMにおけるストレージにアクセスしようと試みれば、このリクエストは適切な他の箇所に転送され得る。
オペレーションシステムが適切な変更について通知される(340)。当業者であれば、オペレーションシステムに対するこの通知がオペレーションシステムに依存する仕様であり得ることが理解されよう。例えば、幾つかのアプリケーションにおいて、メモリのリマッピングは、オペレーションシステムにトランスパレントであり得るし、他の事例において、オペレーションシステムは、プロセッサがオフライン状態になるか否かを知ることを要請され得る。冗長性プロセッサの場合、プロセッサの置換はオペレーションシステムに対してトランスパレントであり得る。欠陥プロセッサがI/OHリンクに結合された唯一のプロセッサであれば、欠陥プロセッサはオフライン状態になり得ない。プロセスが適切なエラーを生成する(320)。このエラーメッセージは、プロセス開始エンティティ(例、ユーザアプリケーション、ユーザによる手動コマンド、オペレーションシステム等)にプロセッサがI/Oリンクゆえにオフライン状態になり得ないことを知らせる。
他のHTリンクが使用可能であれば、プロセスがI/Oトラフィックを適切な別のI/OHTリンクにルーティングする(345)。HTI/Oリンクの他のリンクへのルーティングは、ルーティングテーブル及び/又はシステムのI/Oマッピングを更新することを要請し得る。プロセスがI/Oマッピングを更新する(350)。他のルーティングリンクがシステム内に使用可能であれば、概して、他のルートがルーティングテーブルにおける開始ソフトウェア(例、BIOS等)によってプログラムされる。プロセスが欠陥プロセッサをオフライン状態にすることによってシステムのトポロジーが悪い影響を受けるか否かを判断する(355)。システムのトポロジーは、プロセッサをオフライン状態にすることによって他のプロセッサを分離し得るときに悪い影響を受け得る。例えば、4方向プロセッサアーキテクチャ(例、図1に示される)において、各プロセッサに2径路あるので、2つの隣接するプロセッサがオフライン状態になれば、他のプロセッサがなお互いに通信し得るが、2つの他のプロセッサ(例、図1に示されるプロセッサ115(1)及び115(4))がオフライン状態になれば、残りのプロセッサが互いに通信する方法を有さなくなる。当業者であれば、トポロジー衝撃がアーキテクチャ仕様(例、はしご式、メッシュ、スター等)であり得ることが理解されよう。
欠陥プロセッサがオフライン状態になることで、マルチプロセッサシステムのトポロジーが悪い影響を受ける場合、プロセスが適切なエラーメッセージを生成する(320)。そのような場合、欠陥プロセスはオフライン状態になり得ない。システムのトポロジーが影響を受けなければ、プロセスは、オペレーションシステムに欠陥プロセッサがもはや役に立たないことを通知する(360)。プロセッサがシステムアクティビティをセーフポイントにサスペンド(あるいは停止)する(365)。システムアクティビティのサスペンション(停止)はイン-フライト-トランザクションの完了を包含し得る。例えば、メモリの読み出しが開始していれば、プロセスをサスペンドする前に読出しを完了させることが可能でなければならない。このプロセッサキャッシュもフラッシュ消去される。当業者であれば、システムアクティビティが様々な方法を用いてサスペンド(停止)され得ることが理解されよう。例えば、コンピュータシステムのオペレーションシステムが、適切なコマンドで構成されれば、オペレーションシステムが実行され得る。他の形態として、各プロセッサが実行をサスペンドし得るか、あるいはサスペンドモード(例、サスペンドインストラクションを実行する、サスペンド割り込みルーティングを実行する等)になることによって現在のスレッドの実行を遅らせることが挙げられる。同様に、種々の他のデバイス(例、バスマスター、グラフィックスコントローラ等)も、対応するアクティビティをサスペンドするようにコントロールし得る。
このプロセスは、315において識別されたメモリに欠陥プロセッサのDRAMを転送する(370)。ローカルDRAMの転送によってシステムのDRAMマッピングの更新が要請されるので、デバイスが欠陥プロセッサのDRAMにおけるストレージにアクセスしようとする場合、このリクエストが適切な他の箇所に転送され得る。プロセスがルーティングテーブルを更新する(375)。ルーティングテーブルは、最初に欠陥プロセッサに向けてアドレス指定された全てのトラフィックを他のリンク及びプロセッサに動的にルート変更するように更新される。例えば、図1Aを参照すると、プロセッサ115(1)が欠陥プロセッサであれば、プロセッサ115(2)がプロセッサ115(4)を通じてプロセッサ115(3)と通信し得る。プロセッサ115(2)のルーティングテーブルでは、プロセッサ115(3)への使用可能なルートとしてのプロセッサ115(1)が削除される。同様に、他のプロセッサのルーティングテーブルが適切に改変され、プロセッサネットワークにおける変更を反映する。ルーティングテーブルは、初期化ソフトウェア(例、BIOS等)の固有の適切なルーティングを発呼することによって再構成され得るか、あるいはルーティングテーブル再構成ルーティングが、欠陥プロセッサを分離させるプロセスを実行するソフトウェアドライバ内に統合され得る。当業者であれば、ルーティングテーブルはシステムアーキテクチャに従って様々な手段を用いて再構成され得ることが理解されよう。
ルーティングテーブルが一度更新されると、欠陥プロセッサは、ダウン状態にされ得る(380)。プロセッシングノードにおける適切なリンクインターフェースを無効化することによってリンクがダウン状態にされ得る。リンクがルーティングテーブルにおいて更新されると、適切なI/Oマッピングもリンクにおける変更を反映するように調整され得る。I/Oマッピングはシステム構成仕様であり得る(例、PCIベースの基準構成等)。プロセスはその後欠陥プロセッサの電力を切る(385)。プロセッサへの電力供給が遮断されると、このプロセッサは物理的に置換され得る(390)。欠陥プロセッサが新しいプロセッサと置換された後、システムアクティビティがレジュームされ得る(395)。システムアクティビティは様々な割込み及びコマンドを用いてレジュームされ得るし、例えば、プロセッサがサスペンド割込みルーティングにあれば、アーキテクチャにおける変更が欠陥プロセッサの置換後に生成された手動干渉によって検出され得る。同様に、プロセッサが手動で開始されれば、手動コマンド入力がシステムアクティビティをレジュームし得る。
システムアクティビティがレジュームされると、欠陥プロセッサを分離させたソフトウェアドライバが、適切なルーティングを発呼することによってルーティングテーブル(例、それ自体でBIOSルーティングを発呼すること等によってルーティングを実行)を再構成し得る。ルーティングテーブルを再構成することは、システムトポロジーに置換されたプロセッサを構築し得る。当業者であれば、システムアクティビティが欠陥プロセッサを置換することなしにレジュームされ得ることが理解されよう。そのような事例において、システムは、減少した容量(プロセッシング電力、メモリ等)で駆動し得る。さらに、システムが欠陥プロセッサなしに駆動している一方で、診断が欠陥プロセッサの故障の原因を判断するために駆動し得る。
図4は、本発明の一実施形態に従ってHTリンクを動的にテストするプロセス中に実行されるオペレーションの例示的なシーケンスを表すフロー図である。オペレーションは特定的な順序で記載されているが、ここに記載されたオペレーションは複数オペレーション間の依存性が許容範囲である限り、他のシーケンス順序(あるいは併存して)で実行され得る。オペレーションの特定的なシーケンスは、概して、設計選択に係わる事項であり、当業者にとって、様々なシーケンスが本明細書に基づき可能であることが理解されよう。
最初に、1あるいはそれ以上のHTリンクがテスト用に識別される(410)。HTリンクは、様々なデバイス間(例、プロセッサ、メモリ、様々なコントローラ等)で情報を搬送する。これらのリンクは機能(例、診断、パフォーマンス評価等)に関連する様々なシステムについてテストされ得る。例えば、システムが特定的なリンクに関するエラーメッセージを生成していれば、その特定的なリンクに所定の診断を駆動することが求められ得る。同様に、これらリンクは、時折、リンクのパフォーマンス及びこのリンクに結合されるデバイスを判断するためテストされ得る。当業者であれば、HTリンクが様々なアプリケーション仕様目的のために監視及びテストされ得ることが理解されよう。
診断及びテストソフトウェアは、マルチプロセッサにおける何れのプロセッサを通じて駆動し得る。マルチプロセッサシステムにおいて、概して、プロセッサの1つが‘ホスト’プロセッサとして指定される。ホストプロセッサは通常、管理機構関連のシステム(例、診断等)を実行する。診断ソフトウェアは通常、ホストプロセッサ内(例、ローカルストレージ内等)に常駐する。しかし、当業者であれば、システム管理機能が様々なプロセッサ間で配信され得るし、共有され得ることが理解されよう。診断ルーティングがホストプロセッサにおいて実行されると(例、ユーザアプリケーション、ルーティングシステム発呼、ユーザによる手動始動、ソフトウェアドライバルーチン等を通じて)、テストパラメータ(例、データレート、速度、タイミング、スループット等)が予め決められる。例えば、2つより多いプロセッサ間のトラフィックを同時に処理する等に関して、リンクがテストされ得る。
システムアクティビティは、セーフ実行ポイントにサスペンドされる(420)。例えば、メモリ読み出しオペレーションが進行していれば、読み出しオペレーションは、メモリ読み出しプロセスがサスペンドされる前に終了することが可能である。システムアクティビティは、テスト中リンクに関して一部サスペンドされ得るし、関連しないアクティビティは継続可能である。例えば、2つのプロセッサ間のリンクがテストされていれば、その特定的なプロセッサのアクティビティのみがサスペンドされ得、ローカルアクティビティ(例、ローカルストレージ等に読み出し/書き込みする)は継続し得る。しかし、幾つかのテストは、リンクのスループットがテストされ得るようにテスト中リンクを通じて長距離ルートを移動するためにローカルトラフィックを求められ得るので、リンクのスループットがテストされ得る。そのような事例において、ローカルアクティビティでさえもサスペンドされ得る。例えば、図1Aを参照すると、プロセッサ115(1)及びプロセッサ115(2)間のリンクがテストされていれば、プロセッサ115(1)及びプロセッサ115(3)間の通信は、プロセッサ115(4)及びプロセッサ115(2)を通じて強制的にルーティングされ、テスト及びパフォーマンス評価に関するプロセッサ115(1)及びプロセッサ115(2)間のリンクにおける追加のトラフィックを可能にする。
適切なシステムアクティビティがサスペンドされると、プロセスがルーティングテーブルを再構成する(430)。ルーティングテーブルは、テスト中リンクを通じるよう、あるいはリンクを通さないようトラフィックを強制するように再構成される。テーブルの再構成はまた、システムのトポロジーに従ってメモリ及びI/Oマップの再構成を要請し得る。メモリ及びI/Oマッピングが要請されれば、メモリ及びI/Oマップは特定的なリンクのテストを容易にするために変更される。システムアクティビティが通常のオペレーションをレジュームする(440)。新しいルーティングコンフィギュレーションにおける通常のオペレーション中、リンク及びデバイスが(例、診断、故障評価、パフォーマンス対策等に関して)テストされる(450)。プロセスは、テストが終了したか否か引き続き判断する(460)。
テストが終了すると、プロセスはシステムアクティビティをサスペンドする(470)。ルーティングテーブルはレストアされる(480)。ルーティングテーブルは、テスト前のオリジナルの設定にレストアされ得るか、あるいはテスト結果に基づき更新され得る。例えば、メモリにおけるある種のデータが頻繁にアクセスされ、他のトラフィックに関連するリンクに渋滞が生じる、ということがテストによって判明した場合、メモリマッピングがこの特定的なリンクにおける渋滞を解放するために更新され得る。当業者であれば、ルーティングテーブルがシステムトポロジー及び特定的なアプリケーションに従って更新され得ることが理解されよう。プロセスは、システムアクティビティをレジュームする(490)。以上、テストプロセスの一形態を記載したが、当業者であれば、プロセスがパフォーマンス分析目的のためにも利用され得ることが理解されよう。例えば、リンクがデータフローは、特定的なプロセッサあるいはパフォーマンス分析アプリケーションによって監視され得るリンクに向けてルーティングテーブルを動的に変更することによって再構成され得る。パフォーマンス分析アプリケーションは、適切な対策を行うためデータフローを分析し得る。同様に、プロセスがルーティングテーブルの動的な変更を要請する様々なアプリケーションに利用され得る。
上述した明細書は本発明の少なくとも一実施形態を記載目的のために表されている。上述した明細書は、本発明の範囲を制限することが意図さていない。むしろ、本発明の趣旨の範囲は添付の請求項によって定義される。それ故、本発明の他の実施形態は、上述した明細書に対する他の様々な改変、修正、追加、及び/又は改善を含むものである。
例えば、当業者であれば、上述したオペレーションの機能性間の境界は、単に例示目的のためであることが認識されよう。多重のオペレーションの機能性は、シングルのオペレーションに組み込まれ得るし、及び/又はシングルオペレーションの機能性が追加のオペレーションに配布され得る。さらに、他の実施形態が個別のオペレーションの多数の例を含み得るし、オペレーションの順序は、様々な他のオペレーションによって変更され得る。
ここに論じられたオペレーションはシステムユーザ、ハードウェアモジュール及び/又はソフトウェアモジュールによって実行されるステップで構成され得る。他の実施形態において、図1〜図4に示されるオペレーションは、コンピュータ読み出し可能媒体に常駐するか、あるいはコンピュータシステム内に常駐するか、及び/又はコンピュータプログラム製品の一部としてコンピュータシステムに転送されるかの何れかのソフトウェアモジュールを直接的あるいは間接的に表す。
従って、上述した方法、そのオペレーション及びモジュールは、この方法のオペレーションを実行するように構成されたコンピュータシステムにおいて実行され得、及び/又はコンピュータ読み出し可能メディアにより実行され得る。コンピュータシステムは、様々な多くの形式に見出され、単に幾つかの名称を挙げるが、これらに制限されない。メインフレーム、マイクロコンピュータ、サーバ、ワークステーション、パーソナルコンピュータ、ノートパッド、パーソナルデジタルアシスタント、様々なワイヤレスデバイス及び埋め込まれたシステムである。一般的なコンピュータシステムは、少なくとも1プロセッシングユニット、関連するメモリ及び幾つかの入力/出力(I/O)デバイスを含む。コンピュータシステムは、プログラムに従った情報を処理し、I/Oデバイスを通じて結果としてもたらされた出力情報を生成する。プログラムは、特定的なアプリケーションプログラム及び/又はオペレーションシステムのような命令のリストである。コンピュータプログラムは通常、コンピュータ読み出し可能ストレージメディアにおいて内部に記録されるか、あるいはコンピュータ読み出し可能転送媒体を通じてコンピュータシステムに転送される。コンピュータプロセスには、通常、プログラムあるいはプログラムの一部の実行、現在のプログラムの値及び状況情報、及びプロセスの実行を管理するためにオペレーションシステムによって利用されるリソースが含まれる。親コンピュータプロセスは、親プロセスの全体の機能性を実行することを支援するように他の子プロセスを生成し得る。親プロセスは個別に子プロセスを生成し、親プロセスの全体の機能性部分を実行するので、子プロセス(及び孫プロセス等)によって実行される機能は、時折、親プロセスによって実行されるものとして記載され得る。
上述した方法はコンピュータシステムを構成することに関してコンピュータ読み出し可能媒体において実施され得、方法を実行する。コンピュータ読み出し可能メディアは永久的に、着脱可能にあるいは遠隔的にシステム100あるいは他のシステムに結合され得る。コンピュータ読み出し可能メディアは、例えば、制限されることなく、以下のうち幾つでも含み得る。単に幾つかの名称を挙げれば、ディスク及びテープストレージメディアを含む磁気ストレージメディア;コンパクトディスクメディア(例、CD−ROM、CD−R等)及びデジタルビデオディスクストレージメディアのような光学ストレージメディア;ホログラフィーメモリ;FLASHメモリ、EEPROM、EPROM、ROMのような半導体ベースメモリユニットを含む非揮発性メモリストレージ; 強磁性デジタルメモリ;レジスタ、バッファあるいはキャッシュ、メインメモリ、RAM等を含む揮発性ストレージメディア;永久的及び断続性コンピュータネットワーク、ポイントツーポイント電話通信設備、キャリア波搬送メディア、インターネットを含むデータ転送メディアである。
ここに記載されたアーキテクチャは、単に例示目的のためであり、実際上、他の多くのアーキテクチャが同様の機能性を実現するように実装され得ることが理解されなければならない。抽象的であるが、なお明りょうな意味で、同様の機能性を満たすコンポーネント全ての配置が、要請された機能性が実現されるように有効的に“関連付けられる”。それ故、ここに記載の特定的な機能性を満たすように組み込まれた何れの2つのコンポーネントも媒体コンポーネントのアーキテクチャに係わりなく、要請された機能性が実現されるように互いに“関連付けられた”として見なされる。同様に、そのように関連付けられた何れの2つのコンポーネントも、要請された機能性を満たすように互いに“操作可能なように接続された”、あるいは“操作可能なように結合された”ものとして見なされ得る。
上述した明細書は、例示的なものであり、“一実施形態”と記載される場合、一つの例示的な実施形態のことである。従って、本文における“一”の用語の使用は、フィーチャを記載した1及び1のみの実施形態を示すことが意図されてない。むしろ、他の多くの実施形態も、頻繁に、例示的な“一実施形態”のフィーチャを説明し得るのものである。それ故、本発明が上記で使用されたように一実施形態の文脈において記載されるとき、この一実施形態は、本発明の多くの可能性のある実施形態の一つである。
本発明の特定的な実施形態が示され、記載される一方で、当業者によって、この教示かに基づき、様々な修正、代替的な構成、及び均等物が請求項で主張された本発明の範囲から逸脱することなく利用可能であることが明白である。次に添付された請求項は、本発明趣旨の範囲における全ての改変、修正等を包含するものである。さらに、本発明は、添付された請求項によってのみ定義されることが理解されよう。上述した明細書は、本発明の実施形態の包括的なリストを表すことが意図されてない。明確に言及されない限り、本文に表された各々の例は、制限される例ではなく、排他的な例でもないことを表し、用語を制限しないか否か、排他的であるか否か、あるいは同様の用語については、各例において一時的に表現されるものである。ここでは幾つかの例示的な実施形態及び例示的な様々な形態を概要する試みがなされたものであるが、他の実施形態及び/様々な実施形態は、添付の請求項において定義された本発明の趣旨の範囲内におけるものである。本発明は、添付の図面を参照することによって、多くの対象物、フィーチャが理解され、及び利点が当業者にとって明りょうとなるであろう。
本発明の一実施形態に従った例示的なシステム100を表す図である。 本発明の一実施形態に従ったシステム100の例示的なプロセッシングノードを表す図である。 本発明の一実施形態に従ったルーティングテーブル200の例示的なコンフィギュレーションを表す。 本発明の一実施形態に従った動的な故障調整のプロセス中実行されるオペレーションの例示的なシーケンスを表すフロー図である。 本発明の一実施形態に従ってHTリンクを動的にテストするプロセス中実行されるオペレーションの例示的なシーケンスを表す図である。

Claims (10)

  1. マルチプロセッサシステムに関連する方法であって、
    一つ以上のシステムアクティビティの実行を少なくとも部分的に停止し、
    一つ以上のプロセッサの一つ以上のルーティングテーブルを動的に改変し、
    ルーティングテーブルの各々は、受信データパケットに対するルーティング宛先を表す、
    方法。
  2. 前記マルチプロセッサ内における少なくとも一つの送出リンクへの前記受信パケットの転送を指定するように前記改変されたルーティングテーブルを用いる、
    請求項1記載の方法。
  3. 少なくとも一つの置換メモリを識別し、
    前記少なくとも一つの置換メモリを反映するようにメモリマッピングを更新する、
    請求項1記載の方法。
  4. 少なくとも一つの置換入力/出力リンクを識別し、
    前記少なくとも一つの置換入力/出力リンクに入力/出力データを転送し、
    入力/出力マップを更新する、
    請求項1記載の方法。
  5. テスト用に少なくとも一つのリンクを識別し、
    前記識別されたリンクをテストし、
    少なくとも一つ以上のルーティングテーブルの改変は前記テストの結果に基づくものである、
    請求項1記載の方法。
  6. 複数のプロセッサと、
    前記プロセッサの各々に結合された一つ以上のストレージユニットを含み、
    前記プロセッサの各々は、少なくともポイントツーポイントリンクを通じて結合され、
    少なくとも一つの前記プロセッサの各々は、受信データパケットに関するルーティング宛先を表す一つ以上のルーティングテーブルを含み、前記プロセッサは、動的に前記ルーティングテーブルを改変するように構成される、
    装置。
  7. 少なくとも一つのコンピュータ可読媒体に記録されて命令セットを含むコンピュータプログラム製品であって、前記命令セットは、一つ以上のシステムアクティビティの実行を少なくとも部分的に停止し、一つそれ以上のプロセッサの一つ以上のルーティングテーブルを動的に改変するように構成され、
    前記ルーティングテーブルの各々が受信データパケットに関するルーティング宛先を表す、
    コンピュータプログラム製品。
  8. 前記改変されたルーティングテーブルが、マルチプロセッサにおける少なくとも一つの所定の送出リンクへと前記受信パケットの転送を指定する、
    請求項7記載のコンピュータプログラム製品。
  9. 前記命令セットが、さらに少なくとも一つの置換メモリを識別し、
    メモリマッピングを更新するように構成される、
    請求項7記載のコンピュータプログラム製品。
  10. 前記命令セットが、少なくとも一つの置換入力/出力リンクを識別し、
    入力/出力データを前記置換入力/出力リンクに転送し、
    入力/出力マップを更新する、
    請求項7記載のコンピュータプログラム製品。
JP2004564868A 2002-12-19 2003-11-06 マルチプロセッサシステムにおけるハイパートランスポートルーティングテーブルをプログラミングするための方法及びシステム Expired - Lifetime JP4820095B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/326,425 US20040122973A1 (en) 2002-12-19 2002-12-19 System and method for programming hyper transport routing tables on multiprocessor systems
US10/326,425 2002-12-19
PCT/US2003/035331 WO2004062209A2 (en) 2002-12-19 2003-11-06 System and method for programming hyper transport routing tables on multiprocessor systems

Publications (2)

Publication Number Publication Date
JP2006511878A true JP2006511878A (ja) 2006-04-06
JP4820095B2 JP4820095B2 (ja) 2011-11-24

Family

ID=32594014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004564868A Expired - Lifetime JP4820095B2 (ja) 2002-12-19 2003-11-06 マルチプロセッサシステムにおけるハイパートランスポートルーティングテーブルをプログラミングするための方法及びシステム

Country Status (9)

Country Link
US (1) US20040122973A1 (ja)
EP (1) EP1573978B1 (ja)
JP (1) JP4820095B2 (ja)
KR (1) KR100991251B1 (ja)
CN (1) CN1729662B (ja)
AU (1) AU2003291317A1 (ja)
DE (1) DE60332759D1 (ja)
TW (1) TWI336041B (ja)
WO (1) WO2004062209A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010211739A (ja) * 2009-03-12 2010-09-24 Nec Corp 障害対応システムおよび障害対応方法
US9032118B2 (en) 2011-05-23 2015-05-12 Fujitsu Limited Administration device, information processing device, and data transfer method

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040019704A1 (en) * 2002-05-15 2004-01-29 Barton Sano Multiple processor integrated circuit having configurable packet-based interfaces
US8805981B2 (en) * 2003-03-25 2014-08-12 Advanced Micro Devices, Inc. Computing system fabric and routing configuration and description
US8041915B1 (en) 2003-06-11 2011-10-18 Globalfoundries Inc. Faster memory access in non-unified memory access systems
US7366092B2 (en) * 2003-10-14 2008-04-29 Broadcom Corporation Hash and route hardware with parallel routing scheme
US20060089965A1 (en) * 2004-10-26 2006-04-27 International Business Machines Corporation Dynamic linkage of an application server and a Web server
TW200719149A (en) * 2005-11-09 2007-05-16 Tyan Computer Corp Compurter system and its bridging module
TWI301239B (en) * 2005-12-16 2008-09-21 Mitac Int Corp Multi-processor computer system of installing bridge module into processor slot, related bridge module and related initialization method
TW200727139A (en) * 2006-01-06 2007-07-16 Tyan Computer Corp Computer system and memory bridge thereof
US7797475B2 (en) * 2007-01-26 2010-09-14 International Business Machines Corporation Flexibly configurable multi central processing unit (CPU) supported hypertransport switching
US7853638B2 (en) * 2007-01-26 2010-12-14 International Business Machines Corporation Structure for a flexibly configurable multi central processing unit (CPU) supported hypertransport switching
US20090016355A1 (en) * 2007-07-13 2009-01-15 Moyes William A Communication network initialization using graph isomorphism
US7783822B2 (en) * 2007-07-25 2010-08-24 Hewlett-Packard Development Company, L.P. Systems and methods for improving performance of a routable fabric
CN101452437B (zh) * 2007-12-03 2011-05-04 英业达股份有限公司 多处理器系统
US8862706B2 (en) * 2007-12-14 2014-10-14 Nant Holdings Ip, Llc Hybrid transport—application network fabric apparatus
US8218519B1 (en) * 2008-01-23 2012-07-10 Rockwell Collins, Inc. Transmit ID within an ad hoc wireless communications network
EP2618272B1 (en) 2011-08-02 2016-12-21 Huawei Technologies Co., Ltd. Method and apparatus for dynamic addition and dynamic removal of device
KR20150050135A (ko) 2013-10-31 2015-05-08 삼성전자주식회사 복수의 이종 코어들을 포함하는 전자 시스템 및 이의 동작 방법
US11064019B2 (en) 2016-09-14 2021-07-13 Advanced Micro Devices, Inc. Dynamic configuration of inter-chip and on-chip networks in cloud computing system
US11301235B1 (en) * 2020-02-18 2022-04-12 Amazon Technologies, Inc. Application downtime reduction using detached mode operation during operating system updates

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4942517A (en) * 1987-10-08 1990-07-17 Eastman Kodak Company Enhanced input/output architecture for toroidally-connected distributed-memory parallel computers
US5020059A (en) * 1989-03-31 1991-05-28 At&T Bell Laboratories Reconfigurable signal processor
JPH05303558A (ja) * 1991-12-13 1993-11-16 Nec Corp アレイプロセッサのメッセージパケットルーティング方法および装置
US5319751A (en) * 1991-12-27 1994-06-07 Intel Corporation Device driver configuration in a computer system
US5386466A (en) * 1991-12-30 1995-01-31 At&T Corp. Automatic initialization of a distributed telecommunication system
US5533198A (en) * 1992-11-30 1996-07-02 Cray Research, Inc. Direction order priority routing of packets between nodes in a networked system
US5751932A (en) * 1992-12-17 1998-05-12 Tandem Computers Incorporated Fail-fast, fail-functional, fault-tolerant multiprocessor system
US5506847A (en) * 1993-04-26 1996-04-09 Kabushiki Kaisha Toshiba ATM-lan system using broadcast channel for transferring link setting and chaining requests
US5577204A (en) * 1993-12-15 1996-11-19 Convex Computer Corporation Parallel processing computer system interconnections utilizing unidirectional communication links with separate request and response lines for direct communication or using a crossbar switching device
US5671413A (en) * 1994-10-31 1997-09-23 Intel Corporation Method and apparatus for providing basic input/output services in a computer
JPH08185380A (ja) * 1994-12-28 1996-07-16 Hitachi Ltd 並列計算機
JPH11513150A (ja) * 1995-06-15 1999-11-09 インテル・コーポレーション Pci間ブリッジを統合する入出力プロセッサ用アーキテクチャ
US5987521A (en) * 1995-07-10 1999-11-16 International Business Machines Corporation Management of path routing in packet communications networks
US5602839A (en) * 1995-11-09 1997-02-11 International Business Machines Corporation Adaptive and dynamic message routing system for multinode wormhole networks
US5913045A (en) * 1995-12-20 1999-06-15 Intel Corporation Programmable PCI interrupt routing mechanism
US5961623A (en) * 1996-08-29 1999-10-05 Apple Computer, Inc. Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system
US5970496A (en) * 1996-09-12 1999-10-19 Microsoft Corporation Method and system for storing information in a computer system memory using hierarchical data node relationships
US6327669B1 (en) * 1996-12-31 2001-12-04 Mci Communications Corporation Centralized restoration of a network using preferred routing tables to dynamically build an available preferred restoral route
US5938765A (en) * 1997-08-29 1999-08-17 Sequent Computer Systems, Inc. System and method for initializing a multinode multiprocessor computer system
US6785888B1 (en) * 1997-08-29 2004-08-31 International Business Machines Corporation Memory allocator for a multiprocessor computer system
US6023733A (en) * 1997-10-30 2000-02-08 Cisco Technology, Inc. Efficient path determination in a routed network
US6044437A (en) * 1997-11-12 2000-03-28 Intel Corporation Method for generating and transferring redundancy bits between levels of a cache memory hierarchy
US6496510B1 (en) * 1997-11-14 2002-12-17 Hitachi, Ltd. Scalable cluster-type router device and configuring method thereof
JP3286584B2 (ja) * 1997-11-20 2002-05-27 株式会社日立製作所 多重化ルータ装置
US6434656B1 (en) * 1998-05-08 2002-08-13 International Business Machines Corporation Method for routing I/O data in a multiprocessor system having a non-uniform memory access architecture
US6233641B1 (en) * 1998-06-08 2001-05-15 International Business Machines Corporation Apparatus and method of PCI routing in a bridge configuration
US6269459B1 (en) * 1998-08-25 2001-07-31 Advanced Micro Devices, Inc. Error reporting mechanism for an AGP chipset driver using a registry
US6211891B1 (en) * 1998-08-25 2001-04-03 Advanced Micro Devices, Inc. Method for enabling and configuring and AGP chipset cache using a registry
US6158000A (en) * 1998-09-18 2000-12-05 Compaq Computer Corporation Shared memory initialization method for system having multiple processor capability
US6326973B1 (en) * 1998-12-07 2001-12-04 Compaq Computer Corporation Method and system for allocating AGP/GART memory from the local AGP memory controller in a highly parallel system architecture (HPSA)
US6938094B1 (en) * 1999-09-17 2005-08-30 Advanced Micro Devices, Inc. Virtual channels and corresponding buffer allocations for deadlock-free computer system operation
US6167492A (en) * 1998-12-23 2000-12-26 Advanced Micro Devices, Inc. Circuit and method for maintaining order of memory access requests initiated by devices coupled to a multiprocessor system
US6547730B1 (en) * 1998-12-31 2003-04-15 U-Systems, Inc. Ultrasound information processing system
US6370633B2 (en) * 1999-02-09 2002-04-09 Intel Corporation Converting non-contiguous memory into contiguous memory for a graphics processor
US6791939B1 (en) * 1999-06-02 2004-09-14 Sun Microsystems, Inc. Dynamic generation of deadlock-free routings
US6560720B1 (en) * 1999-09-09 2003-05-06 International Business Machines Corporation Error injection apparatus and method
US6195749B1 (en) * 2000-02-10 2001-02-27 Advanced Micro Devices, Inc. Computer system including a memory access controller for using non-system memory storage resources during system boot time
US6865157B1 (en) * 2000-05-26 2005-03-08 Emc Corporation Fault tolerant shared system resource with communications passthrough providing high availability communications
US6741561B1 (en) * 2000-07-25 2004-05-25 Sun Microsystems, Inc. Routing mechanism using intention packets in a hierarchy or networks
US6826148B1 (en) * 2000-07-25 2004-11-30 Sun Microsystems, Inc. System and method for implementing a routing scheme in a computer network using intention packets when fault conditions are detected
US7028099B2 (en) * 2000-09-14 2006-04-11 Bbnt Solutions Llc Network communication between hosts
GB2368669B (en) * 2000-10-31 2005-06-22 Advanced Risc Mach Ltd Integrated circuit configuration
US7403952B2 (en) * 2000-12-28 2008-07-22 International Business Machines Corporation Numa system resource descriptors including performance characteristics
US7072976B2 (en) * 2001-01-04 2006-07-04 Sun Microsystems, Inc. Scalable routing scheme for a multi-path interconnection fabric
US6760838B2 (en) * 2001-01-31 2004-07-06 Advanced Micro Devices, Inc. System and method of initializing and determining a bootstrap processor [BSP] in a fabric of a distributed multiprocessor computing system
US6633964B2 (en) * 2001-03-30 2003-10-14 Intel Corporation Method and system using a virtual lock for boot block flash
US7051334B1 (en) * 2001-04-27 2006-05-23 Sprint Communications Company L.P. Distributed extract, transfer, and load (ETL) computer method
US6996629B1 (en) * 2001-04-30 2006-02-07 Lsi Logic Corporation Embedded input/output interface failover
US7007189B2 (en) * 2001-05-07 2006-02-28 Sun Microsystems, Inc. Routing scheme using preferred paths in a multi-path interconnection fabric in a storage network
US6883108B2 (en) * 2001-05-07 2005-04-19 Sun Microsystems, Inc. Fault-tolerant routing scheme for a multi-path interconnection fabric in a storage network
US7027413B2 (en) * 2001-09-28 2006-04-11 Sun Microsystems, Inc. Discovery of nodes in an interconnection fabric
US6988149B2 (en) * 2002-02-26 2006-01-17 Lsi Logic Corporation Integrated target masking
US7251698B2 (en) * 2002-05-28 2007-07-31 Newisys, Inc. Address space management in systems having multiple multi-processor clusters
US6912625B2 (en) * 2003-01-09 2005-06-28 International Business Machines Corporation Method, system, and computer program product for creating and managing memory affinity in logically partitioned data processing systems
US8805981B2 (en) * 2003-03-25 2014-08-12 Advanced Micro Devices, Inc. Computing system fabric and routing configuration and description

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010211739A (ja) * 2009-03-12 2010-09-24 Nec Corp 障害対応システムおよび障害対応方法
US9032118B2 (en) 2011-05-23 2015-05-12 Fujitsu Limited Administration device, information processing device, and data transfer method
JP5754504B2 (ja) * 2011-05-23 2015-07-29 富士通株式会社 管理装置、情報処理装置、情報処理システム及びデータ転送方法

Also Published As

Publication number Publication date
EP1573978A2 (en) 2005-09-14
AU2003291317A1 (en) 2004-07-29
US20040122973A1 (en) 2004-06-24
KR20050085642A (ko) 2005-08-29
CN1729662B (zh) 2011-02-16
AU2003291317A8 (en) 2004-07-29
WO2004062209A2 (en) 2004-07-22
TW200415478A (en) 2004-08-16
TWI336041B (en) 2011-01-11
EP1573978B1 (en) 2010-05-26
WO2004062209A3 (en) 2005-01-20
DE60332759D1 (de) 2010-07-08
KR100991251B1 (ko) 2010-11-04
JP4820095B2 (ja) 2011-11-24
CN1729662A (zh) 2006-02-01

Similar Documents

Publication Publication Date Title
JP4820095B2 (ja) マルチプロセッサシステムにおけるハイパートランスポートルーティングテーブルをプログラミングするための方法及びシステム
US8370844B2 (en) Mechanism for process migration on a massively parallel computer
KR100985926B1 (ko) 메모리 시스템 컴포넌트들 사이에서 신호들을 리라우팅하는시스템 및 방법
US8677180B2 (en) Switch failover control in a multiprocessor computer system
US8346997B2 (en) Use of peripheral component interconnect input/output virtualization devices to create redundant configurations
US8612973B2 (en) Method and system for handling interrupts within computer system during hardware resource migration
US9594612B2 (en) System and method of a hardware shadow for a network element
JPH07311753A (ja) 複数のノード内の制御コードを更新する方法および装置
US20100146089A1 (en) Use of Peripheral Component Interconnect Input/Output Virtualization Devices to Create High-Speed, Low-Latency Interconnect
WO2016036538A1 (en) Apparatus and method for on-process migration of industrial control and automation system across disparate network types
JP2005056392A (ja) 地理的ミラーリングに関するリソースの妥当性検査およびランキングのための方法および装置
JP2010152508A (ja) 制御装置、ディスクアレイ装置および制御方法
US6594735B1 (en) High availability computing system
US8031637B2 (en) Ineligible group member status
US20050021573A1 (en) Primary-backup group with backup resources failover handler
JP2004030578A (ja) 仮想入出力の相互接続メカニズム
US20060031622A1 (en) Software transparent expansion of the number of fabrics coupling multiple processsing nodes of a computer system
JP2001022599A (ja) フォールトトレラント・システム,フォールトトレラント処理方法およびフォールトトレラント制御用プログラム記録媒体
US20020029334A1 (en) High availability shared memory system
JP7381882B2 (ja) 通信制御装置、通信制御システム、通信制御方法およびプログラム
JP2005208972A (ja) コンピュータ装置及びシステム
JP2021144567A (ja) 制御装置、制御システムおよびデータ復旧方法
JP2023104302A (ja) クラスタシステム、復旧方法
JP2005128629A (ja) データベースの更新方式
JP2002149413A (ja) クラスタ型コンピュータシステムにおけるクラスタソフトウェアのシステム定義情報の配布方法およびそのシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080812

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081112

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081212

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100421

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100430

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100512

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100528

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100702

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20100902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110316

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110614

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110719

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

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

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

Free format text: PAYMENT UNTIL: 20140909

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4820095

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term