(57)【要約】【課題】　個々のプロセッサの性能要求、およびマルチプロセッサ・システムのシステムの電力・熱全体量により、個々のプロセッサの電圧および周波数を調整できるようにすること。【解決手段】　プロセッサベースのシステム内に装着されたプロセッサの数を決定し、また、少なくとも一部、このコンピュータシステム内に装着されたプロセッサの数、および、このコンピュータシステム用の熱・電力全体設計枠に基づいて、個々のプロセッサのそれぞれに対して最適性能設定を決定する。また、装着されたブレードの数に基づいて、プロセッサベースのシステム内のプロセッサの電圧レベルを調整する。　 【選択図】図１
2004078941.tif 000002
【特許請求の範囲】
【請求項１】
　負荷に基づいてコンピュータシステムのプロセッサの電圧レベルを管理する方法であって、
　前記コンピュータシステムに装着されたプロセッサの数を識別するステップと、
　前記コンピュータシステムに装着されたプロセッサの数、および前記コンピュータシステム用の熱・電力全体設計枠に、少なくとも一部は基づいて個々のプロセッサのそれぞれの最適性能設定を決定するステップと、
　前記最適性能設定に基づいて、前記コンピュータシステムの個々のプロセッサの少なくとも１つについて、電圧レベルを調整するステップと、
を含む方法。
【請求項２】
　前記電圧レベルは、前記コンピュータシステムの総電圧許容量の一部であり、また、前記総電圧許容量は、前記コンピュータシステムの熱・電力全体量の割当てによって決定される請求項１記載の方法。
【請求項３】
　前記プロセッサの少なくとも１つの周波数レベルを調整することにより、前記プロセッサを所定の性能レベルで処理させるステップをさらに含む請求項１記載の方法。
【請求項４】
　前記コンピュータシステムは、PA−RISC、DEC　Alpha、MIPS、PowerPC、SPARC、IA−32、およびIA−64からなるグループから選択されたアーキテクチャに基づいている請求項１記載の方法。
【請求項５】
　負荷に基づいてコンピュータシステム内のプロセッサの電圧レベルを管理するシステムであって、
　前記コンピュータシステムのシャーシ内の一組のプロセッサと、
　前記コンピュータシステムの前記シャーシ内に装着されたプロセッサの数を識別する手段と、
　少なくとも一部、前記シャーシ内に装着されたプロセッサの数、および、前記コンピュータシステム用の熱・電力全体設計枠に基づいて、個々のプロセッサのそれぞれの最適性能設定を決定する手段と、
　前記最適性能設定に基づいて、前記コンピュータシステム内の個々のプロセッサの少なくとも１つについて、それぞれ電圧レベルをセットする手段と、
　を備えるシステム。
【請求項６】
前記電圧レベルは、前記コンピュータシステムの総電圧許容量のごく一部であり、また、前記総電圧許容量は、前記コンピュータシステムの熱・電力全体量割当てによって決定される請求項５記載のシステム。
【請求項７】
　前記プロセッサの周波数レベルを調整することにより、前記プロセッサを所定の性能レベルで処理させる、手段をさらに備える請求項５記載のシステム。
【請求項８】
　負荷に基づいてコンピュータシステム内のプロセッサの電圧レベルを管理するシステムであって、
　前記コンピュータシステムのシャーシ内の一組のプロセッサと、
　（１）前記コンピュータシステムに装着されたプロセッサの数に基づいて、前記コンピュータシステム内のプロセッサの電圧レベルを調整する命令を含む入力信号を受け取るユーザ・インターフェースと、（２）前記コンピュータシステムに装着されたプロセッサの数に基づいて、前記コンピュータシステム内のプロセッサの出力電圧を計算し、前記一組のプロセッサ中の少なくとも１つのプロセッサの電圧レベルを調整する命令を含む入力信号を発生させるシリアル・プレゼンス検出（ＳＰＤ）回路と、から成るグループから選択された入力装置と、
　Inter-ICバスと、
　前記Inter-ICバスから前記入力信号を受け取って、前記入力信号に入っている前記命令により決定された情報を含む制御信号（２３０）を発生させる入出力拡張と、
　前記制御信号に入っている情報に基づいて、出力電圧を発生させて、前記出力電圧を、前記一組のプロセッサ中の少なくとも１つのプロセッサに供給するＤＣ−ＤＣコンバータと、を備え、
個々のプロセッサのそれぞれに対する最適性能設定は、前記シャーシ内に装着されたプロセッサの数、および前記コンピュータシステム用の熱・電力全体設計枠に、少なくとも一部は基づくシステム。
【請求項９】
　負荷に基づいてコンピュータシステム内のプロセッサの電圧レベルを管理するシステムであって、
　前記コンピュータシステムのシャーシ内の一組のプロセッサと、
　前記一組のプロセッサ中の少なくとも１つのプロセッサの電圧レベルを、装着されたプロセッサの数に基づいて調整する命令を含む入力信号を供給する手動設定装置と、
　前記制御信号に入っている情報に基づいて、出力電圧を発生させて、前記出力電圧を、前記一組のプロセッサ中の少なくとも１つのプロセッサに供給するＤＣ−ＤＣコンバータと、を備え、
　個々のプロセッサのそれぞれの最適性能設定は、前記シャーシ内に装着されたプロセッサの数、および前記コンピュータシステム用の熱・電力全体設計枠に、少なくとも一部は基づくシステム。
【請求項１０】
　負荷に基づいてコンピュータシステム内のプロセッサの電圧レベルを管理するシステムであって、
　前記コンピュータシステムのシャーシ内の一組のプロセッサと、
　前記一組のプロセッサ中の少なくとも１つのプロセッサの電圧レベルを、装着されたプロセッサの数に基づいて調整する命令を含む入力信号を受け取るユーザ・インターフェースと、
　Inter-ICバスと、
　（１）前記Inter-ICバスから前記入力信号を受け取って、前記入力信号に入っている前記命令により決定された情報を含む制御信号を発生させるマイクロプロセッサと、（２）前記Inter-ICバスから前記入力信号を受け取って、前記入力信号に入っている前記命令により決定された情報を含む制御信号を発生させるマイクロコントローラと、（３）前記Inter-ICバスから前記入力信号を受け取って、前記入力信号に入っている前記命令により決定された情報を含む制御信号を発生させるＦＰＧＡ（field　programmable　gate　array）と、（４）前記Inter-ICバスから前記入力信号を受け取って、前記入力信号に入っている前記命令により決定された情報を含む制御信号を発生させるＰＬＤ（プログラム可能な論理素子）と、から成るグループから選択された信号発生器と、
　前記制御信号に入っている情報に基づいて、出力電圧を発生させて、前記出力電圧を、前記一組のプロセッサ中の前記少なくとも１つのプロセッサに供給するＤＣ−ＤＣコンバータと、を備え、
　個々のプロセッサのそれぞれの最適性能設定は、前記シャーシ内に装着されたプロセッサの数、および前記コンピュータシステム用の熱・電力全体設計枠に、少なくとも一部は基づくシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
　　（関連出願）
　本願は、Andrew H.BARR氏らによってなされた「要求性能に基づく、ブレード型アーキテクチャにおけるブレードの周波数管理のためのシステム、方法、装置」と称する米国特許出願第１０／２１６，４３７号、Andrew H.BARR氏らによってなされた「キャパシティ・オン・デマンドを可能にするコンピュータシステムの周波数管理のためのシステムおよび方法」と称する米国特許出願第１０／２１６，４３８号、Ricardo　ESPINOZA−IBARRA氏らによってなされた「プロセッサ・レベルにて性能を最適化するシステム、方法、装置」と称する米国特許出願第１０／２１６，２８３号、Ricardo　ESPINOZA−IBARRA氏らによってなされた「ブレード型システムにおいて、装着により周波数および性能を調整するシステムおよび方法」と称する米国特許出願第１０／２１６，２３４号、Andrew H.BARR氏らによってなされた「要求性能に基づく、ブレード型アーキテクチャにおけるブレードの電圧管理」と称する米国特許出願第１０／２１６，２８４号、Andrew H.BARR氏らによってなされた「プロセッサ・レベルでの性能最適化と共同する電圧調整」と称する米国特許出願第１０／２１６，２８６号、Ricardo　ESPINOZA−IBARRA氏らによってなされた「プロセッサまたはブレードの動作周波数を管理するシステムおよび方法」と称する米国特許出願第１０／２１６，２８５号、Ricardo　ESPINOZA−IBARRA氏らによってなされた「ブレード型システム内のブレードの動作周波数を管理するシステムおよび方法」と称する米国特許出願第１０／２１６，２２９号、Andrew H.BARR氏らによってなされた「性能と電力消費を最適化するプロセッサの電圧管理のためのシステムおよび方法」と称する米国特許出願第１０／２１６，２３２号、および、Andrew H.BARR氏らによってなされた「メモリ・サブシステムの管理」と称する米国特許出願第１０／２１６，４３５号に関係がある。以上の米国特許出願はすべて、２００２年８月１２日に出願されたものである。
【背景技術】
【０００２】
　ブレード・サーバー（blade　server）は、個々のカードまたはブレード上にサーバーまたは他のコンピュータ・リソースを提供するコンピューティング・システムである。サーバー・ブレード、ストレージ・ブレード、ネットワーク・ブレードなど、多くのタイプのブレードがある。サーバーのブレードは、通常、単一構造体の中に、いっしょに収納されて、モジューラ・アーキテクチャを用いて高密度のシステムを作り出し、それにより、フレキシビリティ（柔軟性）およびスケーラビリティが保証される。したがって、ブレード・サーバーにより、スペースの必要が減る。サーバー・ブレードは、通常、ストレージ・タイプ、ネットワーキング・タイプ、および他のタイプのブレードといっしょに、複数のブレードをホストする（ｈｏｓｔ）ラック搭載可能なエンクロージャまたはシャーシ内にインストールされる。これらの複数のブレードは、ケーブル、電源、冷却ファンなどの共通リソースを共有する。
【０００３】
　テレコミュニケーションの業界は、何年間も、ブレード・サーバー技術を利用してきた。この凝縮されたサーバー・ブレード型アーキテクチャはまた、インターネットを利用して収入をもたらし、かつ、サービスをカスタマに提供する人々や企業、また、事業プロセスの一部をＷｅｂに移している人々や企業、また、それ自体のデータセンターで、インターネット・エッジのアプリケーションを展開する柔軟性を必要とする人々や企業に対しても、恩恵を与える。最近の技術の発展のために、ブレード・サーバーは、現在、Ｗｅｂホスティング（ホームページ・サービス）、Ｗｅｂキャッシング、コンテンツ・ストリーミングなどの用途に用いられている。例えば、Ｗｅｂキャッシングは、頻繁に要求されるＷｅｂコンテンツを、ユーザのより近くに格納し、したがって、オブジェクトをより速く検索することができ、それゆえ、インターネットへのアクセスに必要な時間および帯域幅が削減される。会社や個人は、現在、メディア（例えば、映像、音声、インタラクティブ）のストリーミングを行って、内部でも外部でも、さらに効果的なやり取りを行っている。このことから、インターネット上でのリッチ・メディア・コンテンツ配信が著しく成長してきた。ブレード型サーバーは、このような新たな需要に応じるために利用されている。
【０００４】
　しかしながら、ブレード型サーバーでは、ブレードで生じる熱と、シャーシ内の限られたスペースが一部だが主な要因で、厄介な技術問題が発生する。通常、ブレード型サーバー・システムは、基本的な電力・熱設計枠によって制限される。例えば、ブレード型システムをホストするシャーシは、限られたワット数しか利用しないように設計されていることもある。すなわち、このシャーシは、それだけの量の電力しか消費できず、シャーシ内のブレードを冷却するのに利用できるエアフローの量が限られている。
【０００５】
　要求性能と、熱・電力所要量との間のかね合い（トレードオフ）を最適化するときに、技術課題が発生する。ブレード型アーキテクチャでは、それぞれ別々のシステムを表わす複数のブレードが、同一シャーシ内にある。このシャーシには、特定の電力・熱所要量の組が関連する。具体的に言えば、これらの所要量は、それぞれのブレードが消費できる電力量に制限を加える。
【０００６】
　公知の電力制限戦略には、ＣＰＵ機能ユニット、例えば、浮動小数点ユニットまたはオンダイ（on-die）キャッシュを停止するか、あるいは、ハードディスク・ドライブにおいて、速度と引き換えに、電力消費を削減する方策がある。電力制限はまた、ブレード上のプロセッサが動作できる周波数に制約を加え、したがって、その性能を制限する。さらに、このシステム内のプロセッサは、通例、すべて同一周波数で動作するように設定されている。これは、個々のプロセッサが、最適な性能およびキャパシティで動作できる能力をさらに制限する。
【０００７】
　以前の解決策では、シャーシの電力・熱冷却全体量を満たすように、すべてのブレードを、その最高性能レベルよりも低い性能レベルで動作させる。この解決策に関連する欠点は、このような量の範囲内に入るように、それぞれのブレードの性能が、落とされるかあるいは下げられることである。例えば、シャーシが冷却できる能力がＸに限定され、しかもＹ基のブレードがある場合には、それぞれのブレードは、このシャーシ内での消費電力に対して、ほぼＸ／Ｙしか寄与することができない。したがって、それぞれのブレードは、Ｘ／Ｙの電力レベルに対応した性能に限定される。
【０００８】
　他の解決策は、このシステム内の個々のブレードの性能を区別する必要がないようにするために、ただ１枚のブレードだけ、またはただ１種類のブレードだけを、このシステム内に装着することであった。別法として、１解決策は、このシステムが一度に処理できるブレードのサポートされる組合せを制限することであった。
【０００９】
　他の解決策は、高価な制御回路を必要とする複数のうるさい、スペースを要するファンを追加することであった。このような冷却システムを使用することにより、サーバー・ブレード・システムのコストが上昇し、他の機構用のシャーシ内に残される、他の機構用のスペースが少なくなり、しかも、故障およびダウンタイム増加をこうむる危険性が高まる。他の解決策には、他の使用機構の数を制限するだけでなく、このブレード・サーバー・システム内のＩ／Ｏカードの数を制限する方策もあった。さらに他の解決策は、このブレード・サーバー・システム内の他の機構にための電力量を削減することであった。
【００１０】
　他の解決策には、高価なインフラを使用して、このシステムに最適な換気を保証し、また高価なインフラを使用して、このシステムに最適な電力供給を保証する方策があった。さらに他の解決策は、システム仕様を無視し、システム障害の高い危険性を冒して、システムを作動させることであった。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
　必要とされるものは、個々のブレードが動作する電圧および周波数を変更する方法である。変更は、システムのシャーシ内にホストされたすべてのブレードが最適な性能で動作するように、このシャーシ内にホストされたブレードまたは装着の数に基づいて行われる。
【課題を解決するための手段】
【００１２】
　本願に述べられる方法およびシステムは、個々のプロセッサの性能要求、およびマルチプロセッサ・システムのシステムの電力・熱全体量により、個々のプロセッサの電圧および周波数を調整できるようにする点で有利である。
【００１３】
　上記および他の利点は、例えば、プロセッサベースのシステム内に装着されたプロセッサの数を決定し、また、少なくとも一部、このコンピュータシステム内に装着されたプロセッサの数、および、このコンピュータシステム用の熱・電力全体設計枠に基づいて、個々のプロセッサのそれぞれに対して最適性能設定を決定することを含む方法の中に見出される。この方法はまた、装着されたブレードの数に基づいて、プロセッサベースのシステム内のプロセッサの電圧レベルを調整することも含む。
【００１４】
　上記および他の利点はまた、例えば、プロセッサベースのシステム内に装着されたプロセッサの数を決定する手段を含むシステムの中にも見出される。このシステムは、少なくとも一部、これらの装着されたプロセッサの数、および、この熱・電力全体設計枠に基づいて、個々のプロセッサのそれぞれに対して最適性能設定を決定する手段も含む。このシステムはまた、装着されたブレードの数に基づいて、このシステム内のプロセッサの電圧レベルを調整する手段も含む。
【００１５】
　上記および他の利点は、さらに、例えばいくつかのプロセッサを含むシステムの中にも見出される。このシステムは、入力信号を受け取るユーザ・インターフェースも含む。この入力信号は、装着されたプロセッサの数に基づいて上記のいくつかのプロセッサ中の１プロセッサの電圧レベルを調整する命令を含む。このシステムはまた、Inter-IC（IC間）バスと、このInter-ICバスから入力信号を受け取って制御信号を発生させる入出力拡張も含む。この制御信号は、入力信号に入っている命令によって決定された情報を含む。このシステムは、さらに、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、出力電圧を発生させて、その出力電圧を、このプロセッサに供給する。
【００１６】
　上記および他の利点はまた、いくつかのプロセッサを含むシステムの中にも見出される。このシステムは、装着されたプロセッサの数に基づいて１プロセッサの出力電圧を計算するシリアル・プレゼンス検出（ＳＰＤ）回路も含む。このシリアル・プレゼンス検出回路は、このプロセッサの電圧レベルを調整する命令を含む入力信号も発生させる。このシステムはまた、Inter-ICバスと、このInter-ICバスから入力信号を受け取って制御信号を発生させる入出力拡張も含む。この制御信号は、入力信号に入っている命令によって決定された情報を含む。このシステムは、さらに、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、出力電圧を発生させて、その第１出力電圧を、このプロセッサに供給する。
【００１７】
　上記および他の利点は、さらに、例えばいくつかのプロセッサを含むシステムの中にも見出される。このシステムは、入力信号を供給する手動設定装置も含む。この入力信号は、装着されたプロセッサの数に基づいてプロセッサの電圧レベルを調整する命令を含む。このシステムはまた、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、上記の制御信号に入っている情報に基づいて出力電圧を発生させて、その出力電圧を、このプロセッサに供給する。
【００１８】
　上記および他の利点はまた、例えばいくつかのプロセッサを含むシステムの中にも見出される。このシステムは、入力信号を受け取るユーザ・インターフェースも含む。この入力信号は、装着されたプロセッサの数に基づいて、上記のいくつかのプロセッサ中の１プロセッサの電圧レベルを調整する命令を含む。このシステムはまた、Inter-ICバスと、このInter-ICバスから入力信号を受け取って制御信号を発生させるマイクロプロセッサも含む。この制御信号は、入力信号に入っている命令によって決定された情報を含む。このシステムは、さらに、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、この制御信号に入っている情報に基づいて出力電圧を発生させて、その出力電圧を、このプロセッサに供給する。
【００１９】
　上記および他の利点はまた、例えばいくつかのプロセッサを含むシステムの中にも見出される。このシステムは、入力信号を受け取るユーザ・インターフェースも含む。この入力信号は、装着されたプロセッサの数に基づいて、上記のいくつかのプロセッサ中の１プロセッサの電圧レベルを調整する命令を含む。このシステムはまた、Inter-ICバスと、このInter-ICバスから入力信号を受け取って制御信号を発生させるマイクロコントローラも含む。この制御信号は、入力信号に入っている命令によって決定された情報を含む。このシステムは、さらに、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、この制御信号に入っている情報に基づいて出力電圧を発生させて、その出力電圧を、このプロセッサに供給する。
【００２０】
　上記および他の利点は、さらに、例えばいくつかのプロセッサを含むシステムの中にも見出される。このシステムは、入力信号を受け取るユーザ・インターフェースも含む。この入力信号は、装着されたプロセッサの数に基づいて、上記のいくつかのプロセッサ中の１プロセッサの電圧レベルを調整する命令を含む。このシステムはまた、Inter-ICバスと、このInter-ICバスから入力信号を受け取って制御信号を発生させるＦＰＧＡ（field−programmable　gate　array）も含む。この制御信号は、入力信号に入っている命令によって決定された情報を含む。このシステムは、さらに、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、この制御信号に入っている情報に基づいて出力電圧を発生させて、その出力電圧を、このプロセッサに供給する。
【００２１】
　上記および他の利点はまた、例えばいくつかのプロセッサを含むシステムの中にも見出される。このシステムは、入力信号を受け取るユーザ・インターフェースも含む。この入力信号は、装着されたプロセッサの数に基づいて、上記のいくつかのプロセッサ中の１プロセッサの電圧レベルを調整する命令を含む。このシステムはまた、Inter-ICバスと、このInter-ICバスから入力信号を受け取って制御信号を発生させるＰＬＤ（プログラム可能な論理素子）も含む。この制御信号は、入力信号に入っている命令によって決定された情報を含む。このシステムは、さらに、ＤＣ−ＤＣコンバータも含む。このＤＣ−ＤＣコンバータは、この制御信号に入っている情報に基づいて出力電圧を発生させて、その出力電圧を、このプロセッサに供給する。
【００２２】
　この詳細な説明は、同じ要素に同じ番号を付した以下の図面を参照する。
【発明を実施するための最良の形態】
【００２３】
　次に、装着に基づく、ブレード型システム内のプロセッサの電圧管理のための方法の好ましい実施形態を、同じ要素に同じ番号を付した以下の図を参照して詳しく説明する。図１は、ブレード型・アーキテクチャ・システムの基本モジュラー・ビルディング・ブロックの一実施形態を描いたブロック図（全体が参照数字１００で示される）を示している。ブレード型・アーキテクチャ・システム１００内のブレードは、様々なアプリケーションを実行するプロセッサをホストしている。管理プロセッサ１１０は、このシャーシの機能を監視して、インストールされたあらゆるサーバーのコンソールとの単一インターフェースを提供する。図１に示されるように、サーバー・プロセッサ１２０は、管理プロセッサ１１０とやり取りしている。さらに、サーバー・プロセッサ１２０が、特定の機能を果たす他のプロセッサとやり取りしている。例えば、図１に見られるように、サーバー・プロセッサ１２０は、ファイバ・チャネル・プロセッサ１３０およびネットワーク・プロセッサ１４０とやり取りしている。ブレード型・アーキテクチャ・システム１００内の様々なプロセッサは、サーバー・プロセッサ、ネットワーク・プロセッサ、ストレージ・プロセッサ、またはストレージ相互接続プロセッサなどである場合もあると理解されよう。一般に、同一タイプ（サーバー、ファイバ・チャネル、ネットワークなど）のブレード・サーバーには、同一のハードウェア・コンポーネントやソフトウェア・コンポーネントが入っているが、ただし、異なるブレード・サーバーが、同一タイプの他のブレード・サーバーとは異なる電圧または周波数で動作していることもある。
【００２４】
　より高いまたはより低い性能を求めるプロセッサのプロセス要求を利用することにより、それぞれのプロセッサは、高くした周波数／低くした周波数で動作し、したがって、シャーシの熱・電力量のうち、消費する量が多くなるか、または少なくなる。管理プロセッサ１１０はさらに高い性能レベルが必要なプロセスを実行するので、さらに高い周波数で動作する。したがって、シャーシの熱・電力量のうち、消費する量が多くなる。さらに低い性能レベルを要求するバックグラウント・プロセスを実行するスレーブ・プロセッサ１２０は、さらに低い周波数で動作するので、シャーシの熱・電力量のうち、消費する量が少なくなる。いずれのシナリオにおいても、ブレード型・アーキテクチャ・システム１００の熱・電力全体所要量は、全体プロセッサ性能を用いてより最適にすることで満たされる。
【００２５】
　上で論じられるように、プロセッサ１１０、１２０、１３０、１４０の電圧を個々に調整することのできるブレード型・アーキテクチャ・システム１００を作り出すことが望ましい。一実施形態では、特定のプロセッサ、またはそのプロセッサをホストするブレードの電圧および周波数を同時に調整する。当業者であれば、このプロセッサをホストするブレードで用いられる電圧を変更するために、プロセッサの電圧変更に関して本明細書に述べられた技法も利用できることが理解されよう。一般に、プロセッサの電圧を上げる（特定の範囲内で）と、プロセッサが動作できる周波数も高くなる。逆に、プロセッサの電圧を下げると、プロセッサが動作できる周波数が低くなる。したがって、プロセッサの周波数を低くすると、さらに低い性能レベルですむので、その電圧も、この周波数とともに低下する。その結果、大幅な熱・電力軽減がもたらされる。プロセッサで消費される電力は、周波数、および電圧の二乗に比例するために、電圧を調整すると、ただ周波数だけを調整することよりも、さらに大きく成果が上がる。
【００２６】
　多くのブレード型・アーキテクチャ・システム１００では、プロセッサまたはメモリが始動する電圧は、ＤＣ−ＤＣコンバータと呼ばれる電圧コンバータで発生させる。ＤＣ−ＤＣコンバータは、シャーシ内のすべてのサーバーを動作させるグローバル・システム電力（global　system　power）、例えば５ボルトを取り入れ、またそのグローバル・システム電力から、シャーシ内にホストされた個々のプロセッサ１１０、１２０、１３０、１４０向けに指定電圧要求値を発生させる。ＤＣ−ＤＣコンバータは、通常、回路中のセントラル・コントローラとして、ＡＳＩＣを用いて制御される。プロセッサ１１０、１２０、１３０、１４０への電圧調整は、ＤＣ−ＤＣコンバータ上の「トリム」ピンに、シリアルまたはパラレルのデジタル入力を供給すれば、達成できる。ＤＣ−ＤＣコンバータ回路中の所与のトリム・ピンにて、値をわずかに変化させれば、出力電圧を、わずかに上げたり、下げたりすることができる。例えば、２ボルトは、２．１ボルト、２．２ボルトなどに変えることができる。図２〜図５は、ＤＣ−ＤＣコンバータのトリム・ピンへの入力をどのように制御できるか、異なる手法を示している。当業者であれば、本明細書に開示される原理は、PA−RISC、DEC　Alpha、MIPS、PowerPC、SPARC、IA−32、IA−64を含め、様々なプロセッサ・アーキテクチャに適用できることがすぐ理解されよう。
【００２７】
　図２は、入出力（Ｉ／Ｏ）拡張チップなどのInter-IC（Ｉ２Ｃ）デバイスを用いて、個々のプロセッサ、またはそのプロセッサをホストするブレードの動作電圧を管理する方法の一実施形態を描いたブロック図（全体が参照数字２００で示される）を示している。Ｉ２Ｃの方法２００では、Ｉ２Ｃバス２１０から制御信号を供給し、この制御信号をＩ／Ｏ拡張チップ２２０に供給し、「trim in」信号２３０を発生させ、「voltage in」信号２４０を供給し、「voltage in」信号２４０を、ＤＣ−ＤＣコンバータ２５０のトリム・ピンに供給し、出力電圧２６０を発生させる。
【００２８】
　Ｉ２Ｃバス２１０、または他の制御バスを使用して、Ｉ／Ｏ拡張チップ２２０を制御する。当業者に知られているように、Ｉ２Ｃバス２１０は、集積回路間に通信リンクを提供する双方向の２線式シリアル・バスである。プロセッサ１１０、１２０、１３０、１４０がＰＡ−ＲＩＳＣプロセッサである一実施形態では、制御信号は、ＧＳＰ（ガーディアン・サービス・プロセッサ）コンソールを用いて、手動で、Ｉ２Ｃバス２１０に供給される。ＧＳＰは管理コンソールであり、これにより、ユーザは、ブレード型・アーキテクチャ・システム１００の様々なパラメータを制御することができる。例えば、その電圧を、特定のプロセッサ１１０、１２０、１３０、１４０、すなわち、ブレード型・アーキテクチャ・システム１００内にホストされたプロセッサに供給する。ＧＳＰコンソールのユーザ・フレンドリなインターフェースを使用すれば、ユーザは、どんな低レベルの情報（例えば、ビット・セッティング）についても知る必要なく、ブレード型・アーキテクチャ・システム１００内のプロセッサ１１０、１２０、１３０、１４０の電圧を手動で制御することができる。
【００２９】
　他の実施形態では、制御信号は、シリアル・プレゼンス検出（ＳＰＤ）機能を用いて、自動的にＩ２Ｃバス２１０に供給される。ＳＰＤは、ブレード型・アーキテクチャ・システム１００の異なる部分に問い合せて、オプションとして装着された機構の装着ステータス（loading　status）を判定するシリアル・バスである。このようにオプションとして装着された機構には、例えば、プロセッサ１１０、１２０、１３０、１４０、または他の任意のボードがある。ブレード型・アーキテクチャ・システム１００は、各プロセッサ１１０、１２０、１３０、１４０に適した電圧を自動的に検出することができる。ブレード型・アーキテクチャ・システム１００の熱・電力限度内で、プロセッサ１１０、１２０、１３０、１４０の性能が最大になる。ＳＰＤは、Ｉ２Ｃバス２１０を利用して、ブレード型・アーキテクチャ・システム１００内のすべてのプロセッサ１１０、１２０、１３０、１４０に問い合せる。そのことにより、ブレード型・アーキテクチャ・システム１００のシャーシにに何基のプロセッサが装着されているのか判定し、プロセッサ１１０、１２０、１３０、１４０などの要求性能を判定する。次に、この情報を使用して、プロセッサ１１０、１２０、１３０、１４０に供給される電圧を自動的に調整する。
【００３０】
　Ｉ／Ｏ拡張チップ２２０は、Ｉ２Ｃバス２１０を用いて制御される安価なシリアル・パラレル・タイプのチップであり得る。Ｉ／Ｏ拡張チップ２２０は、Ｉ２Ｃコマンドを通じてＩ／Ｏ拡張チップ２２０に書き込むことで、特定の状態に強制される入出力（Ｉ／Ｏ）ポートを持っている。Ｉ／Ｏ拡張チップ２２０はＩ２Ｃベースのものであるから、Ｉ／Ｏ拡張チップ２２０は、前述の通り、ＧＳＰまたはＳＰＤなどのＩ２Ｃインターフェースをサポートする装置であれば、どんなものによっても制御できる。Ｉ／Ｏ拡張チップ２２０は、通常、複数のＩ／Ｏポートを持っている。それゆえ、１個のＩ／Ｏ拡張チップ２２０を使用すれば、複数のＤＣ−ＤＣコンバータ２５０を個々に制御することができる。Ｉ／Ｏ拡張チップ２２０は、「trim in」信号２３０、すなわち、ＤＣ−ＤＣコンバータ２５０のトリム・ピンに入力されるＮビット長の制御信号を発生させる。「trim in」信号２３０には、ユーザからの電圧調整に関する情報が入っている。「trim in」信号２３０をＤＣ−ＤＣコンバータ２５０に供給して、適切な入力をＤＣ−ＤＣコンバータ２５０のトリム・ピンに供給することでプロセッサ１１０、１２０、１３０、１４０の電圧を制御する。「voltage in」信号２４０も、ＤＣ−ＤＣコンバータ２５０に供給して、プロセッサ電圧を比較する基準電圧レベルを提供する。この基準電圧レベルは、ブレード型・アーキテクチャ・システム１００のグローバル・システム電力、すなわち、ブレード型・アーキテクチャ・システム１００内にホストされた任意の１つのプロセッサ１１０、１２０、１３０、１４０で利用できる最大電圧に相当する。次に、ＤＣ−ＤＣコンバータ２５０は、プロセッサ１１０、１２０、１３０、１４０に適した出力電圧２６０を発生させて、ブレード型・アーキテクチャ・システム１００の熱・電力限度内で、プロセッサ１１０、１２０、１３０、１４０の性能を最適化する。ＤＣ−ＤＣコンバータ２５０上のトリム・ピンを用いて、様々なプロセッサ１１０、１２０、１３０、１４０に、出力電圧２６０を印加する。
【００３１】
　図３は、手動設定装置を用いて、個々のプロセッサ、またはそのプロセッサをホストするブレードの動作電圧を管理する方法の一実施形態を描いたブロック図（全体が参照数字３００で示される）を示している。手動設定装置の方法３００では、ブレード型・アーキテクチャ・システム１００上の手動設定装置３１０をセットし、「trim in」信号３２０を発生させ、「voltage in」信号３３０を供給し、「voltage in」信号３３０を、ＤＣ−ＤＣコンバータ３４０のトリム・ピンに供給し、出力電圧３５０を発生させる。
【００３２】
　当業者であれば、所望の機能を果たすことのできる多くの共通手動設定装置、例えばディップ・スイッチ、ピン・ヘッダの上に設けられるジャンパ、回転設定スイッチ、はんだブリッジなどがあることが理解されよう。例えば、一実施形態では、ディップ・スイッチは、手動設定装置３１０として用いられることがある。当技術分野で知られているように、ディップ・スイッチ３１０は、回路基板、例えばプロセッサ１１０、１２０、１３０、１４０を含む回路基板に組み込まれた一連の極小スイッチである。
【００３３】
　手動設定装置３１０により、ユーザは、これらのプロセッサを設定することができる。この実施形態では、手動設定装置３１０により、ユーザは、特定のプロセッサ１１０、１２０、１３０、１４０で用いられている電圧を調整することができる。手動設定装置は、通常、トグルスイッチであって、オンまたはオフの２つの可能な位置（すなわち、０と１のビット位置）を持っている。ブレード型・アーキテクチャ・システム１００の物理的に容易に近寄れる部分に、例えば、ブレード型・アーキテクチャ・システム１００の外側の部分に、手動設定装置３１０が付け加えられる。したがって、ブレード型・アーキテクチャ・システム１００のリブートのときに、所定の要求性能に基づいて、ユーザまたは操作者に、プロセッサ１１０、１２０、１３０、１４０の電圧を手動でセットさせる。しかしながら、ユーザは、ＤＣ−ＤＣコンバータ４５０のトリム・ピンのコンフィギュレーション・ビットの適切なセッティングを知らなければならない。
【００３４】
　手動設定装置３１０は、「trim in」信号３２０、すなわち、ＤＣ−ＤＣコンバータ３４０のトリム・ピンに入力されるＮビット長の制御信号を発生させる。「trim in」信号３２０には、ユーザからの電圧調整に関する情報が入っている。「trim in」信号３２０をＤＣ−ＤＣコンバータ３４０に供給して、適切な入力をＤＣ−ＤＣコンバータ３４０のトリム・ピンに供給することでプロセッサ１１０、１２０、１３０、１４０の電圧を制御する。「voltage in」信号３３０も、ＤＣ−ＤＣコンバータ３４０に供給して、プロセッサ電圧を比較する基準電圧レベルを提供する。この基準電圧レベルは、ブレード型・アーキテクチャ・システム１００のグローバル・システム電力、すなわち、ブレード型・アーキテクチャ・システム１００内にホストされた任意の１つのプロセッサ１１０、１２０、１３０、１４０で利用できる最大電圧に相当する。次に、ＤＣ−ＤＣコンバータ３４０は、プロセッサ１１０、１２０、１３０、１４０に適した出力電圧３５０を発生させて、ブレード型・アーキテクチャ・システム１００の熱・電力限度内で、プロセッサ１１０、１２０、１３０、１４０の性能を最適化する。ＤＣ−ＤＣコンバータ３４０のトリム・ピンを用いて、様々なプロセッサ１１０、１２０、１３０、１４０に、出力電圧３５０を印加する。
【００３５】
　図４は、マイクロプロセッサ／マイクロコントローラを用いて、個々のプロセッサ、またはそのプロセッサをホストするブレードの動作電圧を管理する方法の一実施形態を描いたブロック図（全体が参照数字４００で示される）を示している。マイクロプロセッサの方法４００には、Ｉ２Ｃバス４１０から制御信号を供給し、この制御信号をマイクロプロセッサ／マイクロコントローラ４２０に供給し、「trim in」信号４３０を発生させ、「voltage in」信号４４０を供給し、「voltage in」信号４４０を、ＤＣ−ＤＣコンバータ４５０のトリム・ピンに供給し、出力電圧４６０を発生させる。
【００３６】
　Ｉ２Ｃバス４１０は、マイクロプロセッサ／マイクロコントローラ４２０を制御するために用いられる。当業者に知られているように、Ｉ２Ｃバス４１０は、集積回路間に通信リンクを提供する双方向の２線式シリアル・バスである。マイクロプロセッサ／マイクロコントローラ４２０は、Ｉ２Ｃバス４１０を用いて、ユーザと対話して、ユーザがプロセッサ１１０、１２０、１３０、１４０を作動させたいと思う電圧を、ユーザに入力させる。ユーザ入力は、さらに高いレベルのインターフェース装置、例えばコンソールを用いて達成できる。マイクロプロセッサ／マイクロコントローラ４２０は、ユーザに対し、ＤＣ−ＤＣコンバータ４５０のトリム・ピンのコンフィギュレーション・ビットの適切なセッティングを知るよう求めることなく、このユーザ入力を適切なコマンドに自動的に変換して、プロセッサ１１０、１２０、１３０、１４０の電圧を調整するようにプログラムできる。
【００３７】
　マイクロプロセッサ／マイクロコントローラ４２０は、「trim in」信号４３０、すなわち、ＤＣ−ＤＣコンバータ４５０のトリム・ピンに入力されるＮビット長の制御信号を発生させる。「trim in」信号４３０には、ユーザからの電圧調整に関する情報が入っている。「trim in」信号４３０をＤＣ−ＤＣコンバータ４５０に供給して、適切な入力をＤＣ−ＤＣコンバータ４５０のトリム・ピンに供給することでプロセッサ１１０、１２０、１３０、１４０の電圧を制御する。「voltage in」信号４４０も、ＤＣ−ＤＣコンバータ４５０に供給して、プロセッサ電圧を比較する基準電圧レベルを提供する。この基準電圧レベルは、ブレード型・アーキテクチャ・システム１００のグローバル・システム電力、すなわち、ブレード型・アーキテクチャ・システム１００内にホストされた任意の１つのプロセッサ１１０、１２０、１３０、１４０で利用できる最大電圧に相当する。次に、ＤＣ−ＤＣコンバータ４５０は、プロセッサ１１０、１２０、１３０、１４０に適した出力電圧４６０を発生させて、ブレード型・アーキテクチャ・システム１００の熱・電力限度内で、プロセッサ１１０、１２０、１３０、１４０の性能を最適化する。ＤＣ−ＤＣコンバータ４５０のトリム・ピンを用いて、様々なプロセッサ１１０、１２０、１３０、１４０に、出力電圧４６０を印加する。
【００３８】
　図５は、ＦＰＧＡ（field−programmable　gate　array）またはＰＬＤ（プログラム可能な論理素子）を用いて、個々のプロセッサ、またはそのプロセッサをホストするブレードの動作電圧を管理する方法の一実施形態を描いたブロック図（全体が参照数字５００で示される）を示している。ＦＰＧＡ／ＰＬＤの方法５００では、Ｉ２Ｃバス５１０から制御信号を供給し、この制御信号をＦＰＧＡ／ＰＬＤ５２０に供給し、「Trim in」信号５３０を発生させ、「voltage in」信号５４０を供給し、「voltage in」信号５４０を、ＤＣ−ＤＣコンバータ５５０のトリム・ピンに供給し、出力電圧５６０を発生させる。
【００３９】
　Ｉ２Ｃバス５１０は、ＦＰＧＡ／ＰＬＤ５２０を制御するために用いられる。当業者に知られているように、Ｉ２Ｃバス５１０は、集積回路間に通信リンクを提供する双方向の２線式シリアル・バスである。ＦＰＧＡは、製造後、現場でプログラムできる特定のタイプのＰＬＤであるチップである。ＦＰＧＡ／ＰＬＤ５２０は、Ｉ２Ｃバス４１０を用いて、ユーザと対話して、ユーザがプロセッサ１１０、１２０、１３０、１４０を作動させたいと思う電圧を、ユーザに入力させる。ユーザ入力は、さらに高いレベルのインターフェース装置、例えばコンソールを用いて達成できる。図５を参照して述べられたマイクロコントローラ／マイクロプロセッサ４２０の利用と同様に、ＦＰＧＡ／ＰＬＤ５２０を用いれば、ユーザは、このような電圧調整を、さらに透過的なやり方で制御することができる。すなわち、ユーザは、ＤＣ−ＤＣコンバータ５５０のトリム・ピンのコンフィグレーション・ビットの適切なセッティングを知る必要はない。
【００４０】
　ＦＰＧＡ／ＰＬＤ５２０は、「trim in」信号５３０、すなわち、ＤＣ−ＤＣコンバータ５５０のトリム・ピンに入力されるＮビット長の制御信号を発生させる。「trim in」信号５３０には、ユーザからの電圧調整に関する情報が入っている。「trim in」信号５３０をＤＣ−ＤＣコンバータ５５０に供給して、適切な入力をＤＣ−ＤＣコンバータ５５０のトリム・ピンに供給することでプロセッサ１１０、１２０、１３０、１４０の電圧を制御する。「voltage in」信号５４０も、ＤＣ−ＤＣコンバータ５５０に供給して、プロセッサ電圧を比較する基準電圧レベルを提供する。この基準電圧レベルは、ブレード型・アーキテクチャ・システム１００のグローバル・システム電力、すなわち、ブレード型・アーキテクチャ・システム１００内にホストされた任意の１つのプロセッサ１１０、１２０、１３０、１４０で利用できる最大電圧に相当する。次に、ＤＣ−ＤＣコンバータ５５０は、プロセッサ１１０、１２０、１３０、１４０に適した出力電圧５６０を発生させて、ブレード型・アーキテクチャ・システム１００の熱・電力限度内で、プロセッサ１１０、１２０、１３０、１４０の性能を最適化する。ＤＣ−ＤＣコンバータ５５０のトリム・ピンを用いて、様々なプロセッサ１１０、１２０、１３０、１４０に、出力電圧５６０を印加する。
【００４１】
　図６は、同一電圧で動作するブレード型・アーキテクチャ・システム１００のシャーシ内の一連のプロセッサを描いたブロック図（全体が参照数字６００で示される）を示している。個々のプロセッサの陰影は、個々のプロセッサが、それぞれ同じ電圧レベルで動作していることを示している。同一電圧でプロセッサを動作させることが、現行のブレード型・アーキテクチャ・システムでは代表的なものである。さらに、この陰影は、このシステム全体に配分された最大電力未満にとどまるように、そのプロセッサの最高性能レベルよりも低いレベルで動作していることを示している。逆に、それぞれのプロセッサは、そのプロセスに対して、最高性能レベルでも動作することがあり、したがって、ブレード型・アーキテクチャ・システム１００の電力・熱割当てには重い負担になる。前に論じられたように、ブレード型・サーバー・システムは、基本的な電力・熱設計枠によって制限される。これは、プロセッサ中で生じた熱や、シャーシでの限られた寸法による。シャーシが、所与の電力量を消費するときには、このシャーシは、通常、プロセッサを冷却するのに利用できるエアフローの量が制限される。その結果、このような電力制限は、ブレード上のプロセッサが動作できる電圧を制限し、したがって、その性能を制限する。したがって、これらのプロセッサは、実行する必要のあるプロセスに応じて、最適な性能およびキャパシティで動作できる能力が制限される。なぜなら、これらのプロセッサは、同一電圧、すなわち、それらの最高レベルよりも低い電圧で動作するように設定されているからである。
【００４２】
　図７は、変更された電圧で動作するブレード型・アーキテクチャ・シャーシ内の一連のプロセッサを描いたブロック図（全体が参照数字７００で示される）を示している。図７のシステムは、前に述べられた様々な方法の少なくとも１つを用いて、ユーザが、シャーシ内の様々なプロセッサの電圧レベルを手動で、または自動的に調整できるようになっているシステムを表わしている。その結果、このシステム全体は、はるかに効率的なレベルで動作する。ここで、図７に見られるように、それぞれのプロセッサは、このシステム内で、その特定の機能に求められる所要の電圧レベルしか用いてない。また、この電圧レベルは、そのときにブレード型・アーキテクチャ・システム１００内に装着されたブレードの総数により制限される。ここで、個々のプロセッサに使える電圧レベルが様々であるために、平均電圧よりも高い電圧を要求するプロセッサは、さらに最適なレベルで動作することができる。同様に、さらに低い電力でよいプロセッサは、もう、他のプロセッサと同じ電圧レベルで動作する必要はない。その結果、さらに効率的なシステムが作り出される。
【００４３】
　その後、ブレード型・アーキテクチャ・システム１００から、ブレードを除去する場合には、これらのプロセッサの電圧レベルと周波数レベルを高くすることができる。これは、その電力・熱全体割当てのうち、残りのプロセッサに利用できる量が多くなるからである。同様に、その後、ブレード型・アーキテクチャ・システム１００に追加するブレードが多くなれば、これらのプロセッサの電圧レベルと周波数レベルを低くして、その電力・熱全体割当てのうち、上記のより多くのプロセッサが利用できる量の削減を受け入れることができる。
【００４４】
　本明細書に開示される原理は、共通シャーシを共有するブレードまたはプロセッサから成るシステムに、あるいは、複数のシャーシにまたがるアーキテクチャ・システムに応用できるものと理解されよう。すなわち、このような原理は、物理パーティションまたは論理パーティションで分割されたシステムに応用できる。例えば、物理的に、システムは、それぞれ８基のプロセッサを有する３つのシャーシを含むことがある。論理的に、同一システムが、５人の異なるカスタマに対して、５つの異なるｗｅｂサーバーに区分されることもある。シャーシ内の電力制約は、通常、このシステムの物理パーティションに関係する。複数のシャーシ内に位置づけられるカスタマまたはアプリケーションに課せられる電力制約は、通常、論理パーティションに関係する。当業者であれば、上述の技術革新は、物理的にも論理的にも区分されたアーキテクチャに適用できることがすぐ理解されよう。
【００４５】
　ブレードベースのコンピュータ・システム内の個々のブレードまたはプロセッサの動作電圧を手動で管理する方法が、模範的な実施形態に関連して述べられてきたが、当業者であれば、以上の教示に照らして多くの変更が可能であり、また、本願が、そのどんな変形例もカバーするようにもくろまれていることが理解されよう。
【００４６】
　例えば、この開示されたシステムおよび方法は、Ｉ２Ｃバスから信号を受け取るのに用いられる特定のＩ２Ｃ装置を利用している。他のＩ２Ｃ装置も、同じように用いられることがある。したがって、この開示全体を通じて、図示され、参照されるＩ２Ｃ装置は、特記しない限り、所望の機能を果たすのに適した一切の装置／技術を表わすことになっている。同様に、様々な動作を行うプロセッサおよびブレードもいくつか開示されている。この特定のプロセッサまたはブレードは、本明細書に述べられるシステムおよび方法にとって重要ではない。したがって、本明細書に述べられるシステムおよび方法を、任意の特定の形態のプロセッサ、ブレード、または特定のブレード・アーキテクチャに限定することは、出願者の意図ではない。
【００４７】
　この開示全体を通じて、さらに他の例証があり、本明細書にはっきりと特定されてはいないが、それでも、クレーム記載の機能を果たすことのできる構造、材料、または動作の利用を、この開示の範囲から除外することは、出願者の意図ではない。
【図面の簡単な説明】
【００４８】
【図１】ブレード型アーキテクチャ・システムの基本モジュラー・ビルディング・ブロックの一実施形態を描いたブロック図。
【図２】入出力拡張チップを用いて、個々のプロセッサの動作電圧を管理する一手法を描いたブロック図。
【図３】手動設定装置を用いて、個々のプロセッサの動作電圧を管理する方法の一実施形態を描いたブロック図。
【図４】マイクロコントローラまたはマイクロプロセッサを用いて、個々のプロセッサの動作電圧を管理する方法の一実施形態を描いたブロック図。
【図５】ＦＰＧＡ（field　programmable　gate　array）またはＰＬＤ（プログラム可能な論理素子）を用いて、個々のプロセッサの動作電圧を管理する方法の一実施形態を描いたブロック図。
【図６】ブレード型アーキテクチャ・シャーシ内の一連のプロセッサを描いたブロック図。
【図７】変更された電圧で動作するブレード型アーキテクチャ・シャーシ内の一連のブレードを描いたブロック図。
【符号の説明】
【００４９】
　１００　コンピュータシステム
　１２０、６００　プロセッサ
　２１０、４１０、５１０　Inter-ICバス
　２２０　入出力拡張
　２３０、３２０、４３０、５３０　制御信号
　２５０、３４０、５５０　ＤＣ−ＤＣコンバータ
　２６０、３５０、５６０　出力電圧
　３１０　手動設定装置
　４２０　マイクロプロセッサ／マイクロコントローラ
　５２０　ＦＰＧＡ／ＰＬＤ
　７００　電圧レベル
【図１】
2004078941.tif 000003
【図２】
2004078941.tif 000004
【図３】
2004078941.tif 000005
【図４】
2004078941.tif 000006
【図５】
2004078941.tif 000007
【図６】
2004078941.tif 000008
【図７】
2004078941.tif 000009