スマートフォンにおける圧縮通信に関する消費エネルギーの最適化
2010SE139 中江祥吾 2010SE247 豊田丈晃
指導教員：横山哲郎

1

はじめに

1.1

背景

では，compress と LZO で無圧縮通信に比べて消費エネルギーが削減された．各圧縮形式の特徴を考慮して消費エネルギーを比較すると，圧縮速度の速い圧縮形式や削減率の近年，スマートフォンが急速に普及している．文献 [1]高い圧縮形式が必ずしも省エネルギーであるとは限らないによれば，スマートフォン保有率は，平成 22 年末ではということが明らかになった．例えば，受信解凍する場合9.7% であったが，平成 24 年末では 49.5% となった．そでは，LZO は zlib に比べて，解凍速度は速かったが通信の一方で，一部のスマートフォンユーザーがバッテリーのに関するエネルギーが大きかったので，省エネルギーでは消耗について不満を持っており，スマートフォンにおけるなかった．また，PPMd は compress に比べて，削減率は消費エネルギーの最適化に対する需要があるといえる．

高かったがメモリに関するエネルギーが大きかったので，

1.2

アプローチ現在，スマートフォンにおける消費エネルギーの最適化省エネルギーではなかった．このように，圧縮形式と消費エネルギーの関係は単純ではなく，エネルギーの構成要素のバランスを考慮する必要がある．

について，さまざまな手法が提案されている．通信において可逆圧縮を用いる手法は，可逆圧縮を行うことによって2.2省エネルギー化

無線通信にかかる消費エネルギーを小さくすることが可能であるということを利用して，消費エネルギーの最適化を図っている．文献 [2] では，可逆圧縮通信時の消費エネルギーを複数の圧縮形式で比較し，圧縮形式の選択が消費エネルギーの最適化につながるということを示している．ま

文献 [3] では，可逆圧縮通信において，受信と解凍を逐次処理する場合に比べて，パイプライン処理する場合のほうが省エネルギーであるという例を実験に基づいて示している．

た，文献 [3] では，データ受信と解凍をパイプライン化して処理することで，消費エネルギーの最適化を図っている．
文献 [2] や文献 [3] では，圧縮形式による比較が中心となっており，基本的にデフォルトの圧縮レベルを用いている．文献 [2] では，圧縮レベルの違いによる消費エネル
ギーの変化も示しているが，示している圧縮レベルが最適であるかの検証はされていない．我々は，代表的な圧縮形式である ZIP について，圧縮レベルと消費エネルギーの間の関係を示し，最適な圧縮レベルを明らかにする．最適

受信解凍処理におけるパイプライン化による実験で用いられているコーパスは，Digital Bibliography& Library Project からの 10MB 分の XML レコードである．また，実験で用いられている圧縮形式は，gzip，lzop，LZMA，bzip2，ZIP である．実験の結果，受信と解凍をパイプライン処理する場合は，bzip2 を除く圧縮形式で，逐次処理する場合に比べて消費エネルギーが削減された．これは，CPU が効率よく利用されたために実行時間が短くなったことと，中間データをメモリに書き出す必要性が低くなったことが影響していると考えられている．

な圧縮レベルは，圧縮レベルを 5 段階変化させ，それぞれの圧縮通信にかかる消費エネルギーを実測することにより求める．なお，ZIP の圧縮アルゴリズムとして，LZ77 アルゴリズムとハフマン符号化を組み合わせたものである

Deﬂate を用いる．

2

関連研究

2.1

可逆圧縮通信による省エネルギー化

3

実験環境

3.1

端末の概要

我々は，圧縮レベルを考慮した消費エネルギーの最適化
例を実験に基づいて示す．
実験では，端末として Galaxy Nexus を用いる．Galaxy

Nexus は Android 4.0 のリファレンスモデルであり，その文献 [2] では，可逆圧縮通信に関する実験の結果を示し， 概要は表 1 のとおりである．

可逆圧縮通信を考慮した消費エネルギーの最適化について考察している．
圧縮形式ごとの消費エネルギーを比較する実験では，圧縮形式に bzip2，compress，LZO，PPMd，zlib が選ばれ，Calgary Corpus からの 1MB 分のテキストデータを用いて比較が行なわれている．通信のスループットが 5.70Mbpsのとき，デフォルトの圧縮レベルを用いると，受信解凍する場合では，PPMd を除く圧縮形式で無圧縮通信に比べて消費エネルギーが削減された．また，圧縮送信する場合

表 1 Galaxy Nexus の概要
製造サムスン電子OS
CPU

Android 4.0
Texas Instruments OMAP4460（ARM Cortex-A9），1.2GHz，2 コア
1GB
3.7V，1750mAh

メモリ
バッテリーなお，実験は OS を Android 4.2.1 にアップデートした

端末とアクセスポイントの間は無線通信区間であり，通状態で行う．また，端末の状態を一定にするために，実験

信環境を一定にするために，端末とアクセスポイントのに不要なアプリケーションは停止させ，端末の設定は次の距離を 10cm に固定する．また，端末とアクセスポイン
トの間は，2.4GHz 帯ではなく 5GHz 帯で接続する．こようにする．

• 3G，Bluetooth，NFC を停止する．

れは，2.4GHz 帯が ISM バンドと呼ばれ，Wi-Fi 以外に• CPU 周波数を 1.2GHz に固定する．

Bluetooth や電子レンジなどでも使用されており，Wi-Fi• 画面の輝度を最小にする．
3.2

通信に対するノイズが比較的多いためである．なお，実験は端末が 5GHz 帯において実験用アクセスポイントのみを検出する状態で行う．

計測環境

端末の消費電力の測定は，端末，電源装置，測定装置を図 1 のような回路構成で接続して行う．

4

実験方法

4.1

概要

実験は，サーバー上の自動化スクリプトと制御用スクリプト，端末上の実験用アプリケーションにより自動的に行う．自動化スクリプトは，各テストケースごとに順次，制御用スクリプトを実行するためのスクリプトである．制御用スクリプトは，端末と測定装置の制御を行い，指定されたテストケースの実行時の端末の消費電力を測定するためのスクリプトである．実験用アプリケーションは，指定されたテストケースを実行するためのアプリケーションである．

4.2
図 1 回路構成

制御用スクリプトと実験用アプリケーション

制御用スクリプトによる端末と測定装置の制御は，Socket 通信で行なう．また，制御用スクリプトは，実行時端末は，作成したダミーバッテリーを介して測定装置ににコマンドライン引数として，ファイル名，圧縮レベル，接続されている．バッテリーと Galaxy Nexus の接点には実験回数，実験種別を指定することで，実験用アプリケー端子が 4 つあるが，左から 1 番目の端子と左から 3 番目のションが実行するテストケースを指定できるようにする．

端子を用いて給電を行うことで，Galaxy Nexus を起動さ実験種別は，ファイルの受信，ファイルの解凍，ファイルせることができる．の受信解凍，ファイルの圧縮，ファイルの送信，ファイル電源装置は，端末への給電を安定的に行うために，バッの圧縮送信の 6 種類である．なお，制御の流れは次のとおテリーの代わりとして用いる．実験で用いる電源装置は， りである．
菊水電子工業製の PMC18-5A である．電源装置の設定は， 1. サーバー上の制御用スクリプトが，消費電力の測定開端末を安定的に動作させるために 4.00V，1.50A とする．
実験で用いる測定装置は，横河メータ＆インスツルメン
ツ製の WT1600 である．この測定装置は，ネットワーク始を測定装置に指示する．

2. サーバー上の制御用スクリプトが，テストケースの実行開始を端末上の実験用アプリケーションに指示接続機能を搭載しており，この機能を用いて，遠隔で操作する．

することや測定結果を取得することができる．測定装置の設定は，データ更新レートを 1s とし，1 秒ごとの電力積算

3. 端末上の実験用アプリケーションが，テストケースの実行終了をサーバー上の制御用スクリプトに通知値が記録されるようにする．

する．

3.3

通信環境

4. サーバー上の制御用スクリプトが，消費電力の測定終実験では，端末とサーバーの間で圧縮通信を行う．
端末とサーバーはアクセスポイントを介して接続し，端了を測定装置に指示する．
実験用アプリケーションによるサーバーとのファイル送

末とアクセスポイントの間は Wi-Fi で，アクセスポイン受信は，HTTP 通信で行なう．また，実験用アプリケー
トとサーバーの間は Ethernet で接続する．リンク速度は， ションの起動中は，画面の変化による消費エネルギーの変端末とアクセスポイントの間で 65Mbps，アクセスポイン 化を防ぐために，画面が常時点灯するようにする．
トとサーバーの間で 1Gbps である．また，計測装置をサーバーから遠隔で操作するために，計測装置もアクセスポイントに Ethernet で接続する．計測装置とアクセスポイン
トの間のリンク速度は，10Mbps である．

4.3

コーパスとテストケース

実験では，コーパスとして Silesia compression corpus[4]の dickens という約 10MB のテキストファイルを用いる．

このコーパスは，プロジェクト・グーテンベルク上で公開されているチャールズ・ディケンズの 14 作品を連結したものである．このコーパスは，文学作品のテキストである
ため，記号の種類が少ないバイナリや，すでに圧縮されていることが多い動画に比べて，削減率が高くなると予想さ

5

実験結果

5.1

受信解凍

受信時，解凍時，受信解凍時の 1 回あたりの電力積算値
は，図 3 のようになった．

れ，圧縮レベルごとの消費エネルギーを比較することに適していると考えられる．また，コーパスのサイズは，通信時間を短くなりすぎないようにするために適当であり，実験に適していると考えられる．コーパスをサーバー上で圧縮したときの圧縮率は図 2 のようになった．なお，圧縮率は，圧縮後の ZIP ファイルのサイズを圧縮前のテキストファイルのサイズで除算したものである．圧縮レベルが 0のときは無圧縮であるため，ほかの圧縮レベルのときに比べて，圧縮率は大きく異なった．また，圧縮率の変化は，圧縮レベルが大きくなるにつれて小さくなった．
図 3 受信時，解凍時，受信解凍時の消費エネルギー受信時の消費エネルギーは，圧縮レベルが大きくなるにつれて小さくなった．また，受信時の消費エネルギーの減少率も，圧縮レベルが大きくなるにつれて小さくなった．
解凍時の消費エネルギーは，どの圧縮レベルにおいても，ほぼ同じであった．受信時の消費エネルギーと解凍時の消費エネルギーを比べると，どの圧縮レベルにおいても，解凍時の消費エネルギーのほうが小さかった．受信解凍時の消費エネルギーは，受信時の消費エネルギーと同様の傾向
図 2 圧縮率であった．受信解凍時の消費エネルギーは，圧縮レベルが9 のときに最も小さく，この圧縮レベルが，受信解凍時における最適な圧縮レベルであった．
実験では，受信解凍時および圧縮送信時の消費電力だけではなく，消費エネルギーの構成要素を明らかにするために，受信時，解凍時，圧縮時，送信時の消費電力もそれらと5.2

圧縮送信

圧縮時，送信時，圧縮送信時の 1 回あたりの電力積算値は独立に測定する．また，圧縮レベルとして，無圧縮の 0， は，図 4 のようになった．
無圧縮を除くと最小の 1，最大の 9，1 と 9 の中間の 5 を用いる．圧縮レベルが 5 のときから 9 のときまでの間は，圧縮率の変化が小さいことから，1 と 5 の中間の圧縮レベルである 3 も用いる．そのため，テストケースは，6 種類の実験種別と 5 種類の圧縮レベルの積で合計 30 パターンとなる．各テストケースの実験回数は 10 回とし，各回の平均を実験結果とする．

4.4

手順

実験の手順は，次のとおりである．

1. サーバー上に各レベルで圧縮されたコーパスを保存す

図 4 圧縮時，送信時，圧縮送信時の消費エネルギーる．また，端末から送信されたファイルを保存するための PHP ファイルも保存する．

圧縮時の消費エネルギーは，圧縮レベルが 1 のときを除

2. サーバー上の Web サーバーソフトウェアを起動する． いて，圧縮レベルが大きくなるにつれて大きくなった．ま3. 端末上にコーパスを保存する．

た，圧縮時の消費エネルギーの増加率も，圧縮レベルが大きくなるにつれて大きくなった．送信時の消費エネルギー

4. 端末上の実験用アプリケーションを起動する．

は，圧縮レベルが大きくなるにつれて小さくなった．また，

5. サーバー上の自動化スクリプトを実行する．

送信時の消費エネルギーの減少率も，圧縮レベルが大きくなるにつれて小さくなった．圧縮時の消費エネルギーと送信環境が悪く，スループットが低い場合は，通信時間が長信時の消費エネルギーを比べると，圧縮レベルが 0 のときくなり，通信にかかる消費エネルギーが大きくなると予想を除いて，受信時の消費エネルギーのほうが小さかった． されるため，ZIP ファイル化しないで無圧縮送信する場合圧縮送信時の消費エネルギーは，圧縮時の消費エネルギーと同様の傾向であった．圧縮送信時の消費エネルギーは，圧縮レベルが 1 のときに最も小さく，この圧縮レベルが，圧縮送信時における最適な圧縮レベルであった．の消費エネルギーのほうが大きくなると考えられる．

6

おわりに我々は，圧縮通信における圧縮レベルと消費エネルギーの関係を示し，最適な圧縮レベルを明らかにした．圧縮送

5.3

考察

信時の消費エネルギーにおいては，圧縮と送信の間にトレードオフの関係が見られた．これは，トレードオフの関

受信時の消費エネルギーと解凍時の消費エネルギーの合係を用いて消費エネルギーの最適化を図ることができると計は，どの圧縮レベルにおいても，受信解凍時の消費エネいうことを示している．圧縮送信において，最適な圧縮レルギーとほぼ同じであった．そのため，受信解凍時の消費ベルである 1 を用いたときの消費エネルギーは，最悪なエネルギーは，受信時の消費エネルギーと解凍時の消費エ圧縮レベルである 9 を用いたときに比べて約 50% 小さくネルギーから推測することができると考えられる．また， なった．また，消費エネルギーと実行時間の相関関係は高圧縮送信時の消費エネルギーについても同様に，圧縮時の かった．この結果は，圧縮通信において，適切な圧縮レベ消費エネルギーと送信時の消費エネルギーから推測するこルを用いることにより，消費エネルギーを削減することがとができると考えられる．

できるということを示すとともに，副次的な効果として，我々は，各実験種別における，消費エネルギーと圧縮率， 実行時間の短縮が期待されるということを示している．圧
圧縮率と実行時間，実行時間と消費エネルギーの相関関係 縮レベルを考慮した消費エネルギーの最適化では，最適化を調べた．実行時間と消費エネルギーの相関関係は，どのに対してソフトウェア側からアプローチしており，ハード実験種別においても高く，実行時間の短縮は，消費エネルウェア側に変更を加える必要はない．そのため，多くの端ギー削減の貢献要素のひとつであるということを示唆して末に対して容易に消費エネルギーの最適化を図ることがいる．受信時および送信時においては，圧縮率と実行時間できると考えられる．また，バッテリーを容量の大きいもの相関関係が高く，受信時および送信時の消費エネルギーのに変更するというような物理的な変更を加えなくても，は，圧縮率に応じて変化するということを示唆している． バッテリー持ちの向上を図ることが可能である．我々は圧解凍時および圧縮時においては，圧縮率と実行時間の相関 縮形式として ZIP を用いたが，ZIP は広く一般に利用され関係が低く，解凍時および圧縮時の消費エネルギーは，圧ているため，我々の成果は幅広い場面で利用，応用するこ縮率によって決定されるものではないということを示唆しとができると考えられる．今後は，圧縮レベルを考慮したている．

最適化手法の実利用に向けて，コーパスや通信環境などを受信解凍時の消費エネルギーにおいては，受信と解凍の間にトレードオフの関係が見られなかった．これは，解凍にかかる消費エネルギーが，圧縮レベルが大きくなるにつ変更した場合の検証を重ね，最適な圧縮レベルの予測モデルを構築することが必要であると考えられる．

れて大きく増加しなかったためであると考えられる．圧縮

参考文献

送信時の消費エネルギーにおいては，圧縮と送信の間にト[1] 総 務 省：平 成

24

年 通 信 利 用 動 向 調 査

レードオフの関係が見られた．圧縮時の消費エネルギーにの 結 果 ，総 務 省（ オ ン ラ イ ン ），入 手 先

おいては，圧縮レベルが 1 のときの消費エネルギーが，最〈http://www.soumu.go.jp/johotsusintokei/も小さかった．これは，元ファイルの圧縮時間と ZIP ファ

statistics/data/130614_1.pdf〉（ 参 照 2014-0105）．

イルの書き出し時間の合計が，最も短かったためであると思われる．
実験では，圧縮レベルごとの消費エネルギーを比較することが目的であるため，どの圧縮レベルにおいても ZIPファイル化して通信を行なったが，実利用では，単一ファイルの無圧縮通信の場合，ZIP ファイル化の必要性は低い．ZIP ファイル化しない場合の消費エネルギーは，圧縮レベルが 0 のときの受信時や送信時の消費エネルギーが相当する．圧縮レベルが 0 のときの送信時の消費エネルギーは，圧縮レベルが 1 のときの圧縮送信時の消費エネルギーに比べて小さく，ZIP ファイル化しないで無圧縮送信する場合の消費エネルギーは，ZIP ファイル化して圧縮送信する場合の消費エネルギーに比べて小さかった．しかし，通[2] Barr, C.K. and Asanović, K.: Energy-Aware Lossless Data Compression, ACM TOCS, Vol.24, No.3,
pp.250–291 (2006).
[3] 横山哲郎，藤井勝之，神山剛，冨山宏之，高田広章：消費エネルギーを意識した可逆圧縮データ受信，情報処理学会研究報告，Vol.2011-EMB-20，No.1，pp.1–6（2011）．

[4] Deorowicz, S.: Silesia compression corpus, SilesianUniversity of Technology (online), available from〈http://sun.aei.polsl.pl/~sdeor/index.php?
page=silesia〉(accessed 2014-01-05).