(57)【特許請求の範囲】
【請求項１】
複数のプロセッサが稼働する運用セルボードと、実質的に１のプロセッサのみが稼働する省電力セルボードとを具え、前記運用セルボードと前記省電力セルボードとがバスで接続された情報処理システムの省電力制御方法であって、
前記運用セルボードから省電力セルボードへと運用を切り替えるステップと、
前記省電力セルボードから運用セルボードへ処理を戻すステップとを具え、
前記運用セルボードから省電力セルボードへと運用を切り替えるステップがさらに、前記運用セルボードから省電力セルボードへの切り替え時期を判断するステップと、前記運用セルボードにおける稼働中のプロセッサの内部状態をメモリに保存するステップと、前記省電力セルボードを起動して前記メモリの内容を前記省電力セルボードのメモリにコピーするステップと、前記省電力セルボードのプロセッサにメモリの内容を読み込むステップと、前記運用セルボードの電源を遮断するステップとを具え、
前記省電力セルボードから運用セルボードへ処理を戻すステップがさらに、前記省電力セルボードから運用セルボードへの切り替え時期を判断するステップと、前記省電力セルボードのプロセッサの内部状態をメモリに保存するステップと、前記運用セルボードを起動して前記メモリの内容を前記運用セルボードのメモリにコピーするステップと、前記運用セルボードのプロセッサにメモリの内容を読み込むステップと、前記省電力セルボードの電源を遮断するステップとを具えることを特徴とする省電力制御方法。
【請求項２】
請求項１に記載の方法において、前記運用セルボードから省電力セルボードへの切り替え時期を判断するステップは、前記運用セルボードの負荷が下がることにより停止されたプロセッサが所定数以上あり、かつその状態が所定期間続いている場合にセルボードの切り替えを判断することを特徴とする省電力制御方法。
【請求項３】
複数のプロセッサが稼働する運用セルボードと、実質的に１のプロセッサのみが稼働する省電力セルボードと、前記セルボード間の運用切り替えを実行する制御手段と、各プロセッサの縮退時にその内部状態が保存されるメモリとを具え、前記運用セルボードと前記省電力セルボードとがバスで接続された情報処理システムにおいて、
前記制御手段は、前記運用セルボードから前記省電力セルボードへの切り替え時期を判断し、前記運用セルボードで稼働中のプロセッサの内部状態をメモリに保存し、前記省電力セルボードを起動して前記メモリの内容を前記省電力セルボードのメモリにコピーし、前記省電力セルボードのプロセッサに展開し、前記運用セルボードの電源を遮断することにより前記運用セルボードから省電力セルボードへ処理を切り替え、
前記制御手段は、前記システムの負荷が所定レベルを超えた場合に、前記省電力セルボードのプロセッサの内部状態をメモリに保存し、前記運用セルボードを起動して前記メモリの内容を前記運用セルボードのメモリにコピーし、前記運用セルボードのプロセッサに展開し、前記省電力セルボードの電源を遮断することにより前記省電力セルボードから運用セルボードへ処理を切り替えることを特徴とする情報処理システム。
【請求項４】
請求項３に記載の情報処理システムにおいて、前記運用セルボードから省電力セルボードへの切り替え時期の判断は、前記運用セルボードの負荷が下がることにより停止されたプロセッサが所定数以上あり、かつその状態が所定期間続いている場合に行われることを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムおよびその制御方法に関し、特に、複数のプロセッサが１つのバスに接続されているマルチプロセッサ構成において省電力を達成する情報処理システムおよびその制御方法に関する。
【背景技術】
【０００２】
複数のプロセッサを具えるマルチプロセッサシステムにおいて、省電力を実現するために、プロセッサの負荷に応じて動作周波数を制御することで電力消費を抑える方法がある。しかしながら、動作周波数を抑えても各プロセッサが稼働していることは変わらず、省電力効果には限界がある。また、すべてのプロセッサの電源を落として休止状態とする省電力機能もあるが、この場合システムが停止してしまうため、２４時間運転稼働が求められるサーバでの運用に用いることができなかった。業務負荷が下がったときに使わなくなったプロセッサを切り離して電源を落とすことができれば当該プロセッサの消費電力をゼロにすることができるが、現在のシステムでは複数のプロセッサが１つのバスで構成されているため、特定のプロセッサだけ電源を落として切り離すことは不可能であった。
【０００３】
ところで、マルチプロセッサシステムにおいて電源ＯＮを維持したまま保守理由でＣＰＵを交換できるようにした情報処理システムが提案されている（例えば、特許文献１）。これによると、ＯＳが動的ＣＰＵ交換のための機能を有したものでなくても、ＯＳをシャットダウンすることなくその装置のＣＰＵを交換することができる。
【特許文献１】特開２００３−２５６３９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
解決しようとする課題は、マルチプロセッサシステムにおいて業務負荷が下がった場合に使用していないプロセッサの消費電力をゼロまで落とす省電力システムがないことである。
【課題を解決するための手段】
【０００５】
本発明にかかる省電力制御方法は、複数のプロセッサが稼働する運用セルボードと、実質的に１のプロセッサのみが稼働する省電力セルボードとを具える情報処理システムの省電力制御方法であって、前記運用セルボードから省電力セルボードへと運用を切り替えるステップと、前記省電力セルボードから運用セルボードへ処理を戻すステップとを具え、前者のステップが、前記運用セルボードから省電力セルボードへの切り替え時期を判断するステップと、前記運用セルボードにおける稼働中のプロセッサの内部状態をメモリに保存するステップと、前記省電力セルボードを起動して前記メモリの内容を前記省電力セルボードのメモリにコピーするステップと、前記省電力セルボードのプロセッサにメモリの内容を読み込むステップと、前記運用セルボードの電源を遮断するステップとを具えることを特徴とする。
【０００６】
また、前記省電力セルボードから運用セルボードへ処理を戻すステップは、前記省電力セルボードから運用セルボードへの切り替え時期を判断するステップと、前記省電力セルボードのプロセッサの内部状態をメモリに保存するステップと、前記運用セルボードを起動して前記メモリの内容を前記運用セルボードのメモリにコピーするステップと、前記運用セルボードのプロセッサにメモリの内容を読み込むステップと、前記省電力セルボードの電源を遮断するステップとを具えることを特徴とする。
【０００７】
さらに、前記運用セルボードから省電力セルボードへの切り替え時期を判断するステップは、前記運用セルボードの負荷が下がることにより停止されたプロセッサが所定数以上あり、かつその状態が所定期間続いている場合にセルボードの切り替えを判断することが望ましい。
【発明の効果】
【０００８】
本発明によると、複数のプロセッサが稼働する通常時用の運用セルボードとは別に、実質的に１のプロセッサのみが稼働する省電力セルボードを用意し、システムの負荷が下がった場合に運用を省電力セルボードへ切り替えて運用セルボードの電源を落とすため、通常時用の運用セルボードに搭載されたプロセッサの消費電力をゼロにまで下げることができる。
【０００９】
また、省電力セルボードでの運用時に負荷が上がった場合には通常時用の運用セルボードを復帰させることができるため、要求される処理能力に応えつつ省電力の運用を実現することができる。
【００１０】
また、運用セルボードのプロセッサの停止数やその時間でセルボードの切り替えを判断するようにしており、簡単な構成で適切なタイミングで省電力運用を実現することができる。
【発明を実施するための最良の形態】
【００１１】
本発明を実施するための最良の形態について、添付の図面を参照しながら以下に詳細に説明する。図１は、本発明の実施例にかかる情報処理システムの構成を示す概略図である。このシステム１０はマルチプロセッサ型のコンピュータシステムであり、通常時用の運用セルボード２０と、省電力運用用の省電力セルボード３０と、サービスプロセッサ４０と、チップセット７０とで構成されている。運用セルボード２０は、複数のＣＰＵ２３、ＣＰＵ２４、・・・ＣＰＵ２ｎと、メモリ２１と、ＢＩＯＳ  ＲＯＭ２２とを具えている。これに対し省電力セルボード３０は、１つあるいは複数であるが１つ以外はステータスがディセーブルの状態のＣＰＵ３３と、メモリ３１と、ＢＩＯＳ  ＲＯＭ３２とを具えている。ＢＩＯＳ  ＲＯＭ２２、４３にはそれぞれ、システム全体の制御を司るＢＩＯＳと呼ばれるファームウェア５０が格納されている。
【００１２】
図１に示す通常運用時には、運用セルボード２０上でコンピュータシステム１０のオペレーティングシステム（以下、「ＯＳ」と称す。）６０が動作している。また、省電力セルボード３０上のＣＰＵは電源が入っていない状態にある。なお、運用セルボード２０のＣＰＵ２３、２４、・・・２ｎはシステムの負荷状態により順次休止状態へと遷移するが、その場合にもＣＰＵ２３は代表ＣＰＵとして最後まで動作するものとして設定される。
【００１３】
図２（ａ）は、ファームウェア５０の概略構成を示す図である。このファームウェア５０は、ＯＳ６０が特定の命令を発行したときや、ＣＰＵを起動させる際に発生する割り込み命令を受け付ける割り込み受付手段５１と、ＣＰＵの状態を更新するためのＣＰＵ状態更新手段５２と、メモリ上に登録される各ＣＰＵの起動状態を参照して休止状態のＣＰＵ数を確認する休止ＣＰＵ数確認手段５３と、ＣＰＵの休止時間を監視する休止時間確認手段５４と、ＣＰＵを休止状態へ遷移させるための休止命令発行手段５５と、サービスプロセッサ４０へ各セルボードの電源ＯＮやスワップを指示するためのサービスプロセッサ通信手段５６と、ＣＰＵの内部情報をメモリへコピー、またはメモリからＣＰＵへ内部情報をロードするためのＣＰＵセーブ／リストア手段５７と、必要に応じて休止しているＣＰＵに割り込みを発行して起動させるＣＰＵ起動手段５８と、ＯＳから割り込み命令を受けた場合にスワップ契機となる割り込みベクタか否かを判断する割り込みベクタ確認手段５９とを具える。
【００１４】
図２（ｂ）は、ＯＳ６０の機能手段を説明する図である。本図に示すように、ＯＳ６０は、ＣＰＵを休止状態にするときに特定命令を発行するための特定命令発行手段６１と、休止状態のＣＰＵを起動させる際にセルボードのスワップ（切り替え）契機を意味する割り込みベクタを設定するための割り込みベクタ設定手段６２とを具えている。
【００１５】
図２（ｃ）は、チップセット７０の機能を説明するための図である。本図に示すように、チップセット７０は、セルボードをスワップする際に、セルボードのメモリにある全データをコピーするメモリコピー機能７１を具える。
【００１６】
図３は、メモリ２１、３１の登録内容の一例を示す図である。本図に示すように、メモリ２１／３１には、各ＣＰＵの起動状態を格納するＣＰＵ起動情報２１１／３１１が保持される。これは例えば、稼働中のＣＰＵは「１」を、休止状態のＣＰＵは「０」といったステータスを格納することにより行う。また、メモリ２１／３１は、スワップの際に各ＣＰＵの内部情報を格納するためのセーブエリア２１２／３１２を具えている。これらのメモリ２１、３１には、システムの立ち上げ途中でファームウェア５０がアップロードされる。
【００１７】
次に、本発明にかかる情報処理システムの動作について以下に詳細に説明する。図６は、運用セルボードでの通常運用時において、負荷が下がった場合にいくつかのＣＰＵを休止状態とする処理を説明するフローチャートである。システムの負荷はＯＳ６０が監視しており、予め設定されたレベルまで下がると運用セルボードの不要なＣＰＵを休止するための特定命令を発行する。この命令を発行するとファームウェア５０へ割り込みがあがるよう構成されており、ファームウェア５０は割り込み受付手段５１によりこの割り込みを受け付ける（ステップＡ１）。
【００１８】
割り込みを受け付けたファームウェア５０は、ＣＰＵ状態更新手段５２により、メモリ２０にあるＣＰＵ起動状態を休止状態に変更する（ステップＡ２）。これは例えば、状態の値を起動状態を示す「１」から休止状態を示す「０」に変更することにより行う。その後、ＣＰＵセーブ／リストア手段５７により、自身のコンテキストなど内部状態をメモリ２１の該当するＣＰＵ情報格納エリア２１１の領域に保存する（ステップＡ３）。その後、休止命令発行手段５５により休止状態に遷移する（ステップＡ４）。このようにして、システムの負荷状態に応じて個々のＣＰＵが休止状態へと遷移する。
【００１９】
図７は、スワップ契機の判断とスワップの実行動作を説明するためのフローチャートである。運用セルボード２０の代表ＣＰＵ２３上のファームウェア５０は、休止ＣＰＵ数確認手段５３がメモリ２０にあるＣＰＵ情報起動情報２１１の状態値を確認することにより、他のＣＰＵ（２４〜２ｎ）の起動状態を定期的にチェックしている（ステップＢ１）。ここで休止状態のＣＰＵ数が予め定められた閾値を超えた場合（ステップＢ２）、休止時間確認手段５４により所定期間以上この休止状態（所定数以上のＣＰＵが休止した状態）が続くか否かを監視する（ステップＢ３）。所定期間以上休止状態が続いた場合、省電力セルボード３０へのスワップ契機と判断して省電力ボードへの切り替えを開始する。
【００２０】
この処理では、まずサービスプロセッサ通信手段５６より省電力セルボード３０の電源ＯＮを指示する（ステップＢ４）。サービスプロセッサ５０から省電力セルボード３０の起動完了通知を受けたら（ステップＢ５）、代表ＣＰＵであるＣＰＵ２３上で動作しているファームウェア５０は、ＣＰＵセーブ／リストア手段５７により、現在運用セルボード２０で稼働しているＣＰＵのプロセッサ内部状態をメモリ２１へコピーする（ステップＢ６）。次に、ファームウェア５０は、チップセット７０が持つメモリコピー機能７１を使って、メモリ２１にあるすべてのデータを省電力セルボード３０のメモリ３１へコピーする（ステップＢ７）。コピー完了後、ファームウェア５０はサービスプロセッサ通信手段５６により、省電力セルボード３０へのスワップを指示する（ステップＢ８）。その後、省電力セルボード３０のＣＰＵ３３が起動される。
【００２１】
省電力セルボード３０のＣＰＵ３３で動作するファームウェア５０は、ステップＢ７でメモリ３１にコピーされたプロセッサ内部状態をメモリ内のＣＰＵ情報セーブエリアの該当領域からＣＰＵ３３へロードし、スワップ直前の状態に復帰する（ステップＢ９）。その後、省電力セルボード３０での運用を開始する（ステップＢ１０）。このとき、ＯＳ６０は省電力セルボード３０上で動作する。
【００２２】
なお、上記の省電力セルボード３０へのスワップ処理を視覚的に分かり易いように表現したものを図４に示す。
【００２３】
次に、上記のように省電力運用となったシステムにおいて、運用ボード２０への復旧動作について説明する。図８は、省電力セルボード３０での動作から運用ボード２０への復旧処理を説明するためのフローチャートである。ＯＳ６０はシステムの負荷を監視しており、負荷があがると休止状態であるＣＰＵをＷａｋｅｕｐさせて稼働状態に遷移させるべく、休止状態であるＣＰＵに割り込みを上げる（ステップＣ１）。このとき、運用セルボードでの動作中であれば休止状態のＣＰＵが立ち上がるが、省電力セルボードでの動作中であれば休止状態を解除するＣＰＵが存在しないため、これをスワップ契機と判断する。このような場合をふまえ、ＯＳ６０は割り込みベクタ設定手段６２により、スワップ契機であることを意味する割り込みベクタも設定しておく。省電力運用時、本来存在すべきＣＰＵに割り込みを上げるが、運用中の省電力セルボード３０には休止しているＣＰＵがないため、ファームウェア５０へ不正割り込みとして割り込みがあがる。これを割り込み受付手段５１で受けたファームウェア５０は、割り込みベクタ確認手段５９によりベクタ種別を確認する（ステップＣ２）。運用セルボード２０へのスワップのための不正割り込みであると判断したファームウェア５０は、スワップのための処理を開始する（ステップＣ３）。
【００２４】
この復旧処理では、省電力ボード３０へのスワップ時と同様に、まずサービスプロセッサ通信手段５６によりサービスプロセッサ４０へ運用セルボード２０の電源ＯＮを指示する（ステップＣ４）。ＣＰＵ３３は、サービスプロセッサ４０から運用ボード２０の起動完了通知を受けると（ステップＣ５）、プロセッサ内部状態をメモリ３１に保存する（ステップＣ６）。次に、ファームウェア５０はチップセット７０が持つメモリコピー機能７１を使って、省電力セルボード３０のメモリ３１の全データを運用セルボード２０のメモリ２１へコピーする（ステップＣ７）。運用セルボード２０で休止状態であったＣＰＵの内部情報は、省電力セルボード３０のメモリ３１上に保存してあるので、メモリ２１へ全データがコピーされることにより、引き継がれる。コピー完了後、サービスプロセッサ通信手段５６により運用セルボード２０へのスワップを指示する（ステップＣ８）。
【００２５】
運用セルボード２０へのスワップ完了通知を受けたら（ステップＣ９）、運用セルボード２０上のＣＰＵ３３で動作しているファームウェア５０は、ＣＰＵセーブ／リストア手段５７により、ＣＰＵ２３自身のＣＰＵ内部情報をメモリ２１の該当箇所からロードする（ステップＣ１０）。また、ファームウェア５０は、休止しているプロセッサ（ＣＰＵ２４〜ＣＰＵ２ｎ）のうち、Ｗａｋｅｕｐ指示対象ＣＰＵに対してＣＰＵ起動手段５８を実施して、休止状態のＣＰＵを起動する。起動した各ＣＰＵは、ＣＰＵ内部情報セーブ／リストア手段５７によりメモリ２１に格納されているプロセッサ内部情報を各々ロードすることで、休止前の状態に復帰する（ステップＣ１１）。ＣＰＵ２３自身もＯＳ運用状態に戻る。このようにして、運用セルボード２０でのＯＳ運用に復帰する（ステップＣ１２）。
【００２６】
なお、上記の運用セルボード２０への復帰を視覚的に分かり易いように表現したものを図５に示す。
【００２７】
以上に詳細に説明したように、本発明によると、システム稼働の負荷状況により省電力セルボードへ運用を移行させ、不要なプロセッサ分の消費電力を完全にゼロとすることができる。したがって、大幅な省電力効果を期待することができる。また、システムの負荷が高くなった場合は休止状態からの復旧にＢＩＯＳが絡むことにより、システムを再起動することなく省電力セルボードから元のシステム運用セルボードへ切り替えることが可能となる。
【産業上の利用可能性】
【００２８】
本発明は、複数のプロセッサが動作するマルチプロセッサ型のコンピュータシステムであって、特に負荷状況の変動が激しいシステムで好適に利用することができる。
【図面の簡単な説明】
【００２９】
【図１】図１は、本発明の実施例にかかる情報処理システムの構成を示す概略図である。
【図２】図２（ａ）はファームウェア５０の機能概要を示す図であり、図２（ｂ）はＯＳ６０の機能概要を示す図であり、図２（ｃ）はチップセット７０の機能概要を示す図である。
【図３】図３は、運用セルボード２０および省電力セルボード３０のメモリ内容を示す図である。
【図４】図４は、省電力セルボード３０へのスワップ処理を説明するための概略図である。
【図５】図５は、運用セルボード２０への復帰処理を説明するための概略図である。
【図６】図６は、運用セルボード２０でのＣＰＵの処理を説明するためのフローチャートである。
【図７】図７は、省電力セルボード３０へのスワップ処理を説明するためのフローチャートである。
【図８】図８は、運用セルボード２０への復帰処理を説明するためのフローチャートである。
【符号の説明】
【００３０】
１０    コンピュータシステム
２０    運用セルボード
２１    メモリ
２２    ＢＩＯＳ  ＲＯＭ
２３、２４、・・・２ｎ    ＣＰＵ
３０    省電力セルボード
３１    メモリ
３２    ＢＩＯＳ  ＲＯＭ
３３    ＣＰＵ
４０    サービスプロセッサ
７０    チップセット
【図１】
0005598945.tif 000002
【図２】
0005598945.tif 000003
【図３】
0005598945.tif 000004
【図４】
0005598945.tif 000005
【図５】
0005598945.tif 000006
【図６】
0005598945.tif 000007
【図７】
0005598945.tif 000008
【図８】
0005598945.tif 000009