説明

消費電力評価装置、電力係数作成システム、消費電力評価方法及び電力係数作成方法。

【課題】ハードウェアに搭載されるアプリケーションプログラムの開発時やハードウェアの使用時において利用できるような消費電力の評価結果を提供できるようにすること。
【解決手段】部品状態管理部230は、自機のハードウェアを構成する端末HW220の動作状態を示す情報を取得し、この取得した情報に基づいて、端末HW220の部品の動作状態を示しており端末機種に依存しないモデルパラメータA〜Dの値を取得する。電力算出部240は、部品状態管理部230によって取得されたモデルパラメータA〜Dの値と、モデルパラメータA〜Dに応じて予め設定された電力係数cの値とに基づき、モデルパラメータA〜D及び電力係数cを含む所定の消費電力評価式(1)に従って、無線通信端末の消費電力の評価値Pestimatedを算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、消費電力の評価値を算出するための消費電力評価装置と、電力係数作成システムと、消費電力評価方法と、電力係数作成方法とに関する。
【背景技術】
【0002】
バッテリ駆動で動作する無線通信端末は、ハードウェアやソフトウェアの開発時からエンドユーザの使用時に至るまで、バッテリの持つ限られた電力を効率的に消費できるように、消費電力を予め評価した上で設計されるのが好ましい。従来の消費電力の評価手法の多くは、特許文献1のように、プロセッサチップや無線チップなどのハードウェアモジュールの消費電力をハードウェアの設計パラメータを使用して個別にモデル化し、消費電力を定量化している。特許文献1の技術は、プロセッサ設計をキャラクタライズし、プロセッサで実行するソフトウエアプログラムの電力消費を推定する技法であり、1以上のトレーニングプログラムを利用して1以上の動作ウインドウの間に平均電力消費を求めるようにシミュレーションを実行し、その結果を用いて、誤差を最小化しつつ電力消費を推定できるキャラクタリゼーション数式用のパラメータ及び係数を選択することでプロセッサの電力モデルを取得するものである。特許文献1において、アプリケーションプログラムの消費電力の評価は、アプリケーションプログラムを搭載する実際のハードウェアの設計パラメータに基づいて行われる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−249974号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記のような従来の消費電力の評価方法は、比較的長い計算時間を要するシミュレーションに基づくものとなっているので、電力評価に必要な時間も比較的長くなり、したがって、このような従来の消費電力の評価方法を、様々なアプリケーションプログラムを開発するアプリケーション開発に用いるのは容易ではない。また、従来の消費電力の評価方法を無線通信端末の実行時に用いるのは、評価に長い計算時間を伴うので、無線通信端末が余計な電力を消費してしまうため好適ではない。更に、無線通信端末などのシステム上でアプリケーションプログラムを利用するエンドユーザにとって、アプリケーションプログラムの実行やデータ送受信等を行うことによってどの程度の電力が消費されるのかを認識するのは容易ではなく、よって、バッテリ駆動で動作する無線通信端末の限られた電力を好適に利用することが困難となっている。本発明の目的は、ハードウェアに搭載されるアプリケーションプログラムの開発時やハードウェアの使用時において利用できるような消費電力の評価結果を提供できるようにすることである。
【課題を解決するための手段】
【0005】
本発明は、無線通信端末の消費電力を評価する消費電力評価装置であって、前記無線通信端末のハードウェアを構成する所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記部品の動作状態を示しており端末機種に依存しないパラメータの値を取得する部品状態管理部と、前記部品状態管理部によって取得された前記パラメータの値と、該パラメータに応じて予め設定された電力係数の値とに基づき、前記パラメータ及び前記電力係数を含む所定の消費電力評価式に従って、前記無線通信端末の消費電力の評価値を算出する電力算出部とを備える、ことを特徴とする。本発明によれば、部品の動作状態を示し端末機種に依存しないパラメータを含む消費電力評価式によって消費電力の評価値が算出されるので、様々なハードウェアの無線通信端末に対して良好な消費電力の評価値が算出できる。
【0006】
本発明では、所定のアプリケーションプログラムを実行するソフトウェア実行部を更に備え、前記部品状態管理部は、前記ソフトウェア実行部による前記アプリケーションプログラムの実行時における前記所定部品の動作状態を示す情報を取得する、ことを特徴とする。本発明によれば、アプリケーションプログラムの実行時における消費電力の評価値が算出可能となる。
【0007】
本発明では、前記部品状態管理部によって過去に取得された前記パラメータの値を格納するパラメータ履歴DBを更に備え、前記電力算出部は、前記パラメータ履歴DBから取得した前記パラメータの値を用いて、前記無線通信端末の消費電力の評価値を算出する、ことを特徴とする。本発明によれば、パラメータ履歴DBが、部品状態管理部によって過去に取得されたパラメータの値を格納しているので、過去に取得されたパラメータの値の再利用が可能となる。
【0008】
本発明では、パラメータ履歴DBは、外部に設置されたパラメータ履歴管理サーバから、過去に取得された前記パラメータの値を取得する、ことを特徴とする。本発明によれば、外部のパラメータ履歴管理サーバからも、過去のパラメータの値が取得できるので、利用可能なパラメータのバリエーションが広がる。
【0009】
本発明では、前記アプリケーションプログラムの実行時における前記動作状態と前記消費電力の評価値とを表示する表示部を更に備える、ことを特徴とする。本発明によれば、表示部が、動作状態及び評価値を表示するので、エンドユーザは評価値等の情報を視覚的に確認できる。
【0010】
本発明では、バッテリの残量を取得するバッテリ残量取得部と、前記バッテリ残量取得部によって取得された前記バッテリ残量と、前記電力算出部によって算出された前記消費電力の評価値とに基づいて、使用可能時間を算出する使用可能時間算出部とを更に備える、ことを特徴とする。本発明によれば、バッテリ残量取得部が、バッテリ残量を取得するので、このバッテリ残量と、電力算出部によって算出された消費電力の評価値とを用いれば、使用可能時間の算出が可能となる。
【0011】
本発明では、前記電力算出部は、前記消費電力の評価値の内訳を示す情報を出力し、前記表示部は、前記電力算出部によって出力された前記評価値の内訳を示す情報を表示する、ことを特徴とする。本発明によれば、消費電力の評価値の内訳が表示部によって表示されるので、内訳についてもエンドユーザは視覚的に確認できる。
【0012】
本発明では、予め設定された端末機種毎の前記電力係数の値を格納する端末プロファイル管理部を更に備える、ことを特徴とする。本発明によれば、端末機種毎の前記電力係数の値を格納する端末プロファイル管理部を備えるので、様々な無線通信端末に対し消費電力の評価が容易に行える。
【0013】
本発明では、前記無線通信端末のハードウェア構成部品の動作状態を仮想的に生成する仮想ハードウェア動作状態生成部を更に備える、ことを特徴とする。本発明によれば、無線通信端末のハードウェア構成部品の動作状態を仮想的に生成する仮想ハードウェア動作状態生成部を備えるので、無線通信端末が実際に存在しなくても、当該無線通信端末における消費電力の評価値の算出が可能となる。更に、無線通信端末を交換する場合、仮想ハードウェア動作状態生成部の交換で済むので、様々な無線通信端末に対し消費電力の評価が容易に行える。
【0014】
本発明は、無線通信端末のハードウェアを構成する所定部品の動作状態を示していると共に端末機種に依存しないパラメータの値を用いて該無線通信端末の消費電力の評価値を算出するための消費電力評価式に含まれており、該消費電力評価式において前記パラメータの重みとして該パラメータに乗じられる電力係数の値を取得するための電力係数作成システムであって、所定の試験用無線通信端末のハードウェアを構成する所定部品の消費電力を変化させるための試験プログラムを実行する試験プログラム実行部と、前記試験プログラム実行部による前記試験プログラムの実行中に前記試験用無線通信端末の消費電力を測定する電力測定部と、前記試験プログラム実行部による前記試験プログラムの実行中に前記試験用無線通信端末の前記所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記試験用無線通信端末における前記パラメータの値を取得する部品状態管理部と、前記電力測定部によって測定された消費電力と、前記部品状態管理部によって取得された前記パラメータの値とを試験ログとしてメモリに格納する試験ログ管理部と、前記試験ログ管理部によって前記メモリに格納された前記試験ログを前記消費電力評価式に適用することによって、前記電力係数を算出する電力係数算出部とを備える、ことを特徴とする。本発明によれば、無線通信端末の消費電力の評価値を算出するための消費電力評価式の電力係数が、この電力係数に乗じられるパラメータの測定値と、消費電力の測定値とに基づいて、算出される。よって、実測値に基づいた消費電力評価式が作成可能となる。
【0015】
本発明では、前記試験プログラム実行部は、前記試験プログラムを実行することによって前記試験用無線通信端末のCPUの動作状態が安定しない場合に、前記試験プログラムの実行中に前記試験用無線通信端末の前記CPUの動作状態を一定にするプログラムも並行して実行する、ことを特徴とする。本発明によれば、試験プログラム実行時にCPUの動作が不安定になっても、CPUの動作を一定にするプログラムも並行して実行できるので、当該試験プログラム実行中によって取得される測定値から、CPUの動作変動による影響を十分に低減できる。
【0016】
本発明では、前記試験プログラム実行部は、前記CPUの動作状態を一定にする前記プログラムを実行することによって、前記CPUのスリープ周期を調節する、ことを特徴とする。本発明によれば、CPUの動作状態を一定にするプログラムがCPUのスリープ周期を調整するものであるので、CPUの動作状態を一定にすることが容易確実に行える。
【0017】
本発明では、前記試験プログラム実行部は、所定の遠隔試験用端末と、前記試験用無線通信端末とに対し相互にデータの送受信を行わせる試験プログラムを実行する、ことを特徴とする。本発明によれば、二つの端末間でデータの送受信を行わせることができるので、通信時の消費電力の評価値の算出が可能となる。
【0018】
本発明では、前記試験ログは複数のパラメータの値を含み、前記試験プログラム実行部は、前記複数のパラメータのそれぞれに対応する複数の試験プログラムを実行可能であり、該複数のパラメータのうち、強相関の二つのパラメータのそれぞれに対応する二つの試験プログラムを並行して実行する、ことを特徴とする。本発明によれば、強相関の二つのパラメータのそれぞれに対応する二つの試験プログラムを並行して実行できるので、この実行によって相関の程度を確認できると共に、相関の低減に向けた対処が可能となる。
【0019】
本発明では、前記試験用無線通信端末は、前記試験プログラム実行部と、前記電力測定部と、前記部品状態管理部と、前記試験ログ管理部と、前記電力係数算出部とを有する、ことを特徴とする。本発明によれば、試験用無線通信端末が、前記試験プログラム実行部と、前記電力測定部と、前記部品状態管理部と、前記試験ログ管理部と、前記電力係数算出部とを有するので、試験用無線通信端末のみで、電力係数の算出が可能となる。よって、装置構成を簡略化できる。
【0020】
本発明は、無線通信端末の消費電力を評価する消費電力評価装置を用いた消費電力評価方法であって、消費電力評価装置が、前記無線通信端末のハードウェアを構成する所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記部品の動作状態を示しており端末機種に依存しないパラメータの値を取得する部品状態管理ステップと、消費電力評価装置が、前記部品状態管理ステップにおいて取得した前記パラメータの値と、該パラメータに応じて予め設定された電力係数の値とに基づき、前記パラメータ及び前記電力係数を含む所定の消費電力評価式に従って、前記無線通信端末の消費電力の評価値を算出する電力算出ステップとを備える、ことを特徴とする。本発明によれば、部品の動作状態を示し端末機種に依存しないパラメータを含む消費電力評価式によって消費電力の評価値が算出されるので、様々なハードウェアの無線通信端末に対して良好な消費電力の評価値が算出できる。
【0021】
本発明は、無線通信端末のハードウェアを構成する所定部品の動作状態を示していると共に端末機種に依存しないパラメータの値を用いて該無線通信端末の消費電力の評価値を算出するための消費電力評価式に含まれており、該消費電力評価式において前記パラメータの重みとして該パラメータに乗じられる電力係数の値を取得するための電力係数作成システムを用いた電力係数作成方法であって、電力係数作成システムが、所定の試験用無線通信端末のハードウェアを構成する所定部品の消費電力を変化させるための試験プログラムを実行する試験プログラム実行ステップと、電力係数作成システムが、前記試験プログラム実行ステップにおける前記試験プログラムの実行中に前記試験用無線通信端末の消費電力を測定する電力測定ステップと、電力係数作成システムが、前記試験プログラム実行ステップにおける前記試験プログラムの実行中に前記試験用無線通信端末の前記所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記試験用無線通信端末における前記パラメータの値を取得する部品状態管理ステップと、電力係数作成システムが、前記電力測定ステップにおいて測定した消費電力と、前記部品状態管理ステップにおいて取得した前記パラメータの値とを試験ログとしてメモリに格納する試験ログ管理ステップと、電力係数作成システムが、前記試験ログ管理ステップにおいて前記メモリに格納した前記試験ログを前記消費電力評価式に適用することによって、前記電力係数を算出する電力係数算出ステップとを備える、ことを特徴とする。本発明によれば、無線通信端末の消費電力の評価値を算出するための消費電力評価式の電力係数が、この電力係数に乗じられるパラメータの測定値と、消費電力の測定値とに基づいて、算出される。よって、実測値に基づいた消費電力評価式が作成可能となる。
【0022】
本発明では、前記無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理部を更に備え、前記部品状態管理部は、前記仮想部品状態管理部によって取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する。このように、本発明では、仮想動作状態情報を用いることによって、動作状態を直接取得するのが困難な部品に対しても当該部品の動作状態を示すパラメータの値を取得できる。
【0023】
本発明では、前記他の所定部品の動作は、所定の省電力制御の元で行われる動作を含んでいてもよい。このように、例えばソフトウェアによるモニタリングが困難な省電力制御の元で行われる動作を含んでいても、当該部品の動作状態を直接モニタリングせずに仮想動作状態情報を用いるので、当該部品の省電力制御下の動作状態を示すパラメータの値を取得できる。
【0024】
本発明では、前記試験用無線通信端末を構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理部を更に備え、前記部品状態管理部は、前記仮想部品状態管理部によって取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する。このように、本発明では、仮想動作状態情報を用いることによって、動作状態を直接取得するのが困難な部品に対しても当該部品の動作状態を示すパラメータの値を取得できる。
【0025】
本発明では、前記他の所定部品の動作は、所定の省電力制御の元で行われる動作を含んでいてもよい。このように、例えばソフトウェアによるモニタリングが困難な省電力制御の元で行われる動作を含んでいても、当該部品の動作状態を直接モニタリングせずに仮想動作状態情報を用いるので、当該部品の省電力制御下の動作状態を示すパラメータの値を取得できる。
【0026】
本発明では、前記消費電力評価装置が、前記無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理ステップを更に備え、前記部品状態管理ステップでは、前記消費電力評価装置が、前記仮想部品状態管理ステップにおいて取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する。このように、本発明では、仮想動作状態情報を用いることによって、動作状態を直接取得するのが困難な部品に対しても当該部品の動作状態を示すパラメータの値を取得できる。
【0027】
本発明では、前記電力係数作成システムが、前記試験用無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理ステップを更に備え、前記部品状態管理ステップでは、前記電力係数作成システムが、前記仮想部品状態管理ステップによって取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する。このように、本発明では、仮想動作状態情報を用いることによって、動作状態を直接取得するのが困難な部品に対しても当該部品の動作状態を示すパラメータの値を取得できる。
【発明の効果】
【0028】
本発明によれば、ハードウェアに搭載されるアプリケーションプログラムの開発時やハードウェアの使用時において利用できるような消費電力の評価結果が提供できる。
【図面の簡単な説明】
【0029】
【図1】第1の実施形態に係る電力係数作成システムの構成及び動作を説明するための図である。
【図2】第1の実施形態に係る電力係数作成システムの動作を説明するためのフローチャートである。
【図3】第1の実施形態に係る電力係数作成システムの動作を説明するためのフローチャートである。
【図4】第1の実施形態に係る電力係数作成システムの動作を説明するためのフローチャートである。
【図5】第2の実施形態に係る無線通信端末の構成及び動作を説明するための図である。
【図6】第3の実施形態に係るアプリケーション開発装置の構成及び動作を説明するための図である。
【図7】第4の実施形態に係る電力係数作成システムの構成及び動作を説明するための図である。
【図8】第4の実施形態に係る無線通信端末の構成及び動作を説明するための図である。
【図9】第4の実施形態に係るアプリケーション開発装置の構成及び動作を説明するための図である。
【図10】第1〜第3の実施形態における動作を説明するための図である。
【図11】第4の実施形態に係る動作を説明するための図である。
【図12】第4の実施形態に係る動作を説明するための図である。
【図13】第4の実施形態に係る動作を説明するための図である。
【発明を実施するための形態】
【0030】
以下、図面を参照して、本発明に係る好適な実施形態について詳細に説明する。
なお、図面の説明において、可能な場合には、同一要素には同一符号を付し、重複する説明を省略する。
【0031】
(第1の実施形態)
第1の実施形態に係る電力係数作成システム50について説明する。電力係数作成システム50は、携帯電話等の無線通信端末のハードウェアを構成する所定部品の動作状態(例えばCPU負荷率等)を示していると共に端末機種に依存しないモデルパラメータ(後述のモデルパラメータA〜D等)の値を用いて、この無線通信端末の消費電力の評価値(後述のPestimated)を算出するための消費電力評価モデル(消費電力評価式)に含まれておりこの消費電力評価式において上記モデルパラメータの重みとしてこのモデルパラメータに乗じられる電力係数(後述のc)の値を取得する。まず、電力係数作成システム50によって作成される消費電力評価モデルについて説明する。消費電力評価モデルは、無線通信端末等のハードウェアの消費電力を算出するための計算方法である。一般に、消費電力評価モデルは以下の線形式(消費電力評価式)で表される。
【0032】
【数1】

【0033】
estimated,P,c,Nは、それぞれ、消費電力の見積もり値、消費電力評価モデルのパラメータ(例えばCPUの負荷率等であり、以下モデルパラメータという)の値、各モデルパラメータの係数(電力係数)、モデルパラメータの数、を表す。そして、iは、モデルパラメータを識別する番号を示し、1〜Nの整数である(以下、同様)。モデルパラメータの値Pを具体的にどのような値にするかは、モデル化の対象を何にするかによって(どのようなモデルパラメータかによって)異なるが、上記の線形式は、Pの各値を入力値として与え、Pestimatedを出力値とする(算出する)ために用いられる。そのため、事前にciを求めておく必要がある。これには、特定の試験を実行したときに実際に測定した消費電力の値(Pestimatedに代入する値)と、全てのモデルパラメータの値(全Pに代入する値)とを基準値とした、最小二乗法によるモデルフィッティングを用いてcを決定する方法が一般的である。最小二乗法を用いた重回帰分析は、式(2)に示すεの二乗和を最小化するcを決定する。ここで、PM,Pji,εは、それぞれ、消費電力の基準値(測定値)、サンプルj(jはサンプルを識別するための番号)におけるi番目のモデルパラメータの値、サンプルjにおけるモデル誤差、を表す。
【0034】
【数2】

【0035】
重回帰分析では、サンプルとして与えられたモデルパラメータ間の相関が強いと有効な重回帰式が得られないことが知られている。相関の強いモデルパラメータが二つ以上存在すると、どちらのモデルパラメータの値の変化がどの程度消費電力の増減に影響を与えるのかを解析できないためである。この性質は多重共線性と呼ばれる。多重共線性が観測された場合には、片方のモデルパラメータを除去することによりこの問題を解消できる。しかし、除去したモデルパラメータの値の変化が、評価対象となっている装置の消費電力の増減に大きく影響する場合は、このモデルパラメータを除去することにより、消費電力の評価の精度が低下する虞がある。効率良くモデルパラメータを選択する方法としてステップワイズ法が知られているが、重回帰分析に使用しているサンプルに統計的偏りが存在する場合には多重共線性の問題を解消できない。後述する第1の実施形態に係る電力係数作成システム50は、多重共線性の問題が発生しないようなテストベンチ(後述の試験プログラムPr1〜Pr4)と、消費電力の評価に大きな影響を及ぼす少数のモデルパラメータとを用いて精度良く無線通信端末の消費電力の評価が行える消費電力評価モデルを生成するための構成を有する。
【0036】
次に、第1の実施形態に係る消費電力評価モデルについて説明する。第1の実施形態に係る消費電力評価モデルは、重回帰分析により電力係数cを決定することを前提としている。一般に、次の4つの要素E1〜E4が消費電力評価モデルの精度を決定する。
(要素E1)モデルパラメータ。
(要素E2)モデル式。
(要素E3)パラメータ係数(電力係数)の決定方法。
(要素E4)重回帰分析に使用するサンプル。
消費電力の評価を行う無線通信端末に、CPU、通信インタフェース、ストレージデバイス等の主な構成部品を有する携帯電話等の端末(図1に示す試験用無線通信端末10)を用い、モデル式に線形式を用い、パラメータ係数(電力係数)の算出に最小二乗法を用いる。そして、次の四種類のモデルパラメータA〜Dを用いる。
(モデルパラメータA)CPUの負荷率。
(モデルパラメータB)無線による単位時間当たりのデータ受信量。
(モデルパラメータC)無線による単位時間当たりのデータ送信量。
(モデルパラメータD)単位時間当たりのディスク(無線通信端末の内蔵メモリや着脱可能な記録メディア)へのデータ書き込み量+データ消去量。
【0037】
モデルパラメータA〜Dは、無線通信端末の消費電力に対し、線形に寄与するものであって、かつ大きな影響を与えることが予想できることを理由に選択されたものとなっている。一般的な無線通信端末には、上記の構成部品以外にも、液晶ディスプレイのように無線通信端末の消費電力の増減に影響を与える部品が存在するが、これらの部品については、動作状態の遷移が比較的単純であり、考慮すべきモデル化の要素として新たにモデルパラメータを追加することは容易であると考えられる。このため、第1の実施形態においては、液晶ディスプレイ等の他の部品の寄与を省略する。このように、第1の実施形態では、モデルパラメータA〜D以外のモデルパラメータをモデル式(線形式)における定数項として扱う。
【0038】
なお、モデルパラメータA〜D以外のモデルパラメータを用いてもよく、モデルパラメータA〜Dに限定するものではない。また、前述の例のように、一つの無線通信インタフェースに対して、二つのモデルパラメータを設定するなど、モデル化する上(消費電力評価モデルを設定する上で)で注目する構成部品一つに対するモデルパラメータの数は、必要に応じて設定できるものとする。
【0039】
次に、図1を参照して、第1の実施形態に係る電力係数作成システム50の構成を説明する。電力係数作成システム50は、試験用無線通信端末10、電力測定部20、解析用コンピュータ30及び遠隔試験用端末40を備える。試験用無線通信端末10は、第1の実施形態に係る消費電力評価モデルを作成するための基準値(モデルパラメータの測定値と消費電力の測定値)を提供するための装置である。
【0040】
試験用無線通信端末10は、物理的には端末HW12(HW:ハードウェア)を有する。端末HW12は、CPU、ROM及びRAMと、外部機器(例えば、電力測定部20、解析用コンピュータ30、遠隔試験用端末40等)とデータの送受信を行うための通信装置と、を含む。端末HW12のCPUは、端末HW12のROM等の内蔵メモリに格納された所定のコンピュータプログラム(例えば、図2〜図4に示す処理の一部又は全部を実行するためのコンピュータプログラム)を端末HW12のRAMにロードして実行することにより、試験用無線通信端末10を統括的に制御する。
【0041】
また、試験用無線通信端末10は、機能的には、試験プログラム実行部11及び部品状態管理部13を有する。試験プログラム実行部11及び部品状態管理部13は、端末HW12のCPUが端末HW12のROM等の内蔵メモリに格納されたコンピュータプログラムを実行することによって実現される機能である。試験プログラム実行部11は、試験用無線通信端末10のROM等の内蔵メモリに格納された試験プログラム113(後述の試験プログラムPr1〜Pr4、試験シナリオSc1〜Sc9を含む)を実行する。試験プログラム113は、試験用無線通信端末10の端末HW12を構成するCPU等の部品の消費電力を変化させるためのプログラムである。
【0042】
電力測定部20は、試験用無線通信端末10の消費電力を測定する装置であり、第1の実施形態に係る消費電力評価モデルを作成するための基準値となる消費電力の測定値を示す電力ログを作成し、この電力ログを解析用コンピュータ30に出力する。特に、電力測定部20は、試験プログラム実行部11による試験プログラム113の実行中に試験用無線通信端末10の消費電力を測定する。なお、電力測定部20は、図1に示すように、試験用無線通信端末10の外部に設けられてもよいし、試験用無線通信端末10に設けられていてもよい。
【0043】
解析用コンピュータ30は、試験ログ(電力ログや、モデルパラメータの測定値を含む)の解析(重回帰分析)により電力係数cを算出する。解析用コンピュータ30は、物理的にはCPU、ROM及びRAM(試験ログ34を含む)と、外部機器(例えば、試験用無線通信端末10、電力測定部20、遠隔試験用端末40等)とデータの送受信を行うための通信装置と、を有する。解析用コンピュータ30のCPUは、解析用コンピュータ30のROM等の内蔵メモリに格納された所定のコンピュータプログラム(例えば、図2に示す処理の一部又は全部を実行するためのコンピュータプログラム)を解析用コンピュータ30のRAMにロードして実行することにより、解析用コンピュータ30を統括的に制御する。また、解析用コンピュータ30は、機能的には、電力係数算出部31、試験ログ管理部32及び部品状態管理部33を有する。電力係数算出部31、試験ログ管理部32及び部品状態管理部33は、解析用コンピュータ30のCPUが解析用コンピュータ30のROM等の内蔵メモリに格納されたコンピュータプログラムを実行し、試験ログ34等を用いることによって実現される機能である。
【0044】
遠隔試験用端末40は、試験用無線通信端末10とデータの送受信を行うための通信端末である。遠隔試験用端末40は、物理的にはCPU、ROM及びRAMと、外部機器(例えば、試験用無線通信端末10等)とデータの送受信を行うための通信装置と、を有する。遠隔試験用端末40のCPUは、遠隔試験用端末40のROM等の内蔵メモリに格納された所定のコンピュータプログラム(例えば、図2〜図4に示す処理の一部又は全部を実行するためのコンピュータプログラム)を遠隔試験用端末40のRAMにロードして実行することにより、遠隔試験用端末40を統括的に制御する。また、遠隔試験用端末40は、機能的には、試験プログラム実行部41を有する。試験プログラム実行部41は、遠隔試験用端末40の内蔵メモリに格納された通信試験プログラム411(後述の試験プログラムPr1〜Pr4、試験シナリオSc1〜Sc9を含む)を実行する。試験プログラム実行部11及び試験プログラム実行部41は、試験用無線通信端末10と遠隔試験用端末40とに相互にデータの送受信を行わせる試験プログラムを同時に実行する。
【0045】
次に、図1及び図2を用いて、電力係数作成システム50が電力係数cを作成するまでの主な流れを説明する。まず、電力係数作成システム50は、以下のようにして、重回帰分析に必要なデータ(試験用無線通信端末10の消費電力の測定値とモデルパラメータA〜Dの値P)を取得する。試験用無線通信端末10の試験プログラム実行部11及び遠隔試験用端末40の試験プログラム実行部41は、それぞれ、後述する試験シナリオSc1〜Sc9に基づき、試験プログラムPr1〜Pr4の実行を開始する(ステップS1−1)。試験シナリオSc1〜Sc9の実行時において、電力測定部20は、試験用無線通信端末10の消費電力値を所定のタイミングで取得して電力ログを作成し、同時に部品状態管理部13又は部品状態管理部33は、端末HW12に含まれるハードウェア構成部品毎に測定される動作状態を示す情報を取得し、この情報に基づいて前述した四種類の全てのモデルパラメータA〜Dの値Pを所定のタイミングで取得する(ステップS1−2)。
【0046】
ここで、動作状態は、端末HW12に含まれるハードウェア構成部品の活性状態をリアルタイムに示す情報であるが、この動作状態に対応するモデルパラメータA〜Dの値Pは、ある一定期間内の動作状態の統計量等から導出されるものであり、動作状態をより抽象的に示す値である。例えば、端末HW12に含まれるハードウェア構成部品としてCPUを考えると、試験用無線通信端末10のOSを介してアイドル時間、稼働時間などの累積値が取得可能であり、特に、一定期間に稼働時間が占める割合をとることでモデルパラメータAのCPU負荷率が求められる。
【0047】
なお、モデルパラメータA〜Dの値Pについては、試験用無線通信端末10の有する部品状態管理部13が試験用無線通信端末10のOSによって提供される情報(Linuxの/proc情報)を利用して取得してもよいし、解析用コンピュータ30の有する部品状態管理部33が試験シナリオSc1〜Sc9の実行と非同期に取得してもよい。また、ステップS1−1及びステップS1−2において実行される試験シナリオSc1〜Sc9と、取得したPとの扱い方は、第1の実施形態の特徴の一つであり、後に詳しく述べる。
【0048】
ステップS1−1及びステップS1−2において全ての試験シナリオSc1〜Sc9の実施が終了した後(ステップS1−3)、試験ログ管理部32は、試験シナリオSc1〜Sc9の実施によって得られた試験データ(測定値であり、電力測定部20によって取得された消費電力の値(電力ログ)や、部品状態管理部33や部品状態管理部13によって取得されたモデルパラメータA〜Dの値Pの値)を、重回帰分析に用いるサンプルデータ(試験ログ34)として、解析用コンピュータ30のRAM等に保存する(ステップS1−4)。試験ログ34は、試験シナリオSc1〜Sc9の実施毎に取得された消費電力の値とモデルパラメータA〜Dの値Pの組を一のレコードとしたデータである。ステップS1−4の後に、電力係数算出部31は、試験ログ34を式(1)に適用して最小二乗法を用いた重回帰分析を行い、電力係数cを算出する(ステップS1−5)。なお、ステップS1−4の後、他に実行する試験プログラムがある場合には、ステップS1−1に戻って上記処理を繰り返す。
【0049】
次に、試験プログラム実行部11及び試験プログラム実行部41の詳細な動作を説明する。試験プログラム実行部11及び試験プログラム実行部41は、重回帰分析に必要なサンプルデータを取得するため、以下の試験プログラムPr1〜Pr4を、後述の試験シナリオSc1〜Sc9に基づいて実行する。この試験プログラムPr1〜Pr4は、電力係数cの算出に必要なサンプルデータを取得する試験を実施するために、試験用無線通信端末10のモデルパラメータA〜Dの値Pをそれぞれ任意に設定し、消費電力を変動させることを可能とするものとなっている。
【0050】
第1の実施形態では、四種類のモデルパラメータA〜Dの値Pを扱うため、以下の四つの試験プログラムPr1〜Pr4が用いられる。試験プログラムPr1)試験用無線通信端末10の演算負荷を調整可能な試験プログラム。試験プログラムPr2)遠隔試験用端末40から試験用無線通信端末10に無線通信でデータを送信する試験プログラム(遠隔試験用端末40上で実行)。試験プログラムPr3)遠隔試験用端末40が試験用無線通信端末10から無線通信でデータを受信する試験プログラム(遠隔試験用端末40上で実行)。試験プログラムPr4)試験用無線通信端末10のディスク(試験用無線通信端末10の内蔵メモリや着脱可能な記録メディア)へのデータ書き込みとデータ消去を行う試験プログラム。
【0051】
試験プログラムPr1〜Pr4は、図3のフローチャートに従って実行することによって、モデルパラメータA〜Dの値のそれぞれが任意の値になる状態を作り出すことが可能である。しかし、単純に試験プログラムPr1〜Pr4を単独で実行するだけでは、複数のモデルパラメータA〜Dの値が同時に変動し、前述した多重共線性の問題が起こる。特に、試験プログラムPr2〜Pr4は、モデルパラメータB,C,Dのそれぞれを任意の値に変動させることを意図したプログラム(試験プログラムPr2〜Pr4のそれぞれは、モデルパラメータB,C,Dのそれぞれに対応している)であるが、試験プログラムPr2〜Pr4の実行自体が計算処理を伴うために、モデルパラメータAのCPU負荷率の変動が同時に起きる。この問題を解決するための手段として、第1の実施形態では試験プログラムPr2〜Pr4のそれぞれの実行と同時に、CPU負荷率を調整可能な試験プログラムPr1も実行する。このように、試験プログラム実行部11は、試験プログラムPr2〜Pr4を実行することによって端末HW12のCPUの動作状態が安定しない場合に、試験プログラムPr2〜Pr4の実行中に端末HW12のCPUの動作状態を一定にする試験プログラムPr1も並行して実行する。これにより、CPUの負荷率(モデルパラメータA)を任意の値に調整しつつ、同時にその他のモデルパラメータB,C,Dのそれぞれを独立に変動させて得られる試験ログ34が取得できる。この場合、CPU負荷率は、図3に示すように試験プログラムPr1のスリープ周期を適切な値に設定することによって調整できる。適切なスリープ周期の決定方法については、図4に示すフローチャートを参照して後に詳述する。以上のように複数の試験プログラムPr1〜Pr4を並行に実行することによって、モデルパラメータ間の相関を低減し、モデルパラメータA〜Dの値Pのそれぞれを同時に任意の値に設定することができる。
【0052】
次に、試験シナリオSc1〜Sc9について説明する。試験シナリオSc1〜Sc9は、それぞれ以下の処理を行うためのプログラムである。
(試験シナリオSc1)試験プログラム実行部11及び試験プログラム実行部41は、試験プログラムPr1〜Pr4を実行しない。
(試験シナリオSc2)試験プログラム実行部11が、試験プログラムPr1のスリープ周期を最大(試験用無線通信端末10のCPU負荷最大)にして試験プログラムPr1を実行する。
(試験シナリオSc3)試験プログラム実行部41が、試験プログラムPr2を実行し、同時に、試験プログラム実行部11が、試験プログラムPr1のスリープ周期を最大(CPU負荷最大)にして試験プログラムPr1を実行する。
(試験シナリオSc4)試験プログラム実行部41が、試験プログラムPr3を実行し、同時に、試験プログラム実行部11が、試験プログラムPr1のスリープ周期を最大(試験用無線通信端末10のCPU負荷最大)にして試験プログラムPr1を実行する。
(試験シナリオSc5)試験プログラム実行部11が、試験プログラムPr4を実行し、同時に、試験プログラムPr1のスリープ周期を最大(CPU負荷最大)にして試験プログラムPr1を実行する。
(試験シナリオSc6)試験プログラム実行部11が、試験プログラムPr1のスリープ周期を“最小”(CPU負荷最小)にして試験プログラムPr1を実行する。
(試験シナリオSc7)試験プログラム実行部41が、試験プログラムPr2を実行し、同時に、試験プログラム実行部11が、試験プログラムPr1のスリープ周期を“最小”(CPU負荷最小)にして試験プログラムPr1を実行する。
(試験シナリオSc8)試験プログラム実行部41が、試験プログラムPr3を実行し、同時に、試験プログラム実行部11が、試験プログラムPr1のスリープ周期を“最小”(CPU負荷最小)にして試験プログラムPr1を実行する。
(試験シナリオSc9)試験プログラム実行部11が、試験プログラムPr4を実行し、同時に、試験プログラムPr1のスリープ周期を“最小”(CPU負荷最小)にして試験プログラムPr1を実行する。
【0053】
次に、モデルパラメータA〜Dの相関の低減方法について説明する。試験プログラム実行部11は、モデルパラメータA〜Dのうち、強相関の二つのモデルパラメータのそれぞれに対応する二つの試験プログラムを並行して実行することによって、当該二つのモデルパラメータの相関が求められる。具体的に説明すると、試験プログラム実行部11及び試験プログラム実行部41は、試験シナリオSc1〜Sc9を実行し、試験ログ管理部32は、モデルパラメータA〜Dの値Pを、試験シナリオSc1〜Sc9それぞれの実行において計測し、モデルパラメータA〜Dの相関係数を求める。モデルパラメータA〜Dの相関が強い場合は、相関を減らすように試験プログラムPr1のスリープ周期を変更する。試験プログラムPr1のスリープ周期の調整方法もあわせた試験シナリオSc1〜Sc9の実施を示すフローチャート(試験の詳細フローチャート)を図4に示す。ここで、試験プログラムPr2,Pr3,Pr4は個別に実行されるので、無線受信量、無線送信量、ディスク書き込み・消去量等の値については、それぞれ独立に制御可能である。しかし、無線通信やディスクアクセスの際にはCPUも稼働状態となるため、CPUの負荷率(モデルパラメータA)と他のモデルパラメータB〜Dとの間には相関がある。図4に示すフローチャートは、二つのパラメータの全ての組み合わせに対して相関係数を計算し、その二乗和が最小になるようにCPU負荷率(スリープ期間)を変更することによってモデルパラメータA〜Dの相関を低減する処理手順を示す。以上のようにして最終的に得られた試験ログ34のデータをサンプルにして、電力係数算出部31がステップS1−5においてcを算出する。このcを用いることによって、試験用無線通信端末10の消費電力を精度よく算出することが可能な消費電力評価モデルが作成可能となる。
【0054】
なお、上述したように、電力係数作成システム50は、試験用無線通信端末10、電力測定部20、解析用コンピュータ30及び遠隔試験用端末40を別体としたが、これに限らず、試験用無線通信端末10が、電力測定部20及び解析用コンピュータ30の機能を有する構成であってもよい。すなわち、試験用無線通信端末10が、電力測定部20、電力係数算出部31、試験ログ管理部32、部品状態管理部33、試験ログ34の一部又は全部を有していてもよい。
【0055】
(第2の実施形態)
第2の実施形態に係る無線通信端末200(消費電力評価装置)は、第1の実施形態において説明した消費電力評価モデル(第1の実施形態のモデルパラメータA〜D、及び予め取得されたcを含む式(1))を用いて自機の消費電力の評価値Pestimatedを算出する機能を搭載した無線通信端末である。第1の実施形態において作成された消費電力評価モデルを用いた電力評価機能が無線通信端末200に搭載されることによって、無線通信端末200上でアプリケーションプログラム211を実行すること等による消費電力がエンドユーザに可視化される。
【0056】
図5を参照して、第2の実施形態に係る無線通信端末200の構成を説明する。無線通信端末200は、物理的には、端末HW220、表示部250及びパラメータ履歴DB280を備える。端末HW220は、CPU、ROM、RAM(パラメータ履歴DB280を含む)及び表示部250と、外部機器(例えば、パラメータ履歴管理サーバ300)とデータの送受信を行うための通信装置と、を有する。端末HW220のCPUは、端末HW220のROM等の内蔵メモリに格納された所定のコンピュータプログラム(例えば、図5に示す処理の一部又は全部を実行するためのコンピュータプログラム)を端末HW220のRAMにロードして実行することにより、無線通信端末200を統括的に制御する。 パラメータ履歴DB280は、過去のアプリケーションプログラム211の実行時に後述の部品状態管理部230によって取得されたモデルパラメータA〜Dの値Pの履歴を保持する。表示部250は、LCD等の表示装置を有し、後述の電力算出部240によって算出されたアプリケーションプログラム211の実行時に要する消費電力の評価値Pestimated、モデルパラメータA〜D毎のPestimatedの内訳(端末HW220の動作状態を示すモデルパラメータA〜Dの値Pや、Pとcとの積)、後述の使用可能時間算出部260によって算出されるアプリケーションプログラム211の実行前後における使用可能時間、及び、電力算出部240によって算出されるアプリケーションプログラム211の実行前の消費電力等の各種表示データを表示する。
【0057】
また、無線通信端末200は、機能的には、ソフトウェア実行部210、部品状態管理部230、電力算出部240、使用可能時間算出部260及びバッテリ残量取得部270を備える。ソフトウェア実行部210、部品状態管理部230、電力算出部240、使用可能時間算出部260及びバッテリ残量取得部270は、無線通信端末200のCPUが無線通信端末200のROM等の内蔵メモリに格納されたコンピュータプログラムを実行することによって実現される機能である。
【0058】
ソフトウェア実行部210は、無線通信端末200のROM等の内蔵メモリ(又は着脱可能な記録メディア)に格納されたアプリケーションプログラム211(端末HW220(CPU等)が実行可能なコンピュータプログラム)を実行する。部品状態管理部230は、端末HW220の動作状態を示す情報を取得し、この取得した情報に基づいて、端末HW220の動作状態を示しており端末機種に依存しないモデルパラメータA〜Dの値Pを取得する。具体的に説明すると、部品状態管理部230は、ソフトウェア実行部210がアプリケーションプログラム211を実行する時の端末HW220の動作状態を示す情報を取得し、この取得した情報に基づいて、無線通信端末200のモデルパラメータA〜Dの値Pを、第1の実施形態における部品状態管理部13や部品状態管理部33と同様にリアルタイムに(アプリケーションプログラム211の実行中に)取得する。電力算出部240は、第1の実施形態の消費電力評価モデルに従い、部品状態管理部230によって取得されたモデルパラメータA〜Dの値Pを、式(1)に代入し、消費電力の評価値Pestimatedを算出する。この場合、式(1)(消費電力評価モデル)の電力係数cは、第1の実施形態の電力係数作成システム50によって既に算出済みである。使用可能時間算出部260は、バッテリ残量取得部270によって取得される無線通信端末200のバッテリ残量値と、電力算出部240によって算出されるアプリケーションプログラム211の実行時に要する消費電力の評価値Pestimatedと、電力算出部240によって算出されるアプリケーションプログラム211の実行前の消費電力の評価値Pestimatedとに基づいて、無線通信端末200の使用可能時間(アプリケーションプログラム211の実行前後における使用可能時間)を算出する。
【0059】
電力算出部240に対するモデルパラメータA〜Dの値Pの入力方法は二通りある。まず、Pが部品状態管理部230から入力される場合には、電力算出部240は、無線通信端末200上で任意のアプリケーションプログラム211の実行時にリアルタイムに消費電力の評価値Pestimatedを算出する。第1の実施形態に係る消費電力のモデルパラメータA〜Dは端末HW220(ハードウェア構成部品)の動作を抽象化した値(例えばCPU負荷率等)を用いているため、無線通信端末200等の端末の機種に依存せず同一の消費電力評価モデル(第1の実施形態に係る消費電力評価モデル)が利用可能である。更に、動作中の端末HW220からモデルパラメータA〜Dの値Pを取得すれば任意のタイミングで消費電力の評価値Pestimatedが算出可能になるので、任意のアプリケーションプログラム211の実行中においても、消費電力の評価値Pestimatedの算出もできるという利点がある。
【0060】
一方で、モデルパラメータA〜Dの値Pがパラメータ履歴DB280から入力される場合、アプリケーションプログラム211の実行中に端末HW220へのアクセスなどに要するオーバヘッドや、モデルパラメータA〜Dの取得に要する計算処理を軽減できる。また、パラメータ履歴DB280に格納されている過去の履歴データを用いることによって、アプリケーションプログラム211を無線通信端末200上で実際に実行させなくても消費電力の評価値Pestimatedの算出が可能なので、ユーザは、消費電力の大小を事前に認識した上で、アプリケーションプログラム211を選択するといった省エネルギーな無線通信端末200の使用が可能になる。なお、パラメータ履歴DB280は、無線通信端末200において過去に取得されたモデルパラメータA〜Dの値Pを、履歴データとして保持してもよいし、外部のパラメータ履歴管理サーバ300(外部に設けられたパラメータ履歴DB280に相当するデータベース)等から無線又は有線ネットワークを介して取得し、保持してもよい。パラメータ履歴管理サーバ300や、無線又は有線ネットワークを介して、複数の無線通信端末同士でモデルパラメータA〜Dを共有することによって、多くの複数のアプリケーションプログラム211に対応できる。
【0061】
また、上述した電力算出部240に対する二通りのPの入力方法と、バッテリ残量取得部270によって取得されたバッテリ残量情報とを組み合わせることによって、アプリケーションプログラム211の実行時における消費電力及び残り使用可能時間、アプリケーションプログラム211の実行前における消費電力の予測値及び残り使用可能時間の予測値、の四種類の情報は、表示部250に表示される。表示部250の具体的な表示方法は限定されないが、これらの四種類の情報が、一のアプリケーションプログラム211毎に表示部250に表示されてもよいし、複数のアプリケーションプログラム211のリストと共に、これら列挙された複数のアプリケーションプログラム211同士で比較できるように表示部250に表示されてもよい。
【0062】
(第3の実施形態)
第3の実施形態に係るアプリケーション開発装置100(消費電力評価装置)は、第1の実施形態の電力係数作成システム50によって作成された消費電力評価モデル(第1の実施形態のモデルパラメータA〜D、及び予め取得されたcを含む式(1))を用いて、無線通信端末の消費電力の評価値Pestimatedを算出する機能を搭載した無線通信端末用のアプリケーションプログラム(アプリケーションプログラム110a)の開発装置である。図6を参照して、第3の実施形態に係るアプリケーション開発装置100の構成を説明する。
【0063】
アプリケーション開発装置100は、物理的には、CPU、ROM、RAM(アプリケーションプログラム110aや、パラメータ履歴DB160を含む)及び表示部150と、外部機器とデータの送受信を行うための通信装置と、を有するコンピュータである。アプリケーションプログラム110aは、アプリケーション開発装置100のCPUが実行可能なコンピュータプログラムである。アプリケーション開発装置100のCPUは、アプリケーション開発装置100のROM等の内蔵メモリに格納された所定のコンピュータプログラム(アプリケーションプログラム110aを含む)をアプリケーション開発装置100のRAMにロードして実行することにより、アプリケーション開発装置100を統括的に制御する。
【0064】
パラメータ履歴DB160は、後述の部品状態管理部120によって過去に取得されたモデルパラメータA〜Dの値Pの履歴を保持する。また、パラメータ履歴DB160は、後述の部品状態管理部120によって過去に取得されたモデルパラメータA〜Dの値Pの履歴を、図5に示す外部のパラメータ履歴管理サーバ300等から無線又は有線ネットワークを介して取得し、保持してもよい。表示部150は、LCD等の表示装置であり、後述の電力算出部130によって算出されたアプリケーションプログラム110aの実行時に要する消費電力の評価値Pestimatedや、モデルパラメータA〜D毎のPestimatedの内訳(仮想HW動作状態生成部112の動作状態を示すモデルパラメータA〜Dの値Pや、Pとcとの積)等の各種表示データを表示する。
【0065】
表示部150は、開発中のアプリケーションプログラム110aの実行中に、ソフトウェア実行部111からアプリケーションプログラム110aに固有の出力データを取得し表示するソフトウェア実行状態表示機能151と、これと同時に、電力算出部130から消費電力の評価値Pestimatedを取得し表示する消費電力表示機能152とを有する。表示部150は、アプリケーション開発装置100のユーザインタフェースの一部であり、消費電力の表示方法は、一のウィンドウを表示領域とし、この表示領域内において、一定の周期間隔に取得した消費電力の評価値Pestimatedを折れ線グラフやメータ等によって表示する方法等が考えられるが、これに限定されない。
【0066】
また、アプリケーション開発装置100は、機能的には、仮想端末110、部品状態管理部120、電力算出部130及び端末プロファイル管理部140を備える。仮想端末110、部品状態管理部120、電力算出部130及び端末プロファイル管理部140は、アプリケーション開発装置100のCPUがアプリケーション開発装置100のROM等の内蔵メモリに格納されたコンピュータプログラムを実行することによって実現される機能である。仮想端末110は、アプリケーション開発装置100によって開発されるアプリケーションプログラム110aを搭載する無線通信端末の動作をエミュレートする。仮想端末110は、ソフトウェア実行部111及び仮想HW動作状態生成部112を有する。
【0067】
ソフトウェア実行部111は、開発中のアプリケーションプログラム110aの動作テストのために、このアプリケーションプログラム110aを実行する。仮想HW動作状態生成部112は、想定している無線通信端末のハードウェア構成部品の仮想的な動作状態(例えばCPU負荷率等)を生成し、この動作状態を示す情報を出力する。仮想HW動作状態生成部112は、ソフトウェア実行部111がアプリケーションプログラム110aの実行中に、想定している無線通信端末のハードウェア構成部品の動作状態をシミュレートする。
【0068】
部品状態管理部120は、想定している無線通信端末のハードウェア構成部品(仮想HW動作状態生成部112)の動作状態を示す情報を取得し、この取得した情報に基づいて、想定している無線通信端末のハードウェア構成部品の仮想的な動作状態を示しており端末機種に依存しないモデルパラメータA〜Dの値Pを取得する。具体的に説明すると、部品状態管理部120は、ソフトウェア実行部111がアプリケーションプログラム110aを実行する時の仮想HW動作状態生成部112の動作状態を示す情報を取得し、この取得した情報に基づいて、仮想端末110のモデルパラメータA〜Dの値Pを、第1の実施形態における部品状態管理部13や部品状態管理部33と同様にリアルタイムに(アプリケーションプログラム110aの実行中に)取得する。なお、部品状態管理部120によるモデルパラメータA〜Dの値Pの具体的な取得方法は、想定している無線通信端末の動作を仮想端末110がどのレベルまでシミュレートするかに依存する(後述する、低レベル動作シミュレーションに基づくPの取得方法、及び、高レベル動作シミュレーションに基づくPの取得方法を参照)。
【0069】
電力算出部130は、第1の実施形態の消費電力評価モデルに従い、部品状態管理部120によって取得されたモデルパラメータA〜Dの値Pを、式(1)に代入し、消費電力の評価値Pestimatedを算出する。この場合、式(1)(消費電力評価モデル)の電力係数cは、第1の実施形態の電力係数作成システム50によって既に算出済みであり、端末プロファイル管理部140から取得する。端末プロファイル管理部140は、第1の実施形態の電力係数作成システム50によって既に算出されたcを格納する。端末プロファイル管理部140は、電力算出部130が複数種類の無線通信端末の消費電力の評価値Pestimatedを算出できるように、無線通信端末の機種毎にcを保持する。更に、アプリケーション開発装置100は、eclipseに代表されるアプリケーション開発装置の搭載するその他の一般的な機能(例:プログラムソースコードの編集機能)を搭載している。
【0070】
ここで、モデルパラメータA〜Dの値Pの具体的な取得方法を二つ例示するが、これに限定されるものではない。まず、低レベル動作シミュレーションに基づくPの取得方法について説明する。ここでいう低レベルとは、ハードウェアのミクロな設計レベルから、OSの動作・機能レベルまでの情報を用いることを指す。仮想端末110がOS毎にエミュレートできるようなソフトウェア(例えば、vmware等)であるとすれば、第1及び第2の実施形態と同様に、OSの情報提供機能を直接利用するなどしてPの取得に必要な情報を得ることができる。最もミクロな(詳細な)設計レベルにおける情報を利用する場合には、従来技術で用いられているようなハードウェアシミュレータを併用することによって、Pの取得に利用されるハードウェア(想定している無線通信端末のハードウェア)の動作状態を取得することができる。このような低レベル動作シミュレーションに基づくPの取得に要する処理オーバヘッドは、計算能力の限られる組み込み機器では許容できないことは自明である。しかし、アプリケーション開発装置100は、一般的にPCレベル以上の性能を持ったコンピュータ上に構築されるため、このようなオーバヘッドの問題は発生しない。
【0071】
次に、高レベル動作シミュレーションに基づくPの取得方法について説明する。ここでいう高レベルの動作とは、OS又はミドルウェア上で動作するソフトウェアの動作のことを指す。具体的には、開発中のアプリケーションプログラム110aの動作情報からPを取得する。このアプリケーションプログラム110aの動作情報の具体的な値は、アプリケーションプログラム110aの命令実行数や、通信インタフェースなどハードウェアの使用に関係する関数呼び出し・関数の引数などの実行ログから抽出することが可能である。アプリケーションプログラム110aの実行ログの取得方法の例としては、アプリケーションプログラム110aのソースコードにログ取得用のコードを埋め込む方法や、コンパイル済みコードのようにソースコードに改良が加えられない場合であれば、LinuxのStraceコマンドのように仮想実行環境とアプリケーションプログラム110aのインタフェース部とに、アプリケーションプログラム110aが呼び出すシステムコール(OSが提供する機能)を監視するポイントを設け、ログ出力する方法などが考えられる。
【0072】
次に、アプリケーション開発装置100が、アプリケーションプログラム110aの実行時の消費電力の評価値Pestimatedを算出するための処理手順(ステップS2−1〜S2−3)を示す。まず、ステップS2−1において、ソフトウェア実行部111は、開発中のアプリケーションプログラム110aを実行する(ステップS2−1)。ステップS2−1の後、ステップS2−2において、部品状態管理部120は、仮想HW動作状態生成部112によって出力された情報(想定している無線通信端末のハードウェア構成部品の仮想的な動作状態を示す情報)から、モデルパラメータA〜Dの値Pを取得し、このPを示す情報を電力算出部130に出力する(ステップS2−2)。ステップS2−2の後、ステップS2−3において、電力算出部130は、端末プロファイル管理部140から取得した電力係数c(想定している無線通信端末に対応する電力係数c)と、ステップS2−2において部品状態管理部120の出力したPを示す情報とに基づいて消費電力の評価値Pestimatedを算出し、表示部150の消費電力表示機能152は、電力算出部130によるこの算出結果を、表示部150の表示装置に表示する(ステップS2−3)。
【0073】
以上説明したアプリケーション開発装置100によれば、第1の実施形態の電力係数作成システム50によって作成された消費電力評価モデルをアプリケーション開発装置100に適用することによって、アプリケーションプログラム110aの実行テスト時に、想定している無線通信端末全体の消費電力を表示部150を介して可視化できるだけでなく、モデルパラメータA〜D毎に消費電力の評価値Pestimatedの内訳をも表示部150を介して可視化できる。電力係数作成システム50によって作成される消費電力評価モデルは、モデルパラメータA〜Dの値Pと、各Pに対応する電力係数cとの積和によって構成される線形モデルである。さらに、電力係数作成システム50によって取得される消費電力評価モデルのモデルパラメータA〜Dは、CPU負荷率など、アプリケーションプログラム110aの実行時における性能・動作を評価する指標になる値とも考えられる。このため、アプリケーションプログラム110aの開発者は、アプリケーションプログラム110aの性能と消費電力のトレードオフを意識した開発が容易になるという利点がある。
【0074】
なお、一般的な情報処理端末のハードウェア動作は、アプリケーションプログラム110aを含むソフトウェアプログラムの制御によって決定されるため、ソフトウェアレベルの動作単位とハードウェアレベルの動作との関連づけを行うことは容易である。また、第1の実施形態に係る消費電力評価モデルと、この消費電力評価モデルの生成方法とにおいて、モデルパラメータA〜Dの値Pの取得に利用するための情報の取得方法については限定されていないが、モデルパラメータA〜Dの値Pそのものが、想定している無線通信端末の機種に依存しない値であること、且つ、アプリケーションプログラム110aとプログラム言語とに依存しない値であること、等から、汎用性の高い手法であることがわかる。
【0075】
(第4の実施形態)
第4の実施形態に係る電力係数作成システム50a、アプリケーション開発装置100a及び無線通信端末200aについて説明する。電力係数作成システム50aの構成と電力係数作成システム50aによる処理の流れ(動作)とを図7に示す。電力係数作成システム50aは、試験用無線通信端末10aを除いて、電力係数作成システム50と同様の構成を有する。試験用無線通信端末10aは、電力係数作成システム50の試験用無線通信端末10に仮想部品状態管理部13aが加わった構成を有する。無線通信端末200aの構成と無線通信端末200aによる処理の流れ(動作)とを図8に示す。無線通信端末200aは、仮想部品状態管理部220aを除き、無線通信端末200と同様の構成を有する。無線通信端末200aは、無線通信端末200の構成に仮想部品状態管理部220aを加えたものとなっている。アプリケーション開発装置100aの構成とアプリケーション開発装置100aによる処理の流れ(動作)とを図9に示す。アプリケーション開発装置100aは、仮想端末110bを除き、アプリケーション開発装置100と同様の構成を有している。仮想端末110bは、アプリケーション開発装置100の仮想端末110の構成に仮想部品状態管理部112aが加わったものとなっている。仮想部品状態管理部13a、仮想部品状態管理部220a及び仮想部品状態管理部112aは、同様の構成となっているので、説明簡略化のため、電力係数作成システム50aの仮想部品状態管理部13aについて説明し、仮想部品状態管理部220a及び仮想部品状態管理部112aの説明を省略する。
【0076】
第1の実施形態で説明したように、電力係数作成システム50の部品状態管理部13及び部品状態管理部33は、各モデルパラメータに対応する構成部品(端末HW12)から動作状態を示す情報を取得し、この情報に基づいて、モデルパラメータの値を取得する。例えば、部品状態管理部13及び部品状態管理部33は、モデルパラメータA(CPUの負荷率)の値を取得する場合、図10に示すように、CPUをOSなどドライバ経由で直接モニタリングすることによって、CPUが処理を行っている状態を動作状態として、CPUが一定時間内において処理に費やした時間(CPUサイクル時間)を用いてCPUの負荷率を取得する。しかし、ハードウェアやソフトウェアの仕様によっては、動作状態をOSなどから直接的にモニタリングできないデバイス(以下、デバイスDeという)も存在する。このようなデバイスDeの場合、OSなどから直接モニタリングすることによって動作状態を取得できないので、デバイスDeの動作状態を示すモデルパラメータの値を得ることができない。特に、デバイスDeに固有の省電力制御は、OSなどソフトウェアレベルで共通化されていない機能であることが多く、省電力制御のもとで動作するデバイスDeの動作状態をソフトウェアレベルでモニタリングするのは困難である。省電力制御は消費電力の増減に大きく影響するので、省電力制御のもとで動作するデバイスDeの動作状態を示すモデルパラメータの値を用いることができなければ、消費電力評価モデルの精度が低下する。仮想部品状態管理部13aは、省電力制御のもとで動作するデバイスDeの動作状態を示すモデルパラメータの値を取得するための機能である。
【0077】
一般に、ハードウェアを構成するデバイスに備わる省電力制御の多くは、周期的に又は状況に応じて、デバイスの動作をスリープするなどしてデバイスの動作を抑制する。さらに、このような省電力制御は、デバイスの動作パフォーマンスとトレードオフの関係にある。このため、省電力制御のもとで動作するデバイスの動作状態を直接モニタリングできなくても、デバイスの動作パフォーマンスの低下度合い(パフォーマンス要因)については検出できるため、この動作パフォーマンスの低下度合いを検出することによって、省電力制御のもとで動作するデバイスの動作状態を間接的に(直接モニタリングしなくても)検出することが可能となる。
【0078】
まず図11に示すように、デバイスDeの仮想動作状態(例えば最大電力時の仮想動作状態X、仮想動作状態Y、省電力時の仮想動作状態Z等)と、デバイスDeの動作の影響を間接的に受け検出可能なパフォーマンス要因との対応付けが予め定義されており、仮想部品状態管理部13aは、この対応付けに基づいて、仮想部品状態管理部13aが検出したパフォーマンス要因の値をデバイスの仮想動作状態情報として出力する。続いて、部品状態管理部33は、第1の実施形態と同様に、仮想部品状態管理部13aから出力された仮想動作状態情報から、この仮想動作状態を示すモデルパラメータの値を取得する。
【0079】
以下、デバイスDeの具体例として無線LANチップを考え、省電力制御のもとで動作する無線LANチップの仮想動作状態の具体例として通信稼働状態を考え、無線LANチップの仮想動作状態情報として無線LANチップが通信稼動するチップ稼動時間を考え、この無線LANチップの仮想動作状態を示すモデルパラメータ(以下、モデルパラメータEという)として通信稼動率を考え、モデルパラメータEの値(通信稼働率の値)を取得する方法を説明する。詳しくは後述するが、無線LANチップの通信稼働率は、チップ稼働時間が所定の一定時間内に占める割合を示すパラメータである。第1の実施形態では、モデルパラメータB及びモデルパラメータCとして単位時間あたりのデータ送受信量(バイト単位)を用いているが、これらは無線LANチップの動作を非常に抽象化して表すパラメータとなるため、無線LANチップの省電力制御による影響がモデルパラメータB及びモデルパラメータCのそれぞれの値に反映されない可能性がある。これは、所定の一定時間毎に毎回繰り返し同じデータ量の通信を無線LANチップが行う場合であっても、省電力制御やネットワーク側の輻輳などにより、無線LANチップのチップ稼働時間及びアイドル時間が毎回異なるためである。
【0080】
さて、この無線LANチップは、省電力制御のもとで動作するものであって、スリープするなどして低消費状態に移行できる。無線LANチップにおける省電力制御の実行タイミングは、無線LANチップがスリープできる状態(アイドル状態)にあるか否かを自ら自律的に判断することで決定される。具体的な省電力制御の実行タイミングの決定方法(制御アルゴリズム)は、アプリケーション動作特性の影響、接続先ネットワーク側の輻輳、あるいはユーザによる設定変更等、省電力制御の実行タイミングの決定に影響を及ぼす複数の要因が存在するので、無線LANチップのタイプによって大きく異なる。しかし、無線LANチップが省電力状態に移行して無線LANチップの動作が抑制状態にあるときには通常時と比較して無通信状態の時間が長くなる、という点は、無線LANチップのタイプによらず共通している。このため、無線LANチップが無通信状態であることに影響を受けOS等から容易に取得できるパフォーマンス要因の値を仮想動作状態情報として用いることができれば、この仮想動作状態情報から無線LANチップの通信稼働率を間接的に取得することができる。本第4の実施形態では、例えば、送受信L2パケット数を用いて仮想動作状態情報を取得する。仮想部品状態管理部13aは、図12に示すように、Linux環境であれば“/proc/net/dev”のデータファイルを参照することによって(具体的には、図12の図中符号D1に示す“tiwlan”の送信パケット数のデータを参照することによって)、パケット数の累計数等の統計結果を取得できる。仮想部品状態管理部13aは、L2レベルでのパケット数を所定の時間間隔毎にモニタリングし、このモニタリング結果(時間間隔毎のパケット数)を示す情報を仮想動作状態情報として部品状態管理部33に出力する(仮想部品状態管理部13aによって検出された各時間間隔におけるパケット数をログという)。部品状態管理部33は、仮想部品状態管理部13aから出力されたモニタリング結果に基づいて、所定の時間間隔毎に発生する無通信状態の有無を検出し、この検出結果から、無線LANチップが通信稼働しているか又は通信稼動していないか(無通信状態か)を、所定の時間間隔毎に検出する。
【0081】
部品状態管理部33は、仮想部品状態管理部13aから送られたモニタリング結果(仮想動作状態情報)から、次のようにして無線LANチップの通信稼働率(モデルパラメータE)の値を算出する。部品状態管理部33は、パケット数の増加が見られる時間間隔においては無線LANチップが通信稼働している通信稼動状態であり、パケット数に変化がなければ通信稼動していない無通信状態であると判定して、以下の算出式に従って通信稼働率を算出する。通信稼働率=(通信稼働状態と判定したログ数/(全ログ数−1))×100。
【0082】
図13は、100秒の時間内において0.1秒間隔でパケット数のログを1001回取得した場合の例を示す。最初のログ取得時の(最初に検出された)送信パケット数は100であり、その0.1後のログ取得時の送信パケット数は101であった。当該0.1秒間(時間間隔T1)で送信パケット数は増加しているので、部品状態管理部33は、この時間間隔T1において、無線LANチップは通信稼動状態であった、と判定する。また、4回目のログ取得時の送信パケット数は103であり、その0.1秒後のログ取得時の送信パケット数も103であった。当該0.1秒間(時間間隔T2)で送信パケット数は変わらないので、部品状態管理部33は、この時間間隔T2において、無線LANチップは無通信状態であった、と判定する。なお、本第4の実施形態において、100秒の時間内における無線LANチップの通信稼働率は、仮想部品状態管理部13aによって0.1秒間隔で取得されたパケット数のログから部品状態管理部33によって取得されるものとしたが、これに限らず、0.1秒間隔以外の他の時間間隔(例えば、0.05秒間隔や0.5秒間隔)で仮想部品状態管理部13aによって取得されたパケット数のログから部品状態管理部33によって取得される構成であってもよい。
【0083】
以上説明したように、本第4の実施形態に係る電力係数作成システム50aによれば、省電力制御の影響を含む動作状態を直接モニタリングするのが困難な無線LANチップ等のデバイスに対しても、省電力制御の影響を含む動作状態を示すモデルパラメータの値を取得することが可能となる。なお、モデルパラメータは、無線LANチップの通信稼働率のようにデバイスの稼働状態を定量的に示すものでもよいし、ON/OFFを示す“1”や“0”のような単純な値を示すものであってもよい。また、図7に示す電力係数作成システム50aの仮想部品状態管理部13a及び部品状態管理部33について説明したが、これに限らず、本第4の実施形態においては、図8に示す無線通信端末200aの仮想部品状態管理部220a及び部品状態管理部230でも同様であり、また、図9に示すアプリケーション開発装置100aの仮想部品状態管理部112a及び部品状態管理部120も同様である。仮想部品状態管理部220a及び仮想部品状態管理部112aは、何れも、仮想部品状態管理部13aに対応しており、部品状態管理部230及び部品状態管理部120は、何れも、部品状態管理部33に対応しているので、上記の本第4の実施形態の説明において、仮想部品状態管理部13aを仮想部品状態管理部220aに替え、且つ、部品状態管理部33を部品状態管理部230に替えても良いし、仮想部品状態管理部13aを仮想部品状態管理部112aに替え、且つ、部品状態管理部33を部品状態管理部120に替えてもよい。
【0084】
次に、実施形態の作用効果を説明する。無線通信端末200、アプリケーション開発装置100は、無線通信端末の消費電力を評価する装置である。無線通信端末200は、部品状態管理部230、電力算出部240を備え、アプリケーション開発装置100は、部品状態管理部120、電力算出部130を備える。部品状態管理部230は、自機のハードウェアを構成する所定部品(端末HW220)の動作状態を示す情報を取得し、この取得した情報に基づいて、端末HW220の部品の動作状態を示しており端末機種に依存しないモデルパラメータA〜Dの値を取得し、部品状態管理部120は、仮想端末110のハードウェアを構成する所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、この部品の動作状態を示しており端末機種に依存しないモデルパラメータA〜Dの値を取得する。電力算出部240、電力算出部130は、部品状態管理部230、部品状態管理部120によって取得されたモデルパラメータA〜Dの値と、モデルパラメータA〜Dに応じて予め設定された電力係数cの値とに基づき、モデルパラメータA〜D及び電力係数cを含む所定の消費電力評価式(1)に従って、無線通信端末の消費電力の評価値Pestimatedを算出する(第1の態様)。第1の態様によれば、部品の動作状態を示し端末機種に依存しないモデルパラメータA〜Dを含む消費電力評価式(1)によって消費電力の評価値Pestimatedが算出されるので、様々なハードウェアの無線通信端末に対して良好な消費電力の評価値Pestimatedが算出できる。また、無線通信時やストレージの際のモデルパラメータ(モデルパラメータA〜D等)の値が取得できるので、無線通信やストレージの消費電力をアプリケーションプログラムの開発に容易に利用できる。また、モデルパラメータの値は、例えばCPU負荷率等、比較的高速に取得できるものであり、このように取得したモデルパラメータの値を消費電力評価式(1)に代入することによって消費電力の評価値Pestimatedが得られるので、消費電力の評価が比較的高速に行える。また、モデルパラメータの値は、例えばCPU負荷率等、比較的高速に取得できるものなので、モデルパラメータの値の取得が低消費電力で可能になる。
【0085】
第1の態様において、無線通信端末200は、ソフトウェア実行部210を更に備え、アプリケーション開発装置100は、ソフトウェア実行部111を更に備える。ソフトウェア実行部210、ソフトウェア実行部111は、それぞれ、アプリケーションプログラム211、アプリケーションプログラム110aを実行する。部品状態管理部230、部品状態管理部120は、ソフトウェア実行部210、ソフトウェア実行部111によるアプリケーションプログラム211、アプリケーションプログラム110aの実行時における上記動作状態を示す情報を取得する(第2の態様)。第2の態様によれば、アプリケーションプログラムの実行時における消費電力の評価値(Pestimated)が算出可能となる。
【0086】
第1又は第2の態様において、無線通信端末200は、パラメータ履歴DB280を更に備え、アプリケーション開発装置100は、パラメータ履歴DB160を更に備える。パラメータ履歴DB280、パラメータ履歴DB160は、それぞれ、部品状態管理部230、部品状態管理部120によって過去に取得されたモデルパラメータA〜Dの値を格納する。電力算出部240、電力算出部130は、それぞれ、パラメータ履歴DB280、パラメータ履歴DB160から取得したモデルパラメータ(モデルパラメータA〜D等)の値を用いて、無線通信端末の消費電力の評価値Pestimatedを算出する(第3の態様)。第3の態様によれば、パラメータ履歴DB280、パラメータ履歴DB160が、それぞれ、部品状態管理部230、部品状態管理部120によって過去に取得されたモデルパラメータ(モデルパラメータA〜D等)の値を格納しているので、過去に取得されたモデルパラメータの値の再利用が可能となる。
【0087】
第3の態様において、パラメータ履歴DB280、パラメータ履歴DB160は、それぞれ、外部に設置されたパラメータ履歴管理サーバ300から、過去に取得されたモデルパラメータ(モデルパラメータA〜D等)の値を取得する(第4の態様)。第4の態様によれば、外部のパラメータ履歴管理サーバ300からも、過去のモデルパラメータ(モデルパラメータA〜D等)の値が取得できるので、利用可能なモデルパラメータのバリエーションが広がる。
【0088】
第1〜第4の何れか一の態様において、無線通信端末200は、表示部250を更に備え、アプリケーション開発装置100は、表示部150を更に備える。表示部250、表示部150は、それぞれ、アプリケーションプログラムの実行時における動作状態と消費電力の評価値Pestimatedとを表示する(第5の態様)。第5の態様によれば、表示部250、表示部150が、動作状態及び評価値Pestimatedを表示するので、エンドユーザは評価値等の情報を視覚的に確認できる。
【0089】
第5の態様において、無線通信端末200は、バッテリ残量取得部270、使用可能時間算出部260を更に備える。バッテリ残量取得部270は、無線通信端末200のバッテリの残量を取得する。使用可能時間算出部260は、バッテリ残量取得部270によって取得された前記バッテリ残量と、電力算出部240によって算出された消費電力の評価値Pestimatedとに基づいて、使用可能時間を算出する(第6の態様)。第6の態様によれば、バッテリ残量取得部270が、バッテリ残量を取得するので、このバッテリ残量と、電力算出部240によって算出された消費電力の評価値Pestimatedとを用いれば、使用可能時間の算出が可能となる。
【0090】
第5の態様において、電力算出部130は、消費電力の評価値Pestimatedの内訳(モデルパラメータA〜Dの値Pや、Pとcとの積等)を示す情報を出力する。表示部150は、電力算出部130によって出力された評価値Pestimatedの内訳を示す情報を表示する(第7の態様)。第7の態様によれば、消費電力の評価値Pestimatedの内訳が表示部150によって表示されるので、内訳についてもエンドユーザは視覚的に確認できる。
【0091】
第1〜5,7の何れか一の態様において、アプリケーション開発装置100は、140を更に備える。端末プロファイル管理部140は、予め設定された端末機種毎の電力係数cの値を格納する(第8の態様)。第8の態様によれば、端末機種毎の電力係数cの値を格納する端末プロファイル管理部140を備えるので、様々な無線通信端末に対し消費電力の評価が容易に行える。
【0092】
第1〜5,7,8の何れか一の態様において、プリケーション開発装置100は、仮想HW動作状態生成部112を更に備える。仮想HW動作状態生成部112は、無線通信端末のハードウェア構成部品の動作状態を仮想的に生成する(第9の態様)。第9の態様によれば、無線通信端末のハードウェア構成部品の動作状態を仮想的に生成する仮想HW動作状態生成部112を備えるので、無線通信端末が実際に存在しなくても、当該無線通信端末における消費電力の評価値Pestimatedの算出が可能となる。更に、無線通信端末を交換する場合、仮想HW動作状態生成部112を交換すれば済むので、様々な無線通信端末に対し消費電力の評価が容易に行える。
【0093】
電力係数作成システム50は、無線通信端末のハードウェアを構成する所定部品の動作状態を示していると共に端末機種に依存しないモデルパラメータA〜Dの値を用いてこの無線通信端末の消費電力の評価値Pestimatedを算出するための消費電力評価式(1)に含まれており、この消費電力評価式(1)においてモデルパラメータA〜Dの重みとしてモデルパラメータA〜Dに乗じられる電力係数cの値を取得するためのシステムである。電力係数作成システム50は、試験プログラム実行部11、電力測定部20、部品状態管理部33(又は部品状態管理部13)、試験ログ管理部32、電力係数算出部31を備える。試験プログラム実行部11は、試験用無線通信端末10のハードウェアを構成する所定部品(端末HW12)の消費電力を変化させるための試験プログラムPr1〜Pr4を実行する。電力測定部20は、試験プログラム実行部11による試験プログラムPr1〜Pr4の実行中に試験用無線通信端末10の消費電力を測定する。部品状態管理部33(又は部品状態管理部13)は、試験プログラム実行部11による試験プログラムPr1〜Pr4の実行中に試験用無線通信端末10の端末HW12の動作状態を示す情報を取得し、この取得した情報に基づいて、試験用無線通信端末10におけるモデルパラメータA〜Dの値を取得する。試験ログ管理部32は、電力測定部20によって測定された消費電力と、部品状態管理部33、部品状態管理部13によって取得されたモデルパラメータA〜Dの値とを試験ログ34として解析用コンピュータ30のRAM等に格納する。電力係数算出部31は、試験ログ管理部32によって上記RAM等に格納された試験ログ34を消費電力評価式(1)に適用することによって、電力係数cを算出する(第10の態様)。第10の態様によれば、無線通信端末の消費電力の評価値Pestimatedを算出するための消費電力評価式(1)の電力係数cが、この電力係数cに乗じられるモデルパラメータA〜Dの値Pの測定値と、消費電力の測定値とに基づいて、算出される。よって、実測値に基づいた消費電力評価式(1)が作成可能となる。
【0094】
第10の態様において、試験プログラム実行部11は、試験プログラムPr2〜Pr4を実行することによって試験用無線通信端末10のCPUの動作状態が安定しない場合に、試験プログラムPr2〜Pr4の実行中に試験用無線通信端末10のCPUの動作状態を一定にする試験プログラムPr1も並行して実行する(第11の態様)。第11の態様によれば、試験プログラムPr2〜Pr4の実行時にCPUの動作が不安定になっても、CPUの動作を一定にする試験プログラムPr1も並行して実行できるので、試験プログラムPr2〜Pr4実行中によって取得される測定値から、CPUの動作変動による影響を十分に低減できる。
【0095】
第11の態様において、試験プログラム実行部11は、CPUの動作状態を一定にする試験プログラムPr1を実行することによって、CPUのスリープ周期を調節する(第12の態様)。第12の態様によれば、CPUの動作状態を一定にする試験プログラムPr1がCPUのスリープ周期を調整するものであるので、CPUの動作状態を一定にすることが容易確実に行える。
【0096】
第10〜第12の何れか一の態様において、試験プログラム実行部11及び試験プログラム実行部41は、遠隔試験用端末40と試験用無線通信端末10とに対し相互にデータの送受信を行わせる試験プログラムPr2,Pr3を実行する(第13の態様)。第13の態様によれば、二つの端末間でデータの送受信を行わせることができるので、通信時の消費電力の評価値Pestimatedの算出が可能となる。
【0097】
第10〜第13の何れか一の態様において、試験ログ34は複数のモデルパラメータA〜Dの値を含み、試験プログラム実行部11及び試験プログラム実行部41は、モデルパラメータA〜Dのそれぞれに対応する複数の試験プログラムPr1〜Pr4を実行可能であり、モデルパラメータA〜Dのうち、強相関の二つのモデルパラメータのそれぞれに対応する二つの試験プログラムを並行して実行する(第14の態様)。第14の態様によれば、強相関の二つのモデルパラメータのそれぞれに対応する二つの試験プログラムを並行して実行できるので、この実行によって相関の程度を確認できると共に、相関の低減に向けた対処が可能となる。
【0098】
第10〜第14の何れか一の態様において、試験用無線通信端末10は、試験プログラム実行部11と、電力測定部20と、部品状態管理部33及び部品状態管理部13と、試験ログ管理部32と、電力係数算出部31とを有する(第15の態様)。第15の態様によれば、試験用無線通信端末10が、試験プログラム実行部11と、電力測定部20と、部品状態管理部33及び部品状態管理部13と、試験ログ管理部32と、電力係数算出部31とを有するので、試験用無線通信端末10のみで、電力係数の算出が可能となる。従って、装置構成を簡略化できる。
【0099】
第16の態様に係る無線通信端末200a及びアプリケーション開発装置100aは、無線通信端末の消費電力を評価する装置である。無線通信端末200aは、第1〜第9の何れかの態様の無線通信端末200の構成に加えて、仮想部品状態管理部220aを更に備える。アプリケーション開発装置100aは、第1〜第9の何れかの態様のアプリケーション開発装置100の仮想端末110に替えて、仮想部品状態管理部112aを有する仮想端末110bを有する。仮想部品状態管理部220aは、無線通信端末200aのハードウェアを構成する他の所定部品(デバイスDeであり、例えば無線LANチップ)の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報(パフォーマンス要因の値)から、当該他の所定部品の仮想動作状態情報(例えば無線LANチップのチップ稼動時間)として取得する。そして、第1〜第9の何れかの態様の部品状態管理部230は、仮想部品状態管理部220aによって取得された仮想動作状態情報に基づいて、当該他の所定部品の動作状態を示しているパラメータ(モデルパラメータE)の値を取得する。仮想部品状態管理部112aは、仮想端末110bを構成する他の所定部品(デバイスDeであり、例えば無線LANチップ)の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報(パフォーマンス要因の値)から、当該他の所定部品の仮想動作状態情報(例えば無線LANチップのチップ稼動時間)として取得する。第1〜第9の何れかの態様の部品状態管理部120は、仮想部品状態管理部112aによって取得された仮想動作状態情報に基づいて、当該他の所定部品の動作状態を示しているパラメータ(モデルパラメータE)の値を取得する(以上、第16の態様)。このように、無線通信端末200a及びアプリケーション開発装置100aは、仮想動作状態情報を用いることによって、動作状態を直接取得するのが困難な部品に対しても当該部品の動作状態を示すパラメータの値を取得できる。
【0100】
第16の態様において、当該他の所定部品の動作は、所定の省電力制御の元で行われる動作を含む(第17の態様)。このように、無線通信端末200a及びアプリケーション開発装置100aは、例えばソフトウェアによるモニタリングが困難な省電力制御の元で行われる動作を含んでいても、当該部品の動作状態を直接モニタリングせずに仮想動作状態情報を用いるので、当該部品の省電力制御下の動作状態を示すパラメータの値を取得できる。
【0101】
第18の態様に係る電力係数作成システム50aは、第10〜第15の何れかの態様の電力係数作成システム50の試験用無線通信端末10に替えて、仮想部品状態管理部13aを含む試験用無線通信端末10aを有している。このように、電力係数作成システム50aは、仮想部品状態管理部13aを含む試験用無線通信端末10aを除いて、第10〜第15の何れかの態様の電力係数作成システム50と同様の構成を有している。仮想部品状態管理部13aは、試験プログラム実行部11による試験プログラム113の実行中に試験用無線通信端末10aの他の所定部品(デバイスDeであり、例えば無線LANチップ)の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報(パフォーマンス要因の値)から、当該他の所定部品の仮想動作状態情報(例えば無線LANチップのチップ稼動時間)として取得する。部品状態管理部33は、仮想部品状態管理部13aによって取得された仮想動作状態情報に基づいて、当該他の所定部品の動作状態を示しているパラメータ(モデルパラメータE)の値を取得する(以上、第18の態様)。このように、電力係数作成システム50aは、仮想動作状態情報を用いることによって、動作状態を直接取得するのが困難な部品に対しても当該部品の動作状態を示すパラメータの値を取得できる。
【0102】
第18の態様において、当該他の所定部品の動作は、所定の省電力制御の元で行われる動作を含む(第19の態様)。このように、電力係数作成システム50aは、例えばソフトウェアによるモニタリングが困難な省電力制御の元で行われる動作を含んでいても、当該部品の動作状態を直接モニタリングせずに仮想動作状態情報を用いるので、当該部品の省電力制御下の動作状態を示すパラメータの値を取得できる。
【符号の説明】
【0103】
10,10a…試験用無線通信端末、100,100a…アプリケーション開発装置、11…試験プログラム実行部、110,110b…仮想端末、110a…アプリケーションプログラム、111…ソフトウェア実行部、112…仮想HW動作状態生成部、112a…仮想部品状態管理部、113…試験プログラム、12…端末HW、120…部品状態管理部、13,13a…部品状態管理部、130…電力算出部、140…端末プロファイル管理部、150…表示部、151…ソフトウェア実行状態表示機能、152…消費電力表示機能、160…パラメータ履歴DB、20…電力測定部、200,200a…無線通信端末、210…ソフトウェア実行部、211…アプリケーションプログラム、220…端末HW、220a…仮想部品状態管理部、230…部品状態管理部、240…電力算出部、250…表示部、260…使用可能時間算出部、270…バッテリ残量取得部、280…パラメータ履歴DB、30…解析用コンピュータ、300…パラメータ履歴管理サーバ、31…電力係数算出部、32…試験ログ管理部、33…部品状態管理部、34…試験ログ、40…遠隔試験用端末、41…試験プログラム実行部、411…通信試験プログラム、50,50a…電力係数作成システム

【特許請求の範囲】
【請求項1】
無線通信端末の消費電力を評価する消費電力評価装置であって、
前記無線通信端末のハードウェアを構成する所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記部品の動作状態を示しており端末機種に依存しないパラメータの値を取得する部品状態管理部と、
前記部品状態管理部によって取得された前記パラメータの値と、該パラメータに応じて予め設定された電力係数の値とに基づき、前記パラメータ及び前記電力係数を含む所定の消費電力評価式に従って、前記無線通信端末の消費電力の評価値を算出する電力算出部と
を備える、ことを特徴とする消費電力評価装置。
【請求項2】
所定のアプリケーションプログラムを実行するソフトウェア実行部を更に備え、
前記部品状態管理部は、前記ソフトウェア実行部による前記アプリケーションプログラムの実行時における前記所定部品の動作状態を示す情報を取得する、ことを特徴とする請求項1に記載の消費電力評価装置。
【請求項3】
前記部品状態管理部によって過去に取得された前記パラメータの値を格納するパラメータ履歴DBを更に備え、
前記電力算出部は、前記パラメータ履歴DBから取得した前記パラメータの値を用いて、前記無線通信端末の消費電力の評価値を算出する、ことを特徴とする請求項1又は2に記載の消費電力評価装置。
【請求項4】
パラメータ履歴DBは、外部に設置されたパラメータ履歴管理サーバから、過去に取得された前記パラメータの値を取得する、ことを特徴とする請求項3に記載の消費電力評価装置。
【請求項5】
前記アプリケーションプログラムの実行時における前記動作状態と前記消費電力の評価値とを表示する表示部を更に備える、ことを特徴とする請求項1〜4の何れか一項に記載の消費電力評価装置。
【請求項6】
バッテリの残量を取得するバッテリ残量取得部と、
前記バッテリ残量取得部によって取得された前記バッテリ残量と、前記電力算出部によって算出された前記消費電力の評価値とに基づいて、使用可能時間を算出する使用可能時間算出部と
を更に備える、ことを特徴とする請求項5に記載の消費電力評価装置。
【請求項7】
前記電力算出部は、前記消費電力の評価値の内訳を示す情報を出力し、
前記表示部は、前記電力算出部によって出力された前記評価値の内訳を示す情報を表示する、ことを特徴とする請求項5に記載の消費電力評価装置。
【請求項8】
予め設定された端末機種毎の前記電力係数の値を格納する端末プロファイル管理部を更に備える、ことを特徴とする請求項1〜5,7の何れか一項に記載の消費電力評価装置。
【請求項9】
前記無線通信端末のハードウェア構成部品の動作状態を仮想的に生成する仮想ハードウェア動作状態生成部を更に備える、ことを特徴とする請求項1〜5,7,8の何れか一項に記載の消費電力評価装置。
【請求項10】
無線通信端末のハードウェアを構成する所定部品の動作状態を示していると共に端末機種に依存しないパラメータの値を用いて該無線通信端末の消費電力の評価値を算出するための消費電力評価式に含まれており、該消費電力評価式において前記パラメータの重みとして該パラメータに乗じられる電力係数の値を取得するための電力係数作成システムであって、
所定の試験用無線通信端末のハードウェアを構成する所定部品の消費電力を変化させるための試験プログラムを実行する試験プログラム実行部と、
前記試験プログラム実行部による前記試験プログラムの実行中に前記試験用無線通信端末の消費電力を測定する電力測定部と、
前記試験プログラム実行部による前記試験プログラムの実行中に前記試験用無線通信端末の前記所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記試験用無線通信端末における前記パラメータの値を取得する部品状態管理部と、
前記電力測定部によって測定された消費電力と、前記部品状態管理部によって取得された前記パラメータの値とを試験ログとしてメモリに格納する試験ログ管理部と、
前記試験ログ管理部によって前記メモリに格納された前記試験ログを前記消費電力評価式に適用することによって、前記電力係数を算出する電力係数算出部と
を備える、ことを特徴とする電力係数作成システム。
【請求項11】
前記試験プログラム実行部は、前記試験プログラムを実行することによって前記試験用無線通信端末のCPUの動作状態が安定しない場合に、前記試験プログラムの実行中に前記試験用無線通信端末の前記CPUの動作状態を一定にするプログラムも並行して実行する、ことを特徴とする請求項10に記載の電力係数作成システム。
【請求項12】
前記試験プログラム実行部は、前記CPUの動作状態を一定にする前記プログラムを実行することによって、前記CPUのスリープ周期を調節する、ことを特徴とする請求項11に記載の電力係数作成システム。
【請求項13】
前記試験プログラム実行部は、所定の遠隔試験用端末と、前記試験用無線通信端末とに対し相互にデータの送受信を行わせる試験プログラムを実行する、ことを特徴とする請求項10〜請求項12の何れか一項に記載の電力係数作成システム。
【請求項14】
前記試験ログは複数のパラメータの値を含み、
前記試験プログラム実行部は、前記複数のパラメータのそれぞれに対応する複数の試験プログラムを実行可能であり、該複数のパラメータのうち、強相関の二つのパラメータのそれぞれに対応する二つの試験プログラムを並行して実行する、ことを特徴とする請求項10〜請求項13の何れか一項に記載の電力係数作成システム。
【請求項15】
前記試験用無線通信端末は、前記試験プログラム実行部と、前記電力測定部と、前記部品状態管理部と、前記試験ログ管理部と、前記電力係数算出部とを有する、ことを特徴とする請求項10〜請求項14の何れか一項に記載の電力係数作成システム。
【請求項16】
無線通信端末の消費電力を評価する消費電力評価装置を用いた消費電力評価方法であって、
消費電力評価装置が、前記無線通信端末のハードウェアを構成する所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記部品の動作状態を示しており端末機種に依存しないパラメータの値を取得する部品状態管理ステップと、
消費電力評価装置が、前記部品状態管理ステップにおいて取得した前記パラメータの値と、該パラメータに応じて予め設定された電力係数の値とに基づき、前記パラメータ及び前記電力係数を含む所定の消費電力評価式に従って、前記無線通信端末の消費電力の評価値を算出する電力算出ステップと
を備える、ことを特徴とする消費電力評価方法。
【請求項17】
無線通信端末のハードウェアを構成する所定部品の動作状態を示していると共に端末機種に依存しないパラメータの値を用いて該無線通信端末の消費電力の評価値を算出するための消費電力評価式に含まれており、該消費電力評価式において前記パラメータの重みとして該パラメータに乗じられる電力係数の値を取得するための電力係数作成システムを用いた電力係数作成方法であって、
電力係数作成システムが、所定の試験用無線通信端末のハードウェアを構成する所定部品の消費電力を変化させるための試験プログラムを実行する試験プログラム実行ステップと、
電力係数作成システムが、前記試験プログラム実行ステップにおける前記試験プログラムの実行中に前記試験用無線通信端末の消費電力を測定する電力測定ステップと、
電力係数作成システムが、前記試験プログラム実行ステップにおける前記試験プログラムの実行中に前記試験用無線通信端末の前記所定部品の動作状態を示す情報を取得し、この取得した情報に基づいて、前記試験用無線通信端末における前記パラメータの値を取得する部品状態管理ステップと、
電力係数作成システムが、前記電力測定ステップにおいて測定した消費電力と、前記部品状態管理ステップにおいて取得した前記パラメータの値とを試験ログとしてメモリに格納する試験ログ管理ステップと、
電力係数作成システムが、前記試験ログ管理ステップにおいて前記メモリに格納した前記試験ログを前記消費電力評価式に適用することによって、前記電力係数を算出する電力係数算出ステップと
を備える、ことを特徴とする電力係数作成方法。
【請求項18】
前記無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理部を更に備え、
前記部品状態管理部は、前記仮想部品状態管理部によって取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する請求項1〜9の何れか一項に記載の消費電力評価装置。
【請求項19】
前記他の所定部品の動作は、所定の省電力制御の元で行われる動作を含む、ことを特徴とする請求項18に記載の消費電力評価装置。
【請求項20】
前記試験用無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理部を更に備え、
前記部品状態管理部は、前記仮想部品状態管理部によって取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する請求項10〜15の何れか一項に記載の電力係数作成システム。
【請求項21】
前記他の所定部品の動作は、所定の省電力制御の元で行われる動作を含む、ことを特徴とする請求項20に記載の電力係数作成システム。
【請求項22】
前記消費電力評価装置が、前記無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理ステップを更に備え、
前記部品状態管理ステップでは、前記消費電力評価装置が、前記仮想部品状態管理ステップにおいて取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する請求項16に記載の消費電力評価方法。
【請求項23】
前記電力係数作成システムが、前記試験用無線通信端末のハードウェアを構成する他の所定部品の動作状態を示す情報を、当該他の所定部品の動作によって生じる他の動作状態を示す情報から、当該他の所定部品の仮想動作状態情報として取得する仮想部品状態管理ステップを更に備え、
前記部品状態管理ステップでは、前記電力係数作成システムが、前記仮想部品状態管理ステップによって取得された前記仮想動作状態情報に基づいて、前記他の所定部品の動作状態を示している前記パラメータの値を取得する請求項17に記載の電力係数作成方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図13】
image rotate

【図12】
image rotate


【公開番号】特開2010−225133(P2010−225133A)
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願番号】特願2009−262303(P2009−262303)
【出願日】平成21年11月17日(2009.11.17)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【出願人】(504145342)国立大学法人九州大学 (960)
【Fターム(参考)】