(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024124059
(43)【公開日】2024-09-12
(54)【発明の名称】処理実行制御装置、処理実行制御方法、及び、処理実行制御プログラム
(51)【国際特許分類】
G06F 1/3287 20190101AFI20240905BHJP
G06F 1/3206 20190101ALI20240905BHJP
【FI】
G06F1/3287
G06F1/3206
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023031969
(22)【出願日】2023-03-02
(71)【出願人】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100149618
【弁理士】
【氏名又は名称】北嶋 啓至
(72)【発明者】
【氏名】鶴木 博
【テーマコード(参考)】
5B011
【Fターム(参考)】
5B011DA00
5B011KK01
5B011LL11
(57)【要約】
【課題】消費電力の上限値が設定された情報処理装置において、当該上限値を超えることが無いように、情報処理装置の動作を制御することを確実かつ容易に行う。
【解決手段】処理実行制御装置30は、デバイス41の個々の消費電力を表すデバイス管理情報311と、情報処理装置40によって実行される処理42の個々に関して使用するデバイス41の識別情報を表す処理管理情報312と、を取得する取得部31と、デバイス41の少なくともいずれかを使用する情報処理装置40が複数の処理42を実行しているときの、情報処理装置40と使用中のデバイス41との合計消費電力を測定する電力測定部32と、デバイス管理情報311と処理管理情報312とに基づいて、測定された合計消費電力が電力上限値330を超えないよう、並列に実行可能な処理42の少なくともいずれかを順次実行するように情報処理装置40を制御する制御部33と、を備える。
【選択図】
図6
【特許請求の範囲】
【請求項1】
1以上のデバイスの個々の消費電力を表すデバイス管理情報と、情報処理装置によって実行される複数の処理の個々に関して使用する前記デバイスの識別情報を表す処理管理情報と、を取得する取得手段と、
1以上の前記デバイスの少なくともいずれかを使用する前記情報処理装置が複数の前記処理を実行しているときの、前記情報処理装置と使用中の前記デバイスとの合計消費電力を測定する電力測定手段と、
前記デバイス管理情報と前記処理管理情報とに基づいて、測定された前記合計消費電力が電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記情報処理装置を制御する制御手段と、
を備える処理実行制御装置。
【請求項2】
前記情報処理装置における所定の場所の温度を測定する温度測定手段をさらに備え、
前記取得手段は、前記所定の場所の温度と前記合計消費電力との関係を表す温度管理情報を取得し、
前記制御手段は、前記温度管理情報に基づいて、測定された前記所定の場所の温度が温度上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記情報処理装置を制御する、
請求項1に記載の処理実行制御装置。
【請求項3】
前記情報処理装置に含まれる情報処理資源の負荷を測定する負荷測定手段をさらに備え、
前記取得手段は、情報処理資源の負荷と前記情報処理装置の消費電力との関係を表す資源管理情報を取得し、
前記制御手段は、前記負荷測定手段による測定結果と前記資源管理情報とに基づいて、前記合計消費電力が前記電力上限値を超えないよう、前記情報処理資源の負荷を制御する、
請求項1または請求項2に記載の処理実行制御装置。
【請求項4】
前記情報処理資源はプロセッサを含み、
前記情報処理資源の負荷は使用率を表す、
請求項3に記載の処理実行制御装置。
【請求項5】
前記処理管理情報は、個々の前記処理が前記情報処理装置によって実行されるときの前記合計消費電力を含み、
前記制御手段は、前記処理管理情報に基づいて、前記合計消費電力が前記電力上限値を超えないよう、前記処理を実行するように前記情報処理装置を制御する、
請求項1または請求項2に記載の処理実行制御装置。
【請求項6】
前記取得手段は、前記情報処理装置が前記デバイスを使用する状態において測定された前記合計消費電力と、前記情報処理装置が前記デバイスを使用しない状態において測定された前記合計消費電力との差分を、前記デバイス管理情報として取得する、
請求項1または請求項2に記載の処理実行制御装置。
【請求項7】
前記制御手段は、前記情報処理装置によって使用されない前記デバイスを、使用中の状態のときよりも消費電力が小さい待機状態に設定する、
請求項1または請求項2に記載の処理実行制御装置。
【請求項8】
前記制御手段は、所定の期間において測定された前記合計消費電力の平均値が前記電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記情報処理装置を制御する、
請求項1または請求項2に記載の処理実行制御装置。
【請求項9】
第1の情報処理装置によって、
1以上のデバイスの個々の消費電力を表すデバイス管理情報と、第2の情報処理装置によって実行される複数の処理の個々に関して使用する前記デバイスの識別情報を表す処理管理情報と、を取得し、
1以上の前記デバイスの少なくともいずれかを使用する前記第2の情報処理装置が複数の前記処理を実行しているときの、前記第2の情報処理装置と使用中の前記デバイスとの合計消費電力を測定し、
前記デバイス管理情報と前記処理管理情報とに基づいて、測定された前記合計消費電力が電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記第2の情報処理装置を制御する、
処理実行制御方法。
【請求項10】
1以上のデバイスの個々の消費電力を表すデバイス管理情報と、情報処理装置によって実行される複数の処理の個々に関して使用する前記デバイスの識別情報を表す処理管理情報と、を取得する取得処理と、
1以上の前記デバイスの少なくともいずれかを使用する前記情報処理装置が複数の前記処理を実行しているときの、前記情報処理装置と使用中の前記デバイスとの合計消費電力を測定する電力測定処理と、
前記デバイス管理情報と前記処理管理情報とに基づいて、測定された前記合計消費電力が電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記情報処理装置を制御する制御処理と、
をコンピュータに実行させるための処理実行制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、処理実行制御装置、処理実行制御方法、及び、処理実行制御プログラムに関する。
【背景技術】
【0002】
情報処理装置等の電子機器においては、消費電力を低減すること、及び、安定して動作することが重要であり、これらを実現するための技術が期待されている。
【0003】
上述の技術に関連して、特許文献1には、プロセッサと一つ以上のモジュールとを含む制御対象装置への供給電力を測定する消費電力制御装置が開示されている。この装置は、当該モジュールの各々について、使用されているか否かを監視する。そしてこの装置は、当該制御対象装置への供給電力と所定の許容上限電力値との差分が所定の第一のしきい値以下のとき、使用されていない前記モジュールの消費電力を、通常状態から低消費電力状態へ低下させる制御を行う。
【0004】
また、特許文献2には、消費電力が低減され、電源の不足による誤動作を防止することが可能な非接触通信装置が開示されている。この装置は、内蔵する各種回路のうち、消費電力の関係から所定の回路同士を同時に動作させないようになっており、一連の処理を直列的に実行するように制御され、その実行に伴って所定の回路同士をのみ同時に動作するように制御されている。そして、これら回路の動作の合間、即ち次の回路の動作を行う前に、負荷回路により電源に負荷を与え、次の回路が正常に動作可能であるかを検知してから、次の回路の動作を開始するようになっている。
【0005】
また、特許文献3には、小型の定格電力の小さなAC(Alternating Current)アダプタでも動作可能な電子機器が開示されている。この電子機器は、電流検出回路と定格電流値および検出電流値情報が記憶された情報記憶部とを有するACアダプタを備える。そしてこの電子機器は、ACアダプタから情報記憶部内の情報を読み取るとともに、ACアダプタから電子機器本体に電源供給中の電流値が定格電流値から余裕を考慮した値を越えないように、電子機器本体内の電力消費量を低減させるように制御するマイコンを備える。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2020-042336号公報
【特許文献2】特開2001-266094号公報
【特許文献3】特開2004-215413号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
情報処理装置の高性能化や、電子部品の実装における高密度化が年々進展し、電源設備の容量上の制限や、発熱による障害の発生を回避すること等のために、情報処理装置は、消費電力の上限値が設定された環境で運用される場合がある。そして、このような環境では、消費電力の上限値を超えることが無いように、情報処理装置の動作を制御することが求められる。上述した特許文献1乃至3が開示する技術等を用いることによって、上述した情報処理装置の制御をある程度行うことは可能であるものの、そのような制御をより確実かつ容易に行う点において、まだ十分であるとは言えない。
【0008】
本発明の主たる目的は、消費電力の上限値が設定された情報処理装置において、当該上限値を超えることが無いように、情報処理装置の動作を制御することを確実かつ容易に行うことである。
【課題を解決するための手段】
【0009】
本発明の一態様に係る処理実行制御装置は、1以上のデバイスの個々の消費電力を表すデバイス管理情報と、情報処理装置によって実行される複数の処理の個々に関して使用する前記デバイスの識別情報を表す処理管理情報と、を取得する取得手段と、1以上の前記デバイスの少なくともいずれかを使用する前記情報処理装置が複数の前記処理を実行しているときの、前記情報処理装置と使用中の前記デバイスとの合計消費電力を測定する電力測定手段と、前記デバイス管理情報と前記処理管理情報とに基づいて、測定された前記合計消費電力が電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記情報処理装置を制御する制御手段と、を備える。
【0010】
上記目的を達成する他の見地において、本発明の一態様に係る処理実行制御方法は、第1の情報処理装置によって、1以上のデバイスの個々の消費電力を表すデバイス管理情報と、第2の情報処理装置によって実行される複数の処理の個々に関して使用する前記デバイスの識別情報を表す処理管理情報と、を取得し、1以上の前記デバイスの少なくともいずれかを使用する前記第2の情報処理装置が複数の前記処理を実行しているときの、前記第2の情報処理装置と使用中の前記デバイスとの合計消費電力を測定し、前記デバイス管理情報と前記処理管理情報とに基づいて、測定された前記合計消費電力が電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記第2の情報処理装置を制御する。
【0011】
また、上記目的を達成する更なる見地において、本発明の一態様に係る処理実行制御プログラムは、1以上のデバイスの個々の消費電力を表すデバイス管理情報と、情報処理装置によって実行される複数の処理の個々に関して使用する前記デバイスの識別情報を表す処理管理情報と、を取得する取得処理と、1以上の前記デバイスの少なくともいずれかを使用する前記情報処理装置が複数の前記処理を実行しているときの、前記情報処理装置と使用中の前記デバイスとの合計消費電力を測定する電力測定処理と、前記デバイス管理情報と前記処理管理情報とに基づいて、測定された前記合計消費電力が電力上限値を超えないよう、並列に実行可能な前記処理の少なくともいずれかを順次実行するように前記情報処理装置を制御する制御処理と、をコンピュータに実行させる。
【0012】
更に、本発明は、係る処理実行制御プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記録媒体によっても実現可能である。
【発明の効果】
【0013】
本発明は、消費電力の上限値が設定された情報処理装置において、当該上限値を超えることが無いように、情報処理装置の動作を制御することを確実かつ容易に行うことができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の第1の実施形態に係る情報処理装置1の構成を示すブロック図である。
【
図2】本発明の第1の実施形態に係るデバイス管理情報161のデータを例示する図である。
【
図3】本発明の第1の実施形態に係る処理管理情報162のデータを例示する図である。
【
図4】本発明の第1の実施形態に係る制御部13による処理203に対する実行制御と電力上限値164との関係を例示する図である。
【
図5】本発明の第1の実施形態に係る処理実行制御装置10の動作を示すフローチャートである。
【
図6】本発明の第2の実施形態に係る処理実行制御装置30の構成を示すブロック図である。
【
図7】本発明の第2の実施形態に係る処理実行制御装置30の動作を示すフローチャートである。
【
図8】本発明の各実施形態に係る処理実行制御装置を実現可能な情報処理装置900の構成を示すブロック図である。
【発明を実施するための形態】
【0015】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【0016】
<第1の実施形態>
図1は、本発明の第1の実施の形態に係る情報処理装置1の構成を示すブロック図である。情報処理装置1は、大別して、処理実行制御装置10、情報処理資源20、1以上のデバイス21、電源回路22、電力測定用抵抗23、1以上の温度センサ24を備える。
【0017】
情報処理資源20は、1以上のプロセッサ201とメモリ202とを含む。メモリ202は複数の処理203を記憶している。処理203は、プロセッサ201によって実行される、例えば、プログラム、プロセス、タスク等である。
【0018】
デバイス21は、情報処理資源20が処理203を実行する際に使用され、例えば、ビデオカメラ、ストレージ装置、プリンタ、タッチパネルモジュール、マイク、スピーカ等のデバイスである。情報処理資源20とデバイス21とは、例えば、GPIO(General Purpose Input/Output)インタフェースにより接続されている。
【0019】
電源回路22は、電力測定用抵抗23を介して、情報処理資源20及びデバイス21に対する電源供給を行う。電力測定用抵抗23については後述する。
【0020】
処理実行制御装置10は、情報処理資源20による処理203の実行を制御する装置である。処理実行制御装置10は、取得部11、電力測定部12、制御部13、温度測定部14、負荷測定部15、記憶部16を備える。取得部11、電力測定部12、制御部13、温度測定部14、負荷測定部15は、順に、取得手段、電力測定手段、制御手段、温度測定手段、負荷測定手段の一例である。
【0021】
尚、処理実行制御装置10は、情報処理資源20が処理実行制御装置10の機能を実現するためのプログラムを実行することによって実現されてもよい。処理実行制御装置10は、また、情報処理装置1の外部に構築されてもよい。ただし、その場合、情報処理装置1と処理実行制御装置10とは通信可能に接続されることとする。
【0022】
記憶部16は、例えば、
図8を参照して後述するRAM(Random Access Memory)あるいはハードディスク904のような記憶デバイスである。記憶部16は、デバイス管理情報161、処理管理情報162、温度管理情報163、電力上限値164、温度上限値165、資源管理情報166を記憶している。記憶部16に記憶されたこれらの情報については後述する。
【0023】
取得部11は、デバイス管理情報161及び処理管理情報162を取得し、取得したデバイス管理情報161及び処理管理情報162を記憶部16に格納する。
【0024】
図2は、本実施形態に係るデバイス管理情報161のデータを例示する図である。デバイス管理情報161は、デバイス21の個々の消費電力を表す情報である。
図2に例示するデバイス管理情報161によれば、デバイス21-1はビデオカメラであり、その消費電力は200W(ワット)である。デバイス21-2はストレージ装置であり、その消費電力は150Wである。デバイス21-3はストレージ装置であり、その消費電力は100Wである。尚、本実施形態では、複数のデバイス21の個々を区別する場合、デバイス21-1、21-2、21-3というように、添え字を付加して表記することとする。
【0025】
取得部11は、例えば、処理実行制御装置10に対するユーザによる情報の入力操作を介して、デバイス管理情報161を取得してもよい。取得部11は、あるいは、情報処理資源20と個々のデバイス21の消費電力を測定することによって、デバイス管理情報161を生成してもよい。この場合、取得部11は、まず、いずれのデバイス21も未使用の状態に設定した上で、情報処理資源20の単体の消費電力を測定する。取得部11は、電力測定用抵抗23の両端に印加される電圧を測定することによって、電力測定用抵抗23を流れる電流を求め、その値から消費電力を得ることができる。尚、電力測定用抵抗23の両端における電圧の測定点の個々と、取得部11及び後述する電力測定部12とは、アナログ/デジタルコンバータを介して接続されていることとする。取得部11は、次に、いずれかのデバイス21のみが情報処理資源20によって使用される状態において、電力測定用抵抗23の両端に印加される電圧を測定することによって、情報処理資源20と使用されたデバイス21との合計の消費電力を得る。そして、取得部11は、情報処理資源20と当該デバイス21との合計の消費電力から情報処理資源20の単体の消費電力を減算することによって、当該デバイス21の単体の消費電力を得ることができる。取得部11は、上述した消費電力の測定を、情報処理資源20によって使用されるデバイス21を切り換えながら行うことによって、全てのデバイス21の単体の消費電力を得ることができる。取得部11は、また、上述した情報処理資源20及びデバイス21の消費電力の測定の際に、消費電力の測定用の所定のプログラムを情報処理資源20に実行させるようにしてもよい。
【0026】
図3は、本実施形態に係る処理管理情報162のデータを例示する図である。処理管理情報162は、情報処理資源20によって実行される処理203の個々が使用するデバイス21の識別情報を表す情報である。
図3に例示する処理管理情報162によれば、処理203-1はビデオカメラによる撮像画像のデータを圧縮する処理を行い、使用するデバイスは、デバイス21-1である。尚、
図2に例示するデバイス管理情報161において、デバイス21-1がビデオカメラであることが示されている。処理203-2は処理203-1によって圧縮処理された撮像画像をストレージ装置であるデバイス21-2に格納する処理を行い、使用するデバイスは、デバイス21-2である。処理203-3は処理203-1によって圧縮処理された撮像画像をストレージ装置であるデバイス21-3に格納する処理を行い、使用するデバイスは、デバイス21-3である。尚、本実施形態では、複数の処理203の個々を区別する場合、処理203-1、203-2、203-3というように、添え字を付加して表記することとする。
【0027】
取得部11は、例えば、処理実行制御装置10に対するユーザによる情報の入力操作を介して、処理管理情報162を取得する。
【0028】
図1に例示する電力測定部12は、デバイス21の少なくともいずれかを使用する情報処理資源20が複数の処理203を実行しているときの、情報処理資源20と使用中のデバイス21との合計消費電力を測定する。電力測定部12は、取得部11がデバイス管理情報161を上述の通りに取得したときと同様に、電力測定用抵抗23の両端に印加される電圧を測定することによって当該合計消費電力を測定する。
【0029】
制御部13は、上述したデバイス管理情報161と処理管理情報162とに基づいて、電力測定部12によって測定された合計消費電力が電力上限値164を超えないよう、並列に実行可能な処理203の少なくともいずれかを順次実行するように情報処理資源20を制御する。但し、記憶部16に格納されている電力上限値164は、例えば、情報処理装置1が設置されている場所における電源供給に関する環境等に基づいて、ユーザによって与えられることとする。
【0030】
例えば、情報処理資源20が、
図3に例示する処理203-1乃至203-3の実行を開始したこととする。この場合、情報処理資源20は、ビデオカメラ(デバイス21-1)による撮像画像のデータを圧縮しながら、圧縮した撮像画像の部分をストレージ装置(デバイス21-2及び21-3)に格納する一連の処理である、処理203-1乃至203-3を並列に実行可能である。
【0031】
図4は、本実施形態に係る制御部13による、
図3に例示する処理203に対する実行制御と電力上限値164との関係を例示する図である。尚、
図4に示す例において、情報処理資源20の単体の消費電力を1000Wとする。
【0032】
まず、
図4に例示する、電力上限値164が1500Wであるケース1について説明する。
図2に例示するデバイス管理情報161によれば、処理203-1乃至203-3によって使用されるデバイス21-1乃至21-3の合計の消費電力は450Wである。したがって、電力測定部12によって測定される情報処理資源20とデバイス21-1乃至21-3との合計消費電力は1450Wとなり、電力上限値164である1500Wを超えていない。したがって、この場合、制御部13は、
図4に例示する通り、処理203-1乃至203-3の並列実行を継続するように情報処理資源20を制御する。
【0033】
次に、
図4に例示する、電力上限値164が1300Wであるケース2について説明する。この場合、電力測定部12によって測定される情報処理資源20とデバイス21-1乃至21-3との合計消費電力である1450Wは、電力上限値164である1300Wを超えているので、情報処理資源20は、処理203-1乃至203-3を並列に実行することはできない。この場合、制御部13は、デバイス管理情報161及び処理管理情報162から、処理203―1が単独で実行されるときの情報処理資源20とデバイス21-1との合計消費電力が1200Wであると算出する。制御部13は、さらに、処理203-2及び203-3が並列に実行されるときの情報処理資源20とデバイス21-2及び21-3との合計消費電力が1250Wであると算出する。したがって、情報処理資源20によって、処理203―1が単独で実行されるときの合計消費電力と、処理203-2及び203-3が並列に実行されるときの合計消費電力とは、いずれも電力上限値164である1300Wを超えていない。この場合、制御部13は、
図4に例示する通り、処理203-1を実行して完了したのち、処理203-2及び203―3を並列に実行するように情報処理資源20を制御する。即ち、制御部13は、処理203-2及び203-3の実行を一時停止し、処理203-1のみの実行を完了したのち、処理203-2及び203-3の実行を再開する。この場合、情報処理資源20は、例えば、処理203-1の実行結果のデータをメモリ202に一時的に格納し、処理203-1の実行を完了したのち、メモリ202に格納されたデータを用いて、処理203-2及び203-3を実行すればよい。
【0034】
次に、
図4に例示する、電力上限値164が1200Wであるケース3について説明する。この場合、電力測定部12によって測定される情報処理資源20とデバイス21-2及び21-3との合計消費電力である1250Wは、電力上限値164である1200Wを超えているので、情報処理資源20は、ケース2のときのように処理203-2及び203-3を並列に実行することはできない。そして、制御部13は、デバイス管理情報161及び処理管理情報162から、情報処理資源20とデバイス21-1乃至21-3のいずれかとの合計消費電力がいずれも電力上限値164である1200Wを超えていないことを確認する。そして、制御部13は、
図4に例示する通り、処理203-1を実行して完了したのち処理203-2を実行し、処理203-2の実行を完了したのち処理203―3を実行するように情報処理資源20を制御する。即ち、制御部13は、処理203-1、203-2、203-3を順次実行するように情報処理資源20を制御する。
【0035】
制御部13は、また、デバイス21が未使用の時に使用中の状態のときよりも消費電力が小さい待機状態(スタンバイモード)に移行する機能を備える場合、情報処理資源20によって使用されない状態にあるデバイス21を待機状態に設定するようにしてもよい。即ち、制御部13は、デバイス21の使用に関して、有効な状態から無効な状態に設定するようにしてもよい。
【0036】
制御部13は、また、所定の期間において測定された情報処理資源20とデバイス21との合計消費電力の平均値が電力上限値164を超えないよう、並列に実行可能な処理203を順次実行するように情報処理資源20を制御するようにしてもよい。電力測定部12により測定される合計消費電力は、通常、変動するので、所定の期間における合計消費電力の平均値に基づく処理203の実行制御を行った方がより適切である。
【0037】
本実施形態に係る処理実行制御装置10は、また、上述した情報処理資源20とデバイス21との合計消費電力に基づく処理203の実行制御に加えて、情報処理装置1における所定の場所の温度に基づく処理203の実行制御も行う。
【0038】
温度測定部14は、情報処理装置1における1以上の所定の場所に設置された温度センサ24からのデータを受け付け、受け付けたデータから温度センサ24の設置場所の温度を測定(算出)する。温度センサ24は、情報処理装置1における1以上の場所に設置され、設置された場所の温度を計測するためのセンサである。温度センサ24は、ユーザにより決められた、情報処理装置1における温度が上昇しやすい場所等に設置されている。尚、温度センサ24と温度測定部14とは、例えばI2C(Inter-Integrated Circuit)バス(登録商標)によって接続されていることとする。
【0039】
取得部11は、温度センサ24の設置場所の温度と、情報処理資源20及びデバイス21の合計消費電力との関係を表す温度管理情報163を取得し、取得した温度管理情報163を記憶部16に格納する。温度管理情報163は、当該合計消費電力が大きくなればなるほど、当該設置場所の温度が上昇することを表している。取得部11は、例えば、処理実行制御装置10に対するユーザによる情報の入力操作を介して、温度管理情報163を取得する。
【0040】
制御部13は、デバイス管理情報161と処理管理情報162と温度管理情報163とに基づいて、温度測定部14により測定された所定の場所の温度が温度上限値165を超えないよう、並列に実行可能な処理203を順次実行するように情報処理資源20を制御する。但し、記憶部16に格納されている温度上限値165は、例えば、情報処理装置1が設置されている場所における冷却環境等に基づいて、ユーザによって与えられることとする。温度上限値165は、例えば、温度センサ24の全ての設置場所に共通する値でなくてもよく、設置場所に応じて異なる値であってもよい。
【0041】
制御部13は、温度測定部14により測定された温度が温度上限値165を超える場合、例えば
図4に例示するケース2のような処理203の実行制御を行う。そして制御部13は、ケース2のような処理203の実行制御を行っても測定された温度が温度上限値165を超える場合、ケース3のような処理203の実行制御を行う。
【0042】
本実施形態に係る処理実行制御装置10は、さらに、上述した情報処理資源20とデバイス21との合計消費電力、及び、情報処理装置1における所定の場所の温度に基づく処理203の実行制御に加えて、情報処理資源20の負荷の状況に基づく処理203の実行制御も行う。
【0043】
取得部11は、情報処理資源20の負荷と情報処理資源20及びデバイス21の合計消費電力との関係を表す資源管理情報166を取得し、取得した資源管理情報166を記憶部16に格納する。資源管理情報166は、情報処理資源20の負荷が大きくなればなるほど、情報処理資源20及びデバイス21の合計消費電力が大きくなることを表している。尚、情報処理資源20の負荷は、例えば、プロセッサ201の使用率によって表される。取得部11は、例えば、処理実行制御装置10に対するユーザによる情報の入力操作を介して、資源管理情報166を取得する。
【0044】
負荷測定部15は、プロセッサ201の負荷を表す使用率を、例えば既存のプロセッサ使用率測定ツールを用いて測定することができる。
【0045】
制御部13は、デバイス管理情報161と処理管理情報162と資源管理情報166と負荷測定部15による測定結果とに基づいて、電力測定部12により測定された情報処理資源20及びデバイス21の合計消費電力が電力上限値164を超えないよう、プロセッサ201の使用率を制御する。
【0046】
制御部13は、合計消費電力が電力上限値164を超えていることにより、プロセッサ201の使用率を低下させる必要がある場合、例えば
図4に例示するケース2のような処理203の実行制御を行う。そして制御部13は、ケース2のような処理203の実行制御を行った後も合計消費電力が電力上限値164を超えており、プロセッサ201の使用率をさらに低下させる必要がある場合、ケース3のような処理203の実行制御を行う。
【0047】
次に
図5のフローチャートを参照して、本実施形態に係る処理実行制御装置10の動作(処理)について詳細に説明する。
【0048】
取得部11は、デバイス管理情報161、処理管理情報162、温度管理情報163を取得する(ステップS101)。電力測定部12は、情報処理装置1が複数の処理203を実行しているときに、電力測定用抵抗23に印加される電圧から、情報処理資源20及びデバイス21の合計消費電力を測定する(ステップS102)。温度測定部14は、情報処理装置1における所定の場所に設置された温度センサ24による測定値から、当該所定の場所の温度を測定する(ステップS103)。制御部13は、当該合計消費電力が電力上限値164を超えておらず、かつ、当該所定の場所の温度が温度上限値165を超えていないか確認する(ステップS104)。
【0049】
当該合計消費電力が電力上限値164を超えておらず、かつ、当該所定の場所の温度が温度上限値165を超えていない場合(ステップS105でYes)、制御部13は、複数の処理203をそのまま並列に実行するように情報処理資源20を制御し(ステップS106)、処理はステップS102へ戻る。
【0050】
当該合計消費電力が電力上限値164を超えている、あるいは、当該所定の場所の温度が温度上限値165を超えている場合(ステップS105でNo)、制御部13は、当該合計消費電力が電力上限値164を超えないよう、かつ、当該所定の場所の温度が温度上限値165を超えないよう、複数の処理203の少なくともいずれかを順次実行するように、情報処理資源20を制御し(ステップS107)、処理はステップS102へ戻る。
【0051】
本実施形態に係る処理実行制御装置10は、消費電力の上限値が設定された情報処理装置1において、当該上限値を超えることが無いように、情報処理装置1の動作を制御することを確実かつ容易に行うことができる。その理由は、処理実行制御装置10は、個々のデバイス21の消費電力を表すデバイス管理情報161と、個々の処理203に関して使用するデバイス21を表す処理管理情報162とに基づいて、情報処理資源20とデバイス21との合計消費電力が電力上限値164を超えないよう、並列に実行可能な処理203の少なくともいずれかを順次実行するように情報処理装置1を制御するからである。
【0052】
以下に、本実施形態に係る処理実行制御装置10によって実現される効果について、詳細に説明する。
【0053】
情報処理装置の高性能化や、電子部品の実装における高密度化が年々進展し、電源設備の容量上の制限や、発熱による障害の発生を回避すること等のために、情報処理装置は、消費電力の上限値が設定された環境で運用される場合がある。そして、このような環境では、消費電力の上限値を超えることが無いように、情報処理装置の動作を制御することが求められる。したがって、そのような制御をより確実かつ容易に行うことが課題である。
【0054】
このような課題に対して、本実施形態に係る処理実行制御装置10は、1以上のデバイス21の個々の消費電力を表すデバイス管理情報161と、情報処理装置1によって実行される複数の処理203の個々に関して使用するデバイス21の識別情報を表す処理管理情報162とを取得する。処理実行制御装置10は、1以上のデバイス21の少なくともいずれかを使用する情報処理資源20が複数の処理203を実行しているときの、情報処理資源20と使用中のデバイス21との合計消費電力を測定する。そして、処理実行制御装置10は、デバイス管理情報161と処理管理情報162とに基づいて、測定された合計消費電力が電力上限値164を超えないよう、並列に実行可能な処理203の少なくともいずれかを順次実行するように情報処理装置1を制御する。即ち、処理実行制御装置10は、個々のデバイス21の消費電力と個々の処理203が使用するデバイス21とを管理し、並列に実行している処理203を必要に応じて順次実行するように情報処理装置1を制御することによって、情報処理装置1の消費電力が電力上限値164を超えないようにすることを、確実かつ容易に実現することができる。
【0055】
また、本実施形態に係る処理実行制御装置10は、情報処理装置1における所定の場所の温度を測定し、当該所定の場所の温度と情報処理資源20とデバイス21との合計消費電力との関係を表す温度管理情報163を取得する。そして処理実行制御装置10は、温度管理情報163に基づいて、測定された所定の場所の温度が温度上限値165を超えないよう、並列に実行可能な処理203の少なくともいずれかを順次実行するように情報処理装置1を制御する。これにより、処理実行制御装置10は、情報処理装置1における発熱による障害の発生を回避することを、確実かつ容易に実現することができる。
【0056】
また、本実施形態に係る処理実行制御装置10は、情報処理装置1に含まれる情報処理資源20の負荷を測定し、情報処理資源20の負荷と情報処理装置1の消費電力との関係を表す資源管理情報166を取得する。そして処理実行制御装置10は、当該負荷の測定結果と資源管理情報166とに基づいて、合計消費電力が電力上限値164を超えないよう、情報処理資源20の負荷を制御する。これにより、処理実行制御装置10は、情報処理装置1の消費電力が電力上限値164を超えないようにすることを、より確実かつ容易に実現することができる。
【0057】
また、本実施形態に係る処理実行制御装置10は、情報処理装置1によって使用されないデバイス21を、使用中の状態のときよりも消費電力が小さい待機状態に設定する。これにより、処理実行制御装置10は、情報処理装置1の消費電力が電力上限値164を超えないようにすることを、より確実に実現することができる。
【0058】
また、本実施形態に係る処理実行制御装置10は、所定の期間において測定された合計消費電力の平均値が電力上限値164を超えないよう、並列に実行可能な処理203の少なくともいずれかを順次実行するように情報処理装置1を制御する。これにより、処理実行制御装置10は、変動する合計消費電力をより正確に把握するので、情報処理装置1の消費電力が電力上限値164を超えないようにすることを、より確実に実現することができる。
【0059】
<第2の実施形態>
図6は、本発明の第2の実施形態に係る処理実行制御装置30の構成を示すブロック図である。
【0060】
本実施形態に係る処理実行制御装置30は、取得部31、電力測定部32、制御部33を備える。取得部31、電力測定部32、制御部33は、順に、取得手段、電力測定手段、制御手段の一例である。
【0061】
取得部31は、1以上のデバイス41の個々の消費電力を表すデバイス管理情報311と、情報処理装置40によって実行される複数の処理42の個々に関して使用するデバイス41の識別情報を表す処理管理情報312と、を取得する。デバイス41は、例えば、第1の実施形態に係るデバイス21と同様なデバイスである。処理42は、例えば、第1の実施形態に係る処理203と同様な処理である。デバイス管理情報311は、例えば、第1の実施形態に係るデバイス管理情報161と同様な情報である。処理管理情報312は、例えば、第1の実施形態に係る処理管理情報162と同様な情報である。取得部31は、例えば、第1の実施形態に係る取得部11と同様に動作する。
【0062】
電力測定部32は、1以上のデバイス41の少なくともいずれかを使用する情報処理装置40が複数の処理42を実行しているときの、情報処理装置40と使用中のデバイス41との合計消費電力を測定する。電力測定部32は、例えば、第1の実施形態に係る電力測定部12と同様に動作する。
【0063】
制御部33は、デバイス管理情報311と処理管理情報312とに基づいて、測定された合計消費電力が電力上限値330を超えないよう、並列に実行可能な処理42の少なくともいずれかを順次実行するように情報処理装置40を制御する。電力上限値330は、例えば、第1の実施形態に係る電力上限値164と同様な値である。制御部33は、例えば、第1の実施形態に係る制御部13と同様に動作する。
【0064】
次に
図7のフローチャートを参照して、本実施形態に係る処理実行制御装置30の動作(処理)について詳細に説明する。
【0065】
取得部31は、デバイス管理情報311、処理管理情報312を取得する(ステップS201)。電力測定部32は、情報処理装置40が複数の処理42を実行しているときに、デバイス41を含む情報処理装置40の合計消費電力を測定する(ステップS202)。制御部33は、当該合計消費電力が電力上限値330を超えてないか確認する(ステップS203)。
【0066】
合計消費電力が電力上限値330を超えていない場合(ステップS204でYes)、制御部33は、複数の処理42をそのまま並列に実行するように情報処理装置40を制御し(ステップS205)、処理はステップS202へ戻る。
【0067】
合計消費電力が電力上限値330を超えている場合(ステップS204でNo)、制御部33は、当該合計消費電力が電力上限値330を超えないよう、複数の処理42の少なくともいずれかを順次実行するように情報処理装置40を制御し(ステップS206)、処理はステップS202へ戻る。
【0068】
本実施形態に係る処理実行制御装置30は、消費電力の上限値が設定された情報処理装置40において、当該上限値を超えることが無いように、情報処理装置40の動作を制御することを確実かつ容易に行うことができる。その理由は、処理実行制御装置30は、個々のデバイス41の消費電力を表すデバイス管理情報311と、個々の処理42に関して使用するデバイス41を表す処理管理情報312とに基づいて、情報処理装置40とデバイス41との合計消費電力が電力上限値330を超えないよう、並列に実行可能な処理42の少なくともいずれかを順次実行するように情報処理装置40を制御するからである。
【0069】
<ハードウェア構成例>
上述した各実施形態において
図1、及び、
図6に示した処理実行制御装置における各部は、専用のHW(HardWare)(電子回路)によって実現することができる。また、
図1、及び、
図6において、少なくとも、下記構成は、プロセッサによって実行される命令を含むソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。
・取得部11及び31、
・電力測定部12及び32、
・制御部13及び33、
・温度測定部14、
・負荷測定部15、
・記憶部16における記憶制御機能。
【0070】
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、
図8を参照して説明する。
【0071】
図8は、本発明の各実施形態に係る処理実行制御装置を実現可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、
図8は、
図1、及び、
図6に示した処理実行制御装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
【0072】
図8に示した情報処理装置900は、構成要素として下記を備えている。
・CPU(Central_Processing_Unit)901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク(記憶装置)904、
・通信インタフェース905、
・バス906(通信線)、
・CD-ROM(Compact_Disc_Read_Only_Memory)等の記録媒体907に格納されたデータを読み書き可能なリーダライタ908、
・モニターやスピーカ、キーボード等の入出力インタフェース909。
【0073】
即ち、上記構成要素を備える情報処理装置900は、これらの構成がバス906を介して接続された一般的なコンピュータである。情報処理装置900は、CPU901を複数備える場合もあれば、マルチコアにより構成されたCPU901を備える場合もある。情報処理装置900は、また、上述した構成の一部を備えない場合もある。
【0074】
そして、上述した実施形態を例に説明した本発明は、
図8に示した情報処理装置900に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図(
図1及び
図6)における上述した構成、或いはフローチャート(
図5及び
図7)の機能である。本発明は、その後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性のメモリ(RAM903)、または、ROM902やハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
【0075】
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、CD-ROM等の各種記録媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記録媒体907によって構成されると捉えることができる。
【0076】
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【符号の説明】
【0077】
1 情報処理装置
10 処理実行制御装置
11 取得部
12 電力測定部
13 制御部
14 温度測定部
15 負荷測定部
16 記憶部
161 デバイス管理情報
162 処理管理情報
163 温度管理情報
164 電力上限値
165 温度上限値
166 資源管理情報
20 情報処理資源
201 プロセッサ
202 メモリ
203 処理
21 デバイス
22 電源回路
23 電力測定用抵抗
24 温度センサ
30 処理実行制御装置
31 取得部
311 デバイス管理情報
312 処理管理情報
32 電力測定部
33 制御部
330 電力上限値
40 情報処理装置
41 デバイス
42 処理
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク(記憶装置)
905 通信インタフェース
906 バス
907 記録媒体
908 リーダライタ
909 入出力インタフェース