新たな研究によると、人工知能は開発者がバッテリーの消費が少ない携帯電話アプリを設計するのに役立つ可能性がある。
DiffProff と名付けられたこのシステムは、今週カリフォルニアで開催される USENIX Symposium on Operating Systems Design and Implementation カンファレンスで発表される予定で、ソフトウェアによるバッテリーテストの改善を専門とするスタートアップ企業の Charlie Hu 氏と Abhilash Jindal 氏によって開発された。
DiffProfは、同じ機能を実行するアプリは、似たようなタスクをわずかに異なる方法で実行するという仮定に基づいています。例えば、WhatsApp、Googleハングアウト、Skypeなどのメッセージングアプリは、過去の会話を保存し、返信を入力して送信できるようにキーボードを表示します。にもかかわらず、WhatsAppはSkypeの約3倍のエネルギー効率を誇ります。
「アプリの機能で携帯電話のバッテリーが70%も消費されてしまうとしたらどうなるでしょうか?改善の余地はあるのでしょうか、それともその機能は現状のままでいいのでしょうか?」と、パデュー大学の電気・コンピュータ工学教授でもあるフー氏は語った。
DiffProfを説明する研究論文はかなり技術的です。基本的には、「差分エネルギープロファイリング」を用いて、異なるアプリのエネルギープロファイルを作成する手法について説明しています。まず、研究者たちは各アプリに対して同一のタスクを実行する一連の自動テストを実施し、エネルギー効率を算出します。
次に、プロファイルはアプリの「コールツリー」(コールグラフとも呼ばれます)も考慮します。これは、より広範な特定のタスクを実行するために実行される様々なコンピュータープログラムを記述します。
突然の電圧:携帯電話のバッテリーが入力内容や読んだ内容を明らかにする
続きを読む
音楽の再生やメールの送信など、同じ機能を持つアプリは、似たようなコールツリーを持つはずです。しかし、コードにわずかな違いがあると、エネルギープロファイルが異なります。DiffProfはアルゴリズムを用いてコールツリーを比較し、アプリのエネルギー消費を増加させているプログラムを特定します。
このツールを実行する開発者は、比較対象となる両方のアプリに表示される、異なるソフトウェア機能を記述したJavaパッケージのリストを受け取ります。これにより、エネルギー効率の低いアプリのどのプログラムがより多くの電力を消費しているか、そしてそのプログラムを変更または削除できるかどうかを判断できます。このツールは、類似のアプリのソースコードが大幅に重複している場合にのみ役立ちます。
研究者たちはAndroidデバイスを用いて、音楽ストリーミング、ウイルススキャン、メール送信など、様々なタスクを実行する8つの異なるアプリ群をテストした。その結果、SoundCloudはSpotifyやPandoraよりも多くの電力を消費することが判明した。
Googleハングアウトは、FacebookのMessengerやWhatsAppよりもエネルギー効率が悪かった。DiffProfは、KasperskyのモバイルアンチウイルスアプリとPandoraで電力を浪費するバグを発見した。どちらのバグも確認され、Pandoraのバグはその後修正された。®