なぜAndroidエミュレータが遅いのですか? Androidエミュレータをどのように高速化できますか?



14 Answers

重要な注意まず 、VTについてのインテルのリストを参照してご使用のCPUがインテルVTをサポートしていることを確認してください。

HAXM、低速Androidエミュレータのスピードアップ

HAXMの略 - 「Intel Hardware Accelerated Execution Manager」

現在のところ、インテルVT(インテル仮想化テクノロジー)のみをサポートしています。

AndroidエミュレータはQEMU基づいています。 ホストシステム上のQEMUとHAXMドライバ間のインタフェースは、ベンダーに依存しないように設計されています。

HAXM用のAndroid開発環境の設定手順

  1. Eclipseの更新:EclipseのインストールとADTプラグインが完全に最新であることを確認してください。

  2. あなたのAndroidツールを更新してください:Eclipseプラグインをアップデートした後は、Android SDKツールを更新することが重要です。 これを行うには、Android SDKマネージャを起動し、すべてのAndroid SDKコンポーネントを更新します。 HAXMを利用するには、少なくともリリースバージョン17以上である必要があります。

  • x86 Atomシステムイメージインテルハードウェアアクセラレーション実行マネージャードライバーをダウンロードしてください。 下の画像に従ってください:

  • "IntelHaxm.exe"を実行してHAXMドライバをインストールします。 次のいずれかの場所に設置されます:

    • C:\Program Files\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    • C:\Users\<user>\adt-bundle-windows-x86_64\sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    Intel VTをオンにする必要があるというメッセージが表示されてインストーラが失敗した場合は、 BIOSこれを有効にする必要がありBIOSインテルVT(仮想化テクノロジー)を有効にするには、これを行う方法の説明を参照してください。

  • 新しい x86 AVDを作成する:以下のイメージに従ってください:

  • あるいは、新しいSDKについては、
Question

私はx86 Windows XP Professionalマシンに2.67 GHzのCeleronプロセッサーと1.21 GBのRAMを持っています。

私の理解では、 Androidエミュレータはこのようなマシンでかなり早く始めるはずですが、私にとってはそうではありません。 私は、IDE、SDK、JDKなどをセットアップする際のすべての指示に従っており、エミュレータをすぐに起動するのに成功しましたが、それはまれです。 可能であれば、どうすればこの問題を解決できますか?

ホーム画面を起動してロードしても、非常に遅いです。 私はバージョン3.5 (ガリレオ)と3.4 (ガニメデ)でEclipse IDEを試しました。




I noticed that the my emulator ( Eclipse plugin) was significantly slowed by my Nvidia graphics card anti-aliasing settings. Removing 2x anti aliasing from the graphics menu and changing it to application controlled made it more responsive. It is still slow, but better than it used to be.




ここに私が誰もそれを全く言及しなかったことが気付いた。

使用可能なすべてのプロセッサをエミュレータに割り当てます。

ここであなたが試すことができるものがあります。 エミュレータの速度を上げてくれます。 私はエミュレータが使用可能なCPUの単一のコアだけを使用していることに気づいた。 使用可能なすべてのプロセッサーを使用するように設定しました。

私はWindows 7を使用しています。

Androidエミュレータが起動したら、タスクマネージャを開き、[プロセス]タブを見て、「emulator-arm.exe」または「emulator-arm.exe * 32」を探します。右クリックして[Processor Affinity]を選択し、エミュレータに好きなだけ多くのプロセッサを割り当てます。




ウイルス対策を無効にしてください。 おそらくエミュレータを少し速くするでしょう。




しばらく開発した後、私のエミュレータは残酷に遅くなりました。 私はユーザーデータを消去することを選択しましたが、はるかに優れていました。 私はあなたが配備した各APKファイルを読み込むのに時間がかかると思っています。







The older Android versions run a lot faster. When I'm on my netbook, I use Android 1.5 (API level 3). There are a couple of drawbacks, though--your apps need to support the older platforms (obviously), and ndk-gdb requires running Android 2.2 (API level 8) or higher. But regularly testing apps against older platforms is a good idea anyway.




エミュレータがハードウェアGLをサポートしていないため、主にAndroid 3.0(Honeycomb)では現在の(2011年5月)バージョンのエミュレータが遅いです。これは、GLコードがソフトウェア(ARMソフトウェア)に変換され、 QEMUソフトウェアでエミュレートされます。 これはクレイジーです。 彼らはこの問題に取り組んでおり、部分的には解決していますが、リリース品質はありません。

Google I / O 2011:Android Development Toolsの動画をご覧ください。約44分にジャンプします。




エミュレータは遅いです。 実際には何もできませんが、エミュレータに代わるものがあります。

  1. Genymotion

  2. VirtualBox

  3. BlueStacks

  4. YouWave

  5. WindowsのAndroidエミュレータ

  6. 豆の瓶

  7. Andy

エミュレータを高速化するには、GPUをホストし、軽量のAndroidバージョン( Android 2.3 (Gingerbread))を使用できます。 Macでの開発はより良いでしょう。 なぜエミュレータを使用するのですか? 実際の電話を使用する方が理にかなっています。




これにさらに情報を追加する。

私は最近、UbuntuのインストールをUbuntu 10.04 LTS(Lucid Lynx)にアップグレードしました。これは、Javaバージョンを次のように更新しました:

Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

そして今、エミュレータは(起動するのに時間がかかりますが)以前より速く動作しているようです。

JVMをアップグレードする価値があるかもしれません。




アップデート: Androidスタジオ(2.x)の最新バージョンでバンドルされたエミュレータが大幅に改善されました。 これは反応があり、豊富な機能を備えています。

興味のある方は: Genymotion試してみてGenymotion 。 登録後、Windows / Mac OS X / Linux用のバージョンをダウンロードできます。 Eclipseのプラグインも利用できます:

プラグインのインストールは、Eclipseを起動して「Help / Install New Software」メニューに移動し、次に新しいURLを追加するだけです( http://plugins.genymotion.com/eclipse 。 Eclipseが示す手順に従います。

このエミュレータは高速で応答性があります。

GenyMotionでは、バッテリーレベル、信号強度、GPSなど、さまざまなセンサーを制御することができます。 最新バージョンにはカメラツールも含まれています。




I had intermittent slow emulator (SDK v8.0) load times, up to three minutes on Intel Core i7 920 2.67 GHz CPU running on Xubuntu 10.04 VirtualBox 3.2.12 guest with Eclipse (3.6.1) loaded. I changed the VirtualBox guest memory from 1024 MB to 2048 MB and from that point on, I never experienced the slowness again (load times consistent at 33 seconds, CPU load consistent at 20%). Both Eclipse and the emulator are memory hogs.




エミュレータの起動は非常に遅いです。 良いことは、エミュレータを一度起動するだけです。 エミュレータが既に実行されていて、アプリケーションを再実行すると、エミュレータは比較的迅速にアプリケーションを再インストールします。 もちろん、電話でどれくらい速く動作するかを知りたい場合は、実際の電話でテストすることをお勧めします。




エミュレータは、アイドル状態のときには減速しているようです。 これは、側面のキーをすばやくマウス操作して、ライトアップの反応を観察することで明らかになります。 この問題を回避するには、エミュレータを起動するときにQEMU-icount autoを渡します。 my_avd.batというmy_avd.batバッチファイルをmy_avd.batして、それを実行できます。

emulator @my_avd -no-boot-anim -qemu -icount auto
  • @my_avd - 'my_avd'という名前の仮想デバイスを起動する
  • -no-boot-anim - より速い起動のためにアニメーションを無効にする
  • -qemu args... - 引数をqemuに渡す
  • -icount [N|auto] - 命令ごとに2 ^ Nクロックティックの仮想命令カウンタをイネーブルにする

これにより、アニメーションが滑らかで滑らかになり、 adb install 10倍に増えました。




次のコマンドでemulator.batを作成し、エミュレータを起動することができます。 それはより速く始まります。

emulator.exe -cpu-delay 0 -no-boot-anim @<avd name>

Unix(MacまたはLinuxのフレーバー)の場合:

emulator -cpu-delay 0 -no-boot-anim @<avd name>



Related