How to optimise the the android performance in imx7 sabreasd board running on Android 7.1?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to optimise the the android performance in imx7 sabreasd board running on Android 7.1?

877 Views
hariprasathgopa
Contributor II

Hello all,

I am trying to run an Android naughat 7.1 in imx7 sabresd board. I used the pre-built image given by the nxp and tested the image with the following device. 

  • LCD8000-3T (480x272)
  • HDMI Monitor (1280x720) 

The performance of Android is very poor with the pre-built image

  1. The transition from one screen to the other is very slow. Sometimes it is very disruptive.
  2. I tried plugging in a USB mouse and tried to move across the screen. This rises the CPU usage to more than 85%

    User 57%, System 41%, IOW 0%, IRQ 0%
    User 340 + Nice 15 + Sys 253 + Idle 5 + IOW 0 + IRQ 0 + SIRQ 0 = 613
    PID USER PR NI CPU% S #THR VSS RSS PCY Name
    User 46%, System 43%, IOW 0%, IRQ 0%
    User 298 + Nice 0 + Sys 275 + Idle 62 + IOW 0 + IRQ 0 + SIRQ 0 = 635
    PID USER PR NI CPU% S #THR VSS RSS PCY Name
    User 41%, System 44%, IOW 0%, IRQ 0%
    User 262 + Nice 0 + Sys 285 + Idle 88 + IOW 0 + IRQ 0 + SIRQ 0 = 635
    PID USER PR NI CPU% S #THR VSS RSS PCY Name
    User 54%, System 42%, IOW 0%, IRQ 0%
    User 358 + Nice 0 + Sys 280 + Idle 19 + IOW 0 + IRQ 0 + SIRQ 2 = 659
    PID USER PR NI CPU% S #THR VSS RSS PCY Name

    I also tried to add support for the display TFT3P5581-E with the resolution 480x854, I find the same performance. 

But one thing i observed is that, when i tried to run the image in a lower resolution screen (i.e)LCD8000-3T, i could see some better animation when compared to higher resolution displays. But the performance is no way similar to iMX6.

I understand the iMX7 does not have GPU, but is this the expected performance of the device ? 

0 Kudos
2 Replies

563 Views
CarlosCasillas
NXP Employee
NXP Employee

Hi,

Unfortunately, it is the expected performance specifically by the fact that you mentioned. The absent of GPU is a big constrain for Android; the i.MX7 support is limited, intended to be used on specific applications.


Hope this will be useful for you.
Best regards!
/Carlos
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

563 Views
hariprasathgopa
Contributor II

Hi carlos, thanks for the reply. I went through the code and found that the OS uses pixelflinger to render the Android graphics using the OpenGLes1.0 . I also see that there are some neon code to do some blend works.

 

Is the pixelflinger is fully optimised ?. Does it utilise the neon core efficiently ?

I am trying to offload the rendering load to the neon core from the CPU core.

Have anyone tried to optimise the pixelflinger like this ?