안드로이드 에뮬레이터는 약간 느립니다. Motorola Droid 및 Nexus One과 같은 일부 장치의 경우 앱이 실제 장치에서 에뮬레이터보다 빠르게 실행됩니다. 게임 및 시각 효과를 테스트 할 때 발생하는 문제입니다.
에뮬레이터를 가능한 빨리 실행하려면 어떻게합니까? 나는 그 매개 변수를 가지고 놀았지만 아직 눈에 띄게 개선 된 구성을 찾지 못했습니다.
안드로이드 에뮬레이터는 약간 느립니다. Motorola Droid 및 Nexus One과 같은 일부 장치의 경우 앱이 실제 장치에서 에뮬레이터보다 빠르게 실행됩니다. 게임 및 시각 효과를 테스트 할 때 발생하는 문제입니다.
에뮬레이터를 가능한 빨리 실행하려면 어떻게합니까? 나는 그 매개 변수를 가지고 놀았지만 아직 눈에 띄게 개선 된 구성을 찾지 못했습니다.
답변:
~ 50 % 더 빠름
Android SDK 루트 폴더로 이동하여 extras \ intel \ Hardware_Accelerated_Execution_Manager로 이동하십시오. IntelHaxm.exe 파일을 실행하여 설치하십시오. (Android Studio에서 설정-> Android SDK-> SDK 도구-> Intel x86 Emulator Accelerator (HAXM 설치 관리자)로 이동할 수 있습니다)
"Intel atom x86"CPU / ABI로 AVD 생성
이걸 설치하는 것도 잊지 마세요
AVD 생성 중 PS 에뮬레이션 메모리 추가 : 하드웨어 / 신규 / 장치 램 크기 / 설정 값 512 이상
PS :이 도구를 확인, 매우 편리 심지어 시험
/extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.dmg
SDK 관리자에서 패키지를 다운로드 한 후 설치해야합니다 .
업데이트 : 이제 Intel x86 이미지를 사용할 수 있으므로 가장 좋은 대답은 위의 것입니다.
CommonsWare가 올바르게 지적한대로 에뮬레이터는 ARM op CPU를 에뮬레이션하므로 Intel opcode로 변환해야하므로 속도가 느립니다. 이 가상화는 CPU를 씹습니다.
에뮬레이터를 더 빨리 만들려면 더 많은 CPU를 제공해야합니다. 빠른 CPU로 시작하거나 가능하면 업그레이드하십시오.
그런 다음 에뮬레이터에 더 많은 CPU를 제공하십시오.
이 두 가지 변경 사항이 적용되어 약 50 % 정도 개선 된 것으로 보입니다.
Windows 7에서 프로세서 선호도를 설정하려면 :
참고 :이 방법으로 선호도를 변경하면 프로세스 수명 동안 만 변경됩니다. 다음에 다시 시작해야합니다.
Genymotion 에 스핀 을 제안하고 싶습니다 . 오라클의 VirtualBox에서 실행되며 보통 시스템에서 합법적으로 60fps에 도달합니다.
다음은 저가형 2012 모델 MacBook Air에서 실행되는 워크샵 중 하나의 스크린 캡입니다.
텍스트를 읽을 수 없으면 56.6fps로 실행되는 Nexus 7 에뮬레이터입니다. 추가 (큰!) 보너스는 Google Play 및 Google Play 서비스가 가상 머신과 함께 제공된다는 것입니다.
데모 된 애니메이션의 소스는 여기에서 찾을 수 있습니다 .
API 15 v3 이상 및 SDK Tools v17 +를 사용하는 경우 GPU 하드웨어 가속 (Intel HAXM과 함께)을 활성화하십시오 . 에뮬레이터의 그래픽 가속은 개발 컴퓨터의 그래픽 하드웨어, 특히 그래픽 처리 장치 (GPU)를 활용하여 화면 그리기 속도를 향상시킵니다. 이것은 현저한 속도 향상을 제공합니다.
에뮬레이터에서 기본적으로 그래픽 가속을 활성화하려면 : AVD를 만들 때 하드웨어 섹션에서 새로 만들기를 클릭하고 GPU 에뮬레이션을 선택하고 값을 예로 설정하십시오.
런타임에만 가속을 활성화하려면 다음과 같이 에뮬레이터를 시작하는 동안 -gpu 플래그를 사용하십시오.
emulator -avd <avd_name> -gpu on
출처 : 구글은 에뮬레이터 자습서를 사용 .
편집 인텔 이미지를 사용하면 성능이 약간 향상되지만 Genymotion을 사용하면 얻을 수있는 성능이 훨씬 향상됩니다. Paul Lammertsma의 답변을 참조하십시오 .
이전 답변
ADT rev 17에서는 에뮬레이터가 Windows 및 Mac OS X에서 가상화 모드로 x86 시스템 이미지 실행을 지원합니다. 이는 성능에 현저한 영향을 미칩니다.
ADT rev 17 메모 : http://android-developers.blogspot.jp/2012/03/updated-sdk-tools-and-adt-revision-17.html
가상 머신 가속 구성 : http://developer.android.com/guide/developing/devices/emulator.html#accel-vm
Intel HAXM Accelerator를 설치하고 Intel Atom 이미지를 사용한 후에 에뮬레이터가 50 배 빠르게 실행되는 것 같습니다. 차이점은 놀랍습니다. 확인하십시오!
http://www.developer.com/ws/android/development-tools/haxm-speeds-up-the-android-emulator.html
에뮬레이터의 기본값은 코어 0으로, 대부분의 Windows 응용 프로그램은 기본적으로 "any"코어입니다. 또한 마지막 코어와 같은 다른 코어에 배치하면 에뮬레이터가 미쳐 버릴 수 있습니다. 가능하면 CPU 사용량이 많은 응용 프로그램을 다른 CPU 코어에 배치하여 속도를 높일 수 있습니다.
하드웨어 적으로 단일 코어 응용 프로그램에서 작동하는 가장 빠른 CPU를 확보하십시오. 2 개 이상의 코어는 에뮬레이터 성능면에서 큰 차이를 경험하지 못할 수 있습니다.
Eclipse + Android 에뮬레이터는 함께 많은 RAM을 소비합니다. RAM이 2 기가있는 시스템을 사용했기 때문에 적어도 3 기가 RAM을 권장하고 시스템에 RAM이 부족하여 페이지 파일을 사용하기 시작하여 속도가 느려졌습니다.
나는 최고의 CPU가 아마도 높은 클럭 (동일한 시리즈 btw의 CPU에 대한 측정으로 클럭 만 사용)을 가지고 SIMD가 아닌 작업을 잘 처리하며 터보 부스트 메커니즘을 가지고 있다고 생각합니다. Java 기반 벤치 마크는 많지 않지만 전체적으로 압축 및 사무실과 같은 응용 프로그램 벤치 마크를 찾습니다. SIMD의 영향을 많이받는 게임이나 미디어를 보지 마십시오. Java를 찾으면 훨씬 좋습니다.
올해 Google I / O (2011)에서 Google은 더 빠른 에뮬레이터를 시연했습니다. ARM과 x86 사이의 바이트 코드에는 문제가 아니라 QEMU에 의해 수행되는 소프트웨어 렌더링이 문제입니다. 그들은 QEMU의 렌더링을 우회하고 렌더링을 내가 믿는 X 서버로 직접 보냅니다. 그들은 정말 좋은 성능과 fps로 자동차 게임을 보여주었습니다.
개발자가 언제 사용할 수 있는지 궁금합니다 ...
clr 가상 시스템이 코드 opcode 변환없이 직접 CPU를 사용하기 때문이라고 생각합니다. clr 응용 프로그램을 최적화하거나 INTEL 프로세서에서 시작된 Windows mobile / window phone 7 일 수 있습니다. 리눅스 기반의 안드로이드 플랫폼이며 이론적으로 i686 환경의 가상 머신에서 안드로이드를 시작할 수 있습니다. 이 경우 vmware와 같은 가상 머신은 일부 opcode를 개별적으로 실행할 수 있습니다. 그러나이 옵션은 Java로 작성하는 경우에만 허용됩니다. Java는 바이트 코드를 해석하거나 실행 전에 미리 컴파일하기 때문입니다. 참조 : http://www.taranfx.com/how-to-run-google-android-in-virtualbox-vmware-on-netbooks
@zest 감사합니다! 매력처럼 일했다. 참고 사항 : 커널 패닉 문제를 처리하려면 HAXM에 인텔 핫픽스를 적용해야합니다. http://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager 또한, 참고 , abi가 둘 이상인 경우 최신 버전의 Android API (r19)의 버그로 인해 하나를 제거해야합니다. https://code.google.com/p/android/issues/detail?id= 66,740 (당신이 86 ABI 원하기 때문에,이 경우 armeabi-V7A 제거). 이 문제를 해결하는 데 45 분이 걸리는 것 외에도 에뮬레이터의 성능 향상 측면에서 매우 보람있는 운동이었습니다.
Visual Studio Android 에뮬레이터를 사용해 볼 수도 있는데, 독립형 에뮬레이터로 설치할 수도 있습니다 (Visual Studio가 필요하지 않음). Windows Pro 이상 시스템에만 설치할 수 있습니다.
에뮬레이터 대신 Genymotion을 사용하십시오. Genymotion은 더 나은 성능을 가지고 있습니다 https://www.genymotion.com
Intel (86) CPU / ABI를 사용하고 있습니다. ARM (armeabi-v7a)을 사용하여 다른 에뮬레이터를 만들었고 속도가 상당히 향상되었습니다. 플랫폼 4.1.2 API 레벨 16을 사용하고 있습니다.
현재 Android Studio를 Android Studio 2.0으로 업데이트하고 시스템 이미지도 업데이트하십시오.
Android Studio 2.0 에뮬레이터는 Android의 이전 에뮬레이터보다 ~ 3 배 더 빠르게 실행되며 ADB 기능 향상을 통해 실제 장치보다 에뮬레이터에 앱과 데이터를 10 배 빠르게 푸시 할 수 있습니다. 실제 기기와 마찬가지로 공식 Android 에뮬레이터에는 Google Play 서비스가 내장되어 있으므로 더 많은 API 기능을 테스트 할 수 있습니다. 마지막으로, 새로운 에뮬레이터에는 통화, 배터리, 네트워크, GPS 등을 관리 할 수있는 다양한 새 기능이 있습니다.