JP6175980B2 - Cpuの制御方法、制御プログラム、情報処理装置 - Google Patents

Cpuの制御方法、制御プログラム、情報処理装置 Download PDF

Info

Publication number
JP6175980B2
JP6175980B2 JP2013173226A JP2013173226A JP6175980B2 JP 6175980 B2 JP6175980 B2 JP 6175980B2 JP 2013173226 A JP2013173226 A JP 2013173226A JP 2013173226 A JP2013173226 A JP 2013173226A JP 6175980 B2 JP6175980 B2 JP 6175980B2
Authority
JP
Japan
Prior art keywords
cpu
frequency
power saving
saving state
power consumption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013173226A
Other languages
English (en)
Other versions
JP2015041330A (ja
Inventor
正明 野呂
正明 野呂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013173226A priority Critical patent/JP6175980B2/ja
Priority to US14/317,231 priority patent/US9915996B2/en
Publication of JP2015041330A publication Critical patent/JP2015041330A/ja
Application granted granted Critical
Publication of JP6175980B2 publication Critical patent/JP6175980B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Description

開示の技術は、CPUの制御方法、制御プログラム、情報処理装置に関する。
例えばスマートフォンなどの情報処理装置に於いて、CPUが実行すべき処理が途切れた場合、CPUを活性状態から消電力状態に遷移させて、CPUの消費電力を削減する技術が開発されている。
特表2009−532999号公報
ところが、省電力状態のCPUを活性状態に復帰させるときには、CPUに大量の電流が流入する為、CPUの消費電力が大幅に増加する。このため、省電力状態の設定期間が短いと、活性状態から省電力状態への遷移及び省電力状態から活性状態への復帰のサイクル全体では、CPUの消費電力が反って増加することもある。従って、従来技術では、省電力状態の設定時間をどのくらい確保できるかに基づき、CPUを活性状態から省電力状態に遷移させるかどうかを判断している。複数の省電力状態が存在する場合、省電力状態毎の設定時間をどのくらい確保できるかに基づき、どの省電力状態に遷移すべきかを判断している。しかし、従来技術では、CPUの消費電力を十分に削減することが出来ていない。
開示の技術によれば、CPUの消費電力を十分に削減することができるCPUの制御方法、制御プログラム、情報処理装置を提供する。
開示の技術の一観点によれば、CPUの制御方法に於いて、前記CPUが活性状態において第1処理を実行し、前記第1処理の次に前記CPUによって実行される第2処理に対して設定された終了期限を特定し、前記第1処理と前記第2処理の間に前記CPUがとり得る複数の省電力状態の中の何れかの省電力状態を選択し、選択された前記省電力状態に前記CPUが制御された場合に前記CPUの消費電力を削減することができる最短時間を取得し、前記第1処理が終了してから前記第2処理の前記終了期限までの第1時間から、前記最短時間を差し引いた第2時間内に前記第2処理を終了させることができる前記CPUの最低周波数を特定し、前記第1処理と前記第2処理の間に前記CPUが選択された前記省電力状態に制御された場合の第1消費電力量と、選択された前記最低周波数で前記CPUが前記第2処理を実行するのに要する第2消費電力量との合計値が最小となるように、前記周波数範囲に含まれる第1周波数と、前記複数の省電力状態のうちの第1省電力状態の組み合わせを特定する、CPUの制御方法、が提供される。
本開示の技術の一観点によれば、CPUの消費電力を十分に削減することができる。
第1の実施形態にかかる情報処理装置のハードウェア構成の概略図である。 第1の実施形態にかかる情報処理装置の機能ブロックの概略図である。 第1の実施形態にかかる最小QoS時間テーブルの概略図である。 第1の実施形態にかかる遷移処理の模式図である。 第1の実施形態にかかる遷移処理のフローチャートである。 第2の実施形態にかかる情報処理装置の機能ブロックの概略図である。 第2の実施形態にかかる周波数別消費電力テーブルの概略図である。 第2の実施形態にかかる省電力状態別消費電力テーブルの概略図である。 第2の実施形態にかかる遷移処理のフローチャートである。 第3の実施形態にかかる情報処理装置の機能ブロックの概略図である。 第3の実施形態にかかる周波数動的判定部の詳細機能の概略図である。 第3の実施形態にかかる遷移処理のフローチャートである。 第3の実施形態にかかる周波数の設定の詳細フローチャートである。 第4の実施形態にかかる情報処理装置の機能ブロックの概略図である。 第4の実施形態にかかる遷移処理のフローチャートである。 第5の実施形態にかかる情報処理装置の機能ブロック及び追加ハードウェア構成の概略図である。 第5の実施形態にかかる周波数の設定のフローチャートである。
以下の実施形態では、省電力状態から活性状態への復帰後にCPUが実行すべき次回処理が存在し、次回処理の終了後、再度CPUが省電力状態に遷移することを想定する。このような場合、CPUの消費電力を削減する為には、省電力状態への遷移から活性状態への復帰までの消費電力量と、次回処理の消費電力量と、の総和を削減する必要がある。ところが、省電力状態への遷移から活性状態への復帰までの消費電力量は、遷移先の省電力状態毎に異なる。又、次回処理の消費電力量は、CPUが使用する周波数毎に異なる。
そこで、本実施形態では、CPUの消費電力量の総量が削減するように、遷移先の省電力状態及び使用する周波数の組み合わせを選択する。但し、遷移先の省電力状態及び使用する周波数の組み合わせを、無制限に決めることはできない。例えば、次回処理に終了期限が設定されている場合、使用する周波数を単純に低くすると、次回処理の終了期限を守れないこともある。又、消費電力が最小となる省電力状態に遷移すると、省電力状態への遷移及び活性状態への復帰に時間がかかり過ぎる為、次回処理の開始時刻が遅れ、次回処理の終了期限を守れないこともある。本実施形態は、このような制約を守りつつ、最適な省電力状態及び周波数を選択する。
[第1の実施形態]
以下、図1〜図5を参照して、第1の実施形態を説明する。
本実施形態では、CPU101のとり得る省電力状態への遷移からCPU101の活性状態への復帰迄の消費電力量と、活性状態への復帰後にCPU101が実行する処理の処理量と、活性状態への復帰後にCPU101が使用可能な周波数と、に基づき、CPU101の遷移先の省電力状態及び処理に用いる周波数を決定する。このため、CPU101の消費電力を削減できる最適な省電力状態及び周波数を採用することができる。
[情報処理装置100のハードウェア]
図1は、第1の実施形態にかかる情報処理装置100のハードウェア構成の概略図である。本実施形態では、情報処理装置100として、例えばスマートフォンやタブレットPCなどの携帯型の情報処理装置を想定する。
図1に示すように、情報処理装置100は、CPU(Central Processing Unit)101、メインメモリ102、補助メモリ103、GPU104、ディスプレイ105、通信モジュール106、をハードウェアモジュールとして備える。これらのハードウェアモジュールは、バス107により相互接続されている。
CPU101は、バス107を介して、補助メモリ103に格納された各種プログラムをメインメモリ102に読み出すとともに、該メインメモリ102に読み出した各種プログラムを実行することで、各種機能を実現する。各種機能の詳細は、後述することとする。
メインメモリ102は、CPU101により実行される各種プログラムを格納する。さらに、メインメモリ102は、CPU101のワークエリアとして使用され、CPU101による処理に必要な各種データを記憶する。メインメモリ102としては、例えばRAM(Random Access Memory)などを用いても良い。
補助メモリ103は、情報処理装置100を動作させる各種プログラムを格納している。各種プログラムとしては、例えば、情報処理装置100により実行されるアプリケーションプログラムのほか、アプリケーションプログラムの実行環境であるOS(Operating System)などがある。本実施形態にかかる制御プログラムも補助メモリ103に格納されている。補助メモリ103としては、例えば、ハードディスクやフラッシュメモリ等の不揮発メモリを用いても良い。
GPU104は、CPU101により制御され、ディスプレイ105に表示される描画データを生成する。さらに、GPU104は、バス107の制御権を取得して、生成された描画データをVRAM(Video Random Access Memory)に記憶する。GPU104は、描画データの生成後、CPU101に割り込み信号を送信する。
ディスプレイ105は、VRAMに記憶されている描画データを表示する。通信モジュール106は、CPU101により制御され、例えばメールやツイッターなどの送受信の他、各種通信を実行する。
[情報処理装置100の機能ブロック]
図2は、第1の実施形態にかかる情報処理装置100の機能ブロックの概略図である。
図2に示すように、情報処理装置100は、GPU制御部201、種別判定部202、状態判定部203、制約計算部204、周波数条件判定部205、周波数設定通知部206、周波数設定部207、CPU状態制御部208、を備える。さらに、第1の実施形態にかかるメインメモリ102もしくは補助メモリ103は、最小QoS時間テーブルT1を記憶している。
GPU制御部201、種別判定部202、状態判定部203、制約計算部204、周波数条件判定部205、周波数設定通知部206、周波数設定部207、CPU状態制御部208は、何れもCPU101がメインメモリ102に制御プログラムを読み込むとともに、該メインメモリ102に読み込んだ制御プログラムを実行することで実現される。
GPU制御部201は、CPU101からの指示に基づき、例えば描画処理などの処理の実行を、GPU104に指示する。さらに、GPU制御部201は、種別判定部202にQoS要求を通知する。QoS要求は、少なくとも、GPU104に実行させる処理の種別と、種別毎のQoS時間tと、を含む。さらに、GPU制御部201は、GPU104からの割り込み信号を受け付ける。
種別判定部202は、GPU制御部201からの処理の種別に基づき、CPU101の次回処理に終了期限が設定されているかどうかを判断する。
状態判定部203は、GPU制御部201からのQoS時間tに基づき、CPU101の遷移先の省電力状態Sを決定する。省電力状態Sとしては、例えば、活性待機状態、スリープ状態などを使用しても良い。
制約計算部204は、CPU101の周波数f毎にCPU処理時間T を計算する。CPU処理時間T は、CPU101に周波数fを設定したときの、次回処理の所要時間である。さらに、制約計算部204は、画面更新の予定時刻と、描画処理の所要時間と、に基づき、CPU終了期限tdeadlineを計算する。CPU終了期限tdeadlineは、GPU104の描画処理を画面更新の予定時刻までに終了させる為に、CPU101の次回処理を終了させなければならない最終期限である。
周波数条件判定部205は、省電力状態S毎に最小QoS時間t minを最小QoS時間テーブルT1から取得する。最小QoS時間t minは、CPU101を活性状態から省電力状態Sの何れかに遷移させたときに、CPU101の消費電力を削減することができる最短時間である。さらに、周波数条件判定部205は、省電力状態S毎に最低周波数fminを選択する。最低周波数fminは、制限時間T以内にCPU101の次回処理を終了させることができる周波数の最低値である。制限時間Tは、現在時刻からCPU終了期限tdeadlineまでの時間である。さらに、周波数条件判定部205は、省電力状態S及び最低周波数fminの組み合わせのうち、CPU101のトータルの消費電力が最小となる組み合わせを選択する。
周波数設定通知部206は、周波数条件判定部205からの最低周波数fminを、CPU101の復帰周波数として、周波数設定部207に設定する。復帰周波数は、省電力状態から活性状態への復帰後すぐにCPU101が使用する周波数である。さらに、周波数設定通知部206は、周波数設定部207への最低周波数fminの設定をトリガとして、CPU状態制御部208に周波数設定の完了を通知する。
周波数設定部207は、CPU101の周波数を記憶する。CPU101は、周波数設定部207に記憶された周波数を使用して、各種処理を実行することとなる。
CPU状態制御部208は、CPU101を、状態判定部203により決定された活性状態もしくは省電力状態Sの何れかに設定する。
[最小QoS時間テーブルT1]
図3は、第1の実施形態にかかる最小QoS時間テーブルT1の概略図である。
図3に示すように、最小QoS時間テーブルT1は、CPU101の省電力状態の種別(レベル)毎に最小QoS時間を記憶する。最小QoS時間は、CPU101を活性状態から省電力状態(活性待機状態もしくはスリープ状態)の何れかに遷移させ、さらに活性状態に復帰させたときに、CPU101の消費電力を削減することができる最小時間である。本実施形態にかかる最小QoS時間テーブルT1では、活性待機状態Sには、最小QoS時間として、t min(s1)が紐付けられ、スリープ状態Sには、最小QoS時間として、t min(s2)が紐付けられている。
即ち、CPU101を活性状態から活性待機状態に遷移させ、さらに活性状態に復帰させる場合、活性待機状態の設定期間がt min(s1)を上回っていれば、CPU101の消費電力を削減することができる。同様に、CPU101を活性状態からスリープ状態に遷移させ、さらに活性状態に復帰させる場合、スリープ状態の設定期間がt min(s2)を上回っていれば、CPU101の消費電力を削減することができる。
[遷移処理の概略]
図4は、第1の実施形態にかかる遷移処理の模式図である。
本実施形態では、情報処理装置100の画面更新を例示して、省電力状態への遷移処理を説明する。
図4に示すように、情報処理装置100の画面更新に於いて、GPU104は、CPU101からの描画指示に基づき、描画指示に紐付けられたQoS時間tをCPU101に通知する。さらに、GPU104は、CPU101からの描画指示に基づき、描画処理、即ち情報処理装置100に表示させる描画データの生成を開始する。描画処理の終了後、GPU104は、描画データをVRAMに書き込み、CPU101に割り込み信号を送信する。割り込み信号は、GPU104の描画処理の完了通知である。
一方、CPU101は、GPU104への描画指示後、省電力状態に遷移する。省電力状態は、例えば活性待機状態もしくはスリープ状態である。省電力状態のCPU101は、GPU104からの割り込み信号に基づき、活性状態に復帰して、GPU104の前回の描画処理の後処理と、これに後続する次回の描画処理の前処理を実行する。このとき、CPU101は、QoSを確保する為、割り込み信号の受信後、QoS時間tの経過前に、前回の描画処理の後処理を開始することとなる。このため、CPU101は、前回の描画処理の後処理及び次回の描画処理の前処理を、CPU終了期限tdeadlineまでに終了することができる。CPU終了期限tdeadlineは、後続するGPU104の描画処理を、次回の画面更新までに終了させる為に、CPU101の後処理及び前処理を終了させなければならない最終期限である。よって、GPU104は、次回の画面更新までに描画処理を終了させることができる。
なお、後処理は、例えばGPU104により生成された描画データのディスプレイ105への転送や、GPU104への省電力状態への遷移指示の生成である。前処理は、例えばGPU104への描画指示の生成である。
ディスプレイ105は、VRAMに書き込まれた描画データに基づき、例えば1/60[sec]毎に画面更新を実行する。
[遷移処理フロー]
図5は、第1の実施形態にかかる遷移処理のフローチャートである。
図5に示すように、種別判定部202は、GPU制御部201からの処理の種別に基づき、CPU101の次回処理に終了期限が設定されているかどうかを判断する(ステップS001)。次回処理は、前処理と後処理を含む。後処理は、例えばGPU104により生成された描画データのディスプレイ105への転送や、GPU104への省電力状態への遷移指示の生成である。前処理は、例えばGPU104への描画指示の生成である。
ここで、終了期限が設定されていると判断されない場合(ステップS001のNo)、状態判定部203は、GPU制御部201からのQoS時間tに基づき、CPU101の遷移先の省電力状態Sを決定する(ステップS010)。
次に、CPU状態制御部208は、CPU101を、状態判定部203により決定された省電力状態Sに設定する(ステップS009)。
一方、終了期限が設定されていると判断された場合(ステップS001のYes)、制約計算部204は、CPU101の周波数f毎にCPU処理時間t を計算する(ステップS002)。ここでは、CPU101に設定可能な、CPU101の現在の周波数よりも高い周波数fを使用する。CPU処理時間T は、CPU101の次回処理の所要時間である。具体的には、制約計算部204は、CPU101の次回処理の処理量Lを周波数fで除算して、CPU処理時間T とする。
次に、制約計算部204は、画面更新の予定時刻及び描画処理の所要時間に基づき、CPU101の次回処理の終了期限、即ちCPU終了期限tdeadlineを計算する(ステップS003)。CPU終了期限tdeadlineは、GPU104の描画処理を、画面更新の予定時刻までに終了させる為に、CPU101の次回処理を終了させなければならない最終期限である。
次に、周波数条件判定部205は、最小QoS時間テーブルT1を参照して、省電力状態S毎に最小QoS時間t minを取得する(ステップS004)。最小QoS時間t minは、CPU101を活性状態から省電力状態Sの何れかに遷移させたときに、CPU101の消費電力を削減することができる最短時間である。
次に、周波数条件判定部205は、省電力状態S毎に最低周波数fminを選択する(ステップS005)。最低周波数fminは、現在時刻からCPU終了期限tdeadlineまでの時間、即ち制限時間T以内にCPU101の次回処理を終了させることができる周波数の最低値である。即ち、周波数条件判定部205は、省電力状態S及び最低周波数fminの組み合わせを作成する。具体的には、周波数条件判定部205は、画面更新の予定時刻及び描画処理の所要時間に基づき、現在時刻からCPU終了期限tdeadlineまでの制限時間Tを計算する。続いて、周波数条件判定部205は、CPU処理時間t 及び最小QoS時間t minの総和が制限時間T以下となる周波数fの最小値を選択する。
次に、周波数条件判定部205は、省電力状態S及び最低周波数fminの組み合わせのうち、CPU101のトータルの消費電力が最小となる組み合わせを選択する(ステップS006)。本実施形態では、CPU101が次回処理を実行するときの周波数f、即ちCPU処理時間t の周波数fが最低となるときに、CPU101のトータルの消費電力が最小になるとみなす。従って、周波数条件判定部205は、省電力状態S及び最低周波数fminの組み合わせのうち、最低周波数fminが最低となる組み合わせを選択する。さらに、周波数条件判定部205は、選択された組み合わせの省電力状態S及び最低周波数fminを、それぞれ周波数設定通知部206及びCPU状態制御部208に通知する。
次に、周波数設定通知部206は、周波数条件判定部205からの最低周波数fminを、CPU101の復帰周波数として、周波数設定部207に設定する(ステップS007)。CPU101は、活性状態への復帰後、周波数設定部207に設定された最低周波数fminを使用することとなる。
次に、周波数設定通知部206は、CPU状態制御部208に周波数の設定完了を通知する(ステップS008)。
次に、CPU状態制御部208は、周波数設定通知部206からの周波数設定の完了通知をトリガとして、CPU101を、周波数条件判定部205により選択された省電力状態Sに設定する(ステップS009)。以上で遷移処理が終了する。
以上のように、本実施形態にかかる周波数条件判定部202は、遷移先の省電力状態S及び活性状態への復帰後に使用する周波数として、CPU101のトータルの消費電力が最小となる、省電力状態S及び最低周波数fminの組み合わせを選択している。このため、CPU101が省電力状態Sに遷移しても、CPU101の消費電力を削減することができる。
しかも、本実施形態にかかる周波数設定部205は、CPU終了期限tdeadlineまでにCPU101の次回処理を終了させることができる周波数の最低値、即ち最低周波数fminをCPU101に設定する。このため、GPU104は、画面更新を予定時刻に確実に実行することができる。
[第2の実施形態]
以下、図6−図9を参照して、第2の実施形態を説明する。但し、第1の実施形態と同等の構成、機能、作用については、説明を省略することとする。
第1の実施形態では、CPU101が次回処理を実行するときの周波数f、即ちCPU処理時間t の周波数fが最低となるときに、CPU101のトータルの消費電力が最小になるとみなし、省電力状態S及び最低周波数fminの組み合わせを選択していた。即ち、CPU101が次回処理を実行するときの消費電力だけに基づき、CPU101のトータルの消費電力が最小となる組み合わせを選択していた。
これに対し、第2の実施形態では、CPU101が次回処理を実行するときの消費電力だけでなく、省電力状態Sの設定期間の消費電力も考慮に入れて、CPU101のトータルの消費電力が最小となる組み合わせを選択する。
[情報処理装置100Aの機能ブロック]
図6は、第2の実施形態にかかる情報処理装置100Aの機能ブロックの概略図である。
図6に示すように、第2の実施形態にかかる情報処理装置100Aは、第1の実施形態にかかる周波数条件判定部205の代わりに周波数条件判定部209を備え、さらに最適周波数判定部210を備える。さらに、第2の実施形態にかかるメインメモリ102もしくは補助メモリ103は、周波数別消費電力テーブルT2及び省電力状態別消費電力テーブルT3を記憶している。
周波数条件判定部209及び最適周波数判定部210は、CPU101がメインメモリ102に制御プログラムを読み込むとともに、該メインメモリ102に読み込んだ制御プログラムを実行することで実現される。
周波数条件判定部209は、省電力状態S及び最低周波数fminの組み合わせすべてを、最適周波数判定部209に通知する。即ち、本実施形態にかかる周波数条件判定部209は、第1の実施形態にかかる周波数条件判定部205とは異なり、CPU101のトータルの消費電力が最小となる組み合わせを選択しない。
最適周波数判定部210は、周波数条件判定部209から通知された、省電力状態S及び最低周波数fminの組み合わせのうち、CPU101のトータルの消費電力が最小となる組み合わせを選択する。但し、本実施形態にかかる最適周波数判定部210は、CPU101が次回処理を実行するときの、即ちCPU処理時間t の消費電力と、省電力状態Sの設定期間t minの消費電力と、の総和が最小となる組み合わせを選択する。さらに、最適周波数判定部210は、消費電力の総和が最小となる組み合わせの省電力状態S及び最低周波数fminを、それぞれCPU状態制御部208及び周波数設定通知部206に通知する。
(周波数別消費電力テーブルT2)
図7は、第2の実施形態にかかる周波数別消費電力テーブルT2の概略図である。
図7に示すように、周波数別消費電力テーブルT2は、CPU101の周波数毎に、CPU101の消費電力を記憶する。本実施形態にかかる周波数別消費電力テーブルT2では、周波数fに消費電力pf1が紐づけられ、周波数f2に、消費電力ff2が紐付けられている。
(省電力状態別消費電力テーブルT3)
図8は、第2の実施形態にかかる省電力状態別消費電力テーブルT3の概略図である。
図8に示すように、省電力状態別消費電力テーブルT3は、省電力状態S毎に、CPU101の消費電力を記憶する。本実施形態にかかる省電力状態別消費電力テーブルT3では、活性待機状態Sに消費電力ps1が紐づけられ、スリープ状態Sに消費電力ps2が紐づけられている。
[遷移処理フロー]
図9は、第2の実施形態にかかる遷移処理のフローチャートである。
図9に示すように、周波数条件判定部209は、省電力状態S毎の最低周波数fminの選択後(ステップS005)、省電力状態S及び最低周波数fminの組み合わせを、最適周波数判定部210に通知する。
次に、最適周波数判定部210は、周波数条件判定部209から通知された、省電力状態S及び最低周波数fminの組み合わせのうち、CPU101のトータルの消費電力が最小となる組み合わせを選択する。但し、本実施形態にかかる最適周波数判定部210は、CPU101が次回処理を実行するときの、即ちCPU処理時間t の消費電力と、省電力状態の設定期間t minの消費電力と、の総和が最小となる組み合わせを選択する。
具体的には、最適周波数判定部210は、周波数別消費電力テーブルT2を参照して、CPU処理時間t の周波数fに紐付けられた消費電力Pを取得する。続いて、最適周波数判定部210は、消費電力PにCPU処理時間t を掛け合わせて、CPU処理時間t 中の消費電力量を算出する。さらに、周波数条件判定部205は、省電力状態別消費電力テーブルT3を参照して、省電力状態Sに紐付けられた消費電力Pを取得する。続いて、最適周波数判定部210は、消費電力Pに省電力状態Sの設定期間t minを掛け合わせて、省電力状態Sの設定期間t minの消費電力量を算出する。続いて、最適周波数判定部210は、CPU処理時間t の消費電力量と、省電力状態Sの設定期間t minの消費電力量と、の総和が最小となる組み合わせを選択する。
以上のように、本実施形態によれば、CPU101が次回処理を実行するときの、即ちCPU処理時間t の消費電力量と、省電力状態Sの設定期間t minの消費電力量と、の総和が最小となる組み合わせを選択する。このため、CPU101のトータルの消費電力が最小となる省電力状態S及び周波数最低周波数fminの組み合わせを、より正確に選択することができる。よって、CPU101の消費電力の削減を、より確実に実現することができる。
[第3の実施形態]
以下、図10−図13を参照して、第3の実施形態を説明する。但し、第1、第2の実施形態と同等の構成、機能、作用については、説明を省略することとする。
第3の実施形態では、CPU101の利用状況に基づき、CPU101の周波数を動的に変化させる、所謂LINUX(登録商標)系のCPUfreqと、指定イベントの発生をトリガとして、CPU101の周波数の下限値を所定時間だけ、CPUfreqのパラメータである、CPU101の周波数の下限値から、別パラメータである、CPU101の周波数の下限値に切り替える、所謂boostと、を搭載した情報処理装置100Bを想定する。以下、別パラメータをboostのパラメータとする。
CPUfreqは、第1、第2の実施形態にかかる復帰周波数の設定処理とは無関係に動作する。このため、活性状態への復帰後にCPUfreqが動作してしまい、CPU101の復帰周波数を下げることがある。CPU101の復帰周波数が下げられると、最小QoS時間t minが延長する為、CPU101の次回処理を制限時間T以内に終了できなくなる恐れがある。
従って、本実施形態では、boostの指定イベントをCPU101の活性状態への復帰とする。さらに、boostのパラメータである、CPU101の周波数の下限値を復帰周波数以上とし、boostの作動期間を最小QoS時間t min以上とする。
これにより、CPU101の活性状態への復帰後、少なくとも最小QoS時間t minは、boostが動作する為、CPU101の周波数が復帰周波数以下に下げられることがない。
なお、本実施形態では、LINUX系のCPUfreqを例示しているが、CPU101の周波数を動的に変化させるものであれば、LINUX系のCPUfreqに限定されるものではない。
[情報処理装置100Bの機能ブロック]
図10は、第3の実施形態にかかる情報処理装置100Bの機能ブロックの概略図である。
図10に示すように、第3の実施形態にかかる情報処理装置100Bは、第1の実施形態にかかる周波数設定通知部206の代わりに周波数設定通知部211を備え、さらにパラメータ格納部212及び周波数動的判定部213を備える。
周波数設定通知部211、パラメータ格納部212、周波数動的判定部213は、何れもCPU101がメインメモリ102に制御プログラムを読み込むとともに、該メインメモリ102に読み込んだ制御プログラムを実行することで実現される。
周波数設定通知部211は、パラメータ格納部212に格納された、boostのパラメータとしての、CPU101の周波数の下限値を、活性状態への復帰後にCPU101が使用する復帰周波数(最低周波数fmin)以上に書き換える。なお、パラメータ格納部212に複数のboostのパラメータが格納されている場合、周波数設定通知部211は、これらのパラメータからCPU101の復帰周波数以上のパラメータを選択しても良い。
パラメータ格納部212は、boostのパラメータとしての、CPU101の周波数の下限値を格納する。
周波数動的判定部213は、CPU101の利用状況に基づき、周波数設定部207に設定する周波数、即ちCPU101が使用する周波数を動的に変化させる。通常、周波数動的判定部213は、事前に設定されている、CPUfreqのパラメータとしての、CPU101の周波数の下限値を使用する。但し、周波数動的判定部213は、指定イベントの発生をトリガとして、所定時間だけ、パラメータ格納部212に格納された、boostのパラメータとしての、CPU101の周波数の下限値を使用する。
[周波数動的判定部213の詳細機能]
図11は、第3の実施形態にかかる周波数動的判定部213の詳細機能の概略図である。但し、図11は、周波数動的判定部213の他に、周波数設定通知部211、パラメータ格納部212、周波数設定部207も示している。
図11に示すように、周波数動的判定部213は、CPU利用率計算部2131、周波数計算部2132、周波数判定部2133を含む。
CPU利用率計算部2131は、CPU101の利用状況(統計情報など)に基づき、CPU利用率(CPU負荷)を算出する。CPU利用率は、単位時間に占めるCPU101の実行時間の割合である。
周波数計算部2132は、直近のCPU利用率、CPU101の現在の周波数、利用率しきい値、に基づき、CPU101が使用する周波数の候補値を計算する。具体的には、周波数計算部2132は、直近のCPU利用率が利用率しきい値を超えているかどうかを判断する。直近のCPU利用率が利用率しきい値を超えていると判断された場合、周波数計算部2132は、CPU101が使用可能な周波数のうち、CPU101の現在の周波数よりも高い周波数を、CPU101が使用する周波数の候補値として選択する。
周波数判定部2133は、CPU101が使用する周波数の候補値と、boostのパラメータとしての、CPU101の周波数の最低値、のうち、より大きい方を周波数設定部207に設定する。
[遷移処理フロー]
図12は、第3の実施形態にかかる遷移処理のフローチャートである。
図12に示すように、CPU101のトータルの消費電力が最小となる、省電力状態S及び最低周波数fminの組み合わせの選択後(ステップS006)、周波数設定の完了の通知前に(ステップS008)、周波数設定通知部211は、パラメータ格納部212に格納されている、boostのパラメータとしての、CPU101の周波数の下限値を、最低周波数fmin以上に書き換える(ステップS021)。
次に、周波数動的判定部213は、CPU101の利用状況に基づき、直近のCPU利用率を計算して、該CPU利用率、CPU101の現在の周波数、利用率しきい値に基づき、CPU101が使用する周波数の候補値を計算する(ステップSS022)。
次に、周波数動的判定部213は、周波数の候補値もしくは周波数の下限値を、CPU101に設定する(ステップS023)。即ち、周波数動的判定部213は、CPU101が使用する周波数を、周波数の候補値もしくは周波数の下限値から選択する。具体的には、周波数動的判定部213は、周波数の候補値及び周波数の下限値のうち、大きい方を、周波数設定部207に設定する。周波数の候補値ではなく、周波数の下限値をCPU101に設定する場合、周波数の維持時間をCPU処理時間t 以上としても良い。
[周波数の設定処理の詳細]
図13は、第3の実施形態にかかる周波数の設定の詳細フローチャートである。
図13に示すように、周波数動的判定部213は、タイマが設定されているかどうか判断する(ステップS031)。
ここで、タイマが設定されていると判断されない場合(ステップS031のNo)、周波数動的判定部213は、周波数の候補値を、CPU101が使用する周波数として、周波数設定部207に設定する(ステップS032)。
一方、タイマが設定されていると判断された場合(ステップS031のYes)、周波数動的判定部213は、現在時刻がタイマの有効期限内であるかどうかを判断する(ステップS033)。
ここで、現在時刻がタイマの有効期限内であると判断されない場合(ステップS033のNo)、周波数動的判定部213は、タイマをクリアし(ステップS034)、周波数の候補値を、CPU101が使用する周波数として、周波数設定部207に設定する(ステップS032)。
一方、現在時刻がタイマの有効期限内であると判断された場合(ステップS033のYes)、周波数動的判定部213は、boostのパラメータとしての、周波数の下限値が、周波数の候補値よりも大きいかどうかを判断する(ステップS035)。
ここで、周波数の下限値が、周波数の候補値よりも大きいと判断されない場合(ステップS035のNo)、周波数動的判定部213は、周波数の候補値を、CPU101が使用する周波数として、周波数設定部207に設定する(ステップS032)。
一方、周波数の下限値が、周波数の候補値よりも大きいと判断された場合(ステップ035のYes)、周波数動的判定部213は、周波数の下限値を、CPU101が使用する周波数として、周波数設定部207に出力する(ステップS036)。このため、CPU101は、タイマの有効期限の満了まで、boostのパラメータとしての、周波数の下限値で動作することとなる。
以上のように、本実施形態によれば、省電力状態から活性状態への復帰をboostの指定イベントとし、パラメータ格納部212に格納されている、boostのパラメータとしての、CPU101の周波数の下限値を、周波数設定部207に設定された復帰周波数(最低周波数fmin)以上とする。
このため、CPU101の活性状態への復帰後、CPU101が如何なる利用状況であっても、CPU101の周波数が最低周波数fmin以下となることはない。即ち、活性状態への復帰後のCPU101の周波数を、確実に最低周波数fmin以上とすることができる。よって、CPU101の次回処理を、確実に終了期限迄に終了させることができる。
[第4の実施形態]
以下、図14−図15を参照して、第4の実施形態を説明する。但し、第3の実施形態と同等の構成、機能、作用については、説明を省略することとする。
第3の実施形態では、boostのパラメータである、CPU101の周波数の下限値を、事前に決められた所定時間だけ書き換えることで、CPU101の周波数が復帰周波数以下に下がることを防止している。
これに対し、第4の実施形態は、boostのパラメータでなく、CPUfreqのパラメータである、CPU101の周波数の下限値を書き換える。
なお、CPUfreqのパラメータとしての、CPU101の周波数の下限値は、所定時間後に自動的に書き戻されるものではない。従って、本実施形態では、CPU101の活性状態への復帰から所定時間の経過後に、CPUfreqのパラメータとしての、CPU101の周波数の下限値の書き戻しを行う。
[情報処理装置100Cの機能ブロック]
図14は、第4の実施形態にかかる情報処理装置100Cの機能ブロックの概略図である。
図14に示すように、本実施形態にかかる情報処理装置100Cは、第3の実施形態にかかる周波数設定通知部211、パラメータ格納部212、周波数動的判定部213の代わりに、周波数設定通知部214、パラメータ格納部215、周波数動的判定部216を備える。
周波数設定通知部214、パラメータ格納部215、周波数動的判定部216は、何れもCPU101がメインメモリ102に制御プログラムを読み込むとともに、該メインメモリ102に読み込んだ制御プログラムを実行することで実現される。
周波数設定通知部214は、パラメータ格納部215に格納された、CPUfreqのパラメータである、CPU101の周波数の下限値を、復帰周波数(最低周波数fmin)以上に書き換える。
パラメータ格納部215は、CPUfreqのパラメータである、CPU101の周波数の下限値を記憶する。
周波数動的判定部216は、CPU101の利用状況に基づき、CPU101の周波数を計算する。このとき、周波数動的判定部216は、パラメータ格納部215に格納された、CPUfreqのパラメータである、CPU101の周波数の下限値を使用する。
(遷移処理フロー)
図15は、第4の実施形態にかかる遷移処理のフローチャートである。
図15に示すように、周波数条件判定部205からの最低周波数fminをCPU101に設定後(ステップS007)、周波数の設定完了の通知前に(ステップS008)、周波数設定通知部214は、パラメータ格納部215に格納された、CPUfreqのパラメータとしての、CPU101の周波数の下限値を、復帰周波数(最低周波数fmin)以上に書き換える(ステップS041)。
さらに、CPU101を、周波数条件判定部205により選択された省電力状態Sに設定後、(ステップS009)、周波数設定通知部214は、所定時間の経過後、CPUfreqのパラメータとしての、CPU101の周波数の下限値を、元の値に書き戻す(ステップS042)。
このように、本実施形態では、CPUfreqのパラメータを書き換えているが、所定時間の経過後に、該パラメータの書き戻しを実施する為、通常のCPUfreqに戻すことが出来る。
なお、本実施形態にかかる周波数設定通知部214は、CPUfreqのパラメータを書き換えて、CPUfreqによる復帰周波数の低下を防止しているが、本発明は、これに限定されるものではない。例えば、周波数設定通知部214は、「IO is busy」フラグをONに切替えることで、CPUfreqによる復帰周波数の低下を防止しても良い。なお、「IO is busy」フラグをONにすると、CPUfreqが参照するCPU利用率を、見かけ上、高くすることができる為、CPU101の周波数を低下しにくくすることができる。「IO is busy」フラグは、CPUfreqのパラメータと同様、所定時間の経過後にONからOFFに書き換えれば良い。
[第5の実施形態]
図16、図17を参照して、第5の実施形態を説明する。但し、第1の実施形態と同等の構成、機能、作用については、説明を省略することとする。
第1の実施形態では、最低周波数fminの設定後に、CPU101を省電力状態に遷移させていた。これに対し、第5の実施形態では、GPU104からの割り込み信号をトリガとして、CPU101に最低周波数fminを設定する。即ち、省電力状態Sの設定期間は、CPU101の周波数が省電力状態への遷移前のままとなる。
[情報処理装置100Dの機能ブロック及び追加ハードウェア構成]
図16は、第5の実施形態にかかる情報処理装置100Dの機能ブロック及び追加ハードウェア構成の概略図である。
図16に示すように、第5の実施形態にかかる情報処理装置100Dは、第1の実施形態にかかる情報処理装置100の周波数設定部207の代わりに周波数設定回路108を備え、さらに、周波数設定レジスタ109、クロック発生回路110、電源回路111、を備える。周波数設定回路108、周波数設定レジスタ109、クロック発生回路110、電源回路111は、ハードウェアモジュールであって、バス107により相互接続されている。
周波数設定回路108は、CPU101からの指示に基づき、周波数設定通知部206からの最低周波数fminを、CPU101の復帰周波数として格納する。
周波数設定レジスタ109は、周波数設定回路108に格納された周波数を記憶する。
クロック発生回路110は、周波数設定レジスタ109に記憶された周波数に基づき、クロック信号を生成して、該クロック信号をCPU101に供給する。
電源回路111は、GPU104からの割り込み信号に基づき、クロック発生回路110に電力を供給する。
[周波数の設定]
図17は、第5の実施形態にかかる周波数の設定のフローチャートである。
なお、本実施形態では、復帰周波数が、省電力状態への遷移前のCPU101の周波数よりも高いことを想定する。
図17に示すように、CPU101は、省電力状態Sへの遷移前に、復帰周波数として決定した周波数を周波数設定回路108に格納する(ステップS051)。
次に、CPU101は、活性状態から省電力状態Sに遷移する(ステップS052)。
次に、GPU104は、電源回路111に割り込み信号を送信する(ステップS053)。割り込み信号は、電源回路111及び周波数設定回路108に通知される。
次に、電源回路111は、GPU104からの割り込み信号に基づき、電力供給を開始する(ステップS054)。
次に、周波数設定回路108は、電源回路111からの電力供給に基づき、起動する(ステップS055)。
次に、周波数設定回路108は、自身が格納する周波数(復帰周波数)を周波数設定レジスタ109に書き込む(ステップS056)。
次に、クロック発生回路110は、周波数設定レジスタ109に書き込まれた周波数を読み出して、該周波数に基づき、クロック信号を生成する(ステップS057)。
次に、CPU101は、クロック発生回路110からのクロック信号と、電源回路111からの供給電力と、に基づき、動作を開始する(ステップS058)。即ち、CPU101は、以上のような手順を経て、復帰周波数で動作を開始する。
以上のように、本実施形態によれば、CPU101は、省電力状態への遷移前に、周波数設定回路108に周波数を格納しておき、CPU101が活性状態に復帰するときに、周波数設定回路108に格納した周波数をCPU101に設定する。このため、省電力状態の設定期間は、CPU101の周波数を、省電力状態への遷移前の周波数に維持することができる。
通常、CPU101の周波数を上昇させると、例えばI2C(Inter- Integrated Circuit)やSPI(Serial Peripheral Interface)など、バス107の周波数も上昇する為、バス107の動作に起因する消費電力が上昇することとなる。又、CPU101や周辺回路を1つのチップにSoC(System On Chip)化する場合、CPU101の周波数を上昇させると、チップ全体の消費電力が上昇することとなる。CPU101の周波数をさらに上昇させると、チップへの電源供給の電圧が上昇することもあり、そのような場合、さらにチップ全体の消費電力が上昇することとなる。
しかし、本実施形態では、省電力状態の設定期間は、CPU101の周波数を上昇させない為、バス107の動作に起因する消費電力が上昇することがない。従って、省電力状態の設定期間の消費電力の、情報処理装置のトータルの消費電力を、さらに削減することができる。
なお、第1−第5の実施形態では、GPU104を例示してきたが、本発明は、これに限定されるものではない。CPU101を省電力状態から活性状態に復帰させる割り込み信号を発生するものであれば、例えばタイマなどの如何なるデバイスを用いても良い。GPU104であれば、例えば描画処理が想定されるが、タイマであれば、プロセスのスケジューリングなどを装置することができる。
100:情報処理装置
100A:情報処理装置
100B:情報処理装置
100C:情報処理装置
100D:情報処理装置
101:CPU
102:メインメモリ
103:補助メモリ
104:GPU
105:ディスプレイ
106:通信モジュール
107:バス
108:周波数設定回路
109:周波数設定レジスタ
110:クロック発生回路
111:電源回路
201:GPU制御部
202:種別判定部
203:状態判定部
204:制約計算部
205:周波数条件判定部
206:周波数設定通知部
207:周波数設定部
208:CPU状態制御部
209:周波数条件判定部
210:最適周波数判定部
211:周波数設定通知部
212:パラメータ格納部
213:周波数動的判定部
214:周波数設定通知部
215:パラメータ格納部
216:周波数動的判定部
2131:CPU利用率計算部
2132:周波数計算部
2133:周波数判定部
T1:最小QoS時間テーブル
T2:周波数別消費電力テーブル
T3:省電力状態別消費電力テーブル

Claims (6)

  1. CPUの制御方法に於いて、
    前記CPUが活性状態において第1処理を実行し、
    前記第1処理の次に前記CPUによって実行される第2処理に対して設定された終了期限を特定し、
    前記第1処理と前記第2処理の間に前記CPUがとり得る複数の省電力状態の中の何れかの省電力状態を選択し、
    選択された前記省電力状態に前記CPUが制御された場合に前記CPUの消費電力を削減することができる最短時間を取得し、
    前記第1処理が終了してから前記第2処理の前記終了期限までの第1時間から、前記最短時間を差し引いた第2時間内に前記第2処理を終了させることができる前記CPUの最低周波数を特定し、
    前記第1処理と前記第2処理の間に前記CPUが選択された前記省電力状態に制御された場合の第1消費電力量と、選択された前記最低周波数で前記CPUが前記第2処理を実行するのに要する第2消費電力量との合計値が最小となるように、前記周波数範囲に含まれる第1周波数と、前記複数の省電力状態のうちの第1省電力状態の組み合わせを特定する、CPUの制御方法。
  2. 請求項1に記載のCPUの制御方法に於いて、
    前記第1省電力状態及び前記第1周波数を、前記第1省電力状態への遷移前に決定する、CPUの制御方法。
  3. 請求項1又は2に記載のCPUの制御方法に於いて、
    前記第1周波数を、前記第1省電力状態への遷移前に前記CPUに設定する、CPUの制御方法。
  4. 請求項1乃至3の何れかに記載のCPUの制御方法に於いて、
    前記第1周波数が、前記第1周波数の決定時に前記CPUの下限値として設定されている周波数よりも高い場合、前記CPUの周波数の前記下限値を、前記第1周波数以上とする、CPUの制御方法。
  5. CPUの制御プログラムに於いて、
    前記制御プログラムは、前記CPUに、
    活性状態において第1処理を実行する処理と、
    前記第1処理の次に前記CPUによって実行される第2処理に対して設定された終了期限を特定する処理と、
    前記第1処理と前記第2処理の間に前記CPUがとり得る複数の省電力状態の中の何れかの省電力状態を選択する処理と、
    選択された前記省電力状態に前記CPUが制御された場合に前記CPUの消費電力を削減することができる最短時間を取得する処理と、
    前記第1処理が終了してから前記第2処理の前記終了期限までの第1時間から、前記最短時間を差し引いた第2時間内に前記第2処理を終了させることができる前記CPUの最低周波数を特定する処理と、
    前記第1処理と前記第2処理の間に前記CPUが選択された前記省電力状態に制御された場合の第1消費電力量と、選択された前記最低周波数で前記CPUが前記第2処理を実行するのに要する第2消費電力量との合計値が最小となるように、前記周波数範囲に含まれる第1周波数と、前記複数の省電力状態のうちの第1省電力状態の組み合わせを特定する処理と、
    を実行させる、CPUの制御プログラム。
  6. 情報処理装置に於いて、
    CPUが活性状態において第1処理を実行する処理と、
    前記第1処理の次に前記CPUによって実行される第2処理に対して設定された終了期限を特定する処理と、
    前記第1処理と前記第2処理の間に前記CPUがとり得る複数の省電力状態の中の何れかの省電力状態を選択する処理と、
    選択された前記省電力状態に前記CPUが制御された場合に前記CPUの消費電力を削減することができる最短時間を取得する処理と、
    前記第1処理が終了してから前記第2処理の前記終了期限までの第1時間から、前記最短時間を差し引いた第2時間内に前記第2処理を終了させることができる前記CPUの最低周波数を特定する処理と、
    前記第1処理と前記第2処理の間に前記CPUが選択された前記省電力状態に制御された場合の第1消費電力量と、選択された前記最低周波数で前記CPUが前記第2処理を実行するのに要する第2消費電力量との合計値が最小となるように、前記周波数範囲に含まれる第1周波数と、前記複数の省電力状態のうちの第1省電力状態の組み合わせを特定する処理と、
    を制御する制御部、を備える情報処理装置。
JP2013173226A 2013-08-23 2013-08-23 Cpuの制御方法、制御プログラム、情報処理装置 Expired - Fee Related JP6175980B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013173226A JP6175980B2 (ja) 2013-08-23 2013-08-23 Cpuの制御方法、制御プログラム、情報処理装置
US14/317,231 US9915996B2 (en) 2013-08-23 2014-06-27 Method of controlling processor, information processing apparatus, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013173226A JP6175980B2 (ja) 2013-08-23 2013-08-23 Cpuの制御方法、制御プログラム、情報処理装置

Publications (2)

Publication Number Publication Date
JP2015041330A JP2015041330A (ja) 2015-03-02
JP6175980B2 true JP6175980B2 (ja) 2017-08-09

Family

ID=52481488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013173226A Expired - Fee Related JP6175980B2 (ja) 2013-08-23 2013-08-23 Cpuの制御方法、制御プログラム、情報処理装置

Country Status (2)

Country Link
US (1) US9915996B2 (ja)
JP (1) JP6175980B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180078558A (ko) * 2016-12-30 2018-07-10 삼성전자주식회사 시스템 온 칩의 구동 방법, 이를 수행하는 시스템 온 칩 및 이를 포함하는 전자 시스템
US10560116B2 (en) * 2017-12-26 2020-02-11 Seagate Technology Llc Probability-based optimization of system on chip (SOC) power
CN109753137B (zh) * 2018-11-20 2021-11-26 北京航空航天大学 基于nsga2的带截止时间约束的处理器功耗感知调度方法
EP3798798A1 (en) 2019-09-26 2021-03-31 Aptiv Technologies Limited Methods and systems for energy and/or resource management of a human-machine interface

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829493B1 (en) 2000-04-24 2004-12-07 Denso Corporation Adaptive adjustment of sleep duration to increase standby time in wireless mobile stations
US8032891B2 (en) * 2002-05-20 2011-10-04 Texas Instruments Incorporated Energy-aware scheduling of application execution
US7256788B1 (en) * 2002-06-11 2007-08-14 Nvidia Corporation Graphics power savings system and method
US7698575B2 (en) * 2004-03-30 2010-04-13 Intel Corporation Managing power consumption by requesting an adjustment to an operating point of a processor
US20080141265A1 (en) * 2004-12-08 2008-06-12 Electronics And Telecommunications Research Instit Power Management Method for Platform and that Platform
JP2006178854A (ja) * 2004-12-24 2006-07-06 Toshiba Corp 電子回路
US7577763B1 (en) * 2005-02-28 2009-08-18 Apple Inc. Managing read requests from multiple requestors
WO2007056705A2 (en) * 2005-11-03 2007-05-18 Los Alamos National Security Adaptive real-time methodology for optimizing energy-efficient computing
US8041972B2 (en) 2006-04-04 2011-10-18 Qualcomm Incorporated Apparatus and method for setting wakeup times in a communication device based on estimated lock on time of frequency synthesizer
JP4354483B2 (ja) * 2006-12-28 2009-10-28 シャープ株式会社 画像処理装置、画像処理システム、画像処理方法、および画像処理プログラム
US7640412B2 (en) * 2007-01-04 2009-12-29 Hitachi Global Storage Technologies Netherlands, B.V. Techniques for improving the reliability of file systems
JP2008276331A (ja) * 2007-04-25 2008-11-13 Toshiba Corp マルチプロセッサの制御装置及び方法
JP5312478B2 (ja) * 2007-12-28 2013-10-09 フリースケール セミコンダクター インコーポレイテッド データ・プロセッサのパフォーマンス予測
US9459679B2 (en) * 2008-05-13 2016-10-04 Synopsys, Inc. Power manager and method for managing power
US8127166B1 (en) * 2009-02-19 2012-02-28 Symantec Corporation Power management within a data protection system
US8464035B2 (en) * 2009-12-18 2013-06-11 Intel Corporation Instruction for enabling a processor wait state
US8489904B2 (en) * 2010-03-25 2013-07-16 International Business Machines Corporation Allocating computing system power levels responsive to service level agreements
US8612984B2 (en) * 2010-04-28 2013-12-17 International Business Machines Corporation Energy-aware job scheduling for cluster environments
US8510740B2 (en) * 2010-09-16 2013-08-13 Qualcomm Incorporated System and method of performing dynamic voltage and frequency scaling operations on a mobile device
JP2012063988A (ja) 2010-09-16 2012-03-29 Nec Casio Mobile Communications Ltd 携帯端末、携帯端末による省電力制御方法
JP2013012003A (ja) * 2011-06-29 2013-01-17 Renesas Electronics Corp データ処理装置及びデータ処理システム
CN103765409A (zh) * 2011-09-06 2014-04-30 英特尔公司 有功率效率的处理器体系结构
US8713340B2 (en) * 2011-10-12 2014-04-29 Lsi Corporation Method and apparatus for power management control of an embedded memory having sleep and shutdown features
JP5776789B2 (ja) 2011-11-15 2015-09-09 富士通株式会社 電力制御装置、電子計算機及び電力制御方法
CN103218032B (zh) * 2011-11-29 2017-07-14 英特尔公司 利用相对能量损益平衡时间的功率管理
WO2013100901A1 (en) * 2011-12-27 2013-07-04 Intel Corporation Power management using reward-based sleep state selection
US8775838B2 (en) * 2012-02-01 2014-07-08 Texas Instruments Incorporated Limiting the number of unexpected wakeups in a computer system implementing a power-saving preemptive wakeup method from historical data
US9389853B2 (en) * 2012-10-05 2016-07-12 Advanced Micro Devices, Inc. Adaptive control of processor performance
US9195499B2 (en) * 2012-11-27 2015-11-24 International Business Machines Corporation Batch jobs using positional scheduling policies of mobile devices
US9110671B2 (en) * 2012-12-21 2015-08-18 Advanced Micro Devices, Inc. Idle phase exit prediction
US20140181553A1 (en) * 2012-12-21 2014-06-26 Advanced Micro Devices, Inc. Idle Phase Prediction For Integrated Circuits
KR20140088691A (ko) * 2013-01-03 2014-07-11 삼성전자주식회사 Dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법
KR20150009295A (ko) * 2013-07-16 2015-01-26 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 슬리프 상태 제어 방법
US9256274B2 (en) * 2013-08-01 2016-02-09 Texas Instruments Incorporated Dynamic low power states characterization

Also Published As

Publication number Publication date
JP2015041330A (ja) 2015-03-02
US9915996B2 (en) 2018-03-13
US20150058647A1 (en) 2015-02-26

Similar Documents

Publication Publication Date Title
KR101459140B1 (ko) 전원관리 제어 장치 및 방법
US8407505B2 (en) Power consumption control method in multicore CPU
US9489213B2 (en) Shutdown method, startup method, and communication terminal
JP6175980B2 (ja) Cpuの制御方法、制御プログラム、情報処理装置
US9134787B2 (en) Power-gating in a multi-core system without operating system intervention
EP3391212B1 (en) Controlling operation of a gpu
JP4490298B2 (ja) プロセッサ電力制御装置及びプロセッサ電力制御方法
US20110138197A1 (en) Processor power management
US20130198540A1 (en) Dynamic Power Management in Real Time Systems
CN104969142B (zh) 用于以有保证的瞬态最后期限来控制中央处理单元功率的系统和方法
EP3391211B1 (en) Controlling scheduling of a gpu
JP2016143219A (ja) 制御装置、制御装置の制御方法及びプログラム
KR101420555B1 (ko) 동적 전압 디더링
CN107885306A (zh) 中央处理器的休眠控制方法与设备
JP2010113641A (ja) プロセッサシステムの動作方法およびプロセッサシステム
CN104756043B (zh) 用于以有保证的瞬态最后期限来控制中央处理单元功率的系统和方法
JP5585651B2 (ja) マルチコアシステム、スケジューリング方法およびスケジューリングプログラム
KR102333391B1 (ko) 전자 장치 및 이의 전력 제어 방법
CN117319376A (zh) 文件下载控制方法、装置、电子设备及存储介质
JP6070321B2 (ja) 携帯情報端末、制御方法、制御プログラム
WO2013101228A1 (en) Middleware power management
JP2010097427A (ja) 処理装置、処理方法及びコンピュータプログラム
TWI472910B (zh) 節省系統資源之方法及運用其方法之作業系統
US9201707B2 (en) Distributed system, device, method, and program
CN113342572A (zh) 一种看门狗自动重载系统、方法、设备及存储介质

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20160401

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170421

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170626

R150 Certificate of patent or registration of utility model

Ref document number: 6175980

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees