This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to disable GPU hardware accelerate?

Hi,

    I have a board odroid xu3 running android 4.4. Recently I want to compare the performance of hardware rendering (that is, gpu do the rendering work) and software rendering (cpu do the rendering work with libGLES_android.so). Now I am trying to disable hardware accelerate to get the performance of software rendering.

    I did some tries but failed. 1) The file "egl.cfg" locating "/system/lib/egl/" manages the lib used to render a frame. The default config is "0 0 mali". I made some modification "0 0 mali" -> "0 0 android" but it doesn't work. 2) Still I found another lib named "libGLES_mali.so" at "/vendor/lib/egl/" and I found the rendering lib is exactly "libGLES_mali.so". Android loads hardwre accelerating lib which is "libGLES_mali.so" here defaultly but it will load software lib ("libGLES_android.so") when hardwre accelerating lib is missing. So I delete "libGLES_mali.so".  Unfortunately the screen didn't work.

     I am confused now. Could you tell me how to disable GPU hardware accelerate?

Parents
  • Hi seufanghao,

    The egl.cfg file is deprecated and no longer used from version 4.4 onwards. Although this file is still present in 4.4 onwards, the system does not look at it.

    libGLES_android.so is indeed the software gfx renderer, however it is NOT a complete GLES software renderer. Android requires OpenGL ES 2.0 as of version 4.0 onwards.

    If you are interested in learning more about libGLES_android.so specifically, please look up PixelFlinger and libAGL.

    As such, for your target Android version of 4.4, there is no software rendering backend to 'enable' so you cannot disable the GPU. (Well you can disable it, but as you have discovered, this leads to nothing being rendered at all).

    I hope that helps.

    Kind Regards,

    Michael McGeagh

Reply
  • Hi seufanghao,

    The egl.cfg file is deprecated and no longer used from version 4.4 onwards. Although this file is still present in 4.4 onwards, the system does not look at it.

    libGLES_android.so is indeed the software gfx renderer, however it is NOT a complete GLES software renderer. Android requires OpenGL ES 2.0 as of version 4.0 onwards.

    If you are interested in learning more about libGLES_android.so specifically, please look up PixelFlinger and libAGL.

    As such, for your target Android version of 4.4, there is no software rendering backend to 'enable' so you cannot disable the GPU. (Well you can disable it, but as you have discovered, this leads to nothing being rendered at all).

    I hope that helps.

    Kind Regards,

    Michael McGeagh

Children