2012年3月5日

Androidエミュレータの起動が遅いのは一発で高速化できる


Androidエミュレータの起動は非常に遅いのです。要はARM仮想マシンなので、実行性能が物理CPUに比べると5~10倍くらい遅いのはどうしようもありませんが、起動を速くすることは簡単にできます。


スナップショット機能を使う

Android開発でエミュレータの起動の遅さが悩みの種という人も多いのではないかと思います。エミュレータの起動待ちで始めたCityVilleについハマり、起動時間の実質5倍以上の時間を無駄にしたという人も多いんじゃないかなーと思います。

AVDのバージョン9.0以降、仮想マシンのスナップショットの保存と復元がサポートされました。この機能を使うとびっくりするくらい起動が速くなります。

[マシンスペック]
CPUCore2Duo 2.8GHz
RAM6GB
OSWindows7 64bit

[エミュレータ環境]
プラットフォームAndroid4.0.3
SDCard256MB
Device RAM Size512MB


という環境で起動時間を比較してみたところ、次のような結果となりました。

スナップショットなしスナップショットあり
5分32秒3414秒17


スナップショットというのは、仮想マシンのメモリをイメージのままディスクに保存し、次回起動時は通常のマシンブートシーケンスを実行するのではなく、保存したメモリイメージをそのままロードすることで、前回終了時の状態をそっくりそのまま復元するという機能。PCのバーチャルマシンソフトではおなじみの機能だ。

設定方法

AVDマネージャを開き、仮想マシンを選択する。「編集」ボタンをクリックします。
Snapshotの「使用可能」チェックボックスにチェックします。



Snapshotを有効にした直後の起動時には「Wipe User Data」をチェックして起動する必要があります。
その際の起動は従来と同じだけの時間がかかってしまいます。

次回以降は、「Lanch from snapshot」をチェックして起動すれば、高速に起動します。



これで起動待ちの必要がなくなったのだから、釣りスタなんかにうつつを抜かしてないで早く仕事に戻りましょう。

なお、終了時にスナップショットを作成するので、終了にこれまでより少々時間がかかるようになってしまいますが、これはいたし方ありません。

0 コメント:

コメントを投稿

長崎県 引越 見積もり 単身引っ越し 料金 還暦祝い 父 Blog Entry Ranking
" ); 出会い系を例示