(57)【要約】【課題】第三者作成のアプリが使用される場合でも、リソースの動作に対するユーザの体感速度の低下を抑えた状態で電力消費を低減することができる、情報処理装置を提供する。【解決手段】情報処理装置１００は、動作速度に応じて電力を消費するリソース２００を有する装置であって、リソース２００の動作速度が、リソース２００の動作に対するユーザの体感速度に与える影響の度合いである、影響度を判別する影響度判別部３００と、影響度が低いほど、リソース２００の動作速度をより低くする動作速度制御部４００とを有する。【選択図】図１
2012252493.tif 000002
【特許請求の範囲】
【請求項１】
動作速度に応じて電力を消費するリソースを有する情報処理装置であって、
前記リソースの前記動作速度が、前記リソースの動作に対するユーザの体感速度に与える影響の度合いである、影響度を判別する影響度判別部と、
前記影響度が低いほど、前記リソースの前記動作速度をより低くする動作速度制御部と、を有する、
情報処理装置。
【請求項２】
前記リソースは、
ＣＰＵと、
前記ＣＰＵにより動作を制御されるディスプレイと、を含み、
前記影響度判別部は、
前記ディスプレイの動作が、前記ＣＰＵが実行する処理に対するユーザの体感速度に与える影響の度合いを、前記影響度として判別する、
請求項１記載の情報処理装置。
【請求項３】
前記リソースは、
前記ＣＰＵの動作により、複数のアプリケーションおよび複数のサービスを並列実行し、前記並列実行の結果の１つとして前記ディスプレイにおける画像表示を行うマルチタスクシステムであり、
前記動作速度制御部は、
前記影響度に基づいて、前記影響度が低いほど前記ＣＰＵの動作周波数の上限値がより低くなるように、前記動作周波数の範囲を決定する周波数範囲変更部と、
前記ＣＰＵの使用率を監視するリソース使用率監視部と、
決定された前記範囲において、前記使用率が低いほど、前記動作周波数をより低く決定する、周波数決定部と、
決定された前記動作周波数で、前記ＣＰＵを動作させる周波数制御部と、を有する、
請求項２記載の情報処理装置。
【請求項４】
前記影響度判別部は、
前記ディスプレイ上の前記ユーザの注目対象を特定する注目対象検出部と、
前記注目対象の構成プロセスを特定する構成プロセス解析部と、
前記ＣＰＵの処理全体に対する、前記注目対象の構成プロセスの占有率を、前記影響度として算出するリソース占有率算出部と、を有する、
請求項３記載の情報処理装置。
【請求項５】
前記注目対象検出部は、
前記複数のアプリケーションのうち、前記注目対象に対応するアプリケーションであるフォーカスアプリを検出するフォーカスアプリ検出部と、
前記複数のサービスのうち、前記フォーカスアプリが参照するサービスである参照サービスを検出する参照サービス検出部と、を有し、
前記構成プロセス解析部は、
前記フォーカスアプリおよび前記参照サービスのプロセスを、前記注目対象の構成プロセスとする、
請求項４記載の情報処理装置。
【請求項６】
前記影響度判別部は、
前記ディスプレイが点灯しているか否かを判断するディスプレイ点灯監視部を有し、
前記周波数範囲変更部は、
前記ディスプレイが点灯しているとき、前記影響度が高いと判断し、前記ディスプレイが点灯していないとき、前記影響度が低いと判断する、
請求項３記載の情報処理装置。
【請求項７】
動作速度に応じて電力を消費するリソースを有する情報処理装置における動作速度制御方法であって、
前記リソースの前記動作速度が、前記リソースの動作に対するユーザの体感速度に与える影響の度合いである、影響度を判別するステップと、
前記影響度が低いほど、前記リソースの前記動作速度がより低くなるように、前記リソースの前記動作速度を制御するステップと、を有する、
動作速度制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作速度に応じて電力を消費するリソースを有する情報処理装置および当該情報処理装置における動作速度制御方法に関する。
【背景技術】
【０００２】
近年、スマートフォンと呼ばれる種類の携帯電話機のシェアが、世界的に高まりつつある。
【０００３】
スマートフォンは、従来の携帯電話機に比べて、オープン性、汎用性、拡張性、および操作性などに優れる。しかしその一方で、スマートフォンには、消費電力が従来の携帯電話機に比べて高いという問題がある。スマートフォンは、一般的に、大きい液晶ディスプレイ（ＬＣＤ）を有し、センサ等の周辺デバイスを頻繁に動作させ、多くの計算処理を行うからである。
【０００４】
携帯電話機などの情報処理装置の消費電力を抑制する手法は、ＣＰＵ（central processing unit）など、動作速度に応じて電力を消費するリソースの動作速度を、動的に変更する技術が知られている。なお、動作速度に応じて電力を消費するリソースは、以下単に「リソース」という。
【０００５】
例えば、特許文献１に記載の技術は、アプリケーションソフトウェア（以下「アプリ」という）起動時などに、アプリの負荷特性や処理精度に応じて、クロック周波数に制限を設けることで、ＣＰＵの動作周波数を動的に変更する。また、特許文献２に記載の技術は、プリインストールされたアプリ毎に、周波数および動作電圧を記憶するポリシテーブルを持ち、該当アプリが実行されたときに、指定されたクロック、動作電圧でＣＰＵ制御を行う。これらの技術によれば、アプリの稼動状態に応じてＣＰＵの動作速度を制御し、情報処理装置の消費電力の抑制を図ることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−３５５５９９号公報
【特許文献２】特開２００８−７７５６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、スマートフォンでは、通常、プリインストールされているアプリに加えて、ユーザが端末購入後に追加できる第３者作成のアプリ（以下「サードパーティアプリ」という）が利用されることが多い。すなわち、スマートフォンでは、第三者作成のアプリが使用されることが多い。
【０００８】
ところが、上述の従来技術は、このような不特定のアプリが使用される情報処理装置では、リソースの動作に対するユーザの体感速度を大きく低下させ得るという課題を有する。スマートフォンでは、このように不特定のアプリの全てに対して上述の負荷特性や処理精度などの情報やポリシテーブルを用意することが、非常に困難である。つまり、従来技術は、ＣＰＵの動作速度を的確に制御することができないという課題を有している。
【０００９】
本発明の目的は、第三者作成のアプリが使用される場合でも、リソースの動作に対するユーザの体感速度の低下を抑えた状態で電力消費を低減することができる、情報処理装置および動作速度制御方法を提供することである。
【課題を解決するための手段】
【００１０】
本発明の情報処理装置は、動作速度に応じて電力を消費するリソースを有する情報処理装置であって、前記リソースの前記動作速度が、前記リソースの動作に対するユーザの体感速度に与える影響の度合いである、影響度を判別する影響度判別部と、前記影響度が低いほど、前記リソースの前記動作速度をより低くする動作速度制御部とを有する。
【００１１】
本発明の動作速度制御方法は、動作速度に応じて電力を消費するリソースを有する情報処理装置における動作速度制御方法であって、前記リソースの前記動作速度が、前記リソースの動作に対するユーザの体感速度に与える影響の度合いである、影響度を判別するステップと、前記影響度が低いほど、前記リソースの前記動作速度がより低くなるように、前記リソースの前記動作速度を制御するステップとを有する。
【発明の効果】
【００１２】
本発明は、第三者作成のアプリが使用される場合でも、リソースの動作に対するユーザの体感速度の低下を抑えた状態で電力消費を低減することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態１に係る情報処理装置の構成の一例を示すブロック図
【図２】本発明の実施の形態２に係る情報処理装置の構成の一例を示すブロック図
【図３】本発明の実施の形態２におけるフォーカスアプリ特定手法の例を示す図
【図４】本発明の実施の形態２におけるテーブル選択ルールの内容の一例を示す図
【図５】本発明の実施の形態２における第１の使用率−周波数テーブルの内容の一例を示す図
【図６】本発明の実施の形態２における第２の使用率−周波数テーブルの内容の一例を示す図
【図７】本発明の実施の形態２における第３の使用率−周波数テーブルの内容の一例を示す図
【図８】本発明の実施の形態２に係る情報処理装置の動作の一例を示すフローチャート
【図９】本発明の実施の形態３に係る情報処理装置の構成の一例を示すブロック図
【図１０】本発明の実施の形態３に係る情報処理装置の動作の一例を示すフローチャート
【発明を実施するための形態】
【００１４】
以下、本発明の各実施の形態について、図面を参照して詳細に説明する。
【００１５】
（実施の形態１）
本発明の実施の形態１は、本発明に係る情報処理装置の基本的態様の一例である。
【００１６】
図１は、本実施の形態に係る情報処理装置の構成の一例を示すブロック図である。
【００１７】
図１において、情報処理装置１００は、リソース２００、影響度判別部３００、および動作速度制御部４００を有する。
【００１８】
リソース２００は、例えば、ＣＰＵおよびＣＰＵにより動作を制御されるディスプレイを含み、動作速度に応じて電力を消費する。
【００１９】
影響度判別部３００は、リソース２００の動作速度が、リソース２００の動作に対するユーザの体感速度に与える影響の度合いである、影響度を判別する。
【００２０】
動作速度制御部４００は、上述の影響度が低いほど、リソース２００の動作速度をより低くする。
【００２１】
情報処理装置１００は、例えば、リソース２００に含まれるＣＰＵと、ＲＡＭ（random access memory）などの記憶媒体とを有する。この場合、影響度判別部３００および動作速度制御部４００は、ＣＰＵが制御プログラムを実行することにより実現される。
【００２２】
このような情報処理装置１００は、リソース２００がそのリソース２００の動作に対するユーザの体感速度に与える影響の度合い（影響度）が低い場合、リソース２００の動作速度を低くする。逆にいえば、情報処理装置１００は、リソース２００がそのリソース２００の動作に対するユーザの体感速度に与える影響の度合い（影響度）が高い場合、リソース２００の動作速度を低くしない。
【００２３】
すなわち、情報処理装置１００は、体感速度への影響度を判別し、アプリの特性に応じてではなく、判別した影響度に応じて、リソース２００の動作速度を変化させる。これにより、情報処理装置１００は、第三者作成のアプリが使用される場合でも、リソースの動作に対するユーザの体感速度の低下を抑えた状態で、電力消費を低減することができる。
【００２４】
（実施の形態２）
本発明の実施の形態２は、ディスプレイ上のユーザの注目対象の構成プロセスのＣＰＵ占有率から、影響度を判別するようにした例である。本実施の形態に係る情報処理装置は、例えば、スマートフォンである。
【００２５】
まず、本実施の形態に係る各装置およびシステムの構成について説明する。
【００２６】
図２は、本実施の形態に係る情報処理装置の構成の一例を示すブロック図である。
【００２７】
図２において、情報処理装置１００は、リソース２００と、影響度判別部３００と、動作速度制御部４００とを有する。
【００２８】
リソース２００は、動作速度に応じて電力を消費する。
【００２９】
より具体的には、リソース２００は、ＣＰＵおよびそのＣＰＵにより動作が制御されるディスプレイを含む、マルチタスクシステムであるものとする。すなわち、リソース２００は、ＣＰＵの動作により、複数のアプリおよび複数のサービスを、時分割処理などによって並列実行し、この並列実行の結果の１つとして、ディスプレイにおける画像表示を行う。一般的には、ＣＰＵの動作速度が高いほど、より多くの電力が消費され、ディスプレイの動作もより速い。
【００３０】
なお、リソース２００が消費する電力は、例えば、情報処理装置１００に設けられたバッテリ（図示せず）に蓄積された電力である。
【００３１】
影響度判別部３００は、リソース２００の動作に対するユーザの体感速度に与える影響の度合いである、影響度（以下、単に「影響度」という）を判別する。影響度判別部３００は、注目対象検出部３１０、構成プロセス解析部３２０、およびリソース占有率算出部３３０を有する。
【００３２】
注目対象検出部３１０は、ディスプレイ上のユーザの注目対象を特定する。注目対象検出部３１０は、フォーカスアプリ検出部３１１および参照サービス検出部３１２を有する。
【００３３】
フォーカスアプリ検出部３１１は、上述の複数のアプリのうち、注目対象に対応するアプリであるフォーカスアプリを検出する。
【００３４】
より具体的には、フォーカスアプリ検出部３１１は、所定のフォーカスアプリ特定手法により、フォーカスアプリの有無、およびフォーカスアプリの特定を行う。そして、フォーカスアプリ検出部３１１は、フォーカスアプリの有無と、フォーカスアプリが存在する場合、フォーカスアプリを示す情報とを、参照サービス検出部３１２および構成プロセス解析部３２０へ出力する。
【００３５】
図３は、フォーカスアプリ検出部３１１が用いるフォーカスアプリ特定手法の例を示す図である。
【００３６】
図３に示すように、フォーカスアプリ特定手法５１０としては、例えば、「最前面に表示されているウィンドウの情報を、ウィンドウ表示を管理するウィンドウマネージャから取得する」ことを採用することができる。この手法を採用する場合、フォーカスアプリ検出部３１１は、階層化して複数のウィンドウが表示されているディスプレイにおいて、最前面に表示されているウィンドウの情報を、例えば、ウィンドウマネージャから取得する。そして、フォーカスアプリ検出部３１１は、取得したウィンドウを表示させているアプリを、フォーカスアプリとする。
【００３７】
他にも、フォーカスアプリ特定手法５１０としては、例えば、ユーザが注目しているグラフィックパーツを、視線検知センサやタッチセンサによって特定することを採用することができる。また、フォーカスアプリ特定手法５１０としては、例えば、スリープモードになっていることや、情報処理装置１００（端末）の頭が垂れていることを、どのオブジェクトにも注目していないこととして検知することを採用することができる。
【００３８】
フォーカスアプリ検出部３１１は、単一のフォーカスアプリ特定手法のみを用いてもよい。また、フォーカスアプリ検出部３１１は、複数のフォーカスアプリ特定手法の中から、予め定められた選択ルールに従って、採用するフォーカスアプリ特定手法を選択してもよい。選択ルールは、例えば、フォーカスアプリの数が所定の上限値に達するまで、各手法に設定された優先度に従って各手法により順次選択を行っていくルールである。また、フォーカスアプリ検出部３１１は、ユーザ操作により選択されたフォーカスアプリ特定手法を用いるようにしてもよい。
【００３９】
図２の参照サービス検出部３１２は、上述の複数のサービスのうち、フォーカスアプリが参照するサービスである参照サービスを検出する。
【００４０】
より具体的には、参照サービス検出部３１２は、フォーカスアプリを示す情報を入力されるごとに、その１つまたは複数のフォーカスアプリが参照するサービスの全てを、検出して列挙する。なお、フォーカスアプリが参照するサービスは、デーモンなどとも呼ばれ、以下「参照サービス」という。ここで、参照サービスは、アプリ（アプリケーションプログラム）により、ＩＰＣ（inter process communication）や共有メモリ等を用いて、その機能が利用されているサービスをいう。そして、参照サービス検出部３１２は、参照サービスを示す情報を、構成プロセス解析部３２０へ出力する。なお、参照サービスの検出は、サービスが提供する機能をアプリが利用しようとする際の登録または登録解除ＡＰＩ（application program interface）にて、参照関係を記憶するなどの方法により行うことができる。
【００４１】
構成プロセス解析部３２０は、注目対象の構成プロセスを特定する。
【００４２】
より具体的には、構成プロセス解析部３２０は、入力されたフォーカスアプリおよび参照サービスを示す情報から、フォーカスアプリの実行に必要なプロセスの全てを検出し、注目対象の構成プロセスとして列挙する。そして、構成プロセス解析部３２０は、注目対象の構成プロセスを示す情報を、リソース占有率算出部３３０へ出力する。なお構成プロセスの検出は、プロセスの親子関係を取得するＯＳ（operating system）機能を利用して、該当アプリの子プロセスを構成プロセスとみなすなどの方法により行うことができる。
【００４３】
リソース占有率算出部３３０は、ＣＰＵの処理全体に対する、注目対象の構成プロセスの占有率を、上述の影響度として算出する。
【００４４】
より具体的には、リソース占有率算出部３３０は、入力された構成プロセスを示す情報から、各構成プロセスのＣＰＵ時間を検出し、検出したＣＰＵ時間から、構成プロセス全体のＣＰＵ使用率を算出する。そして、リソース占有率算出部３３０は、算出したＣＰＵ使用率を、動作速度制御部４００へ出力する。
【００４５】
あるアプリの構成プロセスのＣＰＵ占有率が高いほど、そのアプリの動作は、ＣＰＵが実行する処理に対するユーザの体感速度に、より高い影響を与える。したがって、フォーカスアプリの構成プロセスのＣＰＵ占有率は、上述の影響度として扱うことができる。
【００４６】
なお、リソース占有率算出部３３０は、フォーカスアプリが存在しないことを示す情報が入力された場合、ＣＰＵ占有率が０である旨を示す情報を、動作速度制御部４００へ出力する。
【００４７】
動作速度制御部４００は、上述の影響度が低いほど、リソース２００の動作速度をより低くする。動作速度制御部４００は、周波数範囲変更部４１０、リソース使用率監視部４２０、周波数決定部４３０、および周波数制御部４４０を有する。
【００４８】
周波数範囲変更部４１０は、上述の影響度に基づいて、影響度が低いほどＣＰＵの動作周波数（以下「ＣＰＵ周波数」という）の上限値がより低くなるように、ＣＰＵ周波数の範囲を決定する。
【００４９】
より具体的には、周波数範囲変更部４１０は、テーブル選択ルールを予め格納する。テーブル選択ルールは、ＣＰＵ占有率から、後述の複数の使用率−周波数テーブルの中から１つを選択する際のルールである。本実施の形態においては、第１〜第３の使用率−周波数テーブルが存在するものとする。周波数範囲変更部４１０は、このテーブル選択ルールに従って、影響度判別部３００から入力されたＣＰＵ占有率に対応する使用率−周波数テーブルを選択する。そして、周波数範囲変更部４１０は、選択した使用率−周波数テーブル（以下「選択テーブル」）を示す情報を、周波数決定部４３０へ出力する。
【００５０】
図４は、テーブル選択ルールの内容の一例を示す図である。
【００５１】
図４に示すように、テーブル選択ルール５２０は、ＣＰＵ占有率ｚの区分５２１ごとに、選択テーブルとすべき（つまり選択すべき）使用率−周波数テーブル５２２を規定する。例えば、テーブル選択ルール５２０は、ＣＰＵ占有率ｚが０よりも大きく０.１未満である場合、第２の使用率−周波数テーブルを選択することを規定する。
【００５２】
図２のリソース使用率監視部４２０は、ＣＰＵの使用率（ＣＰＵ使用率）を監視する。
【００５３】
より具体的には、リソース使用率監視部４２０は、リソース２００のシステム全体のＣＰＵ使用率を監視し、現在のＣＰＵ使用率を示す情報を、周波数決定部４３０へ出力する。
【００５４】
周波数決定部４３０は、決定された上述の範囲（ＣＰＵ周波数の範囲）において、上述の使用率（ＣＰＵ使用率）が低いほど、ＣＰＵ周波数をより低く決定する。
【００５５】
より具体的には、周波数決定部４３０は、ＣＰＵ占有率の区分ごとに用意した複数の使用率−周波数テーブルを、予め格納する。使用率−周波数テーブルは、現在のＣＰＵ周波数とＣＰＵ使用率との組み合わせごとに、設定すべき新たなＣＰＵ周波数を記述したテーブルである。なお、記述される新たなＣＰＵ周波数の上限値は、使用率−周波数テーブルごとに異なっている。周波数決定部４３０は、入力された情報が示す選択テーブルを使用して、現在のＣＰＵ周波数と入力されたＣＰＵ使用率との組み合わせに対応するＣＰＵ周波数を、新たなＣＰＵ周波数として決定する。そして、周波数決定部４３０は、決定した新たなＣＰＵ周波数を示す情報を、周波数制御部４４０へ出力する。
【００５６】
図５〜図７は、第１〜第３の使用率−周波数テーブルの内容の例をそれぞれ示す図である。
【００５７】
図５〜図７に示すように、第１〜第３の使用率−周波数テーブル５３０−１〜５３０−３は、それぞれ、現在の周波数ｙ［ＭＨｚ］５３１とＣＰＵ使用率ｘ５３２との組み合わせごとに、新たなＣＰＵ周波数ｙ'［ＭＨｚ］５３３を記述している。
【００５８】
但し、ここでは、テーブル選択ルール５２０（図４参照）で説明したように、第１の使用率−周波数テーブル５３０−１は、ＣＰＵ占有率が低い場合に選択される。また、第３の使用率−周波数テーブル５３０−３は、ＣＰＵ占有率が高い場合に選択される。そして、図５〜図７に示すように、新たなＣＰＵ周波数ｙ'５３３の上限値は、第１の使用率−周波数テーブル５３０−１において最も低く、第３の使用率−周波数テーブル５３０−３において最も高い。したがって、上述の周波数範囲変更部４１０は、結果的に、ＣＰＵ占有率（影響度）が低いほどＣＰＵ周波数の上限値がより低くなるように、ＣＰＵ周波数の範囲を決定することになる。
【００５９】
また、第１〜第３の使用率−周波数テーブル５３０−１〜５３０−３のそれぞれにおいて、現在の周波数ｙ５３１ならびに使用率ｘ５３２が高いほど、より高い新たなＣＰＵ周波数ｙ'５３３が対応付けられている。この理由は、一般的に、使用率が高くなるほど、ＣＰＵ処理時間がシステム全体の応答速度のボトルネックになるからである。
【００６０】
図２の周波数制御部４４０は、決定されたＣＰＵ周波数で、リソース２００のＣＰＵを動作させる。
【００６１】
より具体的には、周波数制御部４４０は、例えば、ＣＰＵに供給されるクロック信号を発生するＰＬＬ（phase locked loop）を制御して、ＣＰＵ周波数を、入力された情報が示す新たなＣＰＵ周波数に一致させる。
【００６２】
情報処理装置１００は、例えば、リソース２００に含まれるＣＰＵと、ＲＡＭなどの記憶媒体を有する。この場合、影響度判別部３００および動作速度制御部４００の各部は、ＣＰＵにより制御プログラムが実行することにより実現される。
【００６３】
このような情報処理装置１００は、フォーカスアプリの構成プロセスのＣＰＵ占有率（影響度）が低い場合に、リソース２００の動作速度を低くする。これにより、情報処理装置１００は、第三者作成のアプリが使用される場合でも、リソース２００の動作に対するユーザの体感速度の低下を抑えた状態で、電力消費を低減することができる。
【００６４】
以上で、情報処理装置１００の構成についての説明を終える。
【００６５】
次に、情報処理装置１００の動作について説明する。
【００６６】
図８は、情報処理装置１００の動作の一例を示すフローチャートである。
【００６７】
まず、ステップＳ１１００において、フォーカスアプリ検出部３１１は、所定のフォーカスアプリ特定手法により（図３参照）、フォーカスアプリを検出する。
【００６８】
そして、ステップＳ１２００において、参照サービス検出部３１２は、フォーカスアプリの参照サービスを列挙する。
【００６９】
そして、ステップＳ１３００において、構成プロセス解析部３２０は、フォーカスアプリおよび参照サービスの構成プロセスを列挙する。
【００７０】
そして、ステップＳ１４００において、リソース占有率算出部３３０は、各構成プロセスのＣＰＵ時間から、構成プロセス全体のＣＰＵ占有率を算出する。
【００７１】
そして、ステップＳ１５００において、周波数範囲変更部４１０は、算出されたＣＰＵ占有率から、使用する使用率−周波数テーブルを選択する。
【００７２】
そして、ステップＳ１６００において、リソース使用率監視部４２０は、リソース２００のＣＰＵ使用率を測定する。
【００７３】
そして、ステップＳ１７００において、周波数決定部４３０は、選択された使用率−周波数テーブルとＣＰＵ使用率とから、ＣＰＵ周波数を決定する。
【００７４】
そして、ステップＳ１８００において、周波数制御部４４０は、決定されたＣＰＵ周波数でＣＰＵが動作するように、リソース２００を制御する。
【００７５】
そして、ステップＳ１９００において、フォーカスアプリ検出部３１１は、ユーザ操作などにより、フォーカスアプリの検出結果に基づくＣＰＵ周波数の制御処理の終了を指示されたか否かを判断する。フォーカスアプリ検出部３１１は、かかる制御処理の終了を指示されていない場合（Ｓ１９００：ＮＯ）、ステップＳ１１００へ戻る。また、フォーカスアプリ検出部３１１は、かかる制御処理の終了を指示された場合（Ｓ１９００：ＹＥＳ）、一連の動作を終了する。
【００７６】
このような動作により、情報処理装置１００は、フォーカスアプリの構成プロセスのＣＰＵ占有率（影響度）が低い場合に、リソース２００の動作速度を低くすることができる。また、情報処理装置１００は、フォーカスアプリやその有無が変化するごとに、その変化に追従して、リソース２００の動作速度を変化させることができる。
【００７７】
例えば、ＣＰＵ占有率ｚが０.０５であった場合、図４に示すテーブル選択ルールにより、第２の使用率−周波数テーブルが、選択される。そして、現在のＣＰＵ周波数ｙが６００ＭＨｚで、ＣＰＵ使用率ｘが０.９であったとする。この場合、新たなＣＰＵ周波数ｙ’として、９００ＭＨｚが決定される。
【００７８】
以上で、情報処理装置１００の動作についての説明を終える。
【００７９】
以上のように、本実施の形態に係る情報処理装置１００は、フォーカスアプリの構成プロセスのＣＰＵ占有率（影響度）が低い場合に、リソース２００の動作速度を低くする。これにより、情報処理装置１００は、使用アプリの負荷特性や処理精度などの情報やポリシテーブルに依存することなく、リソース２００の動作に対するユーザの体感速度を低下させずに、リソース２００の動作速度を低減することができる。すなわち、情報処理装置１００は、第三者作成のアプリが使用される場合でも、リソース２００の動作に対するユーザの体感速度の低下を抑えた状態で、電力消費を低減することができる。
【００８０】
（実施の形態３）
本発明の実施の形態３は、ディスプレイが点灯しているか否かに基づいて、影響度を判別するようにした例である。
【００８１】
図９は、本実施の形態に係る情報処理装置の構成の一例を示すブロック図であり、実施の形態２の図２に対応するものである。図２と同一部分には、同一符号を付し、これについての説明を省略する。
【００８２】
図９において、情報処理装置１００ａは、図２の影響度判別部３００に代えて、影響度判別部３００ａを有する。
【００８３】
影響度判別部３００ａは、図２のフォーカスアプリ検出部３１１、参照サービス検出部３１２、構成プロセス解析部３２０、およびリソース占有率算出部３３０に代えて、ディスプレイ点灯監視部３４０ａを有する。
【００８４】
ディスプレイ点灯監視部３４０ａは、リソース２００に含まれるディスプレイが点灯しているか否かを判断する。
【００８５】
より具体的には、ディスプレイ点灯監視部３４０ａは、例えば、ディスプレイの表示制御部（図示せず）に問い合わせることにより、ディスプレイが点灯しているか点灯していないか（つまり消灯しているか）を判断する。そして、ディスプレイ点灯監視部３４０ａは、ディスプレイが消灯しているとき、上述のＣＰＵ占有率が０である事を示す情報を、動作速度制御部４００へ出力する。また、ディスプレイ点灯監視部３４０ａは、ディスプレイが点灯しているとき、上述のＣＰＵ占有率が０を超える所定の値（たとえば１）である事を示す情報を、動作速度制御部４００へ出力する。
【００８６】
ディスプレイが点灯していないということは、つまり、フォーカスアプリが存在しておらず、フォーカスアプリのＣＰＵ占有率（影響度）が０であるということである。したがって、本実施の形態においても、後段の周波数範囲変更部４１０は、結果的に、ＣＰＵ占有率（影響度）が低いほどＣＰＵ周波数の上限値がより低くなるように、ＣＰＵ周波数の範囲を決定することになる。
【００８７】
図１０は、本実施の形態に係る情報処理装置１００ａの動作の一例を示すフローチャートであり、実施の形態２の図８に対応するものである。図８と同一部分には同一ステップ番号を付し、これについての説明を省略する。
【００８８】
まず、ステップＳ１４００ａにおいて、ディスプレイ点灯監視部３４０ａは、ディスプレイが点灯しているか否かを判断する。
【００８９】
そして、ステップＳ１５００ａにおいて、周波数範囲変更部４１０は、ディスプレイの点灯の有無に基づいて、使用率−周波数テーブルを選択する。すなわち、周波数範囲変更部４１０は、ディスプレイが消灯している場合には、ディスプレイ点灯監視部３４０ａからＣＰＵ占有率が０であることを示す情報が入力され、ＣＰＵ周波数の上限値が低いテーブルを選択する。
【００９０】
このように、本実施の形態に係る情報処理装置１００ａは、ディスプレイが点灯しているとき、上述の影響度が高いと判断し、ディスプレイが点灯していないとき、上述の影響度が低いと判断する。これにより、情報処理装置１００ａは、第三者作成のアプリが使用される場合でも、簡単な判断処理により、リソース２００の動作に対するユーザの体感速度の低下を抑えた状態で、電力消費を低減することができる。また、これにより、情報処理装置１００ａは、装置の簡素化、小型化、軽量化、および低コスト化だけでなく、更なる電力消費の低減を図ることができる。
【００９１】
なお、新たなＣＰＵ周波数の決定手法は、以上説明した実施の形態２および実施の形態３では、テーブルを用いた手法としたが、これに限定されない。例えば、情報処理装置は、ＣＰＵ占有率ｚに応じて、ＣＰＵ使用率ｘからＣＰＵ周波数ｙ’を決定する、計算式やプログラム等のアルゴリズムを用いて、新たなＣＰＵ周波数を決定してもよい。また、情報処理装置は、かかるテーブルや計算式などを、動的に変更してもよい。
【００９２】
また、動作速度に応じて電力を消費するリソースおよび動作速度制御の対象は、以上説明した実施の形態２および実施の形態３において、ＣＰＵ（ＣＰＵ時間）およびＣＰＵ周波数としたが、これに限定されない。本願発明におけるリソースおよび動作速度制御対象は、例えば、バス帯域およびバスクロック周波数、メモリ帯域およびメモリクロック周波数、ネットワーク通信帯域および出力パワー、画面更新要求回数およびフレーム周波数である。また、これらの場合には、情報処理装置は、バスやメモリなどの使用帯域や、マルチプロセッサシステムの場合の使用プロセッサ数に基づいて、動作速度を制御してもよい。
【００９３】
また、実施の形態３は、実施の形態２の図３に示したフォーカスアプリ特定手法のうち、フォーカスアプリが存在しないことの検出手法を、適用してもよい。
【００９４】
また、情報処理装置の各機能部は、例えば、集積回路により構成されてもよい。情報処理装置の各機能部は、個別に１チップ化されていてもよいし、複数で１チップ化されても良い。集積回路は、集積度の違いにより、ＬＳＩ（large scale integration）、ＩＣ（integrated circuit）、システムＬＳＩ、スーパーＬＳＩ、またはウルトラＬＳＩ等とすることができる。また、集積回路は、専用回路または汎用プロセッサにより実現されるものであっても良い。また、集積回路は、その製造後にプログラムすることが可能なＦＰＧＡ（field programmable gate array）や、内部の回路セルの接続や設定を再構成可能なコンフィギュラブル・プロセッサとしても良い。更には、情報処理装置の各機能部は、半導体技術の進歩または派生する別技術に応じて、ＬＳＩに置き換わる他の集積回路化の技術（たとえばバイオ技術）により集積化されたものにより実現されても良い。
【産業上の利用可能性】
【００９５】
本発明は、第三者作成のアプリが使用される場合でも、リソースの動作に対するユーザの体感速度の低下を抑えた状態で電力消費を低減することができる、情報処理装置および動作速度制御方法として有用である。すなわち、本発明は、スマートフォンなど、サードパーティアプリがインストールされる情報処理装置に好適である。
【符号の説明】
【００９６】
１００、１００ａ  情報処理装置
２００  リソース
３００、３００ａ  影響度判別部
３１０  注目対象検出部
３１１  フォーカスアプリ検出部
３１２  参照サービス検出部
３２０  構成プロセス解析部
３３０  リソース占有率算出部
３４０ａ  ディスプレイ点灯監視部
４００  動作速度制御部
４１０  周波数範囲変更部
４２０  リソース使用率監視部
４３０  周波数決定部
４４０  周波数制御部
【図１】
2012252493.tif 000003
【図２】
2012252493.tif 000004
【図３】
2012252493.tif 000005
【図４】
2012252493.tif 000006
【図５】
2012252493.tif 000007
【図６】
2012252493.tif 000008
【図７】
2012252493.tif 000009
【図８】
2012252493.tif 000010
【図９】
2012252493.tif 000011
【図１０】
2012252493.tif 000012