(57)【要約】【課題】　ブレード型コンピュータシステムにおいて、より最適な動作周波数管理システムを提供する。【解決手段】　ブレード・ベースのコンピュータシステム内のブレードの動作周波数を管理するシステムおよび方法の一実施形態では、このシステム内に装着されたブレードの数を決定する。次に、個々のブレードのそれぞれに対して、最適性能設定を決定する。この最適性能設定は、シャーシ内に装着されたブレードの数、および、熱・電力総合包絡線に少なくとも部分的に基づいている。次に、前述の個々のブレードの少なくとも１つに、個別に周波数をセットする。【選択図】図１
2004078930.tif 000002
【特許請求の範囲】
【請求項１】
　ブレード・ベースのコンピュータシステム内のブレードの動作周波数を管理する方法であって、
　前記ブレード・ベースのコンピュータシステムのシャーシ内に装着されたブレードの数を識別するステップと、
　前記シャーシ内に装着された前記ブレードの数、および、前記ブレード・ベースのコンピュータシステム用の熱・電力総合包絡線に少なくとも部分的に基づいて、個々のブレードのそれぞれに対して、最適性能設定を決定するステップと、
　前記ブレード・ベースのコンピュータシステム内の前記個々のブレードの少なくとも１つに対して、個別に周波数をセットするステップと、
を有する方法。
【請求項２】
　前記識別するステップは、Ｉ２Ｃベースのインテリジェント・プラットフォーム管理バス（ＩＰＭＢ）インターフェースを用いるステップを有する請求項１記載の方法。
【請求項３】
　前記決定するステップは、該決定をその時点で利用できる熱・電力包絡線に基づかせるステップを有する請求項１記載の方法。
【請求項４】
　前記セットするステップは、前記ブレード・ベースのコンピュータシステムのユーザによって実行される請求項１記載の方法。
【請求項５】
　前記セットするステップは、手動設定装置を用いるステップを有する請求項４記載の方法。
【請求項６】
　前記セットするステップは、抵抗器ジャンパを用いるステップを有する請求項４記載の方法。
【請求項７】
　前記セットするステップは、前記ブレード・ベースのコンピュータシステムによって実行される請求項１記載の方法。
【請求項８】
　ブレード・ベースのコンピュータシステムであって、
　前記ブレード・ベースのコンピュータシステム内のシャーシに収納されたブレードのセットと、
　前記ブレード・ベースのコンピュータシステムの前記シャーシ内に装着されたブレードの数を決定する手段と、
　前記シャーシ内に装着された前記ブレードの数、および、前記ブレード・ベースのコンピュータシステム用の熱・電力総合包絡線に少なくとも部分的に基づいて、個々のブレードのそれぞれに対して、最適性能設定を決定する手段と、
　前記ブレード・ベースのコンピュータシステム内の前記個々のブレードの少なくとも１つに対して、個別に周波数をセットする手段と、
を有するシステム。
【請求項９】
　ブレード・ベースのコンピュータシステムであって、
　前記ブレード・ベースのコンピュータシステム内のシャーシに収納されたブレードのセットと、
　前記ブレード・ベースのコンピュータシステムの前記シャーシ内に装着されたブレードの数を決定する管理ブレードであって、前記シャーシ内に装着された前記ブレードの数、および、熱・電力総合包絡線に少なくとも部分的に基づいて、個々のブレードのそれぞれに対して、最適性能設定を決定するようにプログラムされた管理ブレードと、
　前記ブレード・ベースのコンピュータシステム内の前記個々のブレードの少なくとも１つに対して、個別に周波数をセットする装置と、
を有するシステム。
【請求項１０】
　個別に周波数をセットする前記装置が、手動設定装置、ストラッピング抵抗器、マイクロコントローラ、マイクロプロセッサ、ＦＰＧＡ、ＰＬＤ、および、Ｉ２ＣベースのＩ／Ｏエキスパンダ・チップから成るグループから選択される請求項９記載のブレード・ベースのコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、ブレード型コンピュータシステムの動作周波数管理に関する。
【背景技術】
【０００２】
（関連出願）
　本願は、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「性能要件に基づく、ブレード型アーキテクチャにおけるブレードの周波数管理のためのシステム、方法、装置」と称する米国特許出願第１０／２１６，４３７号、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「キャパシティ・オン・デマンドを可能にするコンピュータシステムの周波数管理のためのシステムおよび方法」と称する米国特許出願第１０／２１６，４３８号、Ｒｉｃａｒｄｏ　ＥＳＰＩＮＯＺＡ−ＩＢＡＲＲＡ氏らによってなされた「プロセッサ・レベルにて性能を最適化するシステム、方法、装置」と称する米国特許出願第１０／２１６，２８３号、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「性能要件に基づく、ブレード型アーキテクチャにおけるブレードの電圧管理」と称する米国特許出願第１０／２１６，２８４号、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「プロセッサ・レベルでの性能最適化と共同する電圧調整」と称する米国特許出願第１０／２１６，２８６号、Ｒｉｃａｒｄｏ　ＥＳＰＩＮＯＺＡ−ＩＢＡＲＲＡ氏らによってなされた「プロセッサまたはブレードの動作周波数を管理するシステムおよび方法」と称する米国特許出願第１０／２１６，２８５号、Ｒｉｃａｒｄｏ　ＥＳＰＩＮＯＺＡ−ＩＢＡＲＲＡ氏らによってなされた「ブレード型システム内のブレードの動作周波数を管理するシステムおよび方法」と称する米国特許出願第１０／２１６，２２９号、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「ローディングに基づく、ブレード型システム内のプロセッサの電圧管理」と称する米国特許出願第１０／２１６，２３３号、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「性能と電力消費を最適化するプロセッサの電圧管理のためのシステムおよび方法」と称する米国特許出願第１０／２１６，２３２号、および、Ａｎｄｒｅｗ　Ｈ．ＢＡＲＲ氏らによってなされた「メモリ・サブシステムの管理」と称する米国特許出願第１０／２１６，４３５号に関係がある。以上の米国特許出願はすべて、２００２年８月１２に出願されたものである。
【０００３】
　ブレード型サーバー（ｂｌａｄｅｄ　ｓｅｒｖｅｒ）、またはブレード型コンピュータシステムは、個々のカードまたはブレード上にサーバーまたは他のコンピュータ・リソースを提供するコンピューティング・システムである。サーバー・ブレード、ストレージ・ブレード、ネットワーク・ブレードなど、多くのタイプのブレードがあり、また、通常、単一構造体の中に、それぞれのタイプのブレードの１つまたは複数が、いっしょに収納され、したがって、モジューラ・アーキテクチャを用いて高密度のコンピューティング・システムを作り出し、それにより、システムのフレキシビリティ（柔軟性）およびスケーラビリティが保証され、かつ、スペース要件が削減される。サーバー・ブレードは、通常、ストレージ・ブレード、ネットワーキング・ブレード、および他のブレードといっしょに、複数のブレードをホストする（ｈｏｓｔ）ラック搭載可能なエンクロージャまたはシャーシ内にインストールされる。これらの複数のブレードは、ケーブル、電源、冷却ファンなどの共通リソースを共有する。
【０００４】
　テレコミュニケーションの業界は、何年間も、ブレード・サーバー技術を利用してきた。さらに一般的には、この凝縮されたブレード・サーバー・アーキテクチャは、（１）インターネットを利用して、収入をもたらし、またサービスをカスタマに提供している、（２）事業プロセスの一部をＷｅｂに移している、かつ／または、（３）自身のデータセンターで、インターネット・エッジのアプリケーションを展開する融通性を必要としている、人々および企業に役立つ。最近の技術の発展のために、ブレード・サーバーは、現在、Ｗｅｂホスティング、Ｗｅｂキャッシング、コンテンツ・ストリーミングなどの用途に用いられている。
【０００５】
　Ｗｅｂキャッシングの用途では、頻繁に要求されるＷｅｂコンテンツを、ユーザのより近くに格納し、したがって、ユーザがオブジェクトをより速く検索することができ、インターネットへのアクセスに必要な時間および帯域幅が削減される。会社や個人は、現在、メディア（例えば、映像や音声）のストリーミングを行って、内部でも外部でも、さらに効果的なやり取りを行っているから、インターネット上でのリッチ・メディア・コンテンツ配信が著しく成長してきた。ブレード型サーバーは、このような成長の結果として生み出される新たな需要に応じるために利用されている。
【０００６】
　ブレード型サーバーは、多くの利点を提供するとはいえ、ブレード型サーバーを利用しているときに、いくつかの技術課題が発生する。これらの課題の中には、システムをホストするシャーシ内で使える限られたスペースにおいて、充分な熱を放散させるように、ブレード型システムを設計し、動作させるという課題がある。放熱の課題に取り組むために、ブレード型サーバーシステムは、基本的な電力・熱包絡線の範囲内に設計される。例えば、ブレード型システムをホストするシャーシに、ブレードの冷却に利用できるエアフローが限られた量しかないとき（すなわち、ブレード型システムが、限られた量の熱だけしか放散させることができないとき）には、このシャーシは、限られた量の電力消費、および、それに伴うそれぞれのブレードの制限された性能向けに設計される。いくつかの公知の電力制限戦略には、ＣＰＵ機能ユニット、例えば、浮動小数点ユニットまたはオンダイ（on-die）・キャッシュを停止するか、あるいは、ハードディスク・ドライブにおいて、速度と引き換えに、電力消費を削減する方策がある。
【０００７】
　ブレード型システムに関する以前のソリューションには、最適周波数よりも低い周波数でブレードを動作させる、このシステム内に、１枚のブレードだけ、または１種類のブレードだけを装着する、このシステムが一度に処理できるブレードの組合せを制限する、高価なインフラを使用して、このシステムへの充分な換気および電力供給を保証する、および、システム障害の危険性が高いときに、システムの仕様および動作を無視するソリューションがあった。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
　本発明の目的は、ブレード型コンピュータシステムにおいて、より最適な動作周波数管理システムを提供することである。
【課題を解決するための手段】
【０００９】
　ブレード・ベースのコンピュータシステム内のブレードの動作周波数を管理するシステムおよび方法の一実施形態では、このシステム内に装着されたブレードの数を決定する。次に、個々のブレードのそれぞれに対して、最適性能設定を決定する。この最適性能設定は、シャーシ内に装着されたブレードの数、および、熱・電力総合包絡線に少なくとも部分的に基づいている。次に、前述の個々のブレードの少なくとも１つに、個別に周波数をセットする。
【００１０】
　ブレード・ベースのコンピュータシステム内のブレードの動作周波数を管理するシステムおよび方法の他の実施形態では、このブレード・ベースのコンピュータシステムのシャーシ内に装着されたブレードの数を決定する手段を用いて、使用されているブレードの数を決定する。次に、個々のブレードのそれぞれに対して、最適性能設定を決定する手段を使用する。このような決定は、シャーシ内に装着されたブレードの数、および、熱・電力総合包絡線に少なくとも部分的に基づいている。次に、個別に周波数をセットする手段を使用して、個々のブレードの少なくとも１つに対し、周波数を調整する。
【００１１】
　ブレード・ベースのコンピュータシステム内のブレードの動作周波数を管理するシステムおよび方法の他の実施形態では、このブレード・ベースのコンピュータシステムのシャーシ内に装着されたブレードの数を決定する管理ブレードは、シャーシ内に装着されたブレードの数、および、熱・電力総合包絡線に少なくとも部分的に基づいて、個々のブレードのそれぞれに対して、最適性能設定を決定するようにプログラムされる。これらのブレードの少なくとも１つに対して、個別に周波数をセットする装置を使用する。
【発明を実施するための最良の形態】
【００１２】
　次に、以下の図を参照して、ブレード型システムにおいて周波数および性能を調整する方法のいくつかの好ましい実施形態を詳しく説明する。添付図面のうちの図１を参照すると、ブレード型コンピュータシステム・アーキテクチャの基本モジュラー構成要素の一実施形態を描いたブロック図（全体が参照数字１００で示される）が図１に示されている。管理ブレード１１０は、このシャーシの機能を監視して、インストールされたあらゆるサーバー・ブレード１２０のコンソールとの単一インターフェースを提供する。
【００１３】
　図１に示されるように、サーバー・ブレード１２０は、管理ブレード１１０に動作可能に接続されて、管理ブレード１１０と通信することができる。さらに、サーバー・ブレード１２０が、特定の機能を果たす他のブレードに動作可能に接続されて、他のブレードと通信することができる。例えば、図１に見られるように、サーバー・ブレード１２０は、ファイバ・チャネル・ブレード１３０およびネットワーク・ブレード１４０と通信することができる。
【００１４】
　このブレード型システムは、シャーシ内に、個々のブレードが１つまたは複数、あることを検出し、かつ／または、個々のブレードを１つまたは複数、シャーシ内に装着することを識別することもできる。個々のブレードを検出および／または識別できるようにする方法が多くあっても、シリアル・プレゼンス・ディテクト（serial presence detect、ＳＰＤ）機構を選択することが多い。この機構により、コンピュータシステムをブートすると、これらのブレードは、そのブレードのサイズ、データの幅、速度、電圧に関する情報を用いて、最大の信頼性および性能を得るように、適正に設定することができる。この情報は、電気的に消去・書込み可能なＲＯＭ（ＥＥＰＲＯＭ）に格納されることがある。
【００１５】
　Ｉ２Ｃベースのインテリジェント・プラットフォーム管理バス（ＩＰＢＭ）インターフェースを通じて、ＳＰＤ機構が実施されることがある。このようなインターフェースは、一般に、双方向の通信リンクと、システムの健全性および性能を監視、制御することのできる「インテリジェント」ハードウェアとやり取りする方法とを提供する。しかしながら、当業者には、ＳＰＤ機構を実施する他の方法が明らかになろう。
【００１６】
　シャーシ内のブレードがすべて識別されさえすれば、シャーシ内の個々のブレードまたはプロセッサのそれぞれに対して、最適性能設定を決定する。このような最適性能設定の決定は、使用されているか、あるいは、このシステム内に装着されたブレードの数に基づいて良い。
【００１７】
　例えば、１０ブレード式のシステムでは、このシステムは、自動検出を通じて、または手動インターフェースを通じて、５枚のブレードしか装着されてないことを認識する場合がある。したがって、電力・熱合計バジェットの半分しか消費されない。このような不均衡で、かつ効率の悪い電力割当てを補償するために、このシステムは、ブレードの周波数を高めることで、さらに高い最適性能を作り出すことができる。
【００１８】
　最適性能設定を決定した後で、個々のプロセッサまたはブレードのそれぞれに対して決定された最適性能設定に関する情報を、ＧＳＰ（ガーディアン・サービス・プロセッサ）サービス・マネージャに提供することができる。ＧＳＰは、シャーシ内のＰＡブレードに組み込まれることがある。次に、ＧＳＰは、この情報をＲＡＭに保存し、シャーシ内のブレードと通信し、かつ／または、シリアル・ポート、ＬＡＮポート、モデム・ポートなどを管理することができる。この情報は、Ｉ２Ｃ　ＩＰＭＢ、ローカル・エリア・ネットワーク（ＬＡＮ）などを通じて、ＧＳＰに提供されることが可能である。
【００１９】
　これらのブレードとやり取りする前に、ＧＳＰを使用して、上記段落に従って、ＧＳＰ中で決定された最適性能設定に関する情報を処理することがある。次に、この情報は、プロセッサ、ブレード、または他の構成要素を制御できるようにする形式で、このコンピュータシステムのプロセッサ、ブレード、または他の構成要素に伝えられる。
【００２０】
　シャーシでは、各ブレードに割り当てられる熱・電力バジェットを、Ｍと呼ぶことがある。このシャーシが、１枚のサーバー・ブレードだけで占められている場合には、このブレードに割り当てられる電力・熱バジェットは、このシャーシがＮ枚のブレードで占められた場合よりも、（ほぼ）Ｍ＊（Ｎ−１）だけ大きくなろう。それゆえ、このサーバー・ブレードは、公称セッティングのもとでの周波数よりもさらに高い周波数で動作することがある。このシャーシに、新たなブレードを追加すると、その係数Ｍ＊（Ｎ−１）は、ほぼ正比例の関係で減少することになる。ブレードを、最適な性能で動作させ、かつ、そのシャーシの割り当てられた電力・熱バジェットの範囲内に入らせるように、ブレードの周波数を変えることができる。したがって、個々のブレードがそれぞれ動作する周波数を、このシャーシ内に装着されたブレードの数に応じて、変更する。
【００２１】
　さらに具体的に言えば、ＧＳＰ中で処理される情報を用いて、シャーシ内の個々のプロセッサまたはブレードの１つまたは複数に対して、周波数を１つ１つセットする場合がある。個々のブレードに対する周波数のセッティングは、以下に論じられ、かつ添付図面に示されるように、手動設定装置、ディップ・スイッチ、抵抗器ジャンパ、マイクロコントローラ／マイクロプロセッサ、ＦＰＧＡ（field-programmable gate array、書替可能ゲートアレイ）、ＰＬＤ（programmable logic device、プログラム可能論理素子）、および／または、Ｉ２ＣベースのＩ／Ｏエキスパンダ・チップなどのいくつかの装置（ただし、それらには限定されない）を用いて、行われることがある。
【００２２】
　上で論じられるように、これらのブレードのローディングに基づいてブレードの周波数を個々に調整することが可能であるブレード型アーキテクチャ・システムを作り出すことが望ましい。図２〜図７は、このシステム内の様々なブレードの動作周波数を手動で管理する様々な方法を示している。図２〜図６に示される実施形態では、ＣＰＵのプロセッサ・コア周波数は、バス動作周波数と非同期である。それゆえ、システムバス周波数とは無関係に、プロセッサ・コア周波数に変更を加えることができる。
【００２３】
　現在、ヒューレット・パッカード社は、ＰＡ−ＲＩＳＣシステムのプロセッサ・クロックを発生させる好ましい周波数シンセサイザとして、ＳＰＨＹＲＴ　ＡＳＩＣを使用している。しかしながら、当業者であれば、他の周波数シンセサイザも利用できることがすぐ理解されよう。一般に、プロセッサのクロックを発生させるのに用いられる周波数シンセサイザ・チップは、パラレルの、あるいは、シリアルの構成ビット（ｃｏｎｆｉｇｕｒａｔｉｏｎ　ｂｉｔ）を持ち、それらの構成ビットにより、出力クロック（合成周波数）に対する入力クロックの比率を選択することができる。このことから、ブレードのリブートのときに、プロセッサを異なる周波数で動作させることができる。この周波数シンセサイザは、通常、コア・クリスタルからの入力周波数を備えている。シリアル・ピンまたはパラレル・ピンの制御を通じて、この周波数シンセサイザは、プロセッサに送られる出力周波数比率を提供する。当業者であれば、複数、すなわち２個（２方向システム用）、またはＮ個（Ｎ方向システム用）の周波数シンセサイザを利用して、プロセッサのクロックを発生させる場合に、それらのプロセッサは、プロセッサでサポートされている周波数の範囲内の異なる周波数で動作できることも理解されよう。図２〜図６は、異なる周波数シンセサイザの比率ピン（ｒａｔｉｏ　ｐｉｎ）をどのように制御できるのか、異なる手法を示している。
【００２４】
　次に、添付図面のうちの図２を参照すると、手動設定装置２１０を用いて個々のブレードの動作周波数を管理する一手法を描いたブロック図２００が図２に示されている。当業者であれば、所望の機能を果たすことのできる多くの共通手動設定装置、例えばディップ・スイッチ、ピン・ヘッダの上に設けられるジャンパ、回転設定スイッチ、はんだブリッジなどがあることが理解されよう。図２に見られるように、ブレード型コンピュータシステムの容易に手が届く部分に、手動設定装置２１０が付け加えられている。手動設定装置２１０からの入力周波数２３０および信号２２０を使用して、クロック・ジェネレータ２４０で出力周波数２５０を発生させ、その出力周波数２５０を、ブレード２６０で使用する。ブレードの周波数を変更する前述の方法は、様々なタイプのプロセッサ・アーキテクチャ、例えばＤＥＣ　Ａｌｐｈａ、ＭＩＰＳ、ＰｏｗｅｒＰＣ、ＳＰＡＲＣ、ＩＡ−３２、ＩＡ−６４などに適用できるものと理解されよう。
【００２５】
　次に、添付図面のうちの図３を参照すると、個々のブレードの動作周波数を管理する他の方法を描いたブロック図３００が図３に示されている。ブロック図３００で示される方法により、抵抗器ジャンパ３１０を用いて、個々のブレードの動作周波数を管理することがある。図３に見られるように、このコンピュータシステムの容易に手が届く部分に、抵抗器ジャンパ３１０が付け加えられることがある。抵抗器ジャンパ３１０からの入力周波数３３０および信号３２０を使用して、クロック・ジェネレータ３４０で出力周波数３５０を発生させることがあり、その出力周波数３５０を、ブレード３６０で使用する。上の図２に説明される方法と同様に、抵抗器ジャンパの使用を通じてプロセッサまたはブレードの周波数を変更するこの方法は、様々なタイプのプロセッサ・アーキテクチャに適用できる。
【００２６】
　次に、添付図面のうちの図４を参照すると、マイクロコントローラまたはマイクロプロセッサ４２０を用いて個々のブレードの動作周波数を管理する方法を描いたブロック図４００が図４に示されている。マイクロコントローラまたはマイクロプロセッサ４２０は、ＧＳＰと対話して、それぞれのブレードが動作すべき特定の周波数を求めるために用いられることがある。図４に見られるように、マイクロコントローラまたはマイクロプロセッサ４２０は、ＧＳＰ（ガーディアン・サービス・プロセッサ）または他のコントローラからのＩ２Ｃバス４１０から、信号を受け取る。通常の当業者であれば、他の制御バスであっても、同一機能を果たして、本明細書に述べられるＩ２Ｃバスに置き換えられることも、すぐ理解されよう。つぎに、マイクロコントローラまたはマイクロプロセッサ４２０は、ＧＳＰにより指定された特定の周波数に基づいて、パラレルまたはシリアルの制御信号４３０を出力することがある。クロック・ジェネレータ４５０は、入力周波数と、パラレルまたはシリアルの制御信号４３０を利用して、ブレード４７０で用いられる出力周波数４６０を発生させることがある。マイクロコントローラまたはマイクロプロセッサ４２０を使えば、ＧＳＰは、上述のレジスタと手動設定装置の方法よりも透過的なやり方で、周波数シンセサイザを制御することができる。（すなわち、ＧＳＰは、構成ビットのセッティングが、どのように、その出力に影響を及ぼすのか、必ずしも知る必要はない）。
【００２７】
　次に、添付図面のうちの図５を参照すると、ＦＰＧＡまたはＰＬＤ５２０を用いて個々のブレードの動作周波数を管理する方法を描いたブロック図５００が図５に示されている。当業者に知られているように、ＦＰＧＡは、製造後に、現場でプログラムできるチップである。ＦＰＧＡまたはＰＬＤ５２０は、Ｉ２Ｃバス５１０を通じて、さらに高いレベルの装置（例えば、ＧＳＰ）からコマンドを受け取って、その周波数シンセサイザ（または、それぞれのシンセサイザ）に対する構成ビットを制御するために用いられることがある。図５に見られるように、クロック・ジェネレータ５５０は、入力周波数５４０と、ＦＰＧＡ／ＰＬＤ５２０からの制御信号５３０を利用して、ブレード５７０で用いられる出力周波数５６０を発生させることがある。図４で説明されるマイクロコントローラ／マイクロプロセッサ４２０の利用と同様に、ＦＰＧＡ／ＰＬＤ５２０を用いれば、ＧＳＰは、さらに透過的な方法で、周波数シンセサイザを制御することができる。（すなわち、ＧＳＰは、構成ビットのセッティングが、どのように、その出力に影響を及ぼすのか、必ずしも知る必要はない）。
【００２８】
　次に、添付図面のうちの図６を参照すると、Ｉ２ＣベースのＩ／Ｏエキスパンダ・チップ（Ｉ／ＯＸ）６２０を用いて個々のブレードの動作周波数を管理する方法を描いたブロック図６００が図６に示されている。当技術分野で知られているように、Ｉ２ＣベースのＩ／ＯＸ６２０は、それぞれの周波数シンセサイザを透過的に制御するのに使用できる安価で、かつ単純なソリューションである。Ｉ／ＯＸチップ６２０は、Ｉ２Ｃコマンドを通じてＩ／ＯＸに書き込めば、特定の状態に強制できるＩ／Ｏポートを持っている。Ｉ／ＯＸは、通常、複数のＩ／Ｏポートを持っているから、１つのＩ／ＯＸを使用すれば、複数の周波数シンセサイザを個々に制御することができる。
【００２９】
　Ｉ／ＯＸチップはＩ２Ｃベースのものであるから、Ｉ／ＯＸチップは、Ｉ２Ｃインターフェースをサポートする装置であれば、どんなものによっても制御できる。ヒューレット・パッカード社のＰＡ−ＲＩＳＣブレードでは、このような論理装置は、このＰＡブレードのサービス・プロセッサすなわちＧＳＰであろう。ＧＳＰのユーザ・フレンドリなインターフェースを使用すれば、カスタマは、どんな低レベルの情報（例えば、ビット・セッティング）も必要とせずに、透過的に、プロセッサまたはブレードの周波数を手動で制御することができる。ＧＳＰからの入力は、図６に、参照数字６１０で示されている。ユーザは、ＧＳＰにて、コマンドを入力して、プロセッサの周波数を高める。次に、ＧＳＰは、プロセッサが所望のレベルで動作するように、所要のビットを受け渡して周波数発生器の比率を変更する。ビット・ストリーム６１０が、Ｉ／ＯＸ６２０で受け取られる。次に、クロック・ジェネレータ６５０は、入力周波数６４０と制御信号６３０を使用して、プロセッサまたはブレード６７０で用いられる出力周波数６６０を発生させる。
【００３０】
　この論述を、個々のブレードの周波数をセットするのに用いられる特定の装置から逸らして、ブレード型コンピュータシステムの性能を管理する一般的な方法に戻ると、シャーシ内の個々のブレードの１つまたは複数に対して、周波数を１つ１つセットする操作を無効にさせることが可能である。言い換えれば、システムユーザは、シャーシ内のブレードのうちの１つまたは複数の周波数をＧＳＰに変更させられないようにすることもできる。
【００３１】
　これらのブレードの少なくとも１つに対して、周波数を１つ１つセットする操作を無効にするためには、ＧＳＰのＮＶＲＡＭ（不揮発性ランダム・アクセス・メモリ）にフラグを付けることもできる。このフラグのバックアップも、プラットフォーム依存ハードウェア（ＰＤＨ）レジスタに付けることもできる。フラグ、またはフラグのバックアップは、個々のブレードの少なくとも１つに対して、周波数を１つ１つセットする操作を有効／無効にするために、用いられることができる。いくつかの実施形態により、フラグは、このシステム内のブレードの一部に対して、あるいは全部に対しても、周波数を１つ１つセットする操作を有効／無効にするために、用いられることができる。
【００３２】
　シャーシ内の個々のブレードの少なくとも１つに対して、個別に周波数をセットする操作を有効および無効にするもう１つの別法には、ユーザが、設定し直してもらいたくないブレードに対してセットすべきフラグを付ける方法がある。このような状況では、周波数を１つ１つセットする操作を、このフラグを用いて無効にした場合に、これらのブレードは、上に論じられる電力・熱計算の間、不変のものと見なされることがある。
【００３３】
　次に、添付図面のうちの図７を参照すると、ＩＡベースのアーキテクチャ・システム内の個々のブレードの動作周波数を管理する方法を描いたブロック図７００が図７に示されている。上に示されるように、ＰＡベースのアーキテクチャは、プロセッサに取り入れられる２つの周波数入力、すなわちプロセッサ・コア入力とバス入力を持っている。ＩＡベースのアーキテクチャでは、シリアルまたはパラレルの制御信号は調整されない。ＩＡベースのアーキテクチャは、バス周波数の倍数を発生させるように、プロセッサ・コア周波数をプログラムする。このようにプロセッサ・コア周波数をプログラムする作業は、多目的バス・ライン７３０を用いて、当初のバス初期設定の間に行われる。これは、通常、プロセッサ・バス（ＣＥＣ）７２０上にある主コア・チップセットによって制御される。一般に、ユーザ・インターフェース、例えばＧＳＰ７１０を使用して、当初のシステムおよびバスの初期設定の間に、適切な制御信号７３０を発生させるようにＣＥＣ７２０をプログラムする。特定のブレード７６０におけるアプリケーションに応じて、さらに大きい比率では、さらに高い周波数、性能、電力を発生させるか、あるいは、さらに小さい比率では、さらに低い周波数、性能、電力を発生させるように、このバス周波数を逓倍する。
【００３４】
　次に、添付図面のうちの図８を参照すると、ブレード型アーキテクチャ・シャーシ内の一連のブレードを描いたブロック図８００が図８に示されている。図８に示されるように、１０枚のブレードのうち５枚だけが装着されており、これらのブレードが、その最高周波数よりも低い周波数で動作している。論じられるように、このシステム専用の熱・電力包絡線を無視しないように、ブレード型アーキテクチャ・システム内のブレードを動作させる共通の方法がある。
【００３５】
　次に、添付図面のうちの図９を参照すると、ブレード型アーキテクチャ・シャーシ内の一連のブレードを描いたブロック図９００が図９に示されている。図９に示されるように、装着された５枚のブレードは、図８の装着されたブレードのように、高くした周波数で動作している。図９は、上述のように、このシステムが最適設定を決定した後で、向上した効率で動作しているシステムを描いている。このシステムは、自動検出を通じて、あるいは、手動インターフェースを通じて、５枚のブレードしか装着されてないと判定した。したがって、このシステムは、電力・熱合計バジェットの半分しか消費していない。その結果、このシステムにより、これらのブレードが、その潜在的な性能を、より最適に働かせることに費やしているリソースの量が増大した。
【００３６】
　本明細書に開示される原理は、共通シャーシを共有するプロセッサまたはブレードから成るシステムに、あるいは、複数のシャーシにまたがるアーキテクチャ・システムに応用できるものと理解されよう。すなわち、このような原理は、物理パーティションまたは論理パーティションで分割されたシステムに応用できる。例えば、物理的に、システムは、それぞれ８基のプロセッサを有する３つのシャーシを含むことがある。論理的に、同一システムが、５人の異なるカスタマに対して、５つの異なるｗｅｂサーバーに区分されることもある。シャーシ内の電力制約は、通常、このシステムの物理パーティションに関係する。複数のシャーシ内に位置づけられるカスタマまたはアプリケーションに課せられる電力制約は、通常、論理パーティションに関係する。通常の当業者であれば、上述の技術革新は、物理的にも論理的にも区分されたアーキテクチャに適用できることがすぐ理解されよう。
【００３７】
　ブレード型システムにおいて、ブレードの装着に依存した、周波数および性能を調整するシステムおよび方法が、模範的な実施形態に関連して述べられてきたが、当業者であれば、以上の教示に照らして多くの変更が可能であり、また、本願が、そのどんな変形例もカバーするようにもくろまれていることが理解されよう。
【００３８】
　例えば、この開示された装置および方法は、様々な構成要素の周波数を操作するのに使用される特定の周波数シンセサイザを利用している。他の周波数シンセサイザも、同じように用いられることがある。したがって、この開示全体を通じて、図示され、参照される周波数シンセサイザは、特記しない限り、所望の機能を果たすのに適した一切の装置／技術を表わすことになっている。同様に、プロセッサ・アーキテクチャのタイプもいくつか開示されている。この特定のアーキテクチャのタイプは、本明細書に述べられる方法および／または装置にとって重要ではない。通常の当業者であれば、本明細書に述べられる原理は、ＤＥＣ　Ａｌｐｈａ、ＭＩＰＳ、ＰｏｗｅｒＰＣ、ＳＰＡＲＣ、ＩＡ−３２、ＩＡ−６４のアーキテクチャなどに適用できることがすぐ理解されよう。したがって、本明細書に述べられる方法および／または装置を、任意の特定の形態のアーキテクチャに限定することは、出願者の意図ではない。
【００３９】
　この開示全体を通じて、さらに他の例証があり、本明細書にはっきりと特定されてはいないが、それでも、クレーム記載の機能を果たすことのできる構造、材料、または動作の利用を、本明細書に述べられる方法および／または装置の範囲から除外することは、出願者の意図ではない。
【図面の簡単な説明】
【００４０】
【図１】ブレード型アーキテクチャ・システムの基本モジュラー構成要素の一実施形態を描いたブロック図。
【図２】手動設定装置を用いて、個々のブレードの動作周波数を管理する一手法を描いたブロック図。
【図３】抵抗器を用いて、個々のブレードの動作周波数を管理する他の方法を描いたブロック図。
【図４】マイクロコントローラまたはマイクロプロセッサを用いて、個々のブレードの動作周波数を管理する他の方法を描いたブロック図。
【図５】ＦＰＧＡまたはＰＬＤを用いて、個々のブレードの動作周波数を管理する他の方法を描いたブロック図。
【図６】Ｉ／ＯＸを用いて、個々のブレードの動作周波数を管理する他の方法を描いたブロック図。
【図７】ＩＡベースのアーキテクチャ・システム内の個々のブレードの動作周波数を管理する方法を描いたブロック図。
【図８】１０枚のブレードのうちの５枚だけが装着されて、最適周波数よりも低い周波数レベルで動作するブレード型アーキテクチャ・シャーシ内の一連のブレードを描いたブロック図。
【図９】この５枚のブレードが、このシステムで実行される最適化分析のために、高くした性能レベルで動作しているブレード型アーキテクチャ・シャーシ内の一連のブレードを描いたブロック図。
【符号の説明】
【００４１】
１００　ブレード・ベースのコンピュータシステム
１１０　管理ブレード
【図１】
2004078930.tif 000003
【図２】
2004078930.tif 000004
【図３】
2004078930.tif 000005
【図４】
2004078930.tif 000006
【図５】
2004078930.tif 000007
【図６】
2004078930.tif 000008
【図７】
2004078930.tif 000009
【図８】
2004078930.tif 000010
【図９】
2004078930.tif 000011