Board - imx6 Sabre for smart device
OS - Yocto linux 4.9.88 .
Problem - When i run QT demo application , top command shows CPU load around 70% . QT5 app is using GPU as shown by gpuinfo.sh
top - 17:37:55 up 4:45, 1 user, load average: 0.30, 0.07, 0.02
Tasks: 151 total, 1 running, 150 sleeping, 0 stopped, 0 zombie
%Cpu(s): 13.8 us, 17.3 sy, 0.0 ni, 68.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1024200 total, 680760 free, 236468 used, 106972 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 692108 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2684 root 20 0 240940 45152 24512 S 74.0 4.4 0:10.88 Qt5_NMap_C+
641 root 20 0 183408 18352 10284 S 43.8 1.8 0:07.56 weston
2627 root 20 0 0 0 0 S 4.3 0.0 0:41.70 kworker/0:0
255 root 20 0 0 0 0 S 2.3 0.0 0:00.54 galcore de+
2689 root 20 0 3256 1872 1520 R 1.6 0.2 0:00.22 top
1 root 20 0 24544 5484 4492 S 0.0 0.5 0:07.59 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:+
7 root 20 0 0 0 0 S 0.0 0.0 0:00.39 rcu_preempt
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_sched
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
10 root rt 0 0 0 0 S 0.0 0.0 0:00.01 migration/0
11 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-dr+
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/0
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/1
14 root rt 0 0 0 0 S 0.0 0.0 0:00.01 migration/1
CPU load is quite bad (170%) with qtwebengine (quicknanobrowser) running a simple html which is rendering few straight lines .
Can you please help , how to increase GPU performance so that it does not use CPU much ?
On kernel startup , i can see only two logs for vivante driver intialisation -
[ 1.492125] [drm] Initialized
[ 1.494324] [drm] Initialized vivante 1.0.0 20120216 on minor 0
Does yocto for imx6 support etnaviv driver ?
Is high CPU usage shows , some problem with the GPU driver ??
Hi Ruchika
nxp does not support etnaviv driver on its bsps (note there are many other
bsps developed by third parties which may support it).
One can try nxp release from
https://source.codeaurora.org/external/imx/linux-imx/tree/?h=imx_4.9.88_2.0.0_ga
use sect.8.4 Qt 5 attached Linux Guide, more documentation can be found on
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thank you for the reply Igor ,
I am using the same nxp release which you have mentioned in your reply.
I have enabled etnaviv and disable vivante gccore in kernel configuration . but now i am getting galcore driver error .
galcore: loading out-of-tree module taints kernel.
Galcore version 6.2.4.150331
galcore: probe of 130000.gpu failed with error -22
I know 22 means invalid argument but why galcore is complaining about invalid argument ?
Do you have any Idea about it ?
Does NXP has done some benchmarking of GPU performance with CPU Usage on IMX6 platform ?
Regards,
Ruchika
Hi Ruchika
etnaviv is not supported by nxp, one can try Demo Image
https://www.nxp.com/webapp/Download?colCode=L4.9.88_2.0.0_MX6QDLSOLOX&appType=license&location=null
Unfortunately I am not aware of benchmarks.
Best regards
igor