JP4023441B2 - コンピュータシステム及びプログラム - Google Patents

コンピュータシステム及びプログラム Download PDF

Info

Publication number
JP4023441B2
JP4023441B2 JP2003410780A JP2003410780A JP4023441B2 JP 4023441 B2 JP4023441 B2 JP 4023441B2 JP 2003410780 A JP2003410780 A JP 2003410780A JP 2003410780 A JP2003410780 A JP 2003410780A JP 4023441 B2 JP4023441 B2 JP 4023441B2
Authority
JP
Japan
Prior art keywords
node
nodes
failure information
main storage
multiprocessor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003410780A
Other languages
English (en)
Other versions
JP2005173830A (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2003410780A priority Critical patent/JP4023441B2/ja
Priority to US11/004,873 priority patent/US7430687B2/en
Publication of JP2005173830A publication Critical patent/JP2005173830A/ja
Application granted granted Critical
Publication of JP4023441B2 publication Critical patent/JP4023441B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は,コンピュータシステムに関し,特に,複数のコンピュータノードを必要に応じて結合することによって一のマルチプロセッサとして動作させ得るように構成されたコンピュータシステムに関する。
近年,それぞれが独立して動作可能な複数のコンピュータノード(以下,単に「ノード」という。)を必要に応じて密結合することにより,結合されたノードを密結合マルチプロセッサとして機能させることができる並列コンピュータシステムが実用化されている。かかるコンピュータシステムは,その運用及び管理が容易であり,処理能力が高く,且つ,資源を有効に利用可能であるという利点を有している。
このような並列コンピュータシステムの一つの課題は,障害情報の適切な管理である。並列コンピュータシステムを適切に動作させるためには,各ノードが有する障害の内容を示す障害情報が,当該システムを統括的に制御するプロセッサによって一括に管理される必要がある。
特許文献1は,サービスプロセッサを用いて障害情報を一括に管理する並列計算機システムを開示している。公知のその並列計算機システムは,マスタープロセッサとスレーブプロセッサに加えて,サービスプロセッサを備えている。マスタープロセッサとスレーブプロセッサとサービスプロセッサとは,診断パスを介して接続されている。診断パスは,障害情報の管理に専用に使用される回線である。あるスレーブプロセッサに障害が発生すると,そのスレーブプロセッサは,障害情報(ログデータ)を自プロセッサの内部に格納する。サービスプロセッサは,障害が発生したスレーブプロセッサから診断パスを介して障害情報を読み出して,マスタープロセッサに転送する。これにより,マスタープロセッサは,スレーブプロセッサの障害情報を一括に管理することができる。
特開平8−6909号公報
しかし,専用のサービスプロセッサを設けることは,コストの面から好ましくない。特に,低コストが重要である場合,例えば,標準的なPCアーキテクチャ(例えばPC/AT(Personal Computer/Advanced Technology))に従って設計されたコンピュータをノードとして用いることによって低価格な並列コンピュータシステムを実現しようとする場合には,サービスプロセッサを設けることは好ましくない。
加えて,コンピュータノードとして,標準的なPCアーキテクチャに従って設計されたコンピュータが使用される場合には,PCアーキテクチャによる制約を克服するような障害情報の管理方法が採用される必要がある。ノードとしてPCアーキテクチャに従って設計されたコンピュータが使用される場合には,ノードの結合によって構成される密結合マルチプロセッサも,PCアーキテクチャに従って動作せざるを得ない。PCアーキテクチャに従って動作するコンピュータシステムの一つの重要な制約は,システム全体の中に,プロセッサと周辺機器とを接続するブリッジ回路(典型的には,サウスブリッジ)が一つしか存在することが許されていないことである。これは,以下の理由により,障害情報を管理する上での障害になり得る。各ノードの障害情報は,一般に,それぞれのノードのサウスブリッジによって管理される不揮発性メモリ(NVRAM)に保存される。しかし,ノードが結合された後に使用可能なサウスブリッジは一つのみであるから,ノードの結合の後は,マルチプロセッサは,ある選択されたサウスブリッジ以外のサウスブリッジを使用することができない。選択されなかったサウスブリッジによって管理されるNVRAMへのアクセスは許されない。これは,ノードの結合後には,選択されなかったサウスブリッジによって管理されるNVRAMに保存されている障害情報が,密結合マルチプロセッサから参照不能である,言い換えれば,障害情報が,ノードの結合後に密結合マルチプロセッサに引き継がれないことを意味している。これは,密結合マルチプロセッサを正常に動作させる上で問題である。障害情報の引継ぎは,密結合マルチプロセッサが分割され,各ノードが独立して動作を開始するときにも重要である。密結合マルチプロセッサの動作時に各ノードに発生した障害に関する障害情報は,密結合マルチプロセッサが分割された後に,各ノードに引き継がれる必要がある。
このような背景から,複数のノードを必要に応じて結合することによってマルチプロセッサとして動作させ得るように構成されたコンピュータシステムでは,各ノードの障害情報の適正な管理,例えば,ノードの結合の前後での障害情報の適正な引き継ぎを低コストのアーキテクチャで実現することが望まれている。とりわけ,かかる要求を,標準的なPCアーキテクチャに課せられる制約を克服しながら満足させることが望まれている。
特許文献2乃至特許文献6は,複数のコンピュータから障害情報又はシステム情報を収集して管理する技術を開示している。しかし,これらの文献は,いずれも,各ノードと密結合マルチプロセッサとの間の障害情報を引き継ぎについて何ら言及していない。
特開平8−263329号公報 特開平11−212836号公報 特開2000−194584号公報 特開2001−109702号公報 特開2002−91938号公報
本発明の目的は,複数のノードを必要に応じて結合することによってマルチプロセッサとして動作させ得るように構成されたコンピュータシステムにおいて,ノードの結合の前後の障害情報の引き継ぎを低コストのアーキテクチャで実現する,好ましくは,標準的なPCアーキテクチャと相反せずに実現するための技術を提供することにある。
以下に、上記の目的を達成するための手段を説明する。その手段に含まれる技術的事項には、[特許請求の範囲]の記載と[発明を実施するための最良の形態]の記載との対応関係を明らかにするために、[発明を実施するための最良の形態]で使用される番号・符号が付加されている。但し、付加された番号・符号は、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明による一の観点において,本発明によるコンピュータシステムは,複数のノード(1)を備えている。前記複数のノード(1)のそれぞれは,前記複数のノード(1)のそれぞれの障害情報(12b)を記憶する不揮発性メモリ(12)を含む。前記複数のノード(1)の結合によってマルチプロセッサを構築するように要求する結合要求が与えられたとき,前記複数のノード(1)の前記障害情報(12b)は,対応する前記不揮発性メモリ(12)からそれぞれに読み出され,前記複数のノード(1)から選択された一のノードに含まれる不揮発性メモリ(12)に書き込まれる。かかるコンピュータシステムでは,障害情報(12b)が一のノードに集約される。このため,選択された一のノード以外のノードのブリッジ回路(14)が非活性化されるようなアーキテクチャ,例えば,PCアーキテクチャに従ったマルチプロセッサが構築されるようなコンピュータシステムでも,結合される全ての複数のノード(1)の障害情報(12a)がマルチプロセッサに引き継がれる。
複数のノード(1)が主記憶装置(11)と,不揮発性メモリ(12)に接続されたブリッジ回路(14)とを含む場合には,前記複数のノード(1)は,下記の動作を行うことが好適である;前記結合要求が与えられたとき,(a)前記複数のノード(1)のそれぞれは,それぞれの前記障害情報(12b)をそれぞれの前記主記憶装置(11)に格納する。更に,(b)前記複数のノード(1)のうちから選択された結合処理ノードは,前記複数のノード(1)の前記主記憶装置(11)それぞれの,前記障害情報(12b)が記憶された領域を含む少なくとも一部の領域を,全体として前記マルチプロセッサの一の主記憶領域として認識し,且つ,前記マルチプロセッサの前記主記憶領域から前記障害情報(12b)を読み出して,読み出された前記障害情報(12b)を前記複数のノード(1)から選択された一のノードに含まれるブリッジ回路(14)を介して前記一のノードに含まれる前記不揮発性メモリ(12)に書き込む。この構成は,サービスプロセッサを用いることなく,各ノード(1)からマルチプロセッサに障害情報(12b)を引き継ぐことを可能にする。
前記複数のノード(1)が結合されてマルチプロセッサとして動作しているときに,前記複数のノード(1)に独立して動作するように要求する分割要求が与えられた場合には,下記のようにして障害情報(12b)の引き継ぎが行われることが好ましい。まず,前記複数のノード(1)のうちから選択された分割処理ノードが,前記複数のノード(1)のそれぞれの前記障害情報(12b)を,前記一のノードに含まれる前記ブリッジ回路(14)を介して読み出し,読み出された前記障害情報(12b)を,それぞれ,対応する前記ノードの前記主記憶装置(11)に格納する。前記複数のノード(1)のそれぞれは,それぞれの前記主記憶装置(11)に格納された前記障害情報(12b)を,それぞれが含む前記不揮発性メモリ(12)に保存する。これにより,サービスプロセッサを用いることなく,マルチプロセッサから各ノード(1)に障害情報(12b)を引き継ぐことが可能になる。
他の観点において,本発明によるコンピュータシステム動作方法は,
(a)複数のノード(1)の結合によってマルチプロセッサを構築するように要求する結合要求を検出するステップと,
(b)前記結合要求に応答して,前記複数のノード(1)それぞれの障害情報(12b)を,前記複数のノード(1)の主記憶装置(11)にそれぞれに格納するステップと,
(c)前記複数のノード(1)の前記主記憶装置(11)を,全体として,前記マルチプロセッサの一の主記憶領域として認識するステップと,
(d)前記マルチプロセッサの前記主記憶領域から前記障害情報(12b)を読み出して,読み出された前記障害情報(12b)を,前記複数のノード(1)から選択された一のノードに含まれるブリッジ回路(14)を介して前記一のノードに含まれる前記不揮発性メモリ(12)に書き込むステップ
を備えている。
更に他の観点において,本発明によるコンピュータシステム動作方法は,
(f’)複数のノード(1)が結合されてマルチプロセッサとして動作しているときに,前記複数のノード(1)に独立して動作するように要求する分割要求を検出するステップと,
(g)前記一のノードに含まれる前記不揮発性メモリ(12)に格納されている前記障害情報(12b)を,前記一のノードに含まれる前記ブリッジ回路(14)を介して読み出すステップと,
(h)読み出された前記障害情報(12b)を,それぞれ,対応する前記ノードの前記主記憶装置(11)に格納するステップと,
(i)前記複数のノード(1)それぞれの前記主記憶領域に格納された前記障害情報(12b)を,それぞれが含む前記不揮発性メモリ(12)に保存するステップ
とを備えている。
前記(h)ステップは,
(h1)前記ノード(1)の前記障害情報(12b)を,それぞれ,前記マルチプロセッサの主記憶領域の前記ノード(1)の前記主記憶装置(11)に対応する部分に格納するステップと,
(h2)前記ノード(1)を,前記主記憶装置(11)の記憶内容を保存したまま再起動するステップ
とによって実現可能である。
更に他の観点において,本発明によるコンピュータプログラムは,他のノード(1)との結合によってマルチプロセッサを構築することが可能に構成されたノード(1)に実行されるプログラムである。当該コンピュータプログラムは,
(A)前記ノード(1)と前記他のノード(1)との結合によってマルチプロセッサを構築するように要求する結合要求に応答して,前記ノード(1)の不揮発性メモリ(12)に記憶されている障害情報(12b)を前記ノード(1)に含まれているブリッジ回路(14)を介して読み出して前記ノード(1)の主記憶装置(11)に格納するステップと,
(B)前記ノード(1)が前記マルチプロセッサの起動処理を行う結合処理ノードとして選択されたときに,前記ノード(1)の前記主記憶装置(11)及び前記他のノード(1)の主記憶装置(11)それぞれの,前記障害情報(12b)が記憶された領域を含む少なくとも一部の領域を,全体として前記マルチプロセッサの一の主記憶領域として認識するステップと,
(C)認識された前記マルチプロセッサの前記主記憶領域から前記障害情報(12b)を読み出して,読み出された前記障害情報(12b)を,前記ノード(1)と前記他のノード(1)のうちから選択された一のノードに含まれるブリッジ回路(14)を介して,前記一のノードの前記不揮発性メモリ(12)に書き込むステップ
とを前記ノード(1)に実行させる。
更に他の観点において,本発明によるコンピュータプログラムは,他のノード(1)との結合によってマルチプロセッサを構築することが可能に構成されたノード(1)に実行されるプログラムである。当該コンピュータプログラムは,
(D)前記ノード(1)と前記他のノード(1)とが結合されてマルチプロセッサとして動作している間に,前記ノード(1)が前記マルチプロセッサの分割処理を行う分割処理ノードとして選択されたとき,前記ノード(1)と前記他のノード(1)とのそれぞれの前記障害情報(12b)を,前記ノード(1)と前記他のノード(1)とのうちの一のノードに含まれるブリッジ回路(14)を介して,前記一のノードの不揮発性メモリ(12)から読み出すステップと,
(E)読み出された前記障害情報(12b)のそれぞれを,前記ノード(1)及び前記他のノード(1)の対応する主記憶装置(11)に格納するステップと,
(F)前記ノード(1)の前記主記憶領域に格納された前記障害情報(12b)を,前記ノード(1)の不揮発性メモリ(12)に保存するステップ
とを前記ノード(1)に実行させる。
本発明により、複数のノードを必要に応じて結合することによってマルチプロセッサとして動作させ得るように構成されたコンピュータシステムにおいて,ノードの結合の前後の障害情報の引き継ぎを低コストのアーキテクチャで実現することが可能になる。
また,本発明により,複数のノードを必要に応じて結合することによってマルチプロセッサとして動作させ得るように構成されたコンピュータシステムにおいて,ノードの結合の前後の障害情報の引き継ぎを標準的なPCアーキテクチャと相反せずに実現することが可能になる。
(1)コンピュータシステムの構成
本発明の実施の一形態では,図1に示されているように,コンピュータシステムは,N個のノード1を備えている。以下において,ノード1を互いに区別する必要がある場合,ノード1は,それぞれ,ノード#1,#2,…,#Nと記載される。ノード1は,いずれも,独立して動作可能なコンピュータシステムであり,いずれもPCアーキテクチャに従って設計されている。ノード1は,ノード間接続装置2によって接続されている。ノード間接続装置2を介して相互に結合されることにより,複数のノード1は,密結合マルチプロセッサとして動作可能である。結合後の密結合マルチプロセッサも,PCアーキテクチャに従って動作する。ノード間接続装置2としては,クロスバースイッチのような高速なスイッチが使用される。
図2に示されているように,各ノード1は,CPU10と,主記憶装置11と,NVRAM12と,ノースブリッジ13と,サウスブリッジ14と,PCIバス15とを備えている。主記憶装置11は,主記憶領域を各ノード1に提供する。ノースブリッジ13は,CPU10と主記憶装置11とを接続し,これらの間のデータの橋渡しをする。ノースブリッジ13は,ノード間接続装置2にも接続され,他のノード1のノースブリッジ13と通信可能である。ノード1の間の密結合は,ノースブリッジ13同士がノード間接続装置2を介して接続されることにより達成される。ノースブリッジ13は,サウスブリッジ14に接続されている。サウスブリッジ14は,ノースブリッジ13とPCIバス15との間のデータの橋渡しをする。サウスブリッジ14は,NVRAMアクセスコントローラ14aを内蔵しており,NVRAM12へのアクセスを可能にする。当業者にとって周知であるように,ノースブリッジ13とサウスブリッジ14とは,別々の半導体チップに搭載される場合があり,一のチップに集積化される場合もある。
NVRAM12は,ファームウエア(FW)12aと,各ノード1の障害情報12bとを格納している。ファームウェア12aは,ノード1の起動の制御に使用されるソフトウェアであり,ノード1の起動時にCPU10によって実行される。ファームウェア12aは,ノード1の結合,及び分離を制御する機能を有している。障害情報12bは,各ノード1が有する障害の内容を示す情報である。
PCIバス15には,各種の周辺装置が接続される。具体的には,PCIバス15には,起動デバイス16と,ビデオカード17とが接続されている。起動デバイス16は,ノード1において起動されるOS(operating system)16aを格納している。起動デバイス16としては,HDD(hard disk drive)及びCD−ROMドライブが例示される。ビデオカード17は,操作端末18に接続され,操作端末18とノード1との遣り取り(インターアクション)を可能にする。ユーザは,操作端末18を用いてノード1を操作することができる。例えば,ファームウェア12aが起動されたときには,操作端末18にファームウエア起動画面が表示され,OS16aが起動されたときには,OS16aを操作するための画面が表示される。
(2)ノード1の結合時におけるコンピュータシステムの動作
図3は,ノード1の結合時における,本実施の形態のコンピュータシステムの動作を示すフローチャートである。コンピュータシステムに対して起動指示がかかると,その起動指示に応答して,各ノード1のファームウェア12aが起動される(ステップA01,B01)。ファームウェア12aは,それぞれに対応するノード1の立ち上げ処理を開始する(ステップA02,B02)。
立ち上げ処理において,ファームウェア12aは,ノードの結合が要求されているかを判断する(ステップA03,B03)。いくつかの手法がノードの結合を要求するために使用され得る。例えば,ノード1とは別に,ノード1の結合・分割を要求するスイッチがコンピュータシステムに用意され,そのスイッチによってノードの結合をシステムに要求することが可能である。また,ノード1とは別に,管理用コントローラがコンピュータシステムに用意され,ファームウェア12aがその管理用コントローラに,ノードの結合が要求されているかを問い合わせることが可能である。
ノードの結合が要求されていない場合,ファームウェア12aは,通常の立ち上げ処理を実行する(ステップA04,B04)。
一方,ノードの結合が要求されている場合,ファームウェア12aは,障害情報12bを,ノードの結合によって構築される密結合マルチプロセッサに引き継ぐための処理を開始する。
障害情報12bの引き継ぎ処理では,まず,図4に示されているように,ファームウェア12aは,対応するノード1のNVRAM12から障害情報12bを読み出す(ステップA05,B05)。ファームウェア12aは,読み出した障害情報12bを,自ノード1の主記憶領域の所定のアドレスに格納する。
続いて,図3に示されているように,ノード1のうちから選択された一のノードは,ノード1を結合して密結合マルチプロセッサを構築するための処理を開始する(ステップA06〜A08)。選択されたノードは,以後,BSP(bootstrap processor)と呼ばれる。他のノードは,ノード1が結合されてマルチプロセッサが構築されるのを待つ(ステップB06)。
様々な方法が,BSPの特定の方法として使用され得る。例えば,最も小さいノード番号を有するノード1が,BSPとして選択され得る。また,ステップA01,B01において各ノード1に与えられる起動指示に,BSPを特定するための情報が含まれることが可能である。
密結合マルチプロセッサを構築するための処理では,まず,BSPのファームウェア12aが,ノード間接続装置2に対して,ノード1の間の結合を指示する結合指示を送る(ステップA06)。ノード間接続装置2は,結合指示に指示されているとおりにノード1を結合する。
更にBSPのファームウェア12aは,図4に示されているように,メモリマップの再構築を行い,結合指示に指示されているノード1の主記憶装置11を,全体として一の主記憶領域として認識する(ステップA07)。認識されたその一の主記憶領域が,ノード1の結合によって構築される密結合マルチプロセッサの主記憶領域として使用される。これにより,BSPのファームウェア12aは,密結合マルチプロセッサの主記憶領域に障害情報12bが格納されていると認識することになる。ただし,ノード1の主記憶装置11が提供する記憶領域の全体が,密結合マルチプロセッサの主記憶領域として認識される必要はないことに留意されるべきである。BSPのファームウェア12aは,ノード1の主記憶装置11それぞれが提供する記憶領域から障害情報12bを含む部分のみを選択し,選択された部分を,全体として,密結合マルチプロセッサの一の主記憶領域と認識することが可能である。この動作は,ノード1のそれぞれに,必要なローカルメモリを残しておくために有用である。
メモリマップの再構築の完了後,BSPのファームウェア12aは,密結合マルチプロセッサの主記憶領域の所定のアドレスから各ノード1の障害情報12bを読み出し,読み出された障害情報12bをそのBSPが有するNVRAM12にサウスブリッジ14を介して書き込む(ステップA08)。この結果,BSPのNVRAM12には,結合に関与した全てのノード1の障害情報12bが格納される。ステップA05,B05において障害情報12bが各ノード1の主記憶領域の所定のアドレスに格納されることは,ステップA08において,統合によって生成された主記憶領域からBSPのファームウェア12aが障害情報12bを読み出すことを容易にするために重要である。障害情報12bが各ノード1の主記憶領域の所定のアドレスに格納され,その主記憶領域がまとめて一の主記憶領域として再認識されることにより,BSPは,障害情報12bが,ノードの結合後に主記憶領域のいずれのアドレスに格納されているかを,予め知ることができる。これは,BSPが,ノードの結合後に障害情報12bを読み出す上で好適である。
BSPのファームウェア12aは,BSPが有するサウスブリッジ14を活性化し,他のサウスブリッジ14を非活性化する。これにより,構築された密結合マルチプロセッサは,結合に関与した全てのノード1の障害情報12bを参照することが可能になる。密結合マルチプロセッサは,以後,PCアーキテクチャに従った動作を行う。
本実施の形態において,結合に関与したノード1の障害情報12bは,BSPのNVRAM12ではなく,BSP以外から選択された一のノード1に含まれるNVRAM12に記憶されることが可能である。この場合,BSPのサウスブリッジ14の代わりに選択された当該一のノード1のサウスブリッジ14が活性化され,BSPのサウスブリッジ14は非活性化される。
(2)密結合マルチプロセッサの分割時におけるコンピュータシステムの動作
図5は,密結合マルチプロセッサの分割時における,本実施の形態のコンピュータシステムの動作を示すフローチャートである。コンピュータシステムに対して,マルチプロセッサの分割指示を含む起動指示が与えられると,ノード1のうちから選択された一のノードのファームウェア12aは,密結合マルチプロセッサを各ノード1に分割する分割処理を開始する(ステップA11)。ステップA11で選択されるノードは,以下,分離処理ノードと呼ばれる。分離処理ノードは,上述のBSPと同じであることも,異なることも可能である。
図6に示されているように,分離処理ノードは,結合に関与した全てのノード1の障害情報12bをBSPのNVRAM12からサウスブリッジ14を介して読み出す。結合に関与した全てのノード1の障害情報12bは,結合時に,BSPのNVRAM12に書き込まれることに注意されたい。障害情報12bには,ノード1が密結合マルチプロセッサとして動作している間に,ノード1に発生した障害に関する情報が含まれている。分離処理ノードは,障害情報12bのそれぞれを,密結合マルチプロセッサの主記憶領域の所定のアドレスに格納する(ステップA12)。各ノード1の障害情報12bが格納されるアドレスは,各障害情報12bが,密結合マルチプロセッサの主記憶領域内の,対応するノード1の主記憶装置11に対応する部分に存在するように定められる。
図5に戻って,障害情報12bの主記憶領域への格納が完了すると,分離処理ノードは,ノード間接続装置2に,ノード1を相互に分離することを指示する分離指示を出す。ノード間接続装置2は,分離指示に応答して,結合されたノード1の間のデータの橋渡しを停止する。
更に,分離処理ノードは,全てのノード1に対して,メモリ保存型のシステム再起動(いわゆる,ウォームリブート)を実行させる(ステップA23)。メモリ保存型のシステム再起動により,各ノード1の主記憶装置11に格納されているデータが保存されたまま,各ノード1のファームウェア12aが起動される(ステップA24,B24)。メモリ保存型のシステム再起動により,各ノード1のファームウェア12aは,その主記憶領域に自己の障害情報12bが格納されていると認識することになる。続いてファームウェア12aは,各ノード1の立ち上げ処理を開始する(ステップA25,B25)。
立ち上げ処理において,各ノード1のファームウェア12aは,密結合マルチプロセッサの分割が要求されているかを判断する(ステップA26,B26)。いくつかの手法が分割を要求するために使用され得る。例えば,ノード1とは別に,ノード1の結合・分割を要求するスイッチがコンピュータシステムに用意され,そのスイッチによってノードの結合を要求することが可能である。また,ノード1とは別に,管理用コントローラがコンピュータシステムに用意され,ファームウェア12aがその管理用コントローラに,マルチプロセッサの分割が要求されているかを問い合わせることが可能である。
マルチプロセッサの分割(及びノードの結合)が要求されていない場合,各ノード1のファームウェア12aは,通常の立ち上げ処理を実行する(ステップA27,B27)。
一方,マルチプロセッサの分割が要求されている場合,ファームウェア12aのそれぞれは,対応する自ノード1の主記憶空間から障害情報12bを読み出し,自ノード1のNVRAM12に格納する(ステップA28,B28)。メモリ保存型のシステム再起動では,主記憶空間に格納されているデータが初期化されないことに留意されたい。以上の過程により,密結合マルチプロセッサの分割時に,密結合マルチプロセッサから各ノード1に障害情報を引き継ぐことが可能である。
本実施の形態において,障害情報の引き継ぎが,ファームウェア12aによって実施されることは重要である。ファームウェア12aによって障害情報の引き継ぎが行われていることは,障害情報の管理専用のハードウエアを不要化し,コストの抑制に有利である。
以上に説明されているように,本実施の形態のコンピュータシステムは,各ノード1と,それらの結合によって構築される密結合マルチプロセッサとの間で障害情報を円滑に引き継ぐことができる。
図1は、本発明の実施の一形態におけるコンピュータシステムの構成を示すブロック図である。 図2は、本実施の形態のコンピュータシステムのノードの構成を示すブロック図である。 図3は、ノードの結合時におけるコンピュータシステムの動作を示すフローチャートである。 図4は、障害情報がノードから密結合マルチプロセッサに引き継がれる過程を示すブロック図である。 図5は、密結合マルチプロセッサの分割時におけるコンピュータシステムの動作を示すフローチャートである。 図6は、障害情報が密結合マルチプロセッサから各ノードに引き継がれる過程を示すブロック図である。
符号の説明
1:ノード
2:ノード間接続装置
10:CPU
11:主記憶装置
12:不揮発性メモリ(NVRAM)
12a:ファームウェア(FW)
12b:障害情報
13:ノースブリッジ
14:サウスブリッジ
15:PCIバス
16:起動デバイス
16a:OS
17:ビデオカード
18:操作端末

Claims (11)

  1. 複数のノードを備え,
    前記複数のノードのそれぞれは,前記複数のノードのそれぞれの障害情報を記憶する不揮発性メモリを含み,
    前記複数のノードに,前記複数のノードの結合によってマルチプロセッサを構築するように要求する結合要求が管理用コンピュータから与えられたとき,前記複数のノードの前記障害情報は,対応する前記不揮発性メモリからそれぞれに読み出され,前記複数のノードから選択された一のノードに含まれる不揮発性メモリに書き込まれる
    コンピュータシステム。
  2. 請求項1に記載のコンピュータシステムにおいて,
    前記複数のノードのそれぞれは,
    主記憶装置と,
    前記不揮発性メモリに接続されたブリッジ回路
    とを更に含み,
    前記複数のノードに前記結合要求が前記管理用コンピュータから与えられたとき,(a)前記複数のノードのそれぞ
    れは,それぞれの前記障害情報をそれぞれの前記主記憶装置に格納し,(b)前記複数のノードのうちから選択された結合処理ノードは,前記複数のノードの前記主記憶装置それぞれの,前記障害情報が記憶された領域を含む少なくとも一部の領域を,全体として前記マルチプロセッサの一の主記憶領域として認識し,且つ,前記マルチプロセッサの前記主記憶領域から前記障害情報を読み出して,読み出された前記障害情報を前記一のノードに含まれるブリッジ回路を介して前記一のノードに含まれる前記不揮発性メモリに書き込む
    コンピュータシステム。
  3. 請求項2に記載のコンピュータシステムにおいて,
    前記マルチプロセッサが構築された後は,前記一のノード以外のノードの前記ブリッジ回路が非活性化される
    コンピュータシステム。
  4. 請求項2に記載のコンピュータシステムにおいて,
    前記複数のノードが結合されてマルチプロセッサとして動作しているときに,前記複数のノードに独立して動作するように要求する分割要求が前記管理用コンピュータから与えられたとき,前記複数のノードのうちから選択された分割処理ノードは,前記複数のノードのそれぞれの前記障害情報を,前記一のノードに含まれる前記ブリッジ回路を介して読み出し,読み出された前記障害情報を,それぞれ,対応する前記ノードの前記主記憶装置に格納し,前記複数のノードのそれぞれは,それぞれの前記主記憶装置に格納された前記障害情報を,それぞれが含む前記不揮発性メモリに保存する
    コンピュータシステム。
  5. 複数のノードを備え,
    前記複数のノードのそれぞれは,
    主記憶装置と,
    不揮発性メモリと,
    前記不揮発性メモリに接続されたブリッジ回路
    とを備え,
    前記複数のノードのうちの一のノードに含まれる前記不揮発性メモリは,前記複数のノードそれぞれの障害情報を記憶し,
    前記複数のノードが結合されてマルチプロセッサとして動作しているときに,前記複数のノードに独立して動作するように要求する分割要求が管理用コンピュータから与えられたとき,前記複数のノードのうちから選択された分割処理ノードは,前記複数のノードのそれぞれの前記障害情報を,前記一のノードに含まれる前記ブリッジ回路を介して読み出し,読み出された前記障害情報を,それぞれ,対応する前記ノードの前記主記憶装置に格納し,前記複数のノードのそれぞれは,それぞれの前記主記憶装置に格納された前記障害情報を,それぞれが含む前記不揮発性メモリに保存する
    コンピュータシステム。
  6. 複数のノードを具備するコンピュータシステムの動作方法であって,
    (a)前記複数のノードのそれぞれが,複数のノードの結合によってマルチプロセッサを構築するように要求する結合要求を管理用コンピュータが出しているかを検出するステップと,
    (b)前記複数のノードのそれぞれが,前記結合要求に応答して,前記複数のノードそれぞれの障害情報を前記複数のノードのそれぞれが有する不揮発性メモリから読み出し,前記複数のノードそれぞれの主記憶装置にそれぞれに格納するステップと,
    (c)前記複数のノードのうちから選択されたBSP(bootstrap processor)が,前記複数のノードの前記主記憶装置それぞれの,前記障害情報が記憶された領域を含む少なくとも一部の領域を,全体として,前記マルチプロセッサの一の主記憶領域として認識するステップと,
    (d)前記BSPが,前記マルチプロセッサの前記主記憶領域から前記障害情報を読み出して,読み出された前記障害情報を,前記複数のノードのうちから選択された一のノードに含まれるブリッジ回路を介して前記一のノードに含まれる前記不揮発性メモリに書き込むステップ
    を備えた
    コンピュータシステム動作方法。
  7. 請求項6に記載のコンピュータシステム動作方法において,
    更に,
    (e)前記BSPが,前記一のノード以外のノードに含まれるブリッジ回路を非活性化するステップ
    を備えた
    コンピュータシステム動作方法。
  8. 請求項6に記載のコンピュータシステム動作方法において,
    更に,
    (f)前記複数のノードのそれぞれが,前記複数のノードが結合されてマルチプロセッサとして動作しているときに,前記複数のノードに独立して動作するように要求する分割要求を管理用コンピュータが出しているかを検出するステップと,
    (g)前記複数のノードから選択された分離処理ノードが,前記一のノードに含まれる前記不揮発性メモリに格納されている前記障害情報を,前記一のノードに含まれる前記ブリッジ回路を介して読み出すステップと,
    (h)前記分離処理ノードが,読み出された前記障害情報を,それぞれ,対応する前記ノードの前記主記憶装置に格納するステップと,
    (i)前記複数のノードのそれぞれが,前記複数のノードそれぞれの前記主記憶領域に格納された前記障害情報を,それぞれが含む前記不揮発性メモリに保存するステップ
    とを備えた
    コンピュータシステム動作方法。
  9. 請求項8に記載のコンピュータシステム動作方法において,
    前記(h)ステップは,
    (h1)前記分離処理ノードが,前記複数のノードの前記障害情報を,それぞれ,前記マルチプロセッサの主記憶領域の,前記複数のノードそれぞれの前記主記憶装置に対応する部分に格納するステップと,
    (h2)前記分離処理ノードが,前記複数のノード,前記主記憶装置の記憶内容を保存したまま再起動を実行させるステップ
    とを含む
    コンピュータシステム動作方法。
  10. 他のノードとの結合によってマルチプロセッサを構築することが可能に構成されたノードに実行されるプログラムであって,
    (A)前記管理用コンピュータから与えられた、前記ノードと前記他のノードとの結合によってマルチプロセッサを構築するように要求する結合要求に応答して,前記ノードの不揮発性メモリに記憶されている障害情報を前記ノードに含まれているブリッジ回路を介して読み出して前記ノードの主記憶装置に格納するステップと,
    (B)前記ノードが前記マルチプロセッサの起動処理を行う結合処理ノードとして選択されたときに,前記ノードの前記主記憶装置及び前記他のノードの主記憶装置それぞれの,前記障害情報が記憶された領域を含む少なくとも一部の領域を,全体として,前記マルチプロセッサの一の主記憶領域として認識するステップと,
    (C)認識された前記マルチプロセッサの前記主記憶領域から前記障害情報を読み出して,読み出された前記障害情報を,前記ノードと前記他のノードのうちから選択された一のノードに含まれるブリッジ回路を介して,前記一のノードの前記不揮発性メモリに書き込むステップ
    とを前記ノードに実行させる
    コンピュータプログラム。
  11. 他のノードとの結合によってマルチプロセッサを構築することが可能に構成されたノードに実行されるコンピュータプログラムであって,
    (D)前記ノードと前記他のノードとが結合されてマルチプロセッサとして動作している間に,前記ノードと前記他のノードとを含むコンピュータシステムに与えられた分割指示によって前記ノードが前記マルチプロセッサの分割処理を行う分割処理ノードとして選択されたとき,前記ノードと前記他のノードとのそれぞれの前記障害情報を,前記ノードと前記他のノードとのうちの一のノードに含まれるブリッジ回路を介して,前記一のノードの不揮発性メモリから読み出すステップと,
    (E)読み出された前記障害情報のそれぞれを,前記ノード及び前記他のノードの対応する主記憶装置に格納するステップと,
    (F)前記ノードの前記主記憶領域に格納された前記障害情報を,前記ノードの不揮発性メモリに保存するステップ
    とを前記ノードに実行させる
    コンピュータプログラム。
JP2003410780A 2003-12-09 2003-12-09 コンピュータシステム及びプログラム Expired - Fee Related JP4023441B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003410780A JP4023441B2 (ja) 2003-12-09 2003-12-09 コンピュータシステム及びプログラム
US11/004,873 US7430687B2 (en) 2003-12-09 2004-12-07 Building-up of multi-processor of computer nodes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003410780A JP4023441B2 (ja) 2003-12-09 2003-12-09 コンピュータシステム及びプログラム

Publications (2)

Publication Number Publication Date
JP2005173830A JP2005173830A (ja) 2005-06-30
JP4023441B2 true JP4023441B2 (ja) 2007-12-19

Family

ID=34696845

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003410780A Expired - Fee Related JP4023441B2 (ja) 2003-12-09 2003-12-09 コンピュータシステム及びプログラム

Country Status (2)

Country Link
US (1) US7430687B2 (ja)
JP (1) JP4023441B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006178636A (ja) * 2004-12-21 2006-07-06 Nec Corp フォールトトレラントコンピュータ、およびその制御方法
EP1783604A3 (en) * 2005-11-07 2007-10-03 Slawomir Adam Janczewski Object-oriented, parallel language, method of programming and multi-processor computer
JP5359410B2 (ja) * 2009-03-12 2013-12-04 日本電気株式会社 障害対応システムおよび障害対応方法
US20150294119A1 (en) * 2014-04-10 2015-10-15 International Business Machines Corporation Booting a multi-node computer system from a primary node dynamically selected based on security setting criteria

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086909A (ja) 1994-06-22 1996-01-12 Hitachi Ltd 並列計算機システム
JP2723073B2 (ja) 1995-03-17 1998-03-09 日本電気株式会社 コンピュータシステムの障害ログ情報取得方式
US5845071A (en) * 1996-09-27 1998-12-01 Hewlett-Packard Co. Error containment cluster of nodes
US6332165B1 (en) * 1997-09-05 2001-12-18 Sun Microsystems, Inc. Multiprocessor computer system employing a mechanism for routing communication traffic through a cluster node having a slice of memory directed for pass through transactions
US6199179B1 (en) * 1998-06-10 2001-03-06 Compaq Computer Corporation Method and apparatus for failure recovery in a multi-processor computer system
JPH11212836A (ja) 1997-11-18 1999-08-06 Hitachi Ltd 障害処理方法及びその実施装置並びにその処理プログラムを記録した媒体
JP2000194584A (ja) 1998-12-28 2000-07-14 Hitachi Ltd 障害情報の収集・通知方法及び障害情報収集・通知プログラムを記録したコンピュ―タ読み取り可能な記録媒体
JP3266126B2 (ja) * 1999-01-14 2002-03-18 日本電気株式会社 ネットワーク障害情報管理システム及び記憶媒体
JP2001109702A (ja) 1999-10-06 2001-04-20 Nec Corp クラスタシステムにおけるシステム情報収集方式
US6654908B1 (en) * 2000-04-29 2003-11-25 Hewlett-Packard Development Company, L.P. Method for and system producing shared usage of intercommunication fabric error logging registers in a multiprocessor environment
US6990606B2 (en) 2000-07-28 2006-01-24 International Business Machines Corporation Cascading failover of a data management application for shared disk file systems in loosely coupled node clusters
US6842870B2 (en) * 2001-09-20 2005-01-11 International Business Machines Corporation Method and apparatus for filtering error logs in a logically partitioned data processing system

Also Published As

Publication number Publication date
JP2005173830A (ja) 2005-06-30
US20050144506A1 (en) 2005-06-30
US7430687B2 (en) 2008-09-30

Similar Documents

Publication Publication Date Title
US7930371B2 (en) Deployment method and system
US6785746B1 (en) Dual-channel SCSI chips and methods for configuring separate interoperability of each channel of the SCSI chip
US7711941B2 (en) Method and apparatus for booting independent operating systems in a multi-processor core integrated circuit
US10789141B2 (en) Information processing device and information processing method
US11334427B2 (en) System and method to reduce address range scrub execution time in non-volatile dual inline memory modules
JP2007004787A (ja) コンピュータシステムの高速ブート
JP2005301639A (ja) Osの障害対応方法およびそのプログラム
US20050240669A1 (en) BIOS framework for accommodating multiple service processors on a single server to facilitate distributed/scalable server management
JP4759941B2 (ja) 起動イメージ提供システム及び方法、ブートノード装置、ブートサーバ装置並びにプログラム
JP2007080012A (ja) 再起動方法、システム及びプログラム
JP2001022598A (ja) 計算機システム
JP4023441B2 (ja) コンピュータシステム及びプログラム
JP5609333B2 (ja) 起動処理方法、情報処理装置、起動処理プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
JP4190859B2 (ja) 記憶装置の制御装置、及び記憶装置の制御装置の制御方法
JP2001022599A (ja) フォールトトレラント・システム,フォールトトレラント処理方法およびフォールトトレラント制御用プログラム記録媒体
US20200364040A1 (en) System and Method for Restoring a Previously Functional Firmware Image on a Non-Volatile Dual Inline Memory Module
JP3514651B2 (ja) リブート制御装置
JP4569368B2 (ja) 計算機システム、メモリ初期化方法、および計算機システムのプログラム
JP4791792B2 (ja) デジタルシグナルプロセッサシステムおよびそのブート方法。
TWI840849B (zh) 計算系統、電腦實施方法及電腦程式產品
JP4853620B2 (ja) マルチプロセッサシステムと初期立ち上げ方法およびプログラム
US20240036881A1 (en) Heterogeneous compute domains with an embedded operating system in an information handling system
TWI222557B (en) Diagnostic method for EFI (extensible firm interface)
TW202338602A (zh) 計算系統、電腦實施方法及電腦程式產品
JP2001051854A (ja) 情報管理システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070622

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070821

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070924

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111012

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121012

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131012

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees