NXP i.MX8MM GPU performances

João Paulo Gonçalves jpaulo.silvagoncalves at gmail.com
Wed May 8 14:32:52 UTC 2024


Hi Lucas,

On Wed, May 08, 2024 at 10:16:24AM +0200, Lucas Stach wrote:
> That's a problem. This will prevent TS from being used, which has a
> large performance impact. But it shouldn't be necessary to disable it
> on the i.MX8MM GPU, as all memory accesses aside from the initial MMU
> commandstream go through MMU translation, so the issue with MC1.0 will
> not be hit. Can you try patching out the check in the kernel and see if
> it helps?
> 
> I'll also send a proper patch for this.

I patched the kernel and enabled TS. The performance improved slightly,
but it still seems lower than the NXP driver. Here are some of the
results:

In screen (weston + DSI) test results:

glmark2 command: 
glmark2-es2-wayland -b shading:duration=5.0 -b refract -b build -b texture -b shadow -b bump -s 640x480 2>&1

|                 |       glmark2 tests                     |
| sw ver          |shading|build|texture|refract|shadow|bump|
|-----------------|-------|-----|-------|-------|------|----|
| etnaviv (no TS) | 263   | 334 | 291   | 22    | 63   | 328|
| etnaviv         | 340   | 549 | 460   | 18    | 84   | 560|
| vivante         | 544   | 956 | 790   | 26    | 225  | 894|

Enabling TS, etnaviv scores improved by around 30-60% compared to
when it is disabled. However, it still remains approximately 40% lower
than galcore.

Offscreen test results:

glmark2 command: 
glmark2-es2-wayland  --off-screen -b shading:duration=5.0 -b refract -b build -b texture -b shadow -b bump -s 640x480 2>&1

|                 |       glmark2 tests                     |
| sw ver          |shading|build|texture|refract|shadow|bump|
|-----------------|-------|-----|-------|-------|------|----|
| etnaviv (no TS) | 348   | 541 | 466   | 24    | 81   | 498|
| etnaviv         | 434   | 901 | 832   | 19    | 106  | 871|
| vivante         | 544   | 956 | 790   | 26    | 225  | 894|

With TS enabled, offscreen scores improved considerably in some
individual benchmarks.

Regards,
João Paulo


More information about the mesa-dev mailing list