JP5169729B2 - ノード装置、冗長システム、電力制御方法およびプログラム - Google Patents

ノード装置、冗長システム、電力制御方法およびプログラム Download PDF

Info

Publication number
JP5169729B2
JP5169729B2 JP2008272836A JP2008272836A JP5169729B2 JP 5169729 B2 JP5169729 B2 JP 5169729B2 JP 2008272836 A JP2008272836 A JP 2008272836A JP 2008272836 A JP2008272836 A JP 2008272836A JP 5169729 B2 JP5169729 B2 JP 5169729B2
Authority
JP
Japan
Prior art keywords
node
node device
power control
state
threshold
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
JP2008272836A
Other languages
English (en)
Other versions
JP2010102477A (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 JP2008272836A priority Critical patent/JP5169729B2/ja
Publication of JP2010102477A publication Critical patent/JP2010102477A/ja
Application granted granted Critical
Publication of JP5169729B2 publication Critical patent/JP5169729B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、冗長システムの稼動系としても待機系としても動作可能なノード装置に対する省電力技術に関する。
稼動系のノード装置(コンピュータ)と待機系のノード装置とを備え、稼動系のノード装置に障害が発生した場合、待機系のノード装置を稼動系に切り替えて処理を引き継がせるようにした冗長システムは高い信頼性を有する。しかし、冗長システムは、複数のノード装置が必要になるため、消費電力が多くなる。
一方、複数のプロセッサを備えたマルチプロセッサシステムに対する省電力技術として、次にような技術が知られている(例えば、特許文献1参照)。この特許文献1に記載されている技術は、複数のプロセッサを備えたマルチプロセッサシステムにおいて、各プロセッサ毎に、そのプロセッサの負荷と予め定められている閾値とを比較し、負荷が閾値以下になった場合、例えばそのプロセッサに供給するクロック周波数を通常状態よりも低下させることにより消費電力を低減させるというものである。
特開平8−6681号公報
特許文献1に記載されている技術によれば、システムの運用状況に応じて消費電力を低減することができる。しかし、特許文献1が対象にしているマルチプロセッサシステムのプロセッサは、本発明が対象にしている冗長システムのノード装置のようにノード状態の切り替え(待機系から稼動系への切り替えや、稼動系から待機系への切り替え)が行われないものであるので、特許文献1を利用して冗長システムの消費電力を低減しようとした場合には、次のような問題が生じる。
特許文献1に記載されている技術を利用して冗長システムの消費電力を低減させようとした場合の構成は、ノード装置毎に、そのノード装置の負荷と予め定められている閾値とを比較し、負荷が閾値以下になったとき、ノード装置の消費電力を低減させるという構成になる。ここで、ノード装置の消費電力の低減はクロック周波数の変更などのように、ノード装置の処理能力と密接に関係するパラメータの変更により行われるため、ノード装置の消費電力を低減させた場合には、一般的にその性能は低下することになる。
上記構成において、閾値として小さな値(例えば10%)を設定した場合を考えてみる。この場合は、ノード装置の負荷が10%というようにかなり小さくなるまで、ノード装置の消費電力は低下せず、ノード装置は高い性能を維持する。このことは、応答時間に制限があるジョブ等を処理する稼動系のノード装置にとっては、要求を処理するための性能を確保することができるので都合が良い。しかし、バックアップ処理やファイルロード処理など、処理時間に対する制限が緩い処理を行う待機系のノード装置にとっては、なかなか消費電力が低下しないことになるので、好ましくない。
次に、閾値として大きな値(例えば30%)を設定した場合を考えてみる。この場合は、ノード装置の負荷が30%というようにかなり大きくとも、ノード装置の消費電力が低下し、ノード装置の性能が低下してしまう。このことは、処理時間に対する制限が緩いバックアップ処理などを行う待機系にとっては、高い省電力効果を得られるので好ましい。しかし、応答時間に制限があるジョブ等を処理する稼動系にとっては、例えば、要求されている応答時間内に応答を返すことができなくなるなど、要求を処理するための性能を確保できなくなる危険性が高まるので好ましくない。
このように、特許文献1に記載されている技術を利用して冗長システムの消費電力を低減しようとした場合は、閾値の設定の仕方により、稼動系のノード装置が要求を処理するための処理能力を確保できなくなるという問題、あるいは、待機系のノード装置が十分な省電力効果を得ることができないという問題が発生する。
〔発明の目的〕
そこで、本発明の目的は、稼動系のノード装置として動作する場合には要求を処理するための性能を確保した上で消費電力を低減できるようにし、待機系のノード装置として動作する場合には高い省電力効果を得られるようにすることにある。
本発明にかかる第1のノード装置は、
第1の下降閾値と、該第1の下降閾値よりも大きい第2の下降閾値とが登録された閾値記憶部と、
自ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部と、
自ノード装置の負荷を検出する負荷検出手段と、
前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、自ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する電力制御手段とを備える。
本発明にかかる冗長システムは、
稼動系として動作するノード装置と、待機系として動作するノード装置とを備え、
前記ノード装置がそれぞれ、
第1の下降閾値と、該第1の下降閾値よりも大きい第2の下降閾値とが登録された閾値記憶部と、
自ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部と、
自ノード装置の負荷を検出する負荷検出手段と、
前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、自ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する電力制御手段とを備える。
本発明にかかる電力制御方法は、
第1の下降閾値および該第1の下降閾値よりも大きい第2の下降閾値が登録された閾値記憶部と、ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部とを備えたコンピュータが、前記ノード装置の負荷を検出する第1のステップと、
前記コンピュータが、前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する第2のステップとを含む。
本発明にかかるプログラムは、
第1の下降閾値および該第1の下降閾値よりも大きい第2の下降閾値が登録された閾値記憶部と、ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部とを備えたコンピュータを、
前記ノード装置の負荷を検出する負荷検出手段、
前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する電力制御手段として機能させる。
本発明によれば、稼動系のノード装置として動作する場合には、要求を処理するための性能を確保した上で消費電力を低減することができ、待機系のノード装置として動作する場合には、高い省電力効果を得ることができる。
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
〔本発明の第1の実施の形態〕
図1を参照すると、本発明の第1の実施の形態にかかるノード装置1は、負荷検出手段2と、電力制御手段3と、クロック周波数切り替え手段4と、記憶装置5とを備えている。ノード装置1は、冗長システムの稼動系としても、待機系としても動作可能なものである。
記憶装置5には、閾値記憶部51と、ノード状態記憶部52とが設けられている。
閾値記憶部51には、自ノード装置1が稼動系として動作している場合に使用する第1の下降閾値Th1と、待機系として動作している場合に使用する第2の下降閾値Th2とが登録されている。ここで、第1、第2の下降閾値Th1、Th2は、Th1<Th2の関係を有する。
ノード状態記憶部52には、現在、自ノード装置1が稼動系として動作しているのか、待機系として動作しているのかを示すノード状態情報が登録されている。
負荷検出手段2は、自ノード装置1の負荷を検出する。本実施の形態では、負荷検出手段2は、自ノード装置1が備えているCPU(図示せず)の使用率(CPU使用率)を、自ノード装置1の負荷として検出するものとする。なお、ノード装置1の負荷として、入出力負荷や、ネットワーク負荷を検出するようにしても構わない。
電力制御手段3は、ノード状態記憶部52に登録されているノード状態情報が「稼動系」を示している場合は、第1の下降閾値Th1と負荷検出手段2で検出されたCPU使用率とを比較し、その比較結果に基づいて自ノード装置1の電力制御状態を通常状態から省電力状態(消費電力が通常状態よりも少ない状態)へ切り替えるか否かを判定する。また、ノード状態記憶部52に登録されているノード状態情報が「待機系」を示している場合は、第2の下降閾値Th2と負荷検出手段2で検出されたCPU使用率とを比較し、その比較結果に基づいて自ノード装置1の電力制御状態を通常状態から省電力状態へ切り替えるか否かを判定する。そして、切り替えると判定した場合は、クロック周波数切り替え手段4に対してクロック周波数の低減を指示する低減指示を出力する。
クロック周波数切り替え手段4は、電力制御手段3から低減指示が与えられると、ノード装置1内のCPU(図示せず)に供給するクロック周波数を、通常状態用の周波数f1から省電力状態用の周波数f2(f2<f1)に切り替えることにより、消費電力を低減させる。
このような機能を有するノード装置1は、コンピュータにより実現可能であり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータをノード装置1として機能させるためのプログラムを記録したディスク、半導体メモリなどの記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に負荷検出手段2、電力制御手段3およびクロック周波数切り替え手段4を実現する。
〔第1の実施の形態の動作の説明〕
次に、本実施の形態の動作について詳細に説明する。
電力制御手段3は、図2のフローチャートに示すように、ノード状態記憶部52からノード状態情報を入力し、この情報に基づいて自ノード装置1のノード状態が稼動系であるのか、待機系であるのかを判断する(ステップS201、S202)。
そして、稼動系であると判定した場合(ステップS202がYes)は、閾値記憶部51から第1の下降閾値Th1を入力し、更に、負荷検出手段3から負荷(CPU使用率)を入力し、両者を比較する(ステップS203〜S205)。
そして、負荷が第1の下降閾値Th1以下の場合は、クロック周波数切り替え手段4に対して、クロック周波数の低減を指示する低減指示を出力する(ステップS205がYes、S206)。これにより、クロック周波数切り替え手段4は、CPUに供給しているクロックの周波数を、通常状態用の周波数f1から省電力状態用の周波数f2に切り替える。なお、既に省電力状態用の周波数f2に切り替えている場合には、周波数の切り替え処理は行わない。
これに対して、負荷が第1の下降閾値Th1よりも大きい場合(ステップS205がNo)は、電力制御手段3はその処理を終了する。
一方、自ノード装置1が待機系であると判断した場合(ステップS202がNo)は、閾値記憶部51から第2の下降閾値Th2を入力し、更に、負荷検出手段2から負荷(CPU使用率)を入力し、両者を比較する(ステップS207〜S209)。
そして、負荷が第2の下降閾値Th2以下の場合は、前述したステップS206の処理を行い、負荷が上記閾値Th2よりも大きい場合は、その処理を終了する。なお、図2に示した処理は、例えば、周期的に行われる。
〔第1の実施の形態の効果〕
本実施の形態によれば、稼動系のノード装置においては要求を処理するための性能を確保した上で消費電力を低減することができ、待機系のノード装置においては極めて高い省電力効果を得ることができる。その理由は、ノード装置1が稼動系として動作している場合には負荷検出手段2の検出結果と第1の下降閾値Th1との比較結果により、待機系として動作している場合は負荷検出手段2の検出結果と第2の下降閾値Th2(Th1<Th2)との比較結果により、電力制御状態を通常状態から省電力状態へ切り替えるか否かを判定するようにしてるからである。
〔本発明の第2の実施の形態〕
次に、本発明の第2の実施の形態について詳細に説明する。図3を参照すると、本実施の形態にかかる冗長構成サーバシステム10は、複数のノード装置20、21、30、31、…を備えている。各ノード装置は、稼動系としても待機系としても動作可能なものであり、現時点では、ノード装置20、30、…が稼動系、ノード装置21、31、…が待機系として動作している。また、ノード装置20と21がペアになり、ノード装置30と31がペアとなっており、稼動系のノード装置に障害が発生した場合、ペアになっている待機系のノード装置が処理を引き継ぐようになっている。
ノード装置20は、ノード状態管理表100と、電力制御管理表101と、電力制御状態管理表102と、CPU(Central Processor Unit)111の使用率を測定するCPU使用率測定部103と、自ノード装置20に対するネットワーク負荷を測定するネットワーク負荷測定部104と、ハードディスクアクセスに対する入出力負荷(I/O負荷)を測定するI/O負荷測定部105と、電力制御部106と、自ノード装置20の電力制御状態を外部から参照可能にする電力制御状態表示部107、電力制御状態の変化をログファイル(図示せず)に保存する電力制御ログ出力部108と、オペレーティングシステム(OS)109と、ハードウェアの入出力情報を制御するBIOS(Basic Input/Output System)110、ハードウェアの状態を監視するBMC(Baseboard Management Controller)112とから構成されている。なお、他のノード装置も同様の構成を有している。
ノード状態管理表100、電力制御管理表101および電力制御状態管理表102の各管理表は、ディスク装置などの記憶装置上に構成されている。
ノード状態管理表100には、図4に示すように、自ノード装置20のノード番号と、現在の自ノード装置20のノード状態を示すノード状態情報とが登録されている。本実施の形態では、ノード状態情報は、ノード装置20のノード状態が「稼動中」「待機中」「切離中」「障害中」「初期化中」「状態遷移中」「その他状態」の何れであるかを表示する。ここで、「稼動中」はノード装置20が稼動系として動作している状態を示し、「待機中」はノード装置20が待機系として動作している状態を示し、「切離中」はノード装置20が冗長構成サーバシステム10から切り離されている状態を示している。また、「障害中」「初期化中」「状態遷移中」は、それぞれ、ノード装置20に障害が発生している状態、ノード装置20が初期化処理を行っている状態、ノード装置20が状態遷移処理を行っている状態を示す。
電力制御管理表101には、図5に示すように、ノード状態に関連付けて、電力制御判定要否フラグと、CPU使用率に関する判定要否フラグ、下降閾値および上昇閾値と、I/O負荷に関する判定要否フラグ、下降閾値および上昇閾値と、ネットワーク負荷に関する判定要否フラグ、下降閾値および上昇閾値と、CPUクロック周波数変更幅とが登録されている。
電力制御判定要否フラグは、電力制御を行うか否かを判定するための電力制御判定処理を実行することが必要か否かを示すフラグである。なお、上記電力制御は、ノード装置20の電力制御状態を通常状態から省電力状態へ切り替えたり、電力制御状態を省電力状態から通常状態へ復帰させるための制御を意味している。
CPU使用率、I/O負荷およびネットワーク負荷に関する判定要否フラグは、それぞれ電力制御判定処理において、CPU使用率、I/O負荷およびネットワーク負荷を判定条件とすることが必要か否かを示すフラグである。CPU使用率、I/O負荷およびネットワーク負荷に関する下降閾値は、それぞれCPU使用率、I/O負荷およびネットワーク負荷に基づいて電力制御状態を通常状態から省電力状態へ切り替えるか否かを判定するために使用する閾値である。また、CPU使用率、I/O負荷およびネットワーク負荷に関する上昇閾値は、それぞれCPU使用率、I/O負荷およびネットワーク負荷に基づいて電力制御状態を通常状態に復帰させるか否かを判定するために使用する閾値である。なお、図5では、ノード状態「稼動中」に対応するI/O負荷、ネットワーク負荷に関する要否判定フラグが「不要」になっているが、「要」としても構わない。
CPUクロック周波数変更幅(単に変更幅という場合もある)は、電力制御状態を通常状態から省電力状態へ切り替える際、CPU111に供給するクロックの周波数を通常状態に比較してどの程度低下させるかを示す情報である。本実施の形態では、ノード状態が待機中(待機系)の場合は、ノード状態が稼動中(稼動系)の場合よりも、周波数を大きく低減させるようにしている。これにより、待機系のノード装置では、極めて高い省電力効果を得ることができる。
電力制御状態管理表102には、図6に示すように、ノード番号と、現在の電力制御状態と、電力制御を起動した要因である電力制御起動要因と、電力制御を起動した際の閾値と、現在の電力制御起動要因値と、現在のCPUクロック周波数値と、CPUクロック周波数の初期値(電力制御状態が通常状態のときのCPUクロック周波数)と、現在の消費電力と、通常状態における消費電力(初期値消費電力)と、現在の消費電力と初期値消費電力から算出される省電力率とが登録されている。
電力制御部106は、電力制御管理表101に登録されている下降閾値と各測定部103〜105の測定結果とを比較することにより、自ノード装置20の電源制御状態を通常状態から省電力状態に切り替えるか否かを判定する機能や、電力制御管理表101に登録されている上昇閾値と各測定部103〜105の測定結果とを比較することにより、自ノード装置20の電力制御状態を通常状態に復帰させるか否かを判定する機能を有する。更に、電力制御部106は、電力制御状態を通常状態から省電力状態に切り替えると判定した場合は、OS109に対して、CPU111に供給しているクロックの周波数を、電力制御管理表101から取得したCPUクロック周波数変更幅だけ低減することを要求する機能や、電力制御状態を通常状態に復帰させると判定した場合は、OS109にCPUクロック周波数変更幅を渡し、CPU111に供給しているクロックの周波数を元に戻すことを要求する機能を有している。
このような機能を有するノード装置20は、コンピュータにより実現可能であり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータをノード装置20として機能させるためのプログラムを記録したディスク、半導体メモリなどの記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、CPU使用率測定部103、ネットワーク負荷測定部104、I/O負荷測定部105、電力制御部106、電力制御状態表示部107、電力制御ログ出力部108を実現する。
〔第2の実施の形態の動作の説明〕
次に、図7のフローチャートを参照して本実施の形態の動作について詳細に説明する。なお、以下の説明では、ノード装置20の動作を例に挙げて説明するが、他のノード装置においても同様の動作が行われる。また、図7のフローチャートに示す処理は、周期的に行われるものである。
ノード装置20内の電力制御部106は、先ず、ノード状態管理表100から自ノード装置20のノード状態を示すノード状態情報を入力する(ステップS701)。次いで、電力制御部106は、電力制御状態管理表102から現在の電力制御状態を入力する(ステップS702)。その後、電力制御部106は、ステップS701で入力したノード状態情報と関連付けて登録されている電力制御判定要否フラグを電力制御管理表101から検索し、その値に基づいて現在のノード状態が電力制御判定処理を行う状態になっているか否かを判定する(ステップS703)。例えば、電力制御管理表101の内容が図5に示すものである場合は、ノード状態が「稼動中」「待機中」「切離中」の何れかであれば、電力制御判定処理を行うノード状態になっていると判定し、それ以外の場合は電力制御判定処理を行わないノード状態になっていると判定する。
そして、電力制御判定処理を行わないノード状態になっていると判定した場合(ステップS703がNo)は、ステップS702で入力した電力制御状態が「通常状態」であれば(ステップS707がNo)、ステップS705の処理に移行し、「省電力状態」であれば(ステップS707がYes)、電力制御状態を「通常状態」に戻すための電力制御を行い(ステップS708)、その後、ステップS705の処理に移行する。なお、電力制御状態を「通常状態」に戻すための電力制御については、後で詳しく説明する。
これに対して、電力制御判定処理を行うノード状態になっていると判定した場合(ステップS703がYes)は、電力制御判定処理を行い、その判定結果に応じて電力制御を行う(ステップS704)。このステップS704で行う処理を、図8のフローチャートを参照して詳細に説明する。
先ず、電力制御部106は、電力制御フラグの値を「0」に初期化する(ステップS801)。電力制御フラグは、消費電力を下げる電力制御(電力制御状態を「通常状態」から「省電力状態」へ切り替える電力制御)を行うのか、消費電力を上げる電力制御(電力制御状態を「省電力状態」から「通常状態」へ復帰させる電力制御)を行うのか、電力制御を実行しないのかを示すフラグである。ここで、電力制御フラグの値「0」は、電力制御を実行しないことを示し、「1」は消費電力を上げる電力制御を示し、「2」は消費電力を下げる電力制御を示す。
その後、電力制御部106は、ステップS701で入力したノード状態情報に関連付けて登録されているCPU使用率、I/O負荷およびネットワーク負荷に関する判定要否フラグ、下降閾値および上昇閾値を電力制御管理表101から検索する(ステップS802)。例えば、ステップS701で入力したノード状態情報が「待機中」で、電力制御管理表101の内容が図5に示すものであるとすると、CPU使用率、I/O負荷およびネットワーク負荷に関する判定要否フラグ、下降閾値および上昇閾値として、それぞれ「要、30%、60%」「要、30%、60%」「要、30%、60%」が検索されることになる。
次に、電力制御部106は、ステップS802で検索したCPU使用率に関する判定要否フラグの値に基づいて、CPU使用率を判定条件とした電力制御判定処理を行うか否かを判定する(ステップS803)。そして、CPU使用率に関する判定要否フラグの値が「要」である場合(ステップS803がYes)は、CPU使用率を判定条件とした電力制御判定処理を行い、判定結果に応じた値を電力制御フラグに設定する(ステップS804)。このステップS804で行う処理を、図9のフローチャートを参照して詳しく説明する。
電力制御部106は、先ず、CPU使用率測定部103から現在のCPU使用率を入力する(ステップS901)。その後、電力制御部106は、現在のCPU使用率がステップS802で入力した、現在のノード状態に対応したCPU使用率に関する下降閾値以下であるか否かを判定する(ステップS902)。
そして、CPU使用率が下降閾値以下である場合は、現在の電力制御状態が「省電力状態」でないことを条件にして電力制御フラグに「2」を設定する(ステップS902がYes、S903がNo、S904)。
これに対して、CPU使用率が下降閾値よりも大きい場合(ステップS902がNo)は、現在のCPU使用率がステップS802で入力した、現在のノード状態に対応したCPU使用率に関する上昇閾値以上であるか否かを判定する(ステップS905)。
そして、CPU使用率が上昇閾値未満である場合(ステップS905がNo)は、その処理を終了する。これに対して、CPU使用率が上昇閾値以上である場合は、現在の電力制御状態が「省電力状態」であることを条件にして電力制御フラグに「1」を設定する(ステップS905がYes、S906がYes、S907)。以上が、ステップS804で行う処理の詳細である。
ステップS804の処理が終了すると、電力制御部106は、電力制御フラグの値が「0」であるか否かを調べる(ステップS805)。なお、ステップS803の判定結果がNoとなった場合にも、ステップS805の処理が行われる。
そして、電力制御フラグの値が「0」でない場合(ステップS805がNo)は、後述するステップS812以降の処理を行う。これに対して、電力制御フラグの値が「0」である場合(ステップS805がYes)は、ステップS802で検索したI/O負荷に関する判定要否フラグの値に基づいて、I/O負荷を判定条件とした電力制御判定処理を行うか否かを判定する(ステップS806)。
そして、電力制御判定処理を行うと判定した場合(ステップS806がYes)は、I/O負荷を判定条件とした電力制御判定処理を行い、判定結果に応じた値を電力制御フラグに設定する(ステップS807)。図10にステップS807で行う処理の詳細を示す。この図10のステップS1001〜S1007で行う処理は、下記の点を除いて図9のステップS901〜S907で行う処理と同じである。
・ステップS1001…このステップでは、I/O負荷測定部105から現在のI/O負荷を入力する。
・ステップS1002…このステップでは、現在のI/O負荷が、ステップS802で入力した、現在のノード状態に対応したI/O負荷に関する下降閾値以下であるか否かを判定する。
・ステップS1005…このステップでは、現在のI/O負荷が、ステップS802で入力した、現在のノード状態に対応したI/O負荷に関する上昇閾値以上であるか否かを判定する。
ステップS807の処理が終了すると、電力制御部106は、電力制御フラグの値が「0」であるか否かを判定する(ステップS808)。また、ステップS806の判定結果がNoの場合もステップS808の処理が行われる。
そして、電力制御フラグの値が「0」でない場合(ステップS808がNo)は、後述するステップS812以降の処理を行う。これに対して、電力制御フラグの値が「0」である場合(ステップS808がYes)は、ステップS802で検索した、ノード状態に対応したネットワーク負荷に関する判定要否フラグの値に基づいて、ネットワーク負荷を判定条件とした電力制御判定処理を行うか否かを判定する(ステップS809)。
そして、電力制御判定処理を行うと判定した場合(ステップS809がYes)は、ネットワーク負荷を判定条件とした電力制御判定処理を行い、その判定結果に応じた値を電力制御フラグに設定する(ステップS810)。図11は、ステップS810で行う処理の詳細を示したフローチャートである。このステップS810で行うステップS1101〜1107の処理は、下記の点を除いて図9のステップS901〜S907で行う処理と同じである。
・ステップS1101…このステップでは、ネットワーク負荷測定部104から現在のネットワーク負荷を入力する。
・ステップS1102…このステップでは、現在のネットワーク負荷が、ステップS802で入力した、現在のノード状態に対応したネットワーク負荷に関する下降閾値以下であるか否かを判定する。
・ステップS1105…このステップでは、現在のネットワーク負荷が、ステップS802で入力した、現在のノード状態に対応したネットワーク負荷に関する上昇閾値以上であるか否かを判定する。
ステップS810の処理が終了した場合およびステップS809の判断結果がNoとなった場合、電力制御部106は、電力制御フラグが「0」(制御なし)になっているか否かを判定する(ステップS811)。そして、電力制御フラグが「0」になっている場合は、処理を終了する。これに対して「0」になっていない場合は、以下に述べるステップS812以降の処理を行う。
電力制御部106は、電力制御フラグの値が「2」(下げる)になっている場合(ステップS812がNo)は、現在の電力制御状態が「省電力状態」になっているか否かを判定する(ステップS813)。そして、「省電力状態」になっている場合(ステップS813がYes)は処理を終了し、「省電力状態」になっていない場合(ステップS813がNo)は、電力制御管理表101から現在のノード状態に関連付けて登録されているCPUクロック周波数変更幅を入力し、上記変更幅を含んだクロック周波数下降要求をOS109に渡す(ステップS814)。これにより、OS109は、自ノード装置20内のCPU111に供給するクロックの周波数を、上記変更幅だけ低減させ、自ノード装置20の消費電力を低減させる。例えば、電力制御状態が「通常状態」のときにCPU111に供給しているクロックの周波数が「F」であり、上記要求に含まれている変更幅が「50%」である場合には、CPU111に供給するクロックの周波数を「0.5F」に変更する。
これに対して、電力制御フラグの値が「1」(上げる)になっている場合(ステップSS812がYes)は、現在の電力制御状態が「省電力状態」になっているか否かを判定する(ステップS815)。そして、「省電力状態」になっていない場合(ステップS815がNo)は、処理を終了する。これに対して、「省電力状態」になっている場合(ステップS815がYes)は、電力制御管理表101から現在のノード状態に対応する変更幅を入力し、入力した変更幅を含んだクロック周波数復帰要求をOS109に渡す(ステップS816)。これにより、OS109は、CPU111に供給するクロックの周波数を、「通常状態」のときに供給していた周波数に戻す。例えば、現在CPU111に供給しているクロックの周波数が「0.5F」で、クロック周波数復帰要求に含まれている変更幅が「50%」である場合は、0.5F÷(1−0.5)なる演算を行うことにより、「通常状態」のときに供給していた周波数Fを求め、CPU111の供給するクロックの周波数を「0.5F」から「F」に変更する。以上が、ステップS704で行われる処理の詳細である。
再び、図7のフローチャートに戻り、電力制御部106は、ステップS704の処理が終了すると、電力制御状態管理表102に反映するデータを計算し、計算した値に基づいて電力制御状態管理表102を更新する(ステップS705)。このステップS705の処理を図12のフローチャートを参照して詳しく説明する。なお、ステップS708の処理が終了した場合およびステップS707の判定結果がNoとなった場合にも、ステップS705の処理が行われる。
図12を参照すると、電力制御部106は、先ず、ノード状態管理表100から現在のノード状態を示すノード状態情報を入力する(ステップS1201)。その後、電力制御部106は、電力制御管理表101からステップS1201で入力したノード状態と関連付けて登録されているCPU使用率、I/O負荷およびネットワーク負荷に関する下降閾値および上昇閾値を入力する(ステップS1202)。
更に、電力制御部106は、現在の電力制御状態、電力制御起動要因および電力制御起動要因値を取得する(ステップS1203)。なお、図8のステップS814を実行した場合は、現在の電力制御状態は「省電力状態」、ステップS816を実行した場合は、現在の電力制御状態は「通常状態」となる。また、ステップS811がYesとなった場合は、現在の電力制御状態は、電力制御状態管理表102に登録されているものとなる。また、ステップS813がYesとなった場合の電力制御状態は「省電力状態」、ステップS815がNoとなったときの電力制御状態は「通常状態」となる。また、ステップS805、S808、S811の判定結果がNoとなったときの電力制御起動要因はそれぞれ「CPU使用率」「I/O負荷」「ネットワーク負荷」となる。また、電力制御起動要因値は、電力制御起動要因が「CPU使用率」「I/O負荷」「ネットワーク負荷」の場合、それぞれ図9、図10、図11のステップS901、S1001、S1101で入力した値となる。
その後、電力制御部106は、OS109に対して要求を出すことにより、CPUクロック周波数の初期値および現在値と、消費電力の現在値および初期値とを取得し、更に、消費電力の現在値と初期値とから省電力率を計算する(ステップS1204〜S1206)。そして、最後に電力制御部106は、取得した情報で電力制御状態管理表102を更新する(ステップS1207)。以上がステップS705で行う処理の詳細である。
その後、電力制御ログ出力部108が、電力制御状態管理表102のデータを、タイムスタンプおよびノード番号と共に図示を省略したログファイルに出力する(ステップS706)。
〔第2の実施の形態の効果〕
本実施の形態によれば、待機系のノード装置における省電力効果を極めて高いものとすることができる。その理由は、ノード装置の消費電力を低減させる際、現在のノード状態情報が待機系を示している場合は稼動系を示している場合よりも大きく低減させるようにしているからである。
また、本実施の形態によれば、電力制御状態が頻繁に切り替えられるという事態の発生を防ぐことができる。その理由は、消費電力を低減させるか否かを判定するための閾値と、消費電力を元に戻すか否かを判定するための閾値とを異なるものとしているからである。
本発明は、稼動系と待機系のノード装置を1組以上有する冗長システムにおいて、消費電力を低減させるといった用途に適用できる。
本発明の第1の実施の形態の構成例を示すブロック図である。 第1の実施の形態の処理例を示すフローチャートである。 本発明の第2の実施の形態の構成例を示すブロック図である。 ノード状態管理表100の内容例を示す図である。 電力制御管理表101の内容例を示す図である。 電力制御状態管理表102の内容例を示す図である。 第2の実施の形態の動作の概要を示したフローチャートである。 電力制御判定処理および電力制御を行う際の電力制御部106の処理を詳細に示したフローチャートである。 CPU使用率を判定条件とした電力制御判定処理の処理例を示すフローチャートである。 I/O負荷を判定条件とした電力制御判定処理の処理例を示すフローチャートである。 ネットワーク負荷を判定条件とした電力制御判定処理の処理例を示すフローチャートである。 電力制御状態管理表102の更新処理の詳細を示すフローチャートである。
符号の説明
1、20、21、30、31…ノード装置
2…負荷検出手段
3…電力制御手段
4…クロック周波数切り替え手段
5…記憶装置
51…閾値記憶部
52…ノード状態記憶部
10…冗長構成サーバシステム
100…ノード状態管理表
101…電力制御管理表
102…電力制御状態管理表
103…CPU使用率測定部
104…ネットワーク負荷測定部
105…I/O負荷測定部
106…電力制御部
107…電力制御状態表示部
108…電力制御ログ出力部
109…OS(Operating System)
110…BIOS(Basic Input/Output System)
111…CPU(Central Processor Unit)
112…BMC(Baseboard Management Controller)

Claims (11)

  1. 第1の下降閾値と、該第1の下降閾値よりも大きい第2の下降閾値とが登録された閾値記憶部と、
    自ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部と、
    自ノード装置の負荷を検出する負荷検出手段と、
    前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、自ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する電力制御手段とを備えることを特徴とするノード装置。
  2. 請求項1記載のノード装置において、
    前記閾値記憶部には、前記第1の下降閾値および前記第2の下降閾値に加えて、前記第1の下降閾値よりも大きい第1の上昇閾値と、前記第2の下降閾値よりも大きい第2の上昇閾値とが登録され、
    前記電力制御手段は、前記ノード状態情報が稼動系を示している場合は、前記第1の上昇閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の上昇閾値と前記負荷検出手段の検出結果との比較結果により、自ノード装置の電力制御状態を省電力状態から通常状態に切り替えるか否かを判定することを特徴とするノード装置。
  3. 請求項1または2記載のノード装置において、
    前記電力制御手段によって自ノード装置の電力制御状態を通常状態から省電力状態に切り替えると判定された場合は、自ノード装置の消費電力を通常状態の消費電力よりも低減させ、前記電力制御手段によって自ノード装置の電力制御状態を省電力状態から通常状態に切り替えると判定された場合は、自ノード装置の消費電力を通常状態の消費電力に戻す切り替え手段を備えることを特徴とするノード装置。
  4. 請求項3記載のノード装置において、
    前記切り替え手段は、自ノード装置の消費電力を通常状態の消費電力よりも低減させる際、前記ノード状態情報が待機系を示している場合は稼動系を示している場合よりも大きく低減させることを特徴とするノード装置。
  5. 請求項3または4記載のノード装置において、
    前記切り替え手段は、自ノード装置内のCPUに供給するクロックの周波数を低減させることにより、自ノード装置の消費電力を低減させることを特徴とするノード装置。
  6. 請求項1乃至5の何れか1項に記載のノード装置において、
    前記負荷検出手段は、前記CPUの使用率を自ノード装置の負荷として検出することを特徴とするノード装置。
  7. 請求項1乃至5の何れか1項に記載のノード装置において、
    前記負荷検出手段は、記憶装置に対する入出力負荷を自ノード装置の負荷として検出することを特徴とするノード装置。
  8. 請求項1乃至5の何れか1項に記載のノード装置において、
    前記負荷検出手段は、ネットワーク負荷を自ノード装置の負荷として検出することを特徴とするノード装置。
  9. 稼動系として動作するノード装置と、待機系として動作するノード装置とを備え、
    前記ノード装置がそれぞれ、
    第1の下降閾値と、該第1の下降閾値よりも大きい第2の下降閾値とが登録された閾値記憶部と、
    自ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部と、
    自ノード装置の負荷を検出する負荷検出手段と、
    前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、自ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する電力制御手段とを備えることを特徴とする冗長システム。
  10. 第1の下降閾値および該第1の下降閾値よりも大きい第2の下降閾値が登録された閾値記憶部と、ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部とを備えたコンピュータが、前記ノード装置の負荷を検出する第1のステップと、
    前記コンピュータが、前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する第2のステップとを含むことを特徴とする電力制御方法。
  11. 第1の下降閾値および該第1の下降閾値よりも大きい第2の下降閾値が登録された閾値記憶部と、ノード装置が稼動系として動作しているのか待機系として動作しているのかを示すノード状態情報が登録されたノード状態記憶部とを備えたコンピュータを、
    前記ノード装置の負荷を検出する負荷検出手段、
    前記ノード状態情報が稼動系を示している場合は、前記第1の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード状態情報が待機系を示している場合は、前記第2の下降閾値と前記負荷検出手段の検出結果との比較結果により、前記ノード装置の電力制御状態を通常状態から省電力状態に切り替えるか否かを判定する電力制御手段として機能させるためのプログラム。
JP2008272836A 2008-10-23 2008-10-23 ノード装置、冗長システム、電力制御方法およびプログラム Expired - Fee Related JP5169729B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008272836A JP5169729B2 (ja) 2008-10-23 2008-10-23 ノード装置、冗長システム、電力制御方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008272836A JP5169729B2 (ja) 2008-10-23 2008-10-23 ノード装置、冗長システム、電力制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2010102477A JP2010102477A (ja) 2010-05-06
JP5169729B2 true JP5169729B2 (ja) 2013-03-27

Family

ID=42293079

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008272836A Expired - Fee Related JP5169729B2 (ja) 2008-10-23 2008-10-23 ノード装置、冗長システム、電力制御方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5169729B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102001414B1 (ko) 2012-09-27 2019-07-18 삼성전자주식회사 데이터 트랜잭션에 따라 전력공급을 제어하는 시스템-온-칩 및 그 동작방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000322259A (ja) * 1999-05-11 2000-11-24 Hitachi Ltd データ処理装置
JP2002366252A (ja) * 2001-06-11 2002-12-20 Kenwood Corp 動作周波数制御システム、携帯情報処理端末、動作周波数制御方法及びプログラム
JP4066932B2 (ja) * 2003-11-10 2008-03-26 株式会社日立製作所 予測に基づいた計算機リソース配分方法
JP2006268246A (ja) * 2005-03-23 2006-10-05 Fujitsu Ltd 情報処理装置
JP4786371B2 (ja) * 2006-02-27 2011-10-05 アラクサラネットワークス株式会社 ネットワーク中継装置

Also Published As

Publication number Publication date
JP2010102477A (ja) 2010-05-06

Similar Documents

Publication Publication Date Title
US9785521B2 (en) Fault tolerant architecture for distributed computing systems
US10585753B2 (en) Checkpoint triggering in a computer system
US9652332B2 (en) Information processing apparatus and virtual machine migration method
US9563552B2 (en) Storage control device and storage control method
JP5516747B2 (ja) マルチコアプロセッサシステム、監視制御方法、および監視制御プログラム
US9298567B2 (en) System availability in PPRC failover environments
WO2014076834A1 (ja) 管理システム及び管理方法
US20080244620A1 (en) Dynamic Communication Fabric Zoning
US10176065B2 (en) Intelligent failure prediction and redundancy management in a data storage system
CN109446169B (zh) 一种双控磁盘阵列共享文件系统
US9395803B2 (en) Multi-core processor system implementing migration of a task from a group of cores to another group of cores
KR20150087744A (ko) 전자 장치의 동작 상태를 변경하는 방법 및 장치
JP5169729B2 (ja) ノード装置、冗長システム、電力制御方法およびプログラム
US9442790B2 (en) Computer and dumping control method
JP6861533B2 (ja) 処理装置、二重化システム、処理方法、および処理プログラム
CN102546250B (zh) 一种基于主备机制的文件发布方法及系统
US11126514B2 (en) Information processing apparatus, information processing system, and recording medium recording program
CN113641640B (zh) 用于流式计算系统的数据处理方法、装置、设备和介质
US10157111B2 (en) Controlling device, managing device, storage system, control method, management method, and non-transitory computer-readable storage medium for mirroring data
JP6540072B2 (ja) 管理装置、情報処理システム及び管理プログラム
CN108647113B (zh) 一种灾难恢复方法及服务器
US10353791B2 (en) Dynamically changing copy policy
JP2020095322A (ja) 分散ファイル装置、フェイルオーバ方法、プログラム及び記録媒体
JP5921306B2 (ja) 情報処理装置および情報処理方法およびプログラム
US11487459B2 (en) Information processing apparatus, information processing system, and recording medium storing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110711

RD07 Notification of extinguishment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7427

Effective date: 20120712

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121217

LAPS Cancellation because of no payment of annual fees