Shared publicly  - 
 
#androidprotip : Configuring an AVD to use graphics acceleration

You need Android SDK Tools rev 17 or higher, then start by creating a new AVD with the target value of Android 4.0.3 (API Level 15), using SDK rev 3 and System Image rev 2 (or higher).

If you want to have graphics acceleration enabled by default for this AVD, in the Hardware section of the AVD configuration, click New, select GPU emulation and set the value to Yes.

You need to make sure to hit enter when you change the value in the list before closing the dialog.

You can also turn on graphics acceleration at run time:
emulator -avd <avd_name> -gpu on
205
85
Eugenio LX's profile photoPieter Greyling's profile photoChan Je Cho's profile photoNanik T's profile photo
57 comments
 
Looks a bit off on a MBP, but is blazing fast. I hope to see updates to this soon.
 
What about an intel accelerated 4.0.3 AVD with GPU acceleration?
 
+Android Developers I tried this in Linux, but when starting the AVD, I get a lot of these messages in the log window:


eglMakeCurrent failed
FrameBuffer::post eglMakeCurrent failed
eglMakeCurrent failed
FrameBuffer::post eglMakeCurrent failed
development/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glCompileShader:351 error 0x501
development/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetShaderiv:1215 error 0x501
development/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetShaderInfoLog:1238 error 0x501
development/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glUseProgram:1913 error 0x501
development/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetUniformLocation:1382 error 0x501
development/tools/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetAttribLocation:825 error 0x501
Other native OpenGL ES 2.0 programs work in my Linux.

GPU:
Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)

Linux 3.2.0 amd64
 
I'm getting the same as +Marcel Hoffs. When I turn on a new AVD for the first time with -gpu on, I always get a crash. 100% reproducible between me and my team. Windows 7/64bit on Intel i5 laptop, Intel graphics. If I turn off GPU, the AVD boots. will switch to my Linux box and try again.
 
Same as others, crashes on win pro 64 when emulation is enabled.
 
Windows 7, 64-bit, AMD CPU. Emulator crashes looking for libOpenglRender.dll with GPU on. Works like it did before with GPU off.
 
The emulator crashes on my machine too. Windows 7 Ultimate x64, Mobility Radeon HD5470 using drivers from Catalyst 12.3..
 
Same here. Emulator crashes with GPU emulation enabled -- no error message. Windows 7 x64 SP1, NVidia GeForce 9500GT.

Edit: Doesn't do anything on my laptop with intel graphics card.
 
Just wanted to let everyone know. There's a been a few bugs filed on our tracker with some details so we are looking into it.
 
Emulator crash on Win 7 32bits , Nv 220 GT , 2G Ram , gpu on
 
Same here. Crashes immediately. Win7 x64 w/ NVIDIA Quadro.

Error Message:
Failed to allocate memory: 8
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
 
AVD with WVGA and gpu on crashes after starting. AVD with WXGA720 and gpu off can't even start. (Win7 x64, NVIDIA 9800GT)
 
Works fine on x64 Ubuntu 11.10 on a Sony Vaio
 
Seems to crash at AVD startup with laptop GPUs (experienced myself on Windows 7 x64 with AMD HD7690M).
 
Crashes on Win7 32-bit, NVIDIA GTS250
 
I have the same error message as +Craig Jennings after following the instructions...


Host OS: Microsoft Windows 7 64bit
Host GPU: Nvidia GeForce GTX 260
Host GPU driver version: 285.62 and later upgraded to 296.10
SDK tools version (available in the "About" section of the 'android' tool
UI): 18.0.0.v201203301601-306762
Eclipse version: Eclipse 3.7.2
Version of the platform running in the emulator: 4.0.4 ( 4.0.3 r2 )
 
Anyone have any success with the Powercolor Radeon HD 6850 775MHZ 1GB? Crashes on me.
 
here also crash Win7 x64, NVIDIA 1000m Quadro
 
in Mac OS X, system bar is on the bottom for portrait.
 
Also crashes for me, Win7 64-bit. The x64 thing seems to be quite the ongoing thing here...
 
+Jonathan Steele We've seen that on a couple Macs, and included a workaround (it appears to be a driver bug) for the ones we know about. Looks like the workaround guessed wrong on yours. Could you file a bug at http://goo.gl/vE57w, ideally with a system report (Apple -> About This Mac -> System Report...)? Or if that's too much trouble, responding here with your OS X version and GPU will probably be enough. Thanks!
 
fuck windows phones android fuckin rules
 
I Know i don't think anyone even uses those any more
 
Might be great to know exactly what GPUs are actually supported on which platforms at the moment. Imagine all of the wheels spinning out there trying to get it working.
 
Emulator display goes gray then crashes with GPU acceleration enabled. Windows 7 x64, Geforce 8600GT, latest drivers.
 
Thanks, I forgot to set to yes, wasnt paying attention! cheers!
 
i get a crash in libOpenglRender.dll when doing this, i'm guessing opengl drivers are not at the right version. i'll try dl'ing new drivers from ATI and see if that helps
 
always crash with my Windows 7 (64bit) / Geforce 460
 
always crash. tested on win7 and XP

Unhandled exception at 0x64a8000c in emulator-arm.exe: 0xC000001D: Illegal Instruction.



64A80003 add byte ptr [ebx],al
64A80005 add byte ptr [eax],al
64A80007 add byte ptr [eax+eax],al
64A8000A add byte ptr [eax],al
64A8000C db ffh ; <<<<<<<<<<<<< CRASH HERE!
64A8000D inc dword ptr [eax]
64A8000F add byte ptr [eax],bh
64A80015 add byte ptr [eax],al

Stack:
> libOpenglRender.dll!64a8000c()
[Frames below may be incorrect and/or missing, no symbols loaded for libOpenglRender.dll]
mswsock.dll!74a3432a()
ws2_32.dll!76e16b87()
libOpenglRender.dll!64a88aec()
libOpenglRender.dll!64a89c12()
libOpenglRender.dll!64a9d0d5()
libOpenglRender.dll!64a9d121()
libOpenglRender.dll!64a9ce3f()
libOpenglRender.dll!64a8936c()
libOpenglRender.dll!64a9c130()
kernel32.dll!7693339a()
ntdll.dll!77ce9ef2()
ntdll.dll!77ce9ec5()
 
the hardware acceleration broke my system and my other VMs, Virtualbox doesn't load anymore a VM with the VT-x/AMD-V option enabled. Im' using osx
 
Doesn't start also for me with win7 64 bit ATI video card
 
Also crashes at start. Win7 x64, C2D E7200, AMD 4850. I didn't get, is this normal behavior for old hardware or it's just temporary issue, which will be fixed in nearest feature?
 
Like others it crashes for me too!
It says "eglMakeCurrent failed" with a black screen as emulator screen.
Spec: CPU=Intel Core2Due T7500
GPU=Nvidia Quadro 140M -> Driver: nouveau
OS=Linux Mint Debian Edition x64
 
Hmmm, this seems interesting. I am currently unable to make GPU Emulation work on my system, and i think i know why.

System Spec : CPU = 2 x AMD Opteron 2427
GPU = AMD RadeonHD 6800 Series, Driver = fglrx (catalyst 12.6)
OS = Fedora 17 64 Bit.

On running the emulator with verbose enabled, here is the error i see :

<quote>
emulator: ping command: /home/rajeevrk/Android/android-sdk-linux/tools/ddms ping emulator 20.0.3.0 "ATI Technologies Inc." "AMD Radeon HD 6800 Series  " "1.4 (2.1 (4.2.11733 Compatibility Profile Context))"
goldfish_fb_get_pixel_format:167: display surface,pixel format:
  bits/pixel:  16
  bytes/pixel: 2
  depth:       16
  red:         bits=5 mask=0xf800 shift=11 max=0x1f
  green:       bits=6 mask=0x7e0 shift=5 max=0x3f
  blue:        bits=5 mask=0x1f shift=0 max=0x1f
  alpha:       bits=0 mask=0x0 shift=0 max=0x0
eglMakeCurrent failed
FrameBuffer::post eglMakeCurrent failed
X Error of failed request:  GLXBadContextTag
  Major opcode of failed request:  137 (GLX)
  Minor opcode of failed request:  1 (X_GLXRender)
  Serial number of failed request:  166
  Current serial number in output stream:  167
</quote>

According to the AMD Docs :

<quote>
Q9:
What colour modes are currently supported?
A9:
24-bit True Colour is currently the only native colour mode for the ATI Proprietary Linux Driver. 8-bit colour can be achieved using the pseudo-colour visuals feature, but may not work in all applications. 16-bit colour is not supported; if any of your critical applications require 16-bit colour, you should not install the ATI Proprietary Linux Driver.
</quote>

I guess we will need to see if we can get a version of the emulator with 24 bit visual support even.

Rajeev
 
can multiple instances of the emulator running on the same linux box share the same gpu for hardware acceleration? how does that work?
Add a comment...