JP2020052997A - 仮想bmcマネージャによる熱管理 - Google Patents

仮想bmcマネージャによる熱管理 Download PDF

Info

Publication number
JP2020052997A
JP2020052997A JP2019004915A JP2019004915A JP2020052997A JP 2020052997 A JP2020052997 A JP 2020052997A JP 2019004915 A JP2019004915 A JP 2019004915A JP 2019004915 A JP2019004915 A JP 2019004915A JP 2020052997 A JP2020052997 A JP 2020052997A
Authority
JP
Japan
Prior art keywords
management controller
virtual
bmc
management
gpu
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.)
Granted
Application number
JP2019004915A
Other languages
English (en)
Other versions
JP6735859B2 (ja
Inventor
鈞弘 王
Chun-Hung Wang
鈞弘 王
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.)
Quanta Computer Inc
Original Assignee
Quanta Computer Inc
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 Quanta Computer Inc filed Critical Quanta Computer Inc
Publication of JP2020052997A publication Critical patent/JP2020052997A/ja
Application granted granted Critical
Publication of JP6735859B2 publication Critical patent/JP6735859B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form characterised by monitoring or safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form characterised by program execution, i.e. part program or machine function execution, e.g. selection of a program
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49206Compensation temperature, thermal displacement, use measured temperature
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Cooling Or The Like Of Electrical Apparatus (AREA)

Abstract

【課題】管理コントローラを用いたコンピューティングデバイス中の熱管理の方法を提供する。【解決手段】仮想管理コントローラ307を介して、管理コントローラ304につながれていない感熱性コンポーネント308のモニタリング情報を取得する。モニタリング情報は、感熱性コンポーネント308の温度情報を含むことができる。また、仮想管理コントローラ307を介して、管理コントローラ304のシステムインタフェース経由でモニタリング情報を管理コントローラ304に送信し、管理コントローラ304を介して、管理コントローラ304につながれているコンピューティングデバイスの熱管理コンポーネントの動作を調整する。【選択図】図4

Description

本発明は、コンピューティングデバイス内の個々の電子ユニットから温度情報を受信する仮想ベースボード管理コントローラ(virtual BMC)を確立するためのコンピュータシステムおよび不揮発性コンピュータ可読媒体に関する。
コンピュータシステムを構成するさまざまなコンポーネントは通常、性能プロトコルまたは規格により規定された広範なパラメータ内で動作する。たとえば、コンピュータシャーシ内の温度は、システムが所定の温度測定値を上回る可能性があるタイミングを検出するためにモニタリングされることが多い。コンピュータシステム内でモニタリングされる可能性がある情報の他の形態としては、システムのベースボード上に位置付けられた半導体コンポーネントに関連付けられた電圧、ベースボード上またはシステムシャーシ内に位置付けられた冷却ファンの速度(たとえば、rpm)、およびハードディスクドライブまたは光学ドライブ内のスピンドルモータの速度が挙げられるが、これらに限定されない。
コンピュータシステムおよびその構成コンポーネントに関連付けられた、健全性、動作、および性能関連パラメータを検出するために、さまざまな種類のセンサが用いられている。これらのセンサとしては、サーモスタット、電圧メータ、およびタコメータが挙げられる。
コンピュータシステムは通常、1つまたは複数の管理モジュールを採用して、システム内の動作および性能関連パラメータを測定するさまざまなセンサにより検知された情報の収集および解析を支援する。これらの管理モジュールは、ソフトウェアまたはハードウェアコンポーネントのいずれであってもよいが、通常は、サービスプロセッサにより実装されたハードウェアおよびソフトウェアコンポーネントの両方を含む。このような管理モジュールとして、「ベースボード管理コントローラ」(BMC)と称するものがある。
BMCは、コンピュータシステムのベースボード(当業界では「マザーボード」とも称されている)に組み込まれたマイクロコントローラ(たとえば、特許文献1開示のBMC)であり、さまざまなセンサにより検知された情報をBMCが解析用に受信する特定数のコンタクトピンを有する。この解析を実行するために、BMCは、ファームウェアによって、システムのモニタリングおよびリカバリに関連する手順を実施するようにプログラムされている。
このファームウェアにより、BMCは、コンピュータシステム内で検知されたさまざまな動作および性能関連パラメータをモニタリングするようにプログラムされている。また、BMCは、この情報を解析して、その発生を通常は「イベント」と称する予想または推奨動作範囲からの逸脱を検知パラメータのいずれかが現在起こしているかどうかを判定するようにプログラムされている。
米国特許第8,489,250号明細書
いくつかのコンピュータシステムにおいて、BMCは、ハードウェアコンポーネントと直接通信できない。このような場合、ハードウェアコンポーネントは、性能不足または突発的故障の原因となる所定閾値レベルへの温度の接近タイミングを検出する統合システムを有していてもよい。ハードウェアコンポーネントの統合システムは、コンピュータシステム内のファンシステムに接続されていないため、ファンシステムが非効率となる。したがって、BMCとハードウェアコンポーネントとの接続を確立するコンピュータシステムを提供することが求められている。
本発明により、管理コントローラを用いたコンピューティングデバイス中の熱管理の方法が提供される。この方法は、仮想管理コントローラを介して、管理コントローラにつながれていない感熱性(thermally sensitive)コンポーネントのモニタリング情報(monitoring information)を取得することを含む。モニタリング情報は、感熱性コンポーネントの温度情報を含んでもよい。また、この方法は、仮想管理コントローラを介して、管理コントローラのシステムインタフェース経由でモニタリング情報を管理コントローラに送信することを含む。最後に、この方法は、管理コントローラを介して、管理コントローラにつながれているコンピューティングデバイスの熱管理(thermal management component)コンポーネントの動作を調整することを含む。
本発明のいくつかの実施形態において、感熱性コンポーネントについてのモニタリング情報は、識別情報を含む。さらに、感熱性コンポーネントについてのモニタリング情報は、スローダウン温度(slowdown temperature)、シャットダウン温度(shutdown temperature)、および現在温度(current temperature)を含むことができる。
いくつかの実施形態において、感熱性コンポーネントは、グラフィックスプロセッシングユニットを備えることができる。また、2つ以上の仮想管理コントローラから管理コントローラで受信されたメッセージを管理するために、仮想ベースボード管理コントローラマネージャを実装することができる。
いくつかの実施形態において、管理コントローラは、ベースボード管理コントローラとすることができる。さらに、熱管理コンポーネントは、ファンデバイスとすることができる。また、仮想管理コントローラは、仮想ベースボード管理コントローラとすることができる。
また、本発明により、管理コントローラを用いたコンピューティングデバイスの熱管理のためのコンピュータシステムが提供される。このコンピュータシステムは、感熱性コンポーネント、具体的には、システムインタフェースを備えた管理コントローラを備えることができる。管理コントローラは、感熱性コンポーネントにつながれていない構成とすることができる。
また、このシステムは、管理コントローラにつながれている熱管理コンポーネントおよび仮想管理コントローラを備えることもできる。仮想管理コントローラは、管理コントローラにつながれていない感熱性コンポーネントのモニタリング情報を取得するように構成することができる。
いくつかの実施形態において、モニタリング情報は、感熱性コンポーネントの温度情報を含むことができる。また、仮想管理コントローラは、管理コントローラのシステムインタフェース経由でモニタリング情報を管理コントローラに送信するように構成することができる。最後に、仮想管理コントローラは、管理コントローラにつながれている熱管理コンポーネントの動作を調整するように構成することができる。
また、本発明により、少なくとも1つのプロセッサにより実行可能な命令を格納する不揮発性コンピュータ可読媒体も提供される。格納された命令は、仮想管理コントローラを介して、管理コントローラにつながれていない感熱性コンポーネントのモニタリング情報を取得することを含むことができる。モニタリング情報は、感熱性コンポーネントの温度情報を含むことができる。また、この格納された命令は、仮想管理コントローラを介して、管理コントローラのシステムインタフェース経由でモニタリング情報を管理コントローラに送信することも含む。最後に、格納された命令は、管理コントローラを介して、管理コントローラにつながれているコンピューティングデバイスの熱管理コンポーネントの動作を調整することを含む。
本開示の付加的な特徴および利点については、以下の説明において記述するが、その一部は、該説明により明らかとなるか、または、本明細書に開示の原理の実行により教示することができる。本開示の特徴および利点は、特に添付の特許請求の範囲に挙げる器具および組み合わせによって実現および取得することができる。本開示の上記および他の特徴については、以下の説明および添付の特許請求の範囲によって完全に明らかとなるか、または、本明細書に記載の原理の実行により教示することができる。
上掲の開示内容ならびにその利点および特徴を得ることができる様態を説明するために、添付の図面に示す具体例を参照して、上述の原理に関するより詳細な説明を与える。これらの図面は、本開示の例示的な態様を示しているに過ぎず、その範囲を限定するものと考えるべきではない。以下の図面を用いて、これらの原理をさらに具体的かつ詳細に記述し説明する。
従来のコンピュータシステムを模式的に示した図である。 GPUが管理バスによるBMCとの通信を行えない状態の、図1の従来のコンピュータシステムを模式的に示した図である。 GPUがBMCとの直接通信を行えない場合の、GPU、BMC、およびファン性能を模式的に表した図である。 本開示の特定の実施形態に係る、スタック200を模式的に示した図である。 本開示の特定の実施形態に係る、スタック300を模式的に示した図である。 本開示の一実施形態に係る、GPU、仮想BMC、物理BMC、およびファン性能を模式的に表した図である。
添付の図面を参照して本発明を説明するが、全図面を通して、同様または同等の要素を示すために同じ参照番号を使用する。図面は、縮尺どおりには描かれておらず、本発明を説明するものに過ぎない。以下、説明用の例示的な用途を参照して、本発明の複数の態様を説明する。多くの具体的詳細、関係、および方法が、本発明の十分な理解を提供するために示されていることが了解されるものとする。ただし、当業者であれば、具体的詳細のうちの1つまたは複数なく、あるいは、他の方法により、本発明を実施できることが容易に認識されよう。他の例では、本発明がわかりにくくならないように、周知の構造または動作を詳細に示していない。本発明は、作用またはイベントに関する図示の順序に限定されない。いくつかの作用が異なる順序で発生すること、および/または他の作用もしくはイベントと同時に発生することも考えられるためである。さらに、本発明に係る方法論の実現に、図示の作用またはイベントがすべて必要なわけではない。
以上を考慮して、本願は、管理コントローラを用いたコンピューティングデバイス中の熱管理のための方法およびコンピュータシステムを教示する。この方法は、仮想管理コントローラを介して、管理コントローラにつながれていない感熱性コンポーネントのモニタリング情報を取得することを含む。モニタリング情報は、感熱性コンポーネントの温度情報を含むことができる。また、この方法は、仮想管理コントローラを介して、管理コントローラのシステムインタフェース経由でモニタリング情報を管理コントローラに送信することも含む。最後に、この方法は、管理コントローラを介して、管理コントローラにつながれているコンピューティングデバイスの熱管理コンポーネントの動作を調整することを含む。
図1は、従来のコンピュータシステム100を模式的に示している。コンピュータシステム100は、中央演算処理装置(CPU)107を有する。CPU107は、コンピュータシステム100の動作に必要な算術および論理演算を実行する標準的な中央演算処理プロセッサである。CPU107は、グラフィックスプロセッシングユニット(GPU)108に接続することができる。多くの電気コンポーネントと同様に、GPU108は、動作中に熱を放出する。このため、コンピュータシステム100は、GPU108が所定温度に達した後にGPU108を冷却するためのファン106を設けている。
このような判定、すなわちGPU108が所定温度を超えているかどうかの判定は、ベースボード管理コントローラ(BMC)104により行われる。特定の実施形態において、GPU108は、ホストコンピュータシステム100の管理バス130と通信して、GPUの健全性、動作、および性能状態に関する情報をBMC104に提供することができる。このような情報は、GPU電圧および温度を含むことができる。
各GPU108は、たとえば管理バス130を通じて、電気コンポーネントの健全性、動作、および性能関連パラメータを測定するセンサ(図示せず)に接続することができる。この情報は、管理バス130によって、BMC104に送信することができる。また、BMC104は、管理バス130によって、ファン106に通信可能に結合され、ファン106全体の機能を制御する。
バス上の通信を開始するコンポーネントをマスターと称し、通信が送られるコンポーネントをスレーブと称する。BMCコンポーネント104は通常、管理バス130上のマスターとして機能するものの、他の状況ではマスターまたはスレーブのいずれかとしても機能してもよい。
管理バス130によってBMC104に通信可能に接続されたさまざまなコンポーネントはそれぞれ、スレーブアドレスを用いてアドレス指定することができる。管理バス130は、管理バス130に連通可能に接続することもできる1つまたは複数のコンポーネントからのさまざまな健全性、動作、および性能関連パラメータを要求および/または受信するようにBMC104が使用する。
図1において、管理バス130は、GPU108(およびその温度センサ(図示せず))ならびにCPUファン106に対してBMC104を通信可能に接続することにより、BMC104がこれらのコンポーネントの動作をモニタリングおよび/または制御するための手段を提供する。
管理バス130は通常、タコメータ、熱センサ、電圧メータ、電流メータ、ならびにデジタルおよびアナログセンサを含むことができる。特定の実施形態において、管理バス130は、ICである。
コンピュータシステム100は、ICバスを用いたGPU108とBMC104との直接接続を例示しているものの、当業界の利用可能なすべてのGPUがIC温度信号のBMC104への送信に対応可能なわけではないことに留意することが重要である。
図2は、GPU108が管理バス130によるBMC104との通信を行えない従来のコンピュータシステム100を模式的に示している。この場合、BMC104は、GPU108の温度情報を受信することができない。一部のGPUがIC温度信号をBMCに送信するように構成されていないため、BMCは、GPUの温度情報を受信することができない。GPUが温度情報をBMC104に受け渡せないことから、GPU108は、ファン106のファン速度を効果的に制御することができない。結果として、GPU108は、それぞれ自体の評価を実行して減速または遮断を行わざるをえない。
図3Aおよび図3Bは、GPU108がBMC104につながれていない、GPU、BMC、およびファン性能に関する先行技術を模式的に表している。GPU108がBMC104につながれていない場合、GPU108は、BMC104と直接通信することができない。GPU108がBMC104と通信できない場合、BMC104は、周囲温度を判定する内部の温度センサに依拠せざるをえない。
図3Aにおいて、GPU108は、85℃という所定の減速閾値温度を有することができる。また、GPU108は、89℃という所定の遮断閾値温度を有することもできる。図3Aの例示を目的として、GPU108の現在温度は、84℃とすることができ、97%の利用率でGPUが動作していることを示す。この場合、GPU108は、過熱を回避しようとして性能を減速させる閾値温度に近づいている。さらに、GPU108の温度が89℃を超えるようなことがあると、GPU108は、自動的に遮断して、いかなる突発的損傷をも防止することになる。
BMC104が検出する周囲温度は、32℃のみであることに留意するものとする。この周囲温度は、GPU108の温度の影響を受けていてもよいし、受けていなくてもよい。BMC104は、周囲温度が所定の閾値を超える場合にのみ高速で動作するように、ファン106に通知することになる。これは、GPU温度とは無関係である。ファン106が60%でしか動作していないのに対して、GPUは、85℃という所定の減速閾値温度に近づいている。
図3Bにおいて、GPU108の現在温度は、85℃とすることができ、80%の利用率でGPUが動作していることを示す。この場合、GPU108は、過熱を回避しようとして性能を減速させる閾値温度に到達済みである。BMC104が検出する周囲温度は、33℃のみである。BMCは、周囲温度が所定の閾値を超える場合にのみ高速で動作するように、ファン106に通知することになる。これは、GPU108の温度とは無関係である。ファン106が60%でしか動作していないのに対して、GPU108は、85℃という所定の減速閾値温度に到達済みである。この時点で、GPUは、0%の利用率で動作している。したがって、GPU温度に応じてファンを最適化することができるように、BMCに対してGPUが通信可能に結合される必要がある。
以下の議論は、BMCをGPUに結合して、温度情報およびGPU性能に関する他の付随情報を受信できるようにする方法の実施形態を提供する。
図4は、本開示の特定の実施形態に係る、スタック200を模式的に示している。図4は、スタック200、より具体的には、スタンドアロンの汎用コンピュータシステムを示している。当業者には当然のことながら、本開示の全体を通して議論するコンピュータシステム200は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ハンドヘルドコンピュータ、サーバコンピュータ、ブレードサーバ、産業用コンピュータ、電化製品コントローラ、電子機器コントローラ等、さまざまな種類とすることができる。スタック200は、専用コンピュータシステムまたはクライアント−サーバネットワーク等の2つ以上の相互接続システムを組み込んだシステムとすることができる。実際のところ、図4のスタック200は、本開示の例示的な一実施形態のみを表しているため、本開示をいかなる形でも制限するものとは考えないものとする。
スタック200は、仮想マシン301、ハイパーバイザ302、ホストオペレーティングシステム(OS)303、および管理コントローラを備えることができる。いくつかの実施形態において、管理コントローラは、物理BMC304とすることができる。
仮想マシン301は、電子コンポーネントと直接通信することができる。この実施形態の目的のため、電子コンポーネントは、GPU308を含むことができる。当業者であれば、電子コンポーネントは、当技術分野において公知の任意の感熱性コンポーネントを含むことができることが了解されるものとする。GPUは、当技術分野において周知であるため、本明細書にてこれ以上詳しく説明することはない。
多くの電気コンポーネントと同様に、GPU308は、動作中に熱を放出する。このため、GPU308が所定温度に達した後にGPU308を冷却するためのファン306が用いられる。このような判定、すなわちGPU308が所定温度を超えているかどうかの判定は、ハイパーバイザ302を利用して実装された仮想管理コントローラにより行われる。
仮想管理コントローラは、仮想BMC307を含むことができる。仮想マシンマネージャ(VMM)とも称するハイパーバイザ302は通常、ゲストと称する複数のオペレーティングシステムがホストコンピュータ上で同時に動作できるようにする多くのハードウェア仮想化技術のうちの1つである。
仮想BMC307は、物理BMC304において、メッセージをRAW BMCバッファ309に受け渡すように構成されている。スタック200が従来の物理BMC304を有することから、仮想BMC307は、物理BMC304のように機能する必要がない。ただし、いくつかの実施形態において、仮想BMC307は、物理BMC304のように機能することができる。
仮想BMC307は、ハイパーバイザ302の一部として動作するか、または、CPU(図示せず)上で動作するハイパーバイザ上で動作する。また、当業者には当然のことながら、ハイパーバイザ302は、2つのCPU、4つのCPU、8つのCPU、または任意適当数のCPU上でも動作することができる。ハイパーバイザ302は、XEN,MICROSOFT HYPER‐V,VMWARE ESX等、さまざまな種類および設計のものとすることができる。
いくつかの実施形態において、オペレーティングシステム303は、仮想マシンにインストールすることができる。別の実施形態において、オペレーティングシステム303は、物理マシン上で動作していてもよい。オペレーティングシステム303は、1つまたは複数のアプリケーションプログラムをホスティングすることができる。たとえば、オペレーティングシステム303は、入出力メモリ管理ユニット・ペリフェラルコンポーネントインターコネクトエクスプレス(IOMMU PCIe)デバイス315をホスティングすることができる。IOMMUは、直接メモリアクセス可能(DMA可能)I/Oバスをメインメモリに接続するメモリ管理ユニット(MMU)である。CPU可視仮想アドレスを物理アドレスに変換する従来のMMUと同様に、IOMMUは、デバイス可視仮想アドレス(本文脈ではデバイスアドレスまたはI/Oアドレスとも称する)を物理アドレスへとマッピングする。また、一部のユニットは、欠陥または悪意のあるデバイスからのメモリ保護も提供する。例示的なIOMMUとしては、IntelアーキテクチャおよびAMDコンピュータ上でAGPおよびPCIeグラフィックスカードが使用するグラフィックスアドレスリマッピングテーブル(GART)が挙げられる。
IOMMU PCIeデバイス315は、ユーザ空間から該IOMMU PCIeデバイス315への直接アクセスを可能にする仮想機能IO(VFIO)314を通じて通信可能である。これは、主に仮想化用途のハイパーバイザバイパス技術として設計されているものの、高性能コンピューティング(HPC)の背景においても使用することができる。
VFIO314によれば、IOMMU PCIeデバイス315は、高速エミュレータ(QEMU)313およびPCIeパススルー312を用いることにより、ハイパーバイザを通じて通信可能である。QEMU313は、ハードウェア仮想化を実行するホスト型ハイパーバイザであり、PCIeパススルー312は、IOMMU PCIeデバイス315(NIC、ディスクコントローラ、HBA、USBコントローラ、ファイヤーワイヤコントローラ、サウンドカード等)を仮想マシンゲストに割り当てて、IOMMU PCIeデバイス315への完全かつ直接のアクセスを与える。
QEMU313およびPCIeパススルー312を用いることにより、IOMMU PCIeデバイス315は、GPU308と直接通信することができる。たとえば、GPUが仮想マシンにおける仮想化を必要とする場合、CPUは、IOMMU PCIeデバイス315に対して、VFIO314によるPCIeデバイスの仮想化を可能にすることができる。QEMU313は、VFIOデバイスを含めて、ユーザの設定を読み出すように構成することができる。
最後に、仮想マシンがNVIDIAのドライバをロードした場合、GPUは、仮想マシンにおけるパススルーGPUとして認識されることができる。NVIDIAは、例示的なドライバであり、GPUから情報を読み出すローエンドAPIであるが、他のドライバの実装によって、同一または同様の機能を実行することもできる。
特定の実施形態において、仮想BMC307は、ハイパーバイザ302の一部として実装することができる。仮想マシン301上では、スタック200のオペレーティングシステムエージェント311が動作する。GPU308は、CUDA NVML API310によって、オペレーティングシステムエージェント311と直接通信することができる。GPU308がオペレーティングシステムエージェント311と通信し、これは仮想BMC307とも通信する。オペレーティングシステムエージェント311は、システムインタフェースによって、仮想BMC307と通信する。いくつかの実施形態において、システムインタフェースは、キーボードコントローラ型のインタフェースを含むことができる。特定の実施形態において、物理BMC304は、高度なモニタリング機能およびより詳細なハードウェア情報(さまざまな熱ゾーンの温度等)を提供することができる。
ハイパーバイザ302上で動作している仮想BMC307は、オペレーティングシステムエージェント311によって、GPU308に通信可能に結合することができる。また、仮想BMC307は、GPU308に位置付けられたGPU温度センサ(図示せず)にも通信可能に結合することができる。また、仮想BMC307は、物理BMC304によって、ファン306にも通信可能に結合することができる。このように、仮想BMC307によれば、物理BMC304は、温度センサに対するモニタリング機能およびファン306に対する制御機能を提供することができる。これについては、図6Aおよび図6Bに関して詳述する。
図5は、本開示の特定の実施形態に係る、スタック300を模式的に示している。スタック300は、物理BMC304と通信する複数のGPUデバイス308Aおよび308Bを例示している。スタック300は、GPUデバイス(308Aおよび308B)ごとに仮想BMC307Aおよび307Bを提供することができる。仮想BMC307Aおよび307Bはそれぞれ、仮想BMCマネージャ305によって、物理BMC304に接続することができる。仮想BMCマネージャ305は、仮想BMC307Aおよび307Bから物理BMC304で受信されたメッセージを管理するように実装される。仮想BMCマネージャ305の実装により、物理BMC304は、温度情報を受信して、NVML API温度メッセージを読み出すことにより、BMCファン306の速度を制御することができる。また、仮想BMCマネージャ305は、物理BMC304に対する権限およびアクセスを管理する。
図6Aおよび図6Bは、本開示の一実施形態に係る、GPU308、仮想BMC307、物理BMC304、およびファン306の性能を模式的に表している。特定の実施形態において、物理BMC304は、スタック200と関連付けられた健全性関連の状況(たとえば、スタック200の1つまたは複数のコンポーネント(たとえば、GPU308)の温度、システム内の回転コンポーネント(たとえば、スピンドルモータ、ファン306等)の速度、システム200内の1つまたは複数のコンポーネントのまたは該コンポーネントに印加された電圧、およびシステム200内のメモリデバイスの利用可能または使用容量等が挙げられるが、これらに限定されない)をモニタリングする。
これらのモニタリング機能を達成するために、物理BMC304は、仮想BMC307および仮想BMCマネージャ305によって、1つまたは複数のコンポーネントに通信可能に接続されている。特定の実施形態において、これらのコンポーネントは、スタック200内のさまざまな健全性、動作、および性能関連パラメータを測定するためのセンサデバイスを含む。センサデバイスは、さまざまな動作および性能関連パラメータのうちの1つまたは複数を測定または検出するように構成またはプログラムされた、ハードウェアまたはソフトウェアベースのコンポーネントのいずれであってもよい。
物理BMC304は、システム200内で「イベント」が発生しているかどうかを仮想BMC307によって判定するために、スタック200のさまざまなコンポーネントから受信された健全性、動作、および性能関連パラメータをモニタリングする。
たとえば、図6Aに示す構成に関して、物理BMC304は、GPU温度センサ(図示せず)によってGPU308の動作をモニタリングすることにより、特定の動作または性能関連パラメータが所定の動作閾値範囲を上回っているか下回っているかどうかを判定する。このようなイベントの一例が、GPU308により放出された熱の温度測定値が84℃に達することであってもよい。ファン306は、60%で動作している。GPU108は、85℃という所定の減速閾値温度および89℃という所定の遮断閾値温度を有することができる。この情報は、仮想BMC307および仮想BMCマネージャ305によって、物理BMC304に送ることができる。
また、本開示の特定の実施形態によれば、物理BMC304は、イベントの発生に応じて、コンピュータシステム100の1つまたは複数のコンポーネントを制御するようにしてもよい。
上記の例に戻って、図6Bは、GPU308の温度に応じたファン306の起動を示している。物理BMC304は、GPU308により放出された温度が85℃という所定のスローダウン閾値温度に近づいている旨の判定に際して、ファン306の動作を開始してもよい。図6Aに示すように、ファン306は、60%のファン容量で動作している。GPU308の温度が89℃という所定の遮断閾値温度に近づいていることに応答して、物理BMC304は、75%のファン容量で動作するように、ファン306の動作を開始してもよい。これを図6Bに示す。ファン容量の増大により、GPU308を82℃まで冷却することができる。
以上、本発明の特定の実施形態を図示および説明してきたが、当業者には、より広い態様において本発明から逸脱することなく、変更および改良を行ってもよいことが明らかとなるであろう。したがって、添付の特許請求の範囲における目的は、本発明の真の主旨および範囲に含まれる上記のようなすべての変更および改良を網羅することである。上記説明および添付の図面に示す事項は、例示として与えているに過ぎず、限定的なものではない。本発明の実際の範囲は、先行技術に基づいて正しく把握される場合の以下の特許請求の範囲において規定されるものである。
本明細書において使用する専門用語は、特定の実施形態を説明することのみを目的としており、本発明を限定するものではない。本明細書において、単数形「a」、「an」、および「the」は、文脈上明白な別段の指示がない限り、複数形も同様に含むことが意図される。さらに、用語「含む(including、includes)」、「有する(having、has)」、「伴う(with)」、またはこれらの異形は、詳細な説明および/または特許請求の範囲において用いられる範囲で、用語「備える(comprising)」と同じように包括的であることが意図される。
別段の定義のない限り、本明細書において使用されるすべての用語(技術および科学用語を含む)は、本発明が属する技術分野の当業者が一般的に理解するのと同じ意味を有する。さらに、一般的に用いられる辞書で定義されているような用語は、関連技術の背景における意味と整合する意味を有するものと解釈されるべきであり、本明細書におけるその旨の特段の定義のない限り、理想化された意味または過度に形式張った意味で解釈されることはない。

Claims (10)

  1. 管理コントローラを用いたコンピューティングデバイス中の熱管理の方法であって、以下の各ステップを含む方法:
    仮想管理コントローラを介して、前記管理コントローラにつながれていない前記コンピューティングデバイスの1つまたは複数の感熱性コンポーネントのモニタリング情報を取得することであって、前記モニタリング情報が、前記1つまたは複数の感熱性コンポーネントの温度情報を含む、取得すること、
    前記仮想管理コントローラを介して、前記管理コントローラのシステムインタフェース経由で前記モニタリング情報を前記管理コントローラに送信すること、ならびに
    前記管理コントローラを介して、前記管理コントローラにつながれている前記コンピューティングデバイスの少なくとも1つの熱管理コンポーネントの動作を調整すること。
  2. 前記1つまたは複数の感熱性コンポーネントそれぞれについての前記モニタリング情報が、識別情報を含む、請求項1に記載の方法。
  3. 前記1つまたは複数の感熱性コンポーネントそれぞれについての前記モニタリング情報が、スローダウン温度、シャットダウン温度、および現在温度を含む、請求項1に記載の方法。
  4. 前記1つまたは複数の感熱性コンポーネントのうちの少なくとも1つが、グラフィックスプロセッシングユニットを備える、請求項1に記載の方法。
  5. 仮想ベースボード管理コントローラマネージャによって、2つ以上の仮想管理コントローラから前記管理コントローラで受信されたメッセージを管理することをさらに含む、請求項1に記載の方法。
  6. 管理コントローラを用いたコンピューティングデバイスの熱管理のためのコンピュータシステムであって、
    1つまたは複数の感熱性コンポーネントと、
    システムインタフェースを備えた管理コントローラであって、前記1つまたは複数の感熱性コンポーネントにつながれていない、管理コントローラと、
    前記管理コントローラにつながれている少なくとも1つの熱管理コンポーネントと、
    前記管理コントローラにつながれていない前記コンピューティングデバイスの前記1つまたは複数の感熱性コンポーネントのモニタリング情報であって、前記1つまたは複数の感熱性コンポーネントの温度情報を含む、モニタリング情報を取得し、
    前記管理コントローラの前記システムインタフェース経由で前記モニタリング情報を前記管理コントローラに送信し、
    前記管理コントローラにつながれている前記コンピューティングデバイスの前記少なくとも1つの熱管理コンポーネントの動作を調整する、
    ように構成された仮想管理コントローラと、
    を備えた、コンピュータシステム。
  7. 前記1つまたは複数の感熱性コンポーネントそれぞれについての前記モニタリング情報が、識別情報を含む、請求項6に記載のコンピュータシステム。
  8. 前記1つまたは複数の感熱性コンポーネントそれぞれについての前記モニタリング情報が、スローダウン温度、シャットダウン温度、および現在温度を含む、請求項6に記載のコンピュータシステム。
  9. 前記1つまたは複数の感熱性コンポーネントのうちの少なくとも1つが、グラフィックスプロセッシングユニットを備える、請求項6に記載のコンピュータシステム。
  10. 2つ以上の仮想管理コントローラから前記管理コントローラで受信されたメッセージを管理するように構成された仮想ベースボード管理コントローラマネージャをさらに備えた、請求項6に記載のコンピュータシステム。
JP2019004915A 2018-09-21 2019-01-16 仮想bmcマネージャによる熱管理 Active JP6735859B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/138,319 US10782754B2 (en) 2018-09-21 2018-09-21 Thermal management via virtual BMC manager
US16/138,319 2018-09-21

Publications (2)

Publication Number Publication Date
JP2020052997A true JP2020052997A (ja) 2020-04-02
JP6735859B2 JP6735859B2 (ja) 2020-08-05

Family

ID=65013483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019004915A Active JP6735859B2 (ja) 2018-09-21 2019-01-16 仮想bmcマネージャによる熱管理

Country Status (5)

Country Link
US (1) US10782754B2 (ja)
EP (1) EP3627281B1 (ja)
JP (1) JP6735859B2 (ja)
CN (1) CN110941524B (ja)
TW (1) TWI696064B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112021001793T5 (de) 2020-03-24 2023-02-09 Denso Corporation Motor

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118312284A (zh) * 2019-07-31 2024-07-09 华为技术有限公司 虚拟机热迁移方法和通信设备
US11061838B1 (en) * 2020-01-09 2021-07-13 Dell Products L.P. System and method for graphics processing unit management infrastructure for real time data collection
US20220137969A1 (en) * 2020-10-29 2022-05-05 Dell Products L.P. Multi-vendor accelerator management protocol interoperability
US12061923B2 (en) * 2020-12-09 2024-08-13 Mediatek Inc. Memory protection for virtual machines
US20230121562A1 (en) * 2021-10-15 2023-04-20 Dell Products, L.P. Telemetry of artificial intelligence (ai) and/or machine learning (ml) workloads
CN113986466A (zh) * 2021-11-01 2022-01-28 北京计算机技术及应用研究所 一种面向云计算的gpu虚拟化系统和方法
US11977505B2 (en) * 2022-07-29 2024-05-07 Dell Products L.P. Data center asset client bridging via a passthrough device
CN115827517A (zh) * 2022-10-28 2023-03-21 超聚变数字技术有限公司 控制方法、设备及计算设备
CN116257019B (zh) * 2023-05-15 2023-08-04 深圳华龙讯达信息技术股份有限公司 一种基于云端的plc管理方法及管理系统
CN117149567A (zh) * 2023-08-30 2023-12-01 英业达科技有限公司 Gpu加速卡的散热调控优化方法、装置、设备、介质和产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080065912A1 (en) * 2006-09-07 2008-03-13 Bodner James T Controlling fan speed in electronic system
US20160283424A1 (en) * 2015-03-27 2016-09-29 David R. Richardson Virtual intelligent platform management interface (ipmi) satellite controller and method
JP2016206844A (ja) * 2015-04-20 2016-12-08 富士通株式会社 電子装置及びその冷却方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7360102B2 (en) 2004-03-29 2008-04-15 Sony Computer Entertainment Inc. Methods and apparatus for achieving thermal management using processor manipulation
US20100205600A1 (en) * 2009-02-06 2010-08-12 Inventec Corporation Simulation method for realizing large batches and different kinds of baseboard management controllers using a single server
US8484496B2 (en) 2011-04-22 2013-07-09 Qualcomm Incorporated Method and system for thermal management of battery charging concurrencies in a portable computing device
US9158564B2 (en) * 2012-04-30 2015-10-13 American Megatrends, Inc. Virtual service processor stack
US8972759B2 (en) 2012-06-29 2015-03-03 Qualcomm Incorporated Adaptive thermal management in a portable computing device including monitoring a temperature signal and holding a performance level during a penalty period
US8930519B2 (en) * 2013-01-08 2015-01-06 American Megatrends, Inc. Emulated communication between master management instance and assisting management instances on baseboard management controller
US9298524B2 (en) * 2013-03-22 2016-03-29 Insyde Software Corp. Virtual baseboard management controller
US9971609B2 (en) 2014-06-05 2018-05-15 American Megatrends, Inc. Thermal watchdog process in host computer management and monitoring
WO2015188786A1 (en) 2014-06-12 2015-12-17 Mediatek Inc. Thermal management method and electronic system with thermal management mechanism
US9915984B2 (en) 2014-09-11 2018-03-13 Dell Products L.P. Information handling system heat sink compatibility management
US9785209B2 (en) 2015-03-31 2017-10-10 Qualcomm Incorporated Thermal management in a computing device based on workload detection
US10402207B2 (en) 2016-06-16 2019-09-03 Quanta Computer Inc. Virtual chassis management controller
WO2019119142A1 (en) * 2017-12-22 2019-06-27 Mcmaster University Controlling operational parameters of a cooling unit

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080065912A1 (en) * 2006-09-07 2008-03-13 Bodner James T Controlling fan speed in electronic system
US20160283424A1 (en) * 2015-03-27 2016-09-29 David R. Richardson Virtual intelligent platform management interface (ipmi) satellite controller and method
JP2016206844A (ja) * 2015-04-20 2016-12-08 富士通株式会社 電子装置及びその冷却方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112021001793T5 (de) 2020-03-24 2023-02-09 Denso Corporation Motor

Also Published As

Publication number Publication date
US10782754B2 (en) 2020-09-22
EP3627281A1 (en) 2020-03-25
EP3627281B1 (en) 2025-07-09
US20200097056A1 (en) 2020-03-26
CN110941524A (zh) 2020-03-31
JP6735859B2 (ja) 2020-08-05
CN110941524B (zh) 2023-08-25
TWI696064B (zh) 2020-06-11
TW202013130A (zh) 2020-04-01

Similar Documents

Publication Publication Date Title
JP6735859B2 (ja) 仮想bmcマネージャによる熱管理
US9158564B2 (en) Virtual service processor stack
CN103765427B (zh) 检验设备的固件完整性
US9122508B2 (en) Real time measurement of I/O interrupt delay times by hypervisor by selectively starting and/or stopping corresponding LPARs
US20140365641A1 (en) Processor module, server system and method of controlling processor module
US9806959B2 (en) Baseboard management controller (BMC) to host communication through device independent universal serial bus (USB) interface
US20110173353A1 (en) Virtualizing A Host USB Adapter
CN114600088A (zh) 使用基板管理控制器的服务器状态监测系统和方法
CN113312140B (zh) 用于虚拟可信平台模块的系统、存储介质和方法
US10990436B2 (en) System and method to handle I/O page faults in an I/O memory management unit
JP2018523201A (ja) ファームウェア関連イベント通知
US20190227942A1 (en) System and Method to Handle I/O Page Faults in an I/O Memory Management Unit
US8499112B2 (en) Storage control apparatus
CN112395152B (zh) 服务器资源获取方法及获取系统
CN113806745A (zh) 响应于页表基址寄存器的变化而执行验证检查
US20250111041A1 (en) Monitoring operating system invariant information
TW201705015A (zh) 遠端系統配置管理方法、遠端系統配置管理系統及非暫態電腦可讀式儲存多媒體
JP5689783B2 (ja) コンピュータ、コンピュータシステム、および障害情報管理方法
CN103902425B (zh) 计算机系统的状态监测方法及装置
US20240070092A1 (en) Input/output expansion emulation with a programmable device
CN113312295B (zh) 计算机系统、机器可读存储介质和重置计算机系统的方法
CN213182723U (zh) 一种提高监管安全性的服务器系统
CN121009548A (zh) 基于热添加内核监控设备的内核监控
CN116521473A (zh) 一种确定cpu温度异常的方法和计算设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200512

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200714

R150 Certificate of patent or registration of utility model

Ref document number: 6735859

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250