JP7474766B2 - 高信頼性フォールトトレラントコンピュータアーキテクチャ - Google Patents
高信頼性フォールトトレラントコンピュータアーキテクチャ Download PDFInfo
- Publication number
- JP7474766B2 JP7474766B2 JP2021532264A JP2021532264A JP7474766B2 JP 7474766 B2 JP7474766 B2 JP 7474766B2 JP 2021532264 A JP2021532264 A JP 2021532264A JP 2021532264 A JP2021532264 A JP 2021532264A JP 7474766 B2 JP7474766 B2 JP 7474766B2
- Authority
- JP
- Japan
- Prior art keywords
- active
- cpu
- cpu node
- memory
- node
- 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.)
- Active
Links
- 230000015654 memory Effects 0.000 claims description 139
- 238000000034 method Methods 0.000 claims description 74
- 239000004744 fabric Substances 0.000 claims description 62
- 230000006870 function Effects 0.000 claims description 56
- 238000004891 communication Methods 0.000 claims description 34
- 238000013507 mapping Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 23
- 238000012546 transfer Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 239000000203 mixture Substances 0.000 description 6
- 230000003863 physical function Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000000872 buffer Substances 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000014616 translation Effects 0.000 description 2
- YQYRYHNCVCFNHU-UHFFFAOYSA-N 1-ethyl-4-phenyl-3,6-dihydro-2h-pyridine Chemical compound C1N(CC)CCC(C=2C=CC=CC=2)=C1 YQYRYHNCVCFNHU-UHFFFAOYSA-N 0.000 description 1
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 1
- 240000002853 Nelumbo nucifera Species 0.000 description 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 108010065361 lens intrinsic protein MP 38 Proteins 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/142—Reconfiguring to eliminate the error
- G06F11/1423—Reconfiguring to eliminate the error by reconfiguration of paths
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1443—Transmit or communication errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2005—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2007—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2017—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where memory access, memory control or I/O control functionality is redundant
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2033—Failover techniques switching over of hardware resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2046—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Hardware Redundancy (AREA)
Description
本願は、その内容全体が参照することによって本明細書に組み込まれる、2018年8月13日に出願された、米国仮出願第62/717,939号の優先権を主張する。
本明細書は、例えば、以下の項目も提供する。
(項目1)
フォールトトレラントコンピュータシステムであって、
複数のCPUノードであって、各CPUノードは、プロセッサと、メモリとを備え、前記CPUノードのうちの1つは、スタンバイCPUノードと指定され、残りは、アクティブCPUノードとして指定される、複数のCPUノードと、
少なくとも2つのIOドメインであって、前記IOドメインのうちの少なくとも1つは、前記アクティブCPUノードのための通信機能を実施するアクティブIOドメインと指定される、少なくとも2つのIOドメインと、
各CPUノードを各IOドメインに接続する切替ファブリックと
を備え、
故障、故障の開始、および予測される故障のうちの1つが、アクティブノード内で起こる場合、前記アクティブCPUノードの状態およびメモリが、DMAデータパスを通して前記スタンバイCPUノードに転送され、前記スタンバイCPUノードは、新しいアクティブCPUノードになる、フォールトトレラントコンピュータシステム。
(項目2)
各CPUノードはさらに、前記切替ファブリックと通信する通信インターフェースを備える、項目1に記載のフォールトトレラントコンピュータシステム。
(項目3)
各IOドメインは、少なくとも2つの切替ファブリック制御コンポーネントを備え、各切替ファブリック制御コンポーネントは、前記切替ファブリックと通信する、項目1に記載のフォールトトレラントコンピュータシステム。
(項目4)
各IOドメインはさらに、IOデバイスのセットを備え、各IOデバイスは、1つ以上の物理関数および/または仮想関数を備え、1つのIOドメイン内の1つ以上の物理関数および/または仮想関数は、共有可能である、項目1に記載のフォールトトレラントコンピュータシステム。
(項目5)
1つ以上の物理関数は、1つ以上の仮想関数を備える、項目4に記載のフォールトトレラントコンピュータシステム。
(項目6)
前記IOデバイスのセットおよび前記1つ以上の物理関数および/または仮想関数は、前記1つ以上のCPUノードのポートに割当可能な1つ以上のサブ階層を定義するように、1つ以上のCPUノードおよび2つの切替ファブリック制御コンポーネントのうちの1つ以上のものに配分される、項目4に記載のフォールトトレラントコンピュータシステム。
(項目7)
前記IOデバイスのセットのうちの1つ以上のものおよび前記仮想関数は、物理CPUノードのセットの間で区分化され、前記物理CPUノードのセットは、前記アクティブCPUノードと、前記スタンバイCPUノードとを備える、項目4に記載のフォールトトレラントコンピュータシステム。
(項目8)
各IOドメイン内の管理プロセッサ上で起動する1つ以上の管理エンジンインスタンスをさらに備え、各管理エンジンは、個別の管理エンジンに接続される前記切替ファブリック制御コンポーネントにクエリを行い、制御コンポーネント毎の基準で、物理関数および/または仮想関数の列挙された階層を取得し、各管理エンジンは、列挙されたコンポーネント毎の階層を、各管理エンジンと関連付けられる前記IOドメイン内の物理関数および/または仮想関数のドメイン毎の階層にマージする、項目6に記載のフォールトトレラントコンピュータシステム。
(項目9)
1つ以上のプロビジョニングサービスインスタンスをさらに備え、各プロビジョニングサービスは、各IOドメイン内の前記管理プロセッサ上で起動し、各プロビジョニングサービスは、ドメイン毎の階層毎に、ドメイン毎の管理エンジンインスタンスにクエリを行い、各プロビジョニングサービスのドメイン毎のインスタンスは、他のI/Oドメイン内の前記プロビジョニングサービスと通信し、前記システム内に物理関数および/または仮想関数の統一階層を形成する、項目7に記載のフォールトトレラントコンピュータシステム。
(項目10)
前記プロビジョニングサービスのドメイン毎のインスタンスのいずれかは、組成インターフェースから要求をサービス提供することが可能であり、前記プロビジョニングサービスのいずれかはまた、IOドメインを横断して冗長性を保証する観点から、1つ以上のシステム組成要求の変動性を検証することも可能である、項目9に記載のフォールトトレラントコンピュータシステム。
(項目11)
各IOドメインはさらに、管理プロセッサを備える、項目1に記載のフォールトトレラントコンピュータシステム。
(項目12)
アクティブIOドメインの管理プロセッサは、前記切替ファブリックを通して通信を制御する、項目11に記載のフォールトトレラントコンピュータシステム。
(項目13)
各IOドメインは、シリアルリンクを通して他のIOドメインと通信する、項目1に記載のフォールトトレラントコンピュータシステム。
(項目14)
前記切替ファブリックは、Non-Transparent Bridge (NTB) PCI Express(PCIe)切替ファブリックである、項目1に記載のフォールトトレラントコンピュータシステム。
(項目15)
フォールトトレラントコンピュータシステム内でCPUノードフェイルオーバを実施する方法であって、前記フォールトトレラントコンピュータシステムは、複数のCPUノードであって、各CPUノードは、プロセッサと、メモリとを備え、前記CPUノードのうちの1つは、スタンバイCPUノードと指定され、残りは、アクティブCPUノードとして指定される、複数のCPUノードと、少なくとも2つのIOドメインであって、前記IOドメインのうちの少なくとも1つは、前記アクティブCPUノードのための通信機能を実施するアクティブIOドメインと指定される、少なくとも2つのIOドメインと、各CPUノードを各IOドメインに接続する切替ファブリックとを有し、前記方法は、
アクティブであるが故障しているCPUノードのメモリと前記スタンバイCPUノードのメモリとの間にDMAデータパスを確立するステップと、
アクティブであるが故障しているCPUノードのメモリおよび前記スタンバイCPUノードのメモリから、前記DMAデータパスを通してメモリコンテンツを転送するステップと、
前記アクティブであるが故障しているCPUノードによって、DMAアクセスが起こる前記アクティブであるが故障しているCPUノード内のメモリアドレスを追跡するステップと、
前記アクティブであるが故障しているCPUノード上のメモリへのアクセスを停止し、DMAが開始された以降にアクセスされている任意のメモリデータをコピーするステップと、
前記アクティブであるが故障しているCPUノード内の前記プロセッサの状態を前記スタンバイCPUノードにコピーするステップと、
前記アクティブであるが故障しているCPUノードから前記スタンバイCPUノードへの全てのリソースマッピングを交換するステップと、
前もって指定されたスタンバイCPUノードが前記新しいアクティブCPUノードであることを可能にするステップと
を含む、方法。
(項目16)
両方のCPUノードが、フェイルオーバ動作後にその独自の意図された新しい状態を有するように、前記アクティブであるが故障しているCPUノードが、その独自のNTBウィンドウ内のフラグをPCI-メモリのマップされたIO空間および前記スタンバイCPUノードのNTBウィンドウの中に設定するステップをさらに含む、項目15に記載の方法。
(項目17)
前記アクティブであるが故障しているCPUノードが、開始ルーチンのステータスに関して前記スタンバイCPUノードにポーリングするステップをさらに含む、項目15に記載の方法。
(項目18)
フォールトトレラントコンピュータシステム内でIOドメインフェイルオーバを実施する方法であって、前記フォールトトレラントコンピュータシステムは、複数のCPUノードであって、各CPUノードは、プロセッサと、メモリとを備え、前記CPUノードのうちの1つは、スタンバイCPUノードと指定され、残りは、アクティブCPUノードとして指定される、複数のCPUノードと、少なくとも2つのIOドメインであって、前記IOドメインのうちの少なくとも1つは、前記アクティブCPUノードのための通信機能を実施するアクティブIOドメインと指定される、少なくとも2つのIOドメインと、各CPUノードを各IOドメインに接続する切替ファブリックとを有し、前記方法は、
各IOドメイン内で切替ファブリック制御コンポーネント毎に故障トリガを有効化するステップであって、前記故障トリガは、リンクダウンエラーと、訂正不可能かつ致命的なエラーと、ソフトウェアトリガとを備える、ステップと、
故障トリガが起こることに応じて、故障しているIOドメインを使用するドライバを停止するステップと
を含む、方法。
(項目19)
フォールトトレラントコンピュータシステムであって、
複数のCPUノードであって、各CPUノードは、プロセッサと、メモリとを備え、前記CPUノードのうちの1つは、スタンバイCPUノードと指定され、残りは、アクティブCPUノードとして指定される、複数のCPUノードと、
少なくとも2つのIOドメインであって、前記IOドメインのうちの少なくとも1つは、前記アクティブCPUノードのための通信機能を実施するアクティブIOドメインと指定される、少なくとも2つのIOドメインと、
各CPUノードを各IOドメインに接続する切替ファブリックと
を備え、
故障、故障の開始、および予測される故障のうちの1つが、故障しているアクティブIOドメインと称されるアクティブIOドメイン内で起こる場合、前記故障しているアクティブIOドメインによって実施される前記通信機能は、他のIOドメインに転送される、フォールトトレラントコンピュータシステム。
(項目20)
各CPUノードはさらに、前記切替ファブリックと通信する通信インターフェースを備える、項目19に記載のフォールトトレラントコンピュータシステム。
(項目21)
各IOドメインは、少なくとも2つの切替ファブリック制御コンポーネントを備え、各切替ファブリック制御コンポーネントは、前記切替ファブリックと通信する、項目19に記載のフォールトトレラントコンピュータシステム。
(項目22)
各IOドメインはさらに、管理プロセッサを備える、項目19に記載のフォールトトレラントコンピュータシステム。
(項目23)
アクティブIOドメインの管理プロセッサは、前記切替ファブリックを通して通信を制御する、項目22に記載のフォールトトレラントコンピュータシステム。
より詳細には、図2を再び参照すると、本開示の一実施形態に従って構築されるシステム10は、それぞれ、ハードウェアCPUユニット18、18A、18B、18C(概して、18)を含む、いくつかのCPUノード14、14A、14B、14C(概して、14)と、通信インターフェース22、22A、22B、22C(概して、22)とを含む。システム10はまた、それぞれ、Non-Transparent Bridge (NTB) PCI Express (PCIe)切替ファブリック30を通して、通信インターフェース22のそれぞれに接続される、少なくとも2つのIOドメイン26、26Aも含む。種々の実施形態では、切替ファブリックは、可変数のチャネルを伴って実装される。これらの実施形態では、種々のハードウェア構成が、システムの具体的実装または要件に応じて、それらのチャネルの帯域幅を修正するために使用されることができる。
マルチノードプラットフォームの電源をオンにし、IOリソースをプロビジョニングするプロセスが、物理IOデバイスおよびそれらのPCIe機能の両方のために、およびPCI Express仕様の単一ルートI/O仮想化および共有(SR-IOV)部分の機能をサポートするデバイスのための仮想関数のために、実施されることができる。初期化プロセスは、各IOドメイン内のハードウェアおよびソフトウェアによって編成される。初期化プロセスの間に、IOドメインのみが、リセットから解放される一方で、全てのCPUノードは、リセット状態に留まる。
以下のステップが、CPUノード(CPUプロセッサ18および/またはメモリ)故障が起こっている、または予測されるときに、システム故障を回避するように、本開示の一実施形態によって実施される。その故障しているCPUノード上で実行されるアプリケーションは、次いで、スタンバイCPUノード14Cに転送されるであろう。
節電メモリコピー段階1の一部として、FTドライバは、ダーティページビットマップを取得し、メモリの新たにダーティにされたページを第2のサブシステムにコピーする。FTカーネルモードドライバは、機能インターフェースを使用し、各プロセッサ上でメモリページ追跡有効化と称されるコマンドを発行する。FTVMMへのFTドライバの機能インターフェース内のVMCALLプロセッサ命令は、各論理プロセッサをFTVMMに参入させ、FTドライバによって発行される要求を処理させる。FTVMMは、新たに修正された全てのシステムメモリページ(ダーティページ)の記録を取得する様式で、FTVMMハイパーバイザコンテキストにおいてそのプログラムコードを使用し始めるための関数を全てのプロセッサ上で実施する。次いで、各プロセッサ上のFTVMMコードは、SLAT L0テーブル内および各ゲストのSLAT L2テーブル内の8バイト毎のページテーブルエントリを検索し、各エントリ内のダーティビットをそのビットのTRUE値と比較する。比較結果がTRUEであるとき、FTVMMは、物理メモリの中のダーティまたは修正されたページのアドレスを表すビットフィールドアドレスにおいて、ダーティページビットマップ内のビットフィールドを設定し、次いで、ページテーブルエントリ内のダーティビットを消去する。SLAT L0内で構成されるメモリマッピングは、4キロバイトのページサイズを有するため、ダーティページビットマップ内の1ビットが、見出されるダーティにされたページ毎に設定される。
メモリコピー段階1というプロシージャは、最終節電メモリコピー段階Nの間にシステム作業負荷によって発生され得る、ダーティにされたページのより小さい結果として生じるセットを取得するために、1以上の回数で繰り返されてもよい。例えば、一実施形態では、FTドライバは、同一のシーケンスを繰り返し、別のダーティページビットマップを取得し、新たにダーティにされたページを第2のサブシステムに1回またはそれを上回ってコピーしてもよい。
一実施形態では、以下のステップが、IOドメインフェイルオーバを提供するように実施される。正常な動作では、システム10が、ブートするとき、全てのIOドメイン26が、存在し、オペレーティングシステムに可視である。ドライバが、次いで、各IOドメインのインスタンス毎にロードされる。ネットワークコントローラ機能が、標準オペレーティングシステムコマンドを使用して、2つのアクティブIOドメイン、すなわち、一次26と二次26Aとの間で結束またはチーム化される。任意の外部記憶コントローラは、両方のインスタンスが外部記憶アレイへのコネクティビティを有するときに、二重状態である。旧来のIO以外の全てのPCIドメインデバイスが、二重であるとき、次いで、IOベイ全体が、二重である/プルすることが安全であり、プラットフォームが、システムの正常な動作、したがって、その可用性に影響を及ぼすことなく、障害またはサービスアクションのいずれかに起因するIOベイの損失に耐え得ることを意味する。
Claims (15)
- フォールトトレラントコンピュータシステム内でCPUノードフェイルオーバを実施する方法であって、前記フォールトトレラントコンピュータシステムは、複数のCPUノードであって、各CPUノードは、プロセッサと、メモリとを備え、前記CPUノードのうちの1つは、スタンバイCPUノードと指定され、残りは、アクティブCPUノードとして指定される、複数のCPUノードと、少なくとも2つのIOドメインであって、前記IOドメインのうちの少なくとも1つは、前記アクティブCPUノードのための通信機能を実施するアクティブIOドメインと指定される、少なくとも2つのIOドメインと、各CPUノードを各IOドメインに接続する切替ファブリックとを有し、前記方法は、
アクティブであるが故障しているCPUノードのメモリと前記スタンバイCPUノードのメモリとの間にDMAデータパスを確立するステップと、
アクティブであるが故障しているCPUノードのメモリおよび前記スタンバイCPUノードのメモリから、前記DMAデータパスを通してメモリコンテンツを転送するステップと、
前記アクティブであるが故障しているCPUノードによって、DMAアクセスが起こる前記アクティブであるが故障しているCPUノード内のメモリアドレスを追跡するステップと、
前記アクティブであるが故障しているCPUノード上のメモリへのアクセスを停止し、DMAが開始された以降にアクセスされている任意のメモリデータをコピーするステップと、
前記アクティブであるが故障しているCPUノード内の前記プロセッサの状態を前記スタンバイCPUノードにコピーするステップと、
前記アクティブであるが故障しているCPUノードから前記スタンバイCPUノードへの全てのリソースマッピングを交換するステップと、
前もって指定されたスタンバイCPUノードが前記新しいアクティブCPUノードであることを可能にするステップと
を含む、方法。 - 両方のCPUノードが、フェイルオーバ動作後にその独自の意図された新しい状態を有するように、前記アクティブであるが故障しているCPUノードが、その独自のNTBウィンドウ内のフラグをPCI-メモリのマップされたIO空間および前記スタンバイCPUノードのNTBウィンドウの中に設定するステップをさらに含む、請求項1に記載の方法。
- 前記アクティブであるが故障しているCPUノードが、開始ルーチンのステータスに関して前記スタンバイCPUノードにポーリングするステップをさらに含む、請求項1に記載の方法。
- フォールトトレラントコンピュータシステム内でIOドメインフェイルオーバを実施する方法であって、前記フォールトトレラントコンピュータシステムは、複数のCPUノードであって、各CPUノードは、プロセッサと、メモリとを備え、前記CPUノードのうちの1つは、スタンバイCPUノードと指定され、残りは、アクティブCPUノードとして指定される、複数のCPUノードと、少なくとも2つのIOドメインであって、前記IOドメインのうちの少なくとも1つは、前記アクティブCPUノードのための通信機能を実施するアクティブIOドメインと指定される、少なくとも2つのIOドメインと、各CPUノードを各IOドメインに接続する切替ファブリックとを有し、前記方法は、
各IOドメイン内で切替ファブリック制御コンポーネント毎に故障トリガを有効化するステップであって、前記故障トリガは、リンクダウンエラーと、訂正不可能かつ致命的なエラーと、ソフトウェアトリガとを備える、ステップと、
故障トリガが起こることに応じて、故障しているIOドメインを使用するドライバを停止するステップと
を含む、方法。 - 前記アクティブCPUノードのメモリと前記スタンバイCPUノードのメモリとの間にDMAデータパスを確立することをさらに含む、請求項4に記載の方法。
- 前記アクティブCPUノードのメモリおよび前記スタンバイCPUノードのメモリから、前記DMAデータパスを通してメモリコンテンツを転送することと、
前記アクティブCPUノードによって、DMAアクセスが起こる前記アクティブCPUノード内のメモリアドレスを追跡することと
をさらに含む、請求項5に記載の方法。 - 前記アクティブCPUノード上のメモリへのアクセスを停止し、DMAが開始された以降にアクセスされている任意のメモリデータをコピーすることをさらに含む、請求項6に記載の方法。
- 前記アクティブCPUノード内の前記プロセッサの状態を前記スタンバイCPUノードにコピーすることをさらに含む、請求項7に記載の方法。
- 前記アクティブCPUノードから前記スタンバイCPUノードへの全てのリソースマッピングを交換することをさらに含む、請求項8に記載の方法。
- 前もって指定されたスタンバイCPUノードが前記新しいアクティブCPUノードであることを可能にすることをさらに含む、請求項9に記載の方法。
- アクティブIOドメイン毎にプロビジョニングサービスを起動することをさらに含み、各プロビジョニングサービスは、他のアクティブIOドメインの前記プロビジョニングサービスと通信し、物理関数および/または仮想関数の統一階層を形成する、請求項4に記載の方法。
- CPUノード毎にインタラプトを発生させることをさらに含み、前記インタラプトは、前記IOドメインまたはコンポーネントが故障したことを各CPUノードに通信する、請求項4に記載の方法。
- 各IOドメインはさらに、IOデバイスのセットを備え、前記IOデバイスのセットは、一次IOドメインのコンポーネントを備え、各IOデバイスは、1つ以上の物理関数および/または仮想関数を備え、1つのIOドメイン内の1つ以上の物理関数および/または仮想関数は、共有可能である、請求項4に記載の方法。
- 各CPUノードおよびIOドメインは、他のCPUノードおよびIOドメインのうちの1つ以上で実行されるアプリケーションに影響を及ぼすことなく交換されるように構成される、請求項4に記載の方法。
- 前記IOデバイスのセットおよび前記1つ以上の物理関数および/または仮想関数を2つの切替ファブリック制御コンポーネントのうちの1つ以上および1つ以上のCPUノードに配分することをさらに含む、請求項13に記載の方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2024065406A JP2024096880A (ja) | 2018-08-13 | 2024-04-15 | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862717939P | 2018-08-13 | 2018-08-13 | |
US62/717,939 | 2018-08-13 | ||
PCT/US2019/045907 WO2020036824A2 (en) | 2018-08-13 | 2019-08-09 | High reliability fault tolerant computer architecture |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024065406A Division JP2024096880A (ja) | 2018-08-13 | 2024-04-15 | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021534524A JP2021534524A (ja) | 2021-12-09 |
JP7474766B2 true JP7474766B2 (ja) | 2024-04-25 |
Family
ID=67766352
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021532264A Active JP7474766B2 (ja) | 2018-08-13 | 2019-08-09 | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
JP2024065406A Pending JP2024096880A (ja) | 2018-08-13 | 2024-04-15 | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024065406A Pending JP2024096880A (ja) | 2018-08-13 | 2024-04-15 | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
Country Status (4)
Country | Link |
---|---|
US (2) | US11586514B2 (ja) |
EP (1) | EP3837608A2 (ja) |
JP (2) | JP7474766B2 (ja) |
WO (1) | WO2020036824A2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10884878B2 (en) * | 2018-06-07 | 2021-01-05 | International Business Machines Corporation | Managing a pool of virtual functions |
US10776225B2 (en) * | 2018-06-29 | 2020-09-15 | Hewlett Packard Enterprise Development Lp | Proactive cluster compute node migration at next checkpoint of cluster cluster upon predicted node failure |
JP7474766B2 (ja) | 2018-08-13 | 2024-04-25 | ストラタス テクノロジーズ アイルランド リミテッド | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
US11641395B2 (en) | 2019-07-31 | 2023-05-02 | Stratus Technologies Ireland Ltd. | Fault tolerant systems and methods incorporating a minimum checkpoint interval |
US11429466B2 (en) | 2019-07-31 | 2022-08-30 | Stratus Technologies Ireland Ltd. | Operating system-based systems and method of achieving fault tolerance |
US11288123B2 (en) | 2019-07-31 | 2022-03-29 | Stratus Technologies Ireland Ltd. | Systems and methods for applying checkpoints on a secondary computer in parallel with transmission |
US11620196B2 (en) | 2019-07-31 | 2023-04-04 | Stratus Technologies Ireland Ltd. | Computer duplication and configuration management systems and methods |
US11281538B2 (en) | 2019-07-31 | 2022-03-22 | Stratus Technologies Ireland Ltd. | Systems and methods for checkpointing in a fault tolerant system |
US11263136B2 (en) | 2019-08-02 | 2022-03-01 | Stratus Technologies Ireland Ltd. | Fault tolerant systems and methods for cache flush coordination |
CN113364603B (zh) * | 2020-03-06 | 2023-05-02 | 华为技术有限公司 | 环形网络的故障恢复方法及物理节点 |
US11288143B2 (en) | 2020-08-26 | 2022-03-29 | Stratus Technologies Ireland Ltd. | Real-time fault-tolerant checkpointing |
CN113541775B (zh) * | 2021-09-15 | 2022-01-28 | 北京国科天迅科技有限公司 | 光纤总线故障重构系统 |
US11789433B2 (en) * | 2021-11-09 | 2023-10-17 | Rockwell Automation Technologies, Inc. | Systems and methods for coordinating insertion and/or removal of redundant input/output (I/O) components |
US11799714B2 (en) * | 2022-02-24 | 2023-10-24 | Hewlett Packard Enterprise Development Lp | Device management using baseboard management controllers and management processors |
CN114579495B (zh) * | 2022-05-06 | 2022-09-30 | 成都前锋信息技术股份有限公司 | 基于飞腾处理器的通用计算机固件的实现方法 |
US20240281331A1 (en) * | 2023-02-21 | 2024-08-22 | Micron Technology, Inc. | Fast failure recovery of applications |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060117300A1 (en) | 2004-11-23 | 2006-06-01 | Puthukattukaran James J | Tracking modified pages on a computer system |
US20150200818A1 (en) | 2012-08-03 | 2015-07-16 | Fujitsu Technology Solutions Intellectual Property Gmbh | High-availability computer system, working method and the use thereof |
US20160098372A1 (en) | 2014-10-03 | 2016-04-07 | Futurewei Technologies, Inc. | METHOD TO USE PCIe DEVICE RESOURCES BY USING UNMODIFIED PCIe DEVICE DRIVERS ON CPUs IN A PCIe FABRIC WITH COMMODITY PCI SWITCHES |
Family Cites Families (74)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4608688A (en) | 1983-12-27 | 1986-08-26 | At&T Bell Laboratories | Processing system tolerant of loss of access to secondary storage |
US6633996B1 (en) | 2000-04-13 | 2003-10-14 | Stratus Technologies Bermuda Ltd. | Fault-tolerant maintenance bus architecture |
US6691257B1 (en) | 2000-04-13 | 2004-02-10 | Stratus Technologies Bermuda Ltd. | Fault-tolerant maintenance bus protocol and method for using the same |
US6355991B1 (en) | 2000-04-13 | 2002-03-12 | Stratus Technologies International, S.A.R.L. | Hot plug switch mechanism |
US6687851B1 (en) | 2000-04-13 | 2004-02-03 | Stratus Technologies Bermuda Ltd. | Method and system for upgrading fault-tolerant systems |
US6708283B1 (en) | 2000-04-13 | 2004-03-16 | Stratus Technologies, Bermuda Ltd. | System and method for operating a system with redundant peripheral bus controllers |
US20020016935A1 (en) | 2000-04-14 | 2002-02-07 | Bjorn Bergsten | Method and apparatus for scanning records |
US6842823B1 (en) | 2000-04-14 | 2005-01-11 | Stratus Technologies Bermuda Ltd | Methods and apparatus for persistent volatile computer memory |
US6691225B1 (en) | 2000-04-14 | 2004-02-10 | Stratus Technologies Bermuda Ltd. | Method and apparatus for deterministically booting a computer system having redundant components |
US20010042202A1 (en) | 2000-04-14 | 2001-11-15 | Horvath Charles J. | Dynamically extendible firewall |
US6862689B2 (en) | 2001-04-12 | 2005-03-01 | Stratus Technologies Bermuda Ltd. | Method and apparatus for managing session information |
US6802022B1 (en) | 2000-04-14 | 2004-10-05 | Stratus Technologies Bermuda Ltd. | Maintenance of consistent, redundant mass storage images |
US6813721B1 (en) | 2000-09-20 | 2004-11-02 | Stratus Computer Systems, S.A.R.L. | Methods and apparatus for generating high-frequency clocks deterministically from a low-frequency system reference clock |
US6718474B1 (en) | 2000-09-21 | 2004-04-06 | Stratus Technologies Bermuda Ltd. | Methods and apparatus for clock management based on environmental conditions |
US20020070717A1 (en) | 2000-12-07 | 2002-06-13 | John Pellegrino | Apparatus and methods for boosting power supplied at a remote node |
US6970892B2 (en) | 2001-02-16 | 2005-11-29 | Stratus Technologies Bermuda Ltd | Implementing standards-based file operations in proprietary operating systems |
US6886171B2 (en) | 2001-02-20 | 2005-04-26 | Stratus Technologies Bermuda Ltd. | Caching for I/O virtual address translation and validation using device drivers |
US6766479B2 (en) | 2001-02-28 | 2004-07-20 | Stratus Technologies Bermuda, Ltd. | Apparatus and methods for identifying bus protocol violations |
US6766413B2 (en) | 2001-03-01 | 2004-07-20 | Stratus Technologies Bermuda Ltd. | Systems and methods for caching with file-level granularity |
US6874102B2 (en) | 2001-03-05 | 2005-03-29 | Stratus Technologies Bermuda Ltd. | Coordinated recalibration of high bandwidth memories in a multiprocessor computer |
US7065672B2 (en) | 2001-03-28 | 2006-06-20 | Stratus Technologies Bermuda Ltd. | Apparatus and methods for fault-tolerant computing using a switching fabric |
US6928583B2 (en) | 2001-04-11 | 2005-08-09 | Stratus Technologies Bermuda Ltd. | Apparatus and method for two computing elements in a fault-tolerant server to execute instructions in lockstep |
US6971043B2 (en) | 2001-04-11 | 2005-11-29 | Stratus Technologies Bermuda Ltd | Apparatus and method for accessing a mass storage device in a fault-tolerant server |
US6996750B2 (en) | 2001-05-31 | 2006-02-07 | Stratus Technologies Bermuda Ltd. | Methods and apparatus for computer bus error termination |
US20030046670A1 (en) | 2001-06-15 | 2003-03-06 | Marlow Mark J. | Binary object system for automated data translation |
US20030095366A1 (en) | 2001-09-21 | 2003-05-22 | John Pellegrino | Fault-tolerant power-supply current-sharing apparatus and methods |
US7134052B2 (en) * | 2003-05-15 | 2006-11-07 | International Business Machines Corporation | Autonomic recovery from hardware errors in an input/output fabric |
US7496787B2 (en) | 2004-12-27 | 2009-02-24 | Stratus Technologies Bermuda Ltd. | Systems and methods for checkpointing |
US20060222126A1 (en) | 2005-03-31 | 2006-10-05 | Stratus Technologies Bermuda Ltd. | Systems and methods for maintaining synchronicity during signal transmission |
US20060222125A1 (en) | 2005-03-31 | 2006-10-05 | Edwards John W Jr | Systems and methods for maintaining synchronicity during signal transmission |
US20060259815A1 (en) | 2005-05-10 | 2006-11-16 | Stratus Technologies Bermuda Ltd. | Systems and methods for ensuring high availability |
US20060274508A1 (en) | 2005-06-06 | 2006-12-07 | Stratus Technologies Bermuda Ltd. | Computer rack mounting system |
US20070011499A1 (en) | 2005-06-07 | 2007-01-11 | Stratus Technologies Bermuda Ltd. | Methods for ensuring safe component removal |
US20070028144A1 (en) | 2005-07-29 | 2007-02-01 | Stratus Technologies Bermuda Ltd. | Systems and methods for checkpointing |
US20070038891A1 (en) | 2005-08-12 | 2007-02-15 | Stratus Technologies Bermuda Ltd. | Hardware checkpointing system |
US7669073B2 (en) | 2005-08-19 | 2010-02-23 | Stratus Technologies Bermuda Ltd. | Systems and methods for split mode operation of fault-tolerant computer systems |
US20070106873A1 (en) | 2005-11-04 | 2007-05-10 | Stratus Technologies Bermuda Ltd. | Apparatus and method for translating addresses |
US7496786B2 (en) | 2006-01-10 | 2009-02-24 | Stratus Technologies Bermuda Ltd. | Systems and methods for maintaining lock step operation |
US20070174484A1 (en) | 2006-01-23 | 2007-07-26 | Stratus Technologies Bermuda Ltd. | Apparatus and method for high performance checkpointing and rollback of network operations |
US8161311B2 (en) | 2007-08-23 | 2012-04-17 | Stratus Technologies Bermuda Ltd | Apparatus and method for redundant and spread spectrum clocking |
US20090249129A1 (en) | 2007-10-12 | 2009-10-01 | David Femia | Systems and Methods for Managing Multi-Component Systems in an Infrastructure |
US8117495B2 (en) | 2007-11-26 | 2012-02-14 | Stratus Technologies Bermuda Ltd | Systems and methods of high availability cluster environment failover protection |
US7958076B2 (en) | 2007-11-30 | 2011-06-07 | Stratus Technologies Bermuda Ltd. | System and methods for managing rules and detecting reciprocal dependencies |
US8271416B2 (en) | 2008-08-12 | 2012-09-18 | Stratus Technologies Bermuda Ltd. | Method for dynamically determining a predetermined previous condition of a rule-based system |
US8812907B1 (en) | 2010-07-19 | 2014-08-19 | Marathon Technologies Corporation | Fault tolerant computing systems using checkpoints |
US8645755B2 (en) * | 2010-12-15 | 2014-02-04 | International Business Machines Corporation | Enhanced error handling for self-virtualizing input/output device in logically-partitioned data processing system |
US8589723B2 (en) * | 2010-12-22 | 2013-11-19 | Intel Corporation | Method and apparatus to provide a high availability solid state drive |
US9251002B2 (en) | 2013-01-15 | 2016-02-02 | Stratus Technologies Bermuda Ltd. | System and method for writing checkpointing data |
US10613914B2 (en) * | 2013-04-01 | 2020-04-07 | Oracle International Corporation | Orchestration service for a distributed computing system |
US9652338B2 (en) | 2013-12-30 | 2017-05-16 | Stratus Technologies Bermuda Ltd. | Dynamic checkpointing systems and methods |
EP3090341A1 (en) | 2013-12-30 | 2016-11-09 | Brennan, Edward Colin | System and method for allocating resources and managing a cloud based computer system |
WO2015102875A1 (en) | 2013-12-30 | 2015-07-09 | Stratus Technologies Bermuda Ltd. | Checkpointing systems and methods of using data forwarding |
US20150205688A1 (en) * | 2013-12-30 | 2015-07-23 | Stratus Technologies Bermuda Ltd. | Method for Migrating Memory and Checkpoints in a Fault Tolerant System |
ES2652262T3 (es) | 2013-12-30 | 2018-02-01 | Stratus Technologies Bermuda Ltd. | Método de retardar puntos de comprobación inspeccionando paquetes de red |
US9477564B2 (en) * | 2014-06-20 | 2016-10-25 | Intel Corporation | Method and apparatus for dynamic node healing in a multi-node environment |
US20160077937A1 (en) * | 2014-09-16 | 2016-03-17 | Unisys Corporation | Fabric computer complex method and system for node function recovery |
CN104618155B (zh) | 2015-01-23 | 2018-06-05 | 华为技术有限公司 | 一种虚拟机容错的方法、装置及系统 |
US11023265B2 (en) | 2015-03-20 | 2021-06-01 | Intel Corporation | Techniques for improving output-packet-similarity between primary and secondary virtual machines |
US10452495B2 (en) | 2015-06-25 | 2019-10-22 | Intel Corporation | Techniques for reliable primary and secondary containers |
US10809998B2 (en) * | 2016-02-12 | 2020-10-20 | Nutanix, Inc. | Virtualized file server splitting and merging |
US9921997B2 (en) * | 2016-04-01 | 2018-03-20 | Intel Corporation | Mechanism for PCIE cable topology discovery in a rack scale architecture environment |
EP3270291B1 (en) | 2016-06-20 | 2021-12-29 | Stratus Technologies Ireland Ltd. | Method and apparatus for performing checkpointing on a network device |
US10929232B2 (en) * | 2017-05-31 | 2021-02-23 | Intel Corporation | Delayed error processing |
US10216598B2 (en) | 2017-07-11 | 2019-02-26 | Stratus Technologies Bermuda Ltd. | Method for dirty-page tracking and full memory mirroring redundancy in a fault-tolerant server |
US10339016B2 (en) * | 2017-08-10 | 2019-07-02 | Rubrik, Inc. | Chunk allocation |
US20190044809A1 (en) * | 2017-08-30 | 2019-02-07 | Intel Corporation | Technologies for managing a flexible host interface of a network interface controller |
US10992598B2 (en) * | 2018-05-21 | 2021-04-27 | Pure Storage, Inc. | Synchronously replicating when a mediation service becomes unavailable |
JP7474766B2 (ja) | 2018-08-13 | 2024-04-25 | ストラタス テクノロジーズ アイルランド リミテッド | 高信頼性フォールトトレラントコンピュータアーキテクチャ |
US11429466B2 (en) | 2019-07-31 | 2022-08-30 | Stratus Technologies Ireland Ltd. | Operating system-based systems and method of achieving fault tolerance |
US11281538B2 (en) | 2019-07-31 | 2022-03-22 | Stratus Technologies Ireland Ltd. | Systems and methods for checkpointing in a fault tolerant system |
US11288123B2 (en) | 2019-07-31 | 2022-03-29 | Stratus Technologies Ireland Ltd. | Systems and methods for applying checkpoints on a secondary computer in parallel with transmission |
US11620196B2 (en) | 2019-07-31 | 2023-04-04 | Stratus Technologies Ireland Ltd. | Computer duplication and configuration management systems and methods |
US11641395B2 (en) | 2019-07-31 | 2023-05-02 | Stratus Technologies Ireland Ltd. | Fault tolerant systems and methods incorporating a minimum checkpoint interval |
US11263136B2 (en) | 2019-08-02 | 2022-03-01 | Stratus Technologies Ireland Ltd. | Fault tolerant systems and methods for cache flush coordination |
-
2019
- 2019-08-09 JP JP2021532264A patent/JP7474766B2/ja active Active
- 2019-08-09 WO PCT/US2019/045907 patent/WO2020036824A2/en unknown
- 2019-08-09 US US16/536,745 patent/US11586514B2/en active Active
- 2019-08-09 EP EP19759187.8A patent/EP3837608A2/en active Pending
-
2023
- 2023-02-07 US US18/106,550 patent/US20230185681A1/en active Pending
-
2024
- 2024-04-15 JP JP2024065406A patent/JP2024096880A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060117300A1 (en) | 2004-11-23 | 2006-06-01 | Puthukattukaran James J | Tracking modified pages on a computer system |
US20150200818A1 (en) | 2012-08-03 | 2015-07-16 | Fujitsu Technology Solutions Intellectual Property Gmbh | High-availability computer system, working method and the use thereof |
JP2015528962A (ja) | 2012-08-03 | 2015-10-01 | フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー | 高可用性コンピュータシステム |
US20160098372A1 (en) | 2014-10-03 | 2016-04-07 | Futurewei Technologies, Inc. | METHOD TO USE PCIe DEVICE RESOURCES BY USING UNMODIFIED PCIe DEVICE DRIVERS ON CPUs IN A PCIe FABRIC WITH COMMODITY PCI SWITCHES |
Also Published As
Publication number | Publication date |
---|---|
US20200050523A1 (en) | 2020-02-13 |
WO2020036824A2 (en) | 2020-02-20 |
EP3837608A2 (en) | 2021-06-23 |
US11586514B2 (en) | 2023-02-21 |
WO2020036824A3 (en) | 2020-03-19 |
JP2024096880A (ja) | 2024-07-17 |
JP2021534524A (ja) | 2021-12-09 |
US20230185681A1 (en) | 2023-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7474766B2 (ja) | 高信頼性フォールトトレラントコンピュータアーキテクチャ | |
JP7164770B2 (ja) | フォールトトレラントサーバにおけるダーティページ追跡および完全メモリミラーリング冗長性のための方法 | |
CN106776159B (zh) | 具有故障转移的快速外围元件互连网络系统与操作方法 | |
US9684545B2 (en) | Distributed and continuous computing in a fabric environment | |
US9519795B2 (en) | Interconnect partition binding API, allocation and management of application-specific partitions | |
US8554981B2 (en) | High availability virtual machine cluster | |
JP5254601B2 (ja) | 資源回復するための方法、情報処理システムおよびコンピュータ・プログラム | |
US10592434B2 (en) | Hypervisor-enforced self encrypting memory in computing fabric | |
US20160077884A1 (en) | Dynamic allocation and assignment of virtual functions within fabric | |
CN103959253A (zh) | 基于硬件的存储器迁移和重新同步 | |
EP2084600A1 (en) | Replacing system hardware | |
JP2011154697A (ja) | Raidと関連するアプリケーションの実行のための方法およびシステム | |
US20140143372A1 (en) | System and method of constructing a memory-based interconnect between multiple partitions | |
WO2014081611A2 (en) | Error recovery in securely partitioned virtualization system with dedicated resources | |
US9804877B2 (en) | Reset of single root PCI manager and physical functions within a fabric | |
US7500051B2 (en) | Migration of partitioned persistent disk cache from one host to another | |
US20160077847A1 (en) | Synchronization of physical functions and virtual functions within a fabric | |
US7536694B2 (en) | Exception handling in a multiprocessor system | |
WO2014081608A1 (en) | Optimized execution of virtualized software using securely partitioned virtualization system with dedicated resources | |
Meier et al. | IBM systems virtualization: Servers, storage, and software | |
CN114115703A (zh) | 裸金属服务器在线迁移方法以及系统 | |
US20240176739A1 (en) | Fault tolerant systems and methods using shared memory configurations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220713 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230614 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230830 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20231025 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231214 |
|
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: 20240314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240415 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7474766 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |