(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023134858
(43)【公開日】2023-09-28
(54)【発明の名称】情報処理装置および制御方法
(51)【国際特許分類】
G06F 1/20 20060101AFI20230921BHJP
H05K 7/20 20060101ALI20230921BHJP
【FI】
G06F1/20 D
G06F1/20 B
G06F1/20 A
H05K7/20 J
【審査請求】有
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022034590
(22)【出願日】2022-03-07
(11)【特許番号】
(45)【特許公報発行日】2023-09-20
(71)【出願人】
【識別番号】505205731
【氏名又は名称】レノボ・シンガポール・プライベート・リミテッド
(74)【代理人】
【識別番号】100161207
【弁理士】
【氏名又は名称】西澤 和純
(74)【代理人】
【識別番号】100169764
【弁理士】
【氏名又は名称】清水 雄一郎
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100206081
【弁理士】
【氏名又は名称】片岡 央
(72)【発明者】
【氏名】ワン ハオユー
(72)【発明者】
【氏名】中村 厚喜
(72)【発明者】
【氏名】上村 拓郎
(72)【発明者】
【氏名】内野 顕範
(72)【発明者】
【氏名】長南 勉
【テーマコード(参考)】
5E322
【Fターム(参考)】
5E322AB10
5E322BA01
5E322BB03
5E322BB05
5E322DB10
5E322FA01
(57)【要約】
【課題】熱保護のもとで画像処理演算装置の性能を発揮する。
【解決手段】画像処理演算装置と、放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、温度を測定する温度センサと、温度に基づいて放熱ファンの動作を制御する制御部と、を備え、中央演算装置、画像処理演算装置、冷却部、および、温度センサは、同じ筐体の内部に設けられ、温度センサは、中央演算装置よりも画像処理演算装置に近接して設けられ、制御部は、画像処理演算装置の動作開始に応じて放熱ファンの駆動を開始する。画像処理演算装置と、放熱ファンと、温度を測定する温度センサと、を備える情報処理装置が、温度に基づいて放熱ファンの動作を制御する制御ステップを実行し、制御ステップは、画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始するステップを含む。
【選択図】
図10
【特許請求の範囲】
【請求項1】
中央演算装置と、
画像処理演算装置と、
放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、
温度を測定する温度センサと、
前記温度に基づいて前記放熱ファンの動作を制御する制御部と、を備え、
前記中央演算装置、前記画像処理演算装置、前記冷却部、および、前記温度センサは、同じ筐体の内部に設けられ、
前記温度センサは、前記中央演算装置よりも前記画像処理演算装置に近接して設けられ、
前記制御部は、
前記画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始する
情報処理装置。
【請求項2】
前記制御部は、
前記画像処理演算装置の消費電力が所定の基準値よりも増加するとき、前記画像処理演算装置の動作開始を判定する
請求項1に記載の情報処理装置。
【請求項3】
前記制御部は、
前記消費電力に基づいて、温度と放熱ファンの動作状態との関連が異なる複数の出力制御テーブルからいずれかを選択し、
選択した出力制御テーブルを用いて、前記温度に基づいて前記放熱ファンの動作状態を定める
請求項2に記載の情報処理装置。
【請求項4】
定格電力が異なる複数の電力制御モードからいずれかを選択し、
選択された電力制御モードに従って前記画像処理演算装置を動作させる電力制御部を備え、
前記制御部は、
定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、
前記画像処理演算装置の動作開始に応じて前記放熱ファンの駆動を開始する
請求項3に記載の情報処理装置。
【請求項5】
前記電力制御部は、前記画像処理演算装置の消費電力に基づいて当該画像処理演算装置の電力制御モードを定める
請求項4に記載の情報処理装置。
【請求項6】
システムデバイスを備え、
前記システムデバイスは、基本入出力システムファームウェアを用いて取得した前記画像処理演算装置の消費電力を前記制御部に通知する
請求項5に記載の情報処理装置。
【請求項7】
システムデバイスを備え、
前記システムデバイスは、グラフィックドライバに従って前記画像処理演算装置の消費電力を監視し、
当該消費電力を前記制御部に通知する
請求項5に記載の情報処理装置。
【請求項8】
中央演算装置と、
画像処理演算装置と、
放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、
温度を測定する温度センサと、を備え、
前記中央演算装置、前記画像処理演算装置、前記冷却部、および、前記温度センサは、同じ筐体の内部に設けられ、
前記温度センサは、前記中央演算装置よりも前記画像処理演算装置に近接して設けられる情報処理装置における制御方法であって、
前記情報処理装置が、
前記温度に基づいて前記放熱ファンの動作を制御する制御ステップを実行し、
前記制御ステップは、
前記画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始するステップを含む
制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置の消費電力を制御する技術に関する。
【背景技術】
【0002】
パーソナルコンピュータ(PC:Personal Computer)などの情報処理装置には、画像処理演算装置(GPU:Graphics Processing Unit)を備えるものがある。GPUは、主に画像処理を実行するための演算装置(プロセッサ)である。GPUは、中央演算装置(CPU:Central Processing Unit)よりも単純な構成を有する演算器を複数個備え、定型的かつ大量の演算を並列に処理することに適する。
【0003】
GPUには、CPU(Central Processing Unit)と一体に構成された統合GPU(iGPU: integrated GPU)とCPUとは別個に構成された個別GPU(dGPU: discrete GPU)がある。dGPUは、CPUとは独立に負荷が制御され、より高い性能を奏することができる。dGPUも熱源となるため、温度上昇に応じて放熱ファンの動作を制御する情報処理装置が提案されていた。さらに温度が上昇するときプロセッサの発熱を抑制または停止させる熱保護処理も提案されていた。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、熱保護処理は消費電力の低下または動作の停止を伴う。
図17の例では、GPUは時刻t
1gにおいて、消費電力P
ONgで動作を開始する。このとき、GPUの温度は、T
1gとなる。GPUの温度が時刻t
3gにおいてT
fgに達したとき、放熱ファンの動作が開始する。放熱ファンの起動により、起動前よりもGPUの温度上昇が鈍るが、時刻t
4gにおいてGPUの温度がT
pgに達する。このとき、熱保護処理を開始して、GPUの消費電力が減少し始める。消費電力の減少に伴って発熱量が減少するため、GPUの温度上昇が止まる反面、性能が低下する。GPUの性能を最大限に発揮できるフル出力期間は、時刻t
1gから時刻t
4gまでの間に限られる。
【課題を解決するための手段】
【0006】
本発明は上記の課題を解決するためになされたものであり、本発明の一態様に係る情報処理装置は、中央演算装置と、画像処理演算装置と、放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、温度を測定する温度センサと、前記温度に基づいて前記放熱ファンの動作を制御する制御部と、を備え、前記中央演算装置、前記画像処理演算装置、前記冷却部、および、前記温度センサは、同じ筐体の内部に設けられ、前記温度センサは、前記中央演算装置よりも前記画像処理演算装置に近接して設けられ、前記制御部は、前記画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始する。
【0007】
上記の情報処理装置において、前記制御部は、前記画像処理演算装置の消費電力が所定の基準値よりも増加するとき、前記画像処理演算装置の動作開始を判定してもよい。
【0008】
上記の情報処理装置において、前記制御部は、前記消費電力に基づいて、温度と放熱ファンの動作状態との関連が異なる複数の出力制御テーブルからいずれかを選択し、選択した出力制御テーブルを用いて、前記温度に基づいて前記放熱ファンの動作状態を定めてもよい。
【0009】
上記の情報処理装置において、定格電力が異なる複数の電力制御モードからいずれかを選択し、選択された電力制御モードに従って前記画像処理演算装置を動作させる電力制御部を備え、前記制御部は、定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、前記画像処理演算装置の動作開始に応じて前記放熱ファンの駆動を開始してもよい。
【0010】
上記の情報処理装置において、前記電力制御部は、前記画像処理演算装置の消費電力に基づいて当該画像処理演算装置の電力制御モードを定めてもよい。
【0011】
上記の情報処理装置において、システムデバイスを備え、前記システムデバイスは、基本入出力システムファームウェアを用いて取得した前記画像処理演算装置の消費電力を前記制御部に通知してもよい。
【0012】
上記の情報処理装置において、システムデバイスを備え、前記システムデバイスは、グラフィックドライバに従って前記画像処理演算装置の消費電力を監視し、当該消費電力を前記制御部に通知してもよい。
【0013】
本発明の第2態様に係る制御方法は、中央演算装置と、画像処理演算装置と、放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、温度を測定する温度センサと、を備え、前記中央演算装置、前記画像処理演算装置、前記冷却部、および、前記温度センサは、同じ筐体の内部に設けられ、前記温度センサは、前記中央演算装置よりも前記画像処理演算装置に近接して設けられる情報処理装置における制御方法であって、前記情報処理装置が、前記温度に基づいて前記放熱ファンの動作を制御する制御ステップを実行し、前記制御ステップは、前記画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始するステップを含む。
【発明の効果】
【0014】
本発明の実施形態によれば、熱保護のもとで画像処理演算装置の性能をより発揮することができる。
【図面の簡単な説明】
【0015】
【
図1】本実施形態に係る情報処理装置の内部構成例を示す平面図である。
【
図2】本実施形態に係る情報処理装置のハードウェア構成例を示す概略ブロック図である。
【
図3】本実施形態に係る情報処理装置の機能構成の一例を示すブロック図である。
【
図4】本実施形態に係る電力制御テーブルの一例を示す図である。
【
図5】本実施形態に係る電力制御テーブルの他の例を示す図である。
【
図6】自動制御モードを説明するための概念図である。
【
図7】本実施形態に係る設定画面の一例を示す図である。
【
図8】本実施形態に係るモード遷移テーブルの一例を示す図である。
【
図9】本実施形態に係るモード遷移テーブルの他の例を示す図である。
【
図12】本実施形態に係る出力制御テーブルの一例を示す図である。
【
図13】本実施形態に係る出力制御テーブルの他の例を示す図である。
【
図14】本実施形態に係る放熱ファンの動作制御例を示すフローチャートである。
【
図15】本実施形態に係る情報処理装置の機能構成の他の例を示すブロック図である。
【
図16】ベンチマークテストの試験結果を示す表である。
【
図17】比較例の放熱ファンの制御例を示す図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について、図面を参照して説明する。まず、本発明の実施形態に係る情報処理装置1の概要について説明する。
図1は、本実施形態に係る情報処理装置1の内部構成例を示す平面図である。
図1は、情報処理装置1の筐体BDの内部を模式的に示す。筐体BDは、各種の部材を格納する。筐体BDには、マザーボードMB、補助記憶装置23、オーディオシステム24、バッテリ34および冷却部35が配置されている。マザーボードMBには、CPU11、GPU13、チップセット21、BIOS(Basic Input Output System;基本入出力システム)メモリ22、EC(Embedded Controller、エンベデッドコントローラ)31および電源回路33が設置されている。
【0017】
冷却部35は、筐体BDの内部に格納された部材、例えば、CPU11、GPU13を冷却するために設けられる。冷却部35は、放熱ファン351、ヒートパイプ352、353および温度センサ355、356を備える。放熱ファン351とヒートパイプ352、353は、熱拡散装置の例である。放熱ファン351は、フィン(羽)を回転させるモータを備え、吸気口81から空気を筐体BD内に流入させる。流入された空気はヒートパイプ352、353と熱交換されたうえで、排気口83から筐体BDの外に排出される。放熱ファン351の動作は、例えば、EC31またはその他のデバイスにより制御されうる。
【0018】
ヒートパイプ352、353は、それぞれ蒸発部および凝縮部を有する。ヒートパイプ352、353の蒸発部は、例えば、CPU11、GPU13から発生した熱を取り入れることができるように、それぞれCPU11、GPU13近接または当接するようにして設けられる。ヒートパイプ352、353の凝縮部は、放熱ファン351の近傍に備えられる。
【0019】
ヒートパイプ352、353の蒸発部では、プロセッサが発した熱を受け取ることにより作動流体を蒸発させる。蒸発部では、作動流体の蒸発により圧力が高まるため、気相の作動流体が凝縮部に向けて移動する。凝縮部では、放熱ファン351によって生じる気流により、作動流体の熱が奪われる。作動流体の熱を奪った気流は、排気口83から筐体BDの外部に排出される。凝縮部において熱を奪われた作動流体は、凝縮して液相となる。液相となった作動流体は、ウィックを通じて、毛管力によって蒸発部に向けて流動する。蒸発部に到達した液相の差動流体は、再びプロセッサから熱を受け取って蒸発する。以降は、上記の現象が繰り返される。このようにして、冷却部35はCPU11とGPU13に生じた熱を放熱することができる。
【0020】
温度センサ355、356は、それぞれ温度を検出し、検出した温度を示す温度信号をEC31に出力する。温度センサ355、356は、ヒートパイプ352、353の蒸発部に相当する部位の温度を検出することができる位置に設けられる。温度センサ355、356の位置は、それぞれGPU13よりもCPU11に、CPU11よりもGPU13に近接した位置となる。温度センサ355、356が検出する温度は、概ねCPU11、GPU13の温度に相当する。
【0021】
次に、本実施形態に係る情報処理装置1の主なハードウェア構成例について説明する。
図2は、本実施形態に係る情報処理装置1のハードウェア構成例を示す概略ブロック図である。情報処理装置1は、CPU11と、メインメモリ12と、GPU13と、ディスプレイ14と、チップセット21と、BIOSメモリ22と、補助記憶装置23と、オーディオシステム24と、WLANカード25と、USBコネクタ26と、EC31と、入力部32と、電源回路33と、バッテリ34と、冷却部35とを備える。
【0022】
CPU11は、情報処理装置1に備わるシステムデバイスの中核をなす。CPU11は、ソフトウェア(プログラム)に記述された命令で指示される種々の演算処理を実行するプロセッサである。CPUは、例えば、OS(Operating System)、BIOS、アプリケーションプログラム(本願では、「アプリ」と呼ぶ)など、各種のソフトウェアで指示される処理を実行する。なお、ソフトウェアに記述された指令(コマンド)で指示される処理を実行することを、「ソフトウェアを実行する」と呼ぶことがある。GPU13は、CPU11と一部の処理を分担することがある。
【0023】
メインメモリ12は、プロセッサの実行プログラムの読み込み領域として、または、実行プログラムの処理データを書き込む作業領域として利用される書き込み可能メモリである。メインメモリ12は、例えば、複数個のDRAMチップで構成される。実行プログラムには、OS、周辺機器などのハードウェアを操作するための各種ドライバ、各種サービス/ユーティリティ、アプリ等が含まれる。
【0024】
GPU13は、主に実時間画像処理、その他の並列演算処理を担うプロセッサである。GPU13は、CPU11からの描画命令を処理し、処理した描画情報をビデオメモリ(図示せず)に書き込むとともに、ビデオメモリからこの描画情報を読み出して、CPU11を経由してディスプレイ14に表示情報を示す表示データとして出力する(画像処理)。CPU11は、OS上でグラフィックドライバを実行して、GPU13の動作を制御し、OS、アプリ、その他のプログラムで指示される画像処理を実現する。GPU13の個数は、1個に限られず、複数個でもよい。GPU13は、CPU11と一部の処理を分担し、画像処理以外の並列演算処理を実行してもよい。GPU13の動作は、CPU11とは異なり、間欠的となり、動作開始、終了を不定期に繰り返す傾向がある。
【0025】
ディスプレイ14は、GPU13から出力された描画データ(表示データ)に基づく表示画面を表示する。ディスプレイ14は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)、OLED(Organic Light Emitting Diode、有機発光ダイオード)ディスプレイなどのいずれであってもよい。
【0026】
チップセット21は、複数のコントローラを備え、複数のデバイスと各種のデータを入出力できるように接続可能とする。コントローラは、例えば、USB(Universal Serial Bus)、シリアルATA(AT Attachment)、SPI(Serial Peripheral Interface)バス、PCI(Peripheral Component Interconnect)バス、PCI-Expressバス、および、LPC(Low Pin Count)などのバスコントローラのいずれか1個または組み合わせである。複数のデバイスとして、例えば、後述するBIOSメモリ22、補助記憶装置23、オーディオシステム24、WLANカード25、USBコネクタ26、および、EC31が含まれる。
【0027】
BIOSメモリ22は、例えば、EEPROM(Electrically Erasable ProgrammableRead Only Memory)やフラッシュROMなど、電気的に書き換え可能な不揮発性メモリで構成される。BIOSメモリ22は、BIOS、EC31その他のデバイスの動作を制御するためのファームウェアなどを記憶する。BIOSは、システムデバイスの基本的な入出力を行うためのファームウェアである。本願では、BIOSとは、UEFI(Unified Extensible Firmware Interface)に規定された仕様に従って定義されたファームウェアも含む。
【0028】
補助記憶装置23は、各種のデータを永続的に記憶する。記憶されるデータは、CPU11、GPU13により実行されうる各種のプログラム、パラメータ、各種処理に用いられるデータ、各種処理により取得されるデータが含まれる。補助記憶装置23は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)などのいずれであってもよく、各種の不揮発性メモリを含んで構成される。不揮発性メモリとして、例えば、フラッシュメモリが用いられる。各種のプログラムには、例えば、OS、ドライバ、ファームウェア、アプリ、等が含まれうる。
【0029】
オーディオシステム24は、マイクロホンとスピーカ(図示せず)が接続され、音声データの記録、再生および出力を行う。なお、マイクロホンとスピーカは、例えば、情報処理装置1に内蔵されてもよいし、情報処理装置1とは別体であってもよい。
【0030】
WLAN(Wireless Local Area Network)カード25は、ワイヤレス(無線)LANにより、ネットワークに接続して、データ通信を行う。WLANカード25は、例えば、ネットワークからのデータを受信した際に、データを受信したことを示すイベントトリガを発生する。
USBコネクタ26は、USBを利用した周辺機器類を接続するためのコネクタである。
【0031】
EC31は、情報処理装置1のシステムの動作状態に関わらず、各種デバイス(周辺装置やセンサ等)を監視して制御するワンチップマイコン(One-Chip Microcomputer)である。EC31は、CPU11とは別個のCPU、ROM、RAM、複数チャネルのA/D入力端子、D/A出力端子、タイマおよびデジタル入出力端子(図示せず)を備える。EC31のデジタル入出力端子には、例えば、入力部32、電源回路33、放熱ファン351などが接続されており、EC31は、これらの動作を制御可能とされている。
また、EC31は、チップセット21を経由してCPU11とGPU13のクロック周波数の変更、平均処理速度、等の制御を行って消費電力を制御してもよい。
【0032】
入力部32は、例えば、キーボードや、タッチパッドなど、ユーザの操作を検出し、検出した操作に応じた操作信号をEC31に出力する入力デバイスを備える。入力部32は、
図1に例示されるディスプレイ14と重なり合いタッチセンサとして構成されてもよい。
【0033】
電源回路33は、例えば、DC/DCコンバータ、充放電ユニット、AC/DCアダプタなどを備える。例えば、電源回路33は、ACアダプタ(図示せず)などの外部電源またはバッテリ34から供給される直流電圧を、情報処理装置1を動作させるために必要な複数の電圧に変換する。また、電源回路33は、EC31の制御に従い、情報処理装置1の各部に電力を供給する。
【0034】
バッテリ34は、例えば、リチウムイオンバッテリ等の二次電池を備える。バッテリ34は、情報処理装置1に外部電源から電力供給されている場合に、電源回路33を経由して充電され、情報処理装置1に外部電源から電力供給されていない場合に、電源回路33を経由して、蓄積した電力を情報処理装置1の動作電力として出力する。
【0035】
電源ボタン36は、押下操作が受け付けられる都度、情報処理装置1の全体への電源投入(Power ON)および電源断(Power OFF)を制御する。電源ボタン36は、押下を示す押下信号をEC31に出力する。EC31は、情報処理装置1が電源断であるときに電源ボタン36から押下信号が入力されるとき、電源回路33に対し、情報処理装置1の各デバイスへの電力供給を開始させる(電源投入)。
【0036】
CPU11、GPU13などのプロセッサの消費電力は可変である。プロセッサは、消費電力に応じて動作電圧と動作周波数の一方または両方を可変にしてもよい。例えば、CPU11は、システムファームウェアを実行し、情報処理装置1の主システムの動作状態(動作モード)または電力制御モードに応じて許容する最大動作周波数を、CPU11に備わるレジスタに設定する。主システムは、CPU11、メインメモリ12、GPU13などのハードウェアと、OS、スケジュール・タスクなどのソフトウェアと、を含んで構成されるコンピュータシステムである。主システムを構成するデバイスがシステムデバイスに相当する。CPU11は、システムデバイスの中核をなす。CPU11は、BIOSを実行し、他のシステムデバイスと協働して、各システムデバイスによるデータの入出力を制御する。CPU11は、メインメモリ12、GPU13、または、その他のデバイスと協働してOSを実行し、情報処理装置1の基本的な機能を提供する。基本的な機能には、例えば、各種アプリ、その他のプログラムの実行状態の管理、制御、それらのプログラムの実行における標準的なインタフェースの提供、主システムならびに主システムと直接または間接的に協働するハードウェアにおけるリソースの管理、などが含まれる。
【0037】
一般に、プロセッサの消費電力は、動作周波数が高いほど多くなる。個々のプロセッサには、動作周波数の下限と上限がある。プロセッサには、例えば、予め動作周波数ごとに消費電力との関係を示す関数または制御テーブルを設定しておき、この関係を参照して、目標とする消費電力に対応する動作周波数を定めてもよい。動作周波数が下限に設定されることで、最低限の処理能力が担保される。動作周波数が上限に設定されることで、処理能力が最大となる。
【0038】
情報処理装置1は、検出された温度が所定の基準温度よりも上昇するときに、プロセッサの動作を抑制または停止する熱保護処理を実行する。熱保護処理は、例えば、TCC(Thermal Control Circuit;温度制御回路)を備えて実現されてもよいし、CPU11によるITS(Intelligent Thermal Solution)ドライバの実行により実現されてもよい。熱保護処理は、例えば、温度センサ355、356で検出された温度を監視するステップと、検出された温度が所定の基準温度よりも上昇するときに、動作周波数を低下させて、プロセッサの動作を制御するステップを含む。
【0039】
プロセッサは、一般に、動作周波数が高く、かつ、使用率が高いほど消費電力が大きくなるので、発熱量が多くなる。プロセッサは、それぞれ許容される最大消費電力以下となる消費電力に対応する動作周波数を設定することで、消費電力が設定された最大消費電力以下となるように動作する。従って、動作周波数が低下するほど、プロセスの実行時間が長くなり、消費電力が低下する。プロセッサが発生させた熱は、それ自体の温度を上昇させるとともに、筐体BD内外の温度を上昇させる。但し、消費電力が小さいほど発熱量が少なくなるので、消費電力が十分に小さい場合には、放熱ファン351の停止または出力の低下が許容される。逆に消費電力が大きい場合には、放熱ファン351の動作または出力の増加を要する。
【0040】
次に、本実施形態に係る情報処理装置1の機能構成例について説明する。
図3は、本実施形態に係る情報処理装置1の機能構成例を示すブロック図である。以下の説明では、サービスアプリケーション、PMドライバ、BIOS、グラフィックドライバ119など、プログラム自体を指す呼称は、プロセッサによる実行により実現される機能部を指す。
【0041】
サービスアプリケーション211は、プロセッサ、即ち、CPU11、GPU13の状態を検出する。サービスアプリケーション211は、CPU11によりOS上で実行され、OSのカーネルに組み込まれる中間ドライバならびその他のドライバと協働して、その機能を奏する。中間ドライバを実行することで、OSのカーネルの実行によりプロセッサにおいて生成されるプロセスと、プロセスにおけるプログラムの実行状態が監視される。サービスアプリケーション211は、CPU11、GPU13の消費電力の情報をOSから取得する。サービスアプリケーション211は、検出したプロセッサの状態を示すプロセッサ状態情報をPMドライバ213に出力する。
【0042】
PM(Power Management)ドライバ213は、状態検出部201のサービスアプリケーション211から入力されるプロセッサ状態情報を構成する各種のパラメータから、プロセッサの消費電力に関連する状態を示すパラメータを抽出する。PMドライバ213は、抽出したパラメータを含むプロセッサ状態情報を電力制御部217に出力する。
【0043】
電力制御部217は、PMドライバ213から入力されるプロセッサ状態情報もしくは入力部32により検出されるユーザ操作に応じて設定した設定情報に基づいて、プロセッサの処理能力を制御する。処理能力を制御することで、消費電力が制御される。電力制御部217の機能は、例えば、CPU11がITSドライバを実行して提供される。本願では、プロセッサの消費電力の制御に係るパラメータ(以下、「設定電力のパラメータ」と呼ぶ)として、第1制限電力(以下、「PL1」と呼ぶ)と第2制限電力(以下、「PL2」と呼ぶ)がある。PL1は、定格電力に相当する。PL1は、プロセッサの消費電力が一時的にこの値を超えることを許容するが、所定時間以上継続してこの値を超えることを制限するための閾値である。PL1は、長時間制限電力(Long Term Power Limit)とも呼ばれる。PL2は、消費電力が一時的であっても、この値を超えることを制限するための閾値である。PL2は、短時間制限電力(Short Term Power Limit)とも呼ばれる。PL2は、動作周波数が上限となる場合におけるプロセッサの消費電力の上限に相当する。本実施形態では、CPU11、GPU13のそれぞれに対して独立なPL1、PL2が設定される。
【0044】
電力制御部217は、PL1、PL2に基づいて個々のプロセッサの消費電力を制御する。例えば、プロセッサの消費電力がPL1を超える時間が所定の継続時間τ(例えば、0.2~1[s])以上継続するとき、電力制御部217は、消費電力の移動平均値がPL1以下になるまで、プロセッサのレジスタに設定されている動作周波数を低下させる。また、電力制御部217は、消費電力の移動平均値がPL1を超えない範囲で、その時点でプロセッサのレジスタに設定されている動作周波数を上昇させる。
【0045】
電力制御部217は、予め定めた複数段階の電力制御モードのうち、いずれか1段階の電力制御モードで指示される設定電力のパラメータを用いて、上記の手法でプロセッサの消費電力を制御してもよい。言い換えれば、プロセッサは、定格電力が異なる複数の電力制御モードをとりうる。プロセッサのレジスタまたはメインメモリ12には、予め電力制御テーブルを記憶させておいてもよい。電力制御部217は、ユーザの操作に応じて複数段階の電力制御モードのうち1段階の電力制御モードを選択してもよいし、プロセッサの状態に応じて、いずれか1段階の電力制御モードを定めてもよい。電力制御部217は、定めた電力制御モードを示す電力制御モード情報を、BIOS321による入出力機能を経由して駆動制御部403に出力してもよい。また、電力制御部217は、上記の熱保護処理を実行してもよい。電力制御テーブルの例、電力制御モードの制御例については、後述する。
【0046】
BIOS321は、情報処理装置1のシステムデバイスと、それ以外のデバイスとで各種のデータを入出力する。BIOS321は、電力制御部217から入力される電力制御モード情報を駆動制御部403に出力する。なお、BIOS321は、各プロセッサの状態を示す情報をOSから取得する。BIOS321は、GPU13の状態を示すプロセッサ状態情報を駆動制御部403に出力する。
【0047】
温度センサ355は、CPU11の温度(以下、「CPU温度」と呼ぶ)を測定し、測定したCPU温度を示すCPU温度データを駆動制御部403に出力する。
温度センサ356は、GPU13の温度(以下、「GPU温度」と呼ぶ)を測定し、測定したGPU温度を示すGPU温度データを駆動制御部403に出力する。
駆動制御部403は、電力制御部217から入力される電力制御モード、温度センサ355から入力されるCPU温度データが示すCPU温度、および、GPU温度に基づいて放熱ファン351の動作を制御する。駆動制御部403は、BIOS321から入力されるGPU13の状態を示すプロセッサ状態情報に基づいて放熱ファン351の動作を制御する。駆動制御部403は放熱ファン351の動作の制御において、電力制御部217からBIOS321を経由して入力される電力制御モード情報に示される電力制御モードを参照してもよい。駆動制御部403は、制御目標とする動作状態を示す駆動制御信号を生成し、生成した駆動制御信号を電源回路33に出力する。駆動制御部403の機能は、EC31が所定のファームウェア(ECFW)を実行して実現される。
電源回路33は、駆動制御部403から入力される駆動制御信号が示す動作状態に対応する電力を放熱ファン351に供給する。
放熱ファン351は、電源回路33から供給される電力を消費して動作する。放熱ファン351の制御例については、後述する。
【0048】
次に、電力制御テーブルの例について説明する。電力制御テーブルは、
図4、
図5に例示されるように、各段階の電力制御モードについて設定電力のパラメータを含んで構成される。
図4、
図5の例では、4段階の電力制御モードとして、エコモード(E:Eco-mode
)、バランスモード(B:Balance mode)、高性能モード(P:Performance mode)および超高性能モード(U:Ultra-performance mode)のそれぞれについて、設定電力のパラメータと目標温度が対応付けられている。
図4、
図5は、それぞれCPU11、GPU13に適用される。設定電力のうち、PL1は、エコモード(E)、バランスモード(B)、高性能モード(P)、超高性能モード(U)の順に大きくなり、超高性能モード(U)が最も大きい。PL2は、エコモード(E)、バランスモード(B)、高性能モード(P)、超高性能モード(U)の順に大きくなってもよいし、全部または一部の隣接する電力制御モード間で同一の値になってもよい。
【0049】
図6に例示されるように、プロセッサの状態に応じて、複数段階の電力制御モードから、いずれか1段階の電力制御モードを特定する手法を「自動制御モード」(auto control mode)と呼ぶことがある。電力制御部217は、ユーザの操作に応じて自動制御モードを選択するための設定画面を、グラフィックドライバ119とGPU13を用いてディスプレイ14に表示させてもよい。
図7に例示される設定画面には、4段階の電力制御モードから、いずれか1段階の電力制御モードを操作に応じて選択するためのスライダバーが配置されている。
図7の例では、スライダバーのつまみの位置を、操作に応じて超高性能モード(U)の目盛りの位置に配置することで、超高性能モード(U)が選択されている場合を示す。また、設定画面の中央部に、その時点で選択されている電力制御モードを表す文字列として、「超高性能」との文字列が表されている。電力制御部217は、操作に応じて選択される電力制御モードを、情報処理装置1に備わるプロセッサであるCPU11とGPU13に共通に適用されてもよい。
【0050】
自動制御モードが設定されている場合、電力制御部217は、個々のプロセッサの状態の変化傾向に応じてN段階(Nは、2以上の整数)の電力制御モードから1つの電力制御モードを選択する。電力制御部217は、プロセッサの消費電力が第1基準電力を超える状態が継続する期間である超過期間が所定の第1期間(例えば、5~10秒)以上となるとき、その時点におけるプロセッサの第1段階以上第n(nは、PL1の昇順に定まる1以上N-1以下の整数)段階以下のいずれかの段階の電力制御モードから第n+1段階の電力制御モードに変更してもよい。
図8に例示するモード遷移テーブルでは、CPU11について、Seb、Sbp、Spuが、それぞれエコモード(E)からバランスモード(B)、バランスモード(B)またはエコモード(E)から高性能モード(P)、高性能モード(P)、バランスモード(B)またはエコモード(E)から超高性能モード(U)への判定に係る第1基準電力に相当する。Seb、Sbp、Spuは、それぞれバランスモード(B)におけるPL1、高性能モード(P)、超高性能モード(U)におけるPL1、よりも所定の判定幅(例えば、0.3~1[W])だけ低い値となりうる。Tebc、Tbpc、Tpucが、それぞれエコモード(E)からバランスモード(B)、バランスモード(B)またはエコモード(E)から高性能モード(P)、高性能モード(P)、バランスモード(B)またはエコモード(E)から超高性能モードへの判定に係る第1期間に相当する。Tebc、Tbpc、Tpucは、典型的には5~30秒となりうる。
【0051】
電力制御部217は、プロセッサの動作状態が第2基準電力以下となる状態が継続する期間である基準内期間が所定の第2期間以上となるとき、その時点における第n+1段階以上第N段階以下のいずれかの段階の電力制御モードから第n段階の電力制御モードに変更してもよい。
図8に例示するモード遷移テーブルでは、CPU11について、Sbe、Spb、Supが、それぞれバランスモード(B)、高性能モード(P)もしくは超高性能モード(U)からエコモード(E)、高性能モード(P)もしくは超高性能モード(U)からバランスモード(B)、超高性能モード(U)から高性能モード(P)への判定に係る第2基準電力に相当する。Sbe、Spb、Supは、それぞれエコモード(E)、バランスモード(B)、高性能モード(P)のPL1よりも所定の判定幅(例えば、0.3~1[W])だけ低い値でありうる。Tbec、Tpbc、Tupcが、それぞれバランスモード(B)、高性能モード(P)もしくは超高性能モード(U)からエコモード(E)、高性能モード(P)もしくは超高性能モード(U)からバランスモード(B)、超高性能モード(U)から高性能モード(P)への判定に係る第2期間に相当する。
【0052】
第n+1段階の電力制御モードに係る第2基準電力は、第n+1段階の電力制御モードに係る第1基準電力と等しくてもよいし、より小さくてもよい。また、n+1段階の電力制御に係る第2基準電力は、第n段階の電力制御に係る第1基準電力よりも大きい値であればよい。また、第2期間は、第1期間と等しくてもよいが、第1期間よりも長くてもよい。第2基準電力をより小さくする、または、第1期間をより大きくすることで、より高い段階、つまり、PL1がより大きい電力制御モードへの変更よりも、より低い段階への田両区制御モードの変更の方が困難になる。そのため、消費電力の予期せぬ増加に備えることができる。プロセッサのレジスタまたはメインメモリには、電力制御テーブルとは別個にモード遷移テーブルを予め記憶させておいてもよい。
【0053】
電力制御部217は、プロセッサが動作中である状態が継続する期間である超過期間が所定の第1期間以上となるとき、その時点におけるプロセッサの第1段階以上第n段階以下のいずれかの段階の電力制御モードから第n+1段階の電力制御モードに変更してもよい。
図9に例示するモード遷移テーブルにおいて、GPU Power ONとは、GPU13が動作中の状態を示す。Tebg、Tbpg、Tpugは、それぞれエコモード(E)からバランスモード(B)、バランスモード(B)またはエコモード(E)から高性能モード(P)、高性能モード(P)、バランスモード(B)またはエコモードから超高性能モード(U)への判定に係る第1期間に相当する。Tebg、Tbpg、Tpugの順に長くなり、Tpugが最も長い。Tebg、Tbpg、Tpugは、典型的には5~30秒の範囲内となりうる。
【0054】
電力制御部217は、プロセッサが停止している状態が継続する期間である基準内期間が所定の第2期間以上となるとき、その時点における第n+1段階以上第N段階以下のいずれかの段階の電力制御モードから第n段階の電力制御モードに変更してもよい。
図9に例示するモード遷移テーブルでは、GPU Power OFFとは、GPU13が動作を停止している状態を示す。Tbeg、Tpbg、Tupgが、それぞれバランスモード(B)、高性能モード(P)もしくは超高性能モード(U)からエコモード(E)、高性能モード(P)もしくは超高性能モード(U)からバランスモード(B)、超高性能モード(U)から高性能モード(P)への判定に係る第2期間に相当する。
【0055】
(制御例)
次に、放熱ファン351の制御例について説明する。
図10は、放熱ファン351の第1制御例を示す図である。
図10の例では、当初GPU13の動作が停止(消費電力P
OFFg)、GPU温度がT
0g、放熱ファン351が停止(ファン出力0)と仮定する。消費電力P
OFFgは、GPU13が画像処理、演算処理、その他の実質的な処理を行わずに、機能の維持に要する最小限の処理により消費される消費電力であり、動作時よりも0Wに近似した値をとる。即ち、消費電力P
OFFgは動作判定閾値よりも低い。時刻t
1gにおいて、GPU13が動作中の状態(消費電力P
ONg)、つまり動作を開始するとき、駆動制御部403は、停止していた放熱ファン351を起動する。消費電力P
ONgは動作判定閾値よりも高い値となる。放熱ファン351の起動直後のファン出力は、R
fgとなる。ファン出力は、その動作による冷却能力を意味する。ファン出力の指標として、例えば、単位時間当たりの回転数、ファンの騒音レベル、消費電力、などのいずれが用いられてもよい。GPU温度は、動作による発熱のため時間経過に応じて上昇する。時刻t
2gにおいてGPU温度が予め設定された熱保護判定温度T
pgに達するとき、電力制御部217は、熱保護機構の動作を開始し、GPU13に設定する設定電力の低下を開始する。これにより、GPU13の消費電力が減少する。よって、GPU13が動作中に性能を発揮できるフル出力期間は、時刻t
1gから時刻t
2gとなる。駆動制御部403は、通知されるGPU13の消費電力が所定の動作判定閾値よりも多いか否かにより、動作中であるか否かを判定してもよいし、入力されるプロセッサ状態情報として動作中であるか否かが伝達されてもよい。
【0056】
これに対して、
図17の比較例では、駆動制御部403は、GPU温度が予め設定された設定温度T
fgに達するとき停止していた放熱ファン351を起動する。そのため、GPU温度が熱保護判定温度T
pgに達する時刻t
4gは、
図10に例示される時刻t
2gよりも早期となる。フル出力期間は時刻t
1gから時刻t
4gまでの間となる。これに対し、本実施形態では、GPU13が動作状態となるとき放熱ファン351を起動することで、GPU13の温度上昇の抑制が早期に開始される。そのため、GPU13の性能を発揮できるフル出力期間が比較例よりも延長される。
【0057】
なお、駆動制御部403は、電力制御部217から入力される電力制御モード情報で通知される電力制御モードが、所定の定格電力よりも高い定格電力に係る電力制御モード(例えば、高性能モード(P)または超高性能モード(U))である場合に、GPU13の動作開始に応じて放熱ファン351の駆動を開始させ、その他の電力制御モードである場合には、比較例と同様にGPU温度に基づいて放熱ファン351の駆動を開始させてもよい。消費電力が多いために速い温度上昇が見込まれる場合には、早期に温度上昇を抑制することで、フル出力期間を延長して、GPU13の性能を発揮させることができる。他方、消費電力が少ないために温度上昇が緩やか、または、生じない場合は、早期に温度上昇を抑制する必要性が乏しい。他方、CPU11、その他の熱源により発生した熱の放熱の必要性が残される。
【0058】
駆動制御部403は、CPU11について、GPU13と同様に動作状態(消費電力)に基づいて放熱ファン351の駆動を開始させてもよいし、CPU温度に基づいて放熱ファン351の動作を制御してもよい。
図11は、CPU温度に基づいて放熱ファン351の動作を制御する場合を例示する。
図11の例では、当初CPU11の動作が停止(消費電力P
OFFc)、CPU温度がT
0c、放熱ファン351が停止(ファン出力0)と仮定する。時刻t
1cにおいて、CPU11が動作開始中の状態となり、消費電力がP
ONcとなる。CPU温度は、動作による発熱のため時間経過に応じて上昇する。この例では、CPU11の発熱量がGPU13の発熱量よりも大きいため、CPU11の温度上昇がGPU13の温度上昇よりも速い。時刻t
3cにおいてCPU温度が予め設定された設定温度T
fcに達するとき、駆動制御部403は、停止していた放熱ファン351を起動する。放熱ファン351の起動直後のファン出力は、R
fcとなる。放熱ファン351の動作によりCPU11の温度上昇は、動作前よりも抑制される。時刻t
3cにおいてCPU温度が予め設定された熱保護判定温度T
pcに達するとき、電力制御部217は、熱保護機構の動作を開始し、CPU11に設定する設定電力の低下を開始する。これにより、CPU11の消費電力が減少する。CPU11の性能を発揮できるフル出力期間は、時刻t
1cから時刻t
2cとなる。なお、GPU13に対するファン出力R
fgとCPU11に対するファン出力R
fcと等しくてもよいし、異なってもよい。例えば、ファン出力R
fgは、ファン出力R
fcよりも小さくてもよい。また、検出された温度が高いほどファン出力が大きくてもよい。プロセッサに対するファン出力は、消費電力に基づいて推定される温度上昇率が高いほどファン出力が大きくてもよい。放熱ファン351の動作判定の設定温度T
fg、T
fcは、主な冷却対象物に対して許容される温度の上限に応じて定めておいてもよい。
【0059】
なお、冷却部35には、さらに他部位における温度(例えば、筐体BDの表面における表面温度)を検出する温度センサを備えてもよい。駆動制御部403は、他部位において検出された温度が所定の設定温度を超えるとき、放熱ファン351の動作を開始させ、検出された温度が設定温度以下となるとき、放熱ファン351の動作を停止させてもよい。
また、上記の説明では、駆動制御部403は、プロセッサの動作状態または温度に応じて放熱ファン351の動作の要否という2段階の制御を例示したが、これには限られない。駆動制御部403は、3段階以上の制御を実行し、いずれか1段階のファン出力を定めてもよい。各段階に対して異なる大きさのファン出力が設定されてもよい。活発な動作状態ほど、または、高い設定温度ほど大きいファン出力に対応付けられればよい。
【0060】
情報処理装置1に複数の放熱対象物(上記の例では、プロセッサ、筐体BD)が備わる場合には、駆動制御部403は、個々の放熱対象物に対して検出された温度に基づいて放熱ファン351の動作の要否を判定し、少なくとも1個の放熱対象物に対して動作要と判定した場合には、放熱ファン351を動作させる。駆動制御部403は、いずれの冷却対象物に対しても動作否と判定した場合には、放熱ファン351を動作させない。2個以上の放熱対象物に対して定めたファン出力が異なる場合には、駆動制御部403は、最も大きいファン出力を選択すればよい。
【0061】
なお、駆動制御部403には、プロセッサの状態ごとに複数通りの出力制御テーブルを予め設定しておき、自部に入力されるプロセッサ状態情報で通知されるプロセッサの状態に対応する1通りの出力制御テーブルを選択してもよい。出力制御テーブルは、各放熱対象物について温度と放熱ファン351の目標とする動作状態を対応付けて構成される。駆動制御部403は、選択した出力制御テーブルを用い、検出された温度に対応する放熱ファン351の動作状態を定めることができる。
【0062】
図12、
図13は、それぞれGPU13の動作停止状態、動作中の状態に対応する出力制御テーブルを例示する。各行には放熱対象物もしくは温度の検出部位の例として、GPU13(GPU)、筐体BDの表面(表面)、CPU11(CPU)を示す。各列は、ファン出力の段階の例として、ステップ3、2、1を示す。ステップ3、2、1の順にファン出力が小さくなり、ステップ1が最もファン出力が小さい。出力制御テーブルの各欄は、設定温度を示す。
図12、
図13に示す出力制御テーブルでは、筐体BDの表面、CPU11の温度制御に対しては、それぞれ検出された温度に基づくファン出力の制御がなされる。GPU13、CPU11に対しては、それぞれステップ2、3に対応付けられ、動作の要否が制御される。筐体BDの表面に対しては、ステップ1、2、3に対応付けられ、3段階のファン出力と動作否の場合と併せて4段階の動作状態を可能とする。
【0063】
筐体BDの表面、CPU11に対する設定温度T
s3、T
s2、T
s1、T
fcは、
図12と
図13との間で共通である。これに対し、
図12と
図13との間では、GPU13に対して異なる設定温度T
fg、T
lgが設定されている。従って、GPU13が動作停止状態である場合には設定温度T
fgが用いられ、動作中の状態である場合には設定温度T
lgが用いられる。設定温度T
fgとして、動作状態にあるGPU13に対して許容される温度範囲の下限よりも上限に近い温度を設定しておく。設定温度T
lgとして、通常の動作環境で生じ得ない温度、例えば、情報処理装置1の使用温度範囲の下限よりも低い温度を設定しておく。これにより、駆動制御部403は、GPU13が動作中の状態では、GPU温度に関わらず放熱ファン351を動作させ、GPU13が動作停止状態では、GPU温度が設定温度T
fgを超えているか否かにより放熱ファン351を動作させるか否かを制御することができる。そのため、GPU13の動作状態に関わらず温度上昇に対する保護が図られる。また、駆動制御部403は、設定温度に基づく制御を基本としながら、制御テーブルの切り替えにより、大きな設計変更を伴わずにGPU13の状態に応じた制御と両立することができる。
【0064】
次に、本実施形態に係る放熱ファン351の動作制御例について説明する。
図14は、本実施形態に係る放熱ファン351の動作制御例を示すフローチャートである。
(ステップS102)駆動制御部403には、GPU13の動作状態を示すプロセッサ状態情報が通知される。
(ステップS104)駆動制御部403は、プロセッサ状態情報に基づいてGPU13が動作中であるか否かを判定する。この例では、動作中とは、GPU13に電源投入されているが、描画処理など、CPU11から指示される実質的な処理が実行されていない状態も含まれる。動作中と判定される場合には(ステップS104 YES)、ステップS105の処理に進む。動作中と判定されない場合には(ステップS104 NO)、ステップS118の処理に進む。
【0065】
(ステップS105)駆動制御部403は、GPU13の消費電力が所定の動作判定閾値Pthgを超えるか否かを判定する。この判定により、GPU13が実質的な処理を実行している状態であるか、単に電源投入されているかが識別される。動作判定閾値Pthgは、一般に定格電力よりも低い値となる。GPU13の消費電力が所定の動作判定閾値Pthgを超えると判定される場合には(ステップS105 YES)、ステップS106の処理に進む。超えないと判定される場合には(ステップS105 NO)、ステップS118の処理に進む。
【0066】
(ステップS106)駆動制御部403は、放熱ファン351について駆動要と判定し、放熱ファン351を駆動させる。
(ステップS108)電力制御部217は、温度センサ356が検出したGPU温度を示すGPU温度データを取得する。
(ステップS110)電力制御部217は、GPU温度が熱保護判定温度Tpgを超えているか否かを判定する。熱保護判定温度Tpgを超えていると判定される場合(ステップS110 YES)、ステップS112の処理に進む。超えていないと判定される場合(ステップS110 NO)、ステップS114の処理に進む。
(ステップS112)電力制御部217は、熱保護処理要と判定し、熱保護処理を実行する。その後、ステップS108の処理に進む。
(ステップS114)電力制御部217は、熱保護処理否と判定し、熱保護処理を実行しない。その後、ステップS116の処理に進む。
【0067】
(ステップS116)電力制御部217は、GPU温度が設定温度Tfgを超えているか否かを判定する。設定温度Tfgを超えていると判定される場合(ステップS116 YES)、ステップS106の処理に進む。設定温度Tfgを超えていないと判定される場合(ステップS116 NO)、ステップS118の処理に進む。
(ステップS118)駆動制御部403は、放熱ファン351について駆動否と判定し、放熱ファン351を駆動させない。その後、ステップS102の処理に進む。
【0068】
なお、上記の説明では、BIOS321を経由してGPU13の状態を示すプロセッサ状態情報を駆動制御部403に出力する場合を例にしたが、GPU13から駆動制御部403を実装するEC31にデータを入出力するための電気的接続などのハードウェア上の設計変更を要することがある。
本実施形態では、これには限られず、主に画像処理機能にアクセスするためのグラフィックドライバ219に備わるGPU13の状態監視機能が利用されてもよい。
図15に例示されるように、グラフィックドライバ219は、GPU13の状態を示すプロセッサ状態情報を所定時間ごとに電力制御部217に出力する。電力制御部217は、グラフィックドライバ219から取得されるプロセッサ状態情報を駆動制御部403にBIOS321を経由して出力する。よって、駆動制御部403は、ハードウェア上の設計変更を伴わずにGPU13の状態を示すプロセッサ状態情報を取得することができる。その場合には、サービスアプリケーション211が、GPU13の状態を取得し、電力制御部217に提供することを要しない。電力制御部217は、グラフィックドライバ219から取得したプロセッサ状態情報を用いてGPU13の消費電力を制御してもよい。
【0069】
次に、本実施形態の効果を検証するために実行したベンチマークテストについて説明する。ベンチマークテストは、画像処理性能試験を専用のベンチマークソフトウェアを実行して得られたスコアを試験結果として比較した。ベンチマークソフトとして3D Mark Fire Strike、3D Mark Time Spyを用いた試験を、それぞれテスト1、テスト2と呼ぶ。試験結果の比較のため、比較例として温度に基づくファン出力の駆動制御のもとでテスト1、テスト2を実行した。電力制御モードとして、超高性能モード(U)と高性能モード(P)を用いた。
図16は、ベンチマークテストの試験結果を示す。
図16は、テスト1、2、超高性能モード(U)、高性能モード(P)のそれぞれについて、本実施形態と比較例によるスコアを示す。スコアは、画像処理の性能を定量化した値であり、値が大きいほど高性能であることを示す。個々のスコアには、比較例によるスコアを100%に正規化した性能比を併記した。性能比は、比較例に対する性能改善効果を表す。
図16は、全体として性能比が100%を超えることを示す。また、超高性能モード(U)よりも高性能モード(P)の方が性能比が大きく、テスト2よりもテスト1の方が性能比が大きい傾向が認められる。これらの試験結果から本実施形態によりGPU13の性能を発揮できることが裏付けられる。
【0070】
以上に説明したように、本実施形態に係る情報処理装置1は、中央演算装置(例えば、CPU11)と、画像処理演算装置(例えば、GPU13)と、放熱ファン351を備える冷却部35であって、中央演算装置と画像処理演算装置を冷却する冷却部35と、温度を測定する温度センサ356と、測定された温度に基づいて放熱ファン351の動作を制御する制御部(例えば、駆動制御部403)を備える。中央演算装置、画像処理演算装置、冷却部、および、温度センサ356は、同じ筐体BDの内部に設けられ、温度センサ356は、中央演算装置よりも画像処理演算装置に近接して設けられる。制御部は、画像処理演算装置の動作開始に応じて、画像処理演算装置の温度に関わらず放熱ファン351の動作を開始する。
この構成によれば、画像処理演算装置の動作開始に応じて放熱ファン351の動作が開始する。画像処理演算装置の動作による温度上昇を待たずに放熱が開始する。熱保護機構の動作を予防、または、動作の開始を遅延することができるため、画像処理演算装置の性能を発揮することができる。
【0071】
また、制御部は、画像処理演算装置の消費電力が所定の基準値(例えば、動作判定閾値)よりも増加するとき、画像処理演算装置の動作開始を判定してもよい。
この構成によれば、動作判定閾値を画像処理演算装置の機能の維持に最低限必要とする消費電力に基づいて設定しておくことで、実質的に実行される演算処理の有無により、放熱の要否を的確に判定することができる。
【0072】
また、制御部は、画像処理演算装置の消費電力に基づいて、温度と放熱ファンの動作状態との関連が異なる複数の出力制御テーブルからいずれかを選択し、選択した出力制御テーブルを用いて、測定された温度に基づいて放熱ファン351の動作状態を定めてもよい。
この構成によれば、出力制御テーブルの変更により、放熱ファン351の制御に用いる温度の閾値を変更することができる。そのため、制御方式の変更を伴わずに、放熱ファン351の動作状態を定めることができる。
【0073】
また、情報処理装置1は、定格電力が異なる複数の電力制御モードからいずれかを選択し、選択された電力制御モードに従って画像処理演算装置を動作させる電力制御部217を備えてもよい。制御部は、定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、画像処理演算装置の動作開始に応じて放熱ファンの駆動を開始してもよい。
この構成によれば、定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、画像処理演算装置の動作開始に応じて放熱ファンの駆動が開始される。定格電力が多い場合に画像処理演算装置の動作開始に応じて放熱ファンの駆動を開始させることで、温度上昇を抑制して、熱保護機構の動作を予防、または、動作の開始を遅延することができる。
【0074】
また、電力制御部は、画像処理演算装置の消費電力に基づいて当該画像処理演算装置の電力制御モードを定めてもよい。
この構成によれば、画像処理演算装置の消費電力に基づいて定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、画像処理演算装置の動作開始に応じて放熱ファンの駆動が開始される。そのため、消費電力が多い場合に、温度上昇を抑制して、熱保護機構の動作を予防、または、動作の開始を遅延することができる。
【0075】
また、情報処理装置1は、システムデバイスを備え、システムデバイスは、基本入出力システムファームウェア(例えば、BIOS321)を用いて取得した画像処理演算装置の消費電力を制御部に通知してもよい。
この構成によれば、画像処理演算装置から取得された消費電力がシステムデバイスとは別個のデバイスである制御部に通知される。そのため、制御部による放熱ファン351の制御においてシステムデバイスによる動作環境の影響を低減することができる。
【0076】
また、情報処理装置1は、システムデバイスを備え、グラフィックドライバ(例えば、グラフィックドライバ219)に従って画像処理演算装置の消費電力を監視し、監視された消費電力を制御部に通知する。
この構成によれば、画像処理演算装置の制御に用いられるグラフィックドライバの機能を利用して、画像処理演算装置の消費電力が通知される。そのため、ハードウェア上の設計変更を伴わずに、画像処理演算装置の消費電力に基づく放熱ファン351の制御を実現することができる。
【0077】
なお、上記の処理に係るパラメータは、上記のものに限られず、プロセッサの処理能力、個数、筐体の大きさなどの種々な要件に応じて変更されてもよい。例えば、電力制御モードの段階数、第1基準電力、第2基準電力、第1継続時間、第2継続時間、PL1、PL2、ファン出力の段階数、各段階におけるファン出力、動作判定閾値、熱保護判定温度、設定温度、などが異なっていてもよい。
【0078】
また、CPU11、GPU13の状態を判定する際、電力制御部217は、CPU11、GPU13の消費電力としてその瞬時値に代えて、その時点までの移動平均値、中央値、などの変化傾向を表す代表値を用いてもよい。移動平均値は、例えば、指数重み付き移動平均でもよいし、所定対象として注目する時刻までの所定の期間(例えば、1~20[s])内における単純移動平均値でもよい。
【0079】
また、上記の説明では、情報処理装置1がCPU、GPUを各1個備える場合を主に例にしたが、これらには限られない。CPUの個数が2個以上となってもよいし、GPUの個数が2個以上となってもよいし、その他の種別のプロセッサ、例えば、1個以上のGPU(Graphics Processing Unit)を備えてもよい。電力制御部217は、それぞれのプロセッサの状態に応じて、その電力制御モードや消費電力を制御できればよい。駆動制御部403は、それぞれのプロセッサの状態に応じて、放熱ファン351の動作を制御できればよい。
【0080】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。上述の実施形態において説明した各構成は、任意に組み合わせることができる。
【符号の説明】
【0081】
1…情報処理装置、11…CPU、12…メインメモリ、13…GPU、14…ディスプレイ、21…チップセット、22…BIOSメモリ、23…補助記憶装置、24…オーディオシステム、25…WLANカード、26…USBコネクタ、31…EC、32…入力部、33…電源回路、34…バッテリ、35…冷却部、36…電源ボタン、119、219…グラフィックドライバ、211…サービスアプリケーション、213…PMドライバ、217…電力制御部、321…BIOS、351…放熱ファン、352、353…ヒートパイプ、355、356…温度センサ、403…駆動制御部、BD…筐体、MB…マザーボード
【手続補正書】
【提出日】2023-08-07
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
中央演算装置と、
画像処理演算装置と、
放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、
温度を測定する温度センサと、
前記温度に基づいて前記放熱ファンの動作を制御する制御部と、
定格電力が異なる複数の電力制御モードからいずれかを選択し、
選択された電力制御モードに従って前記画像処理演算装置を動作させる電力制御部と、
を備え、
前記中央演算装置、前記画像処理演算装置、前記冷却部、および、前記温度センサは、同じ筐体の内部に設けられ、
前記温度センサは、前記中央演算装置よりも前記画像処理演算装置に近接して設けられ、
前記制御部は、
前記画像処理演算装置の消費電力が所定の基準値よりも増加するとき、前記画像処理演算装置の動作開始を判定し、
前記画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始し、
定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、
前記画像処理演算装置の動作開始に応じて前記放熱ファンの駆動を開始する
情報処理装置。
【請求項2】
前記制御部は、
前記消費電力に基づいて、温度と放熱ファンの動作状態との関連が異なる複数の出力制御テーブルからいずれかを選択し、
選択した出力制御テーブルを用いて、前記温度に基づいて前記放熱ファンの動作状態を定める
請求項1に記載の情報処理装置。
【請求項3】
前記電力制御部は、前記画像処理演算装置の消費電力に基づいて当該画像処理演算装置の電力制御モードを定める
請求項1に記載の情報処理装置。
【請求項4】
システムデバイスを備え、
前記システムデバイスは、基本入出力システムファームウェアを用いて取得した前記画像処理演算装置の消費電力を前記制御部に通知する
請求項2に記載の情報処理装置。
【請求項5】
システムデバイスを備え、
前記システムデバイスは、グラフィックドライバに従って前記画像処理演算装置の消費電力を監視し、
当該消費電力を前記制御部に通知する
請求項2に記載の情報処理装置。
【請求項6】
中央演算装置と、
画像処理演算装置と、
放熱ファンを備える冷却部であって、前記中央演算装置と前記画像処理演算装置を冷却する冷却部と、
温度を測定する温度センサと、を備え、
前記中央演算装置、前記画像処理演算装置、前記冷却部、および、前記温度センサは、同じ筐体の内部に設けられ、
前記温度センサは、前記中央演算装置よりも前記画像処理演算装置に近接して設けられる情報処理装置における制御方法であって、
前記情報処理装置が、
前記温度に基づいて前記放熱ファンの動作を制御する制御ステップと、
定格電力が異なる複数の電力制御モードからいずれかを選択し、
選択された電力制御モードに従って前記画像処理演算装置を動作させる電力制御ステップと、を実行し、
前記制御ステップは、
前記画像処理演算装置の消費電力が所定の基準値よりも増加するとき、前記画像処理演算装置の動作開始を判定するステップと、
前記画像処理演算装置の動作開始に応じて、前記画像処理演算装置の温度に関わらず前記放熱ファンの駆動を開始するステップと、
定格電力が所定の定格電力よりも多い電力制御モードが選択されるとき、
前記画像処理演算装置の動作開始に応じて前記放熱ファンの駆動を開始するステップと、を含む
制御方法。