<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: i.MX8MP: ~40% OpenGL ES performance regression between imx-gpu-viv 6.2.4 (Yocto 3.0 / kernel 6.6</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8MP-40-OpenGL-ES-performance-regression-between-imx-gpu-viv/m-p/2374584#M245447</link>
    <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/221973"&gt;@djordje_nod&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope you are doing very well.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;1. Is there a known performance regression in imx-gpu-viv 6.4.11 on&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;GC7000UL compared to 6.2.4?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;There are not known issues related to the&amp;nbsp;performance regression.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;2. Is there a newer imx-gpu-viv release (6.4.11.p3 or later) that&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;addresses this?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Ac moment, the last one is&amp;nbsp;6.4.11.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;3. Are there any runtime environment variables (e.g. VIV_*) or Yocto&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;recipe options for imx-gpu-viv 6.4.11 that can improve OpenGL ES&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;fragment shader performance on i.MX8MP?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;You can take a look to the chapter&amp;nbsp;13.5.4.1 Setting vProfiler property options for OpenGL ES of the&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/user-guide/i.MX_AA_Graphics_User's_Guide.pdf" target="_self"&gt;IMXGRAPHICUG&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;/P&gt;
&lt;P&gt;Salas.&lt;/P&gt;</description>
    <pubDate>Mon, 01 Jun 2026 20:38:17 GMT</pubDate>
    <dc:creator>Manuel_Salas</dc:creator>
    <dc:date>2026-06-01T20:38:17Z</dc:date>
    <item>
      <title>i.MX8MP: ~40% OpenGL ES performance regression between imx-gpu-viv 6.2.4 (Yocto 3.0 / kernel 6.6)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8MP-40-OpenGL-ES-performance-regression-between-imx-gpu-viv/m-p/2369369#M245309</link>
      <description>&lt;P&gt;Platform: i.MX8MP, Vivante GC7000UL (model=7000, revision=6204)&lt;BR /&gt;GPU cores: GC7000UL 3D + GC520L 2D + GC8000 ML&lt;BR /&gt;Kernel type: PREEMPT_RT on both setups&lt;/P&gt;&lt;P&gt;========================================&lt;BR /&gt;Setup A (baseline):&lt;BR /&gt;========================================&lt;BR /&gt;Yocto 3.0, kernel 5.4 (PREEMPT_RT)&lt;BR /&gt;imx-gpu-viv 6.2.4.p4.0 (user-space)&lt;BR /&gt;kernel-module-imx-gpu-viv 6.2.4.p1.2&lt;BR /&gt;glmark2 2017.07, off-screen: score 697&lt;/P&gt;&lt;P&gt;========================================&lt;BR /&gt;Setup B (regression):&lt;BR /&gt;========================================&lt;BR /&gt;Yocto 5.0 (scarthgap), kernel 6.6 (PREEMPT_RT)&lt;BR /&gt;imx-gpu-viv 6.4.11.p2.4 (user-space)&lt;BR /&gt;kernel-module-imx-gpu-viv 6.4.11.p2.2&lt;BR /&gt;glmark2 2023.01, off-screen: score 426&lt;/P&gt;&lt;P&gt;Observed regression: ~39% lower score on identical hardware&lt;BR /&gt;at identical GPU clock (1 GHz).&lt;/P&gt;&lt;P&gt;GPU clock confirmed on Setup B:&lt;BR /&gt;gpu3d_core=1GHz&lt;BR /&gt;gpu3d_shader_core=1GHz&lt;BR /&gt;gpu2d_core=1GHz&lt;BR /&gt;gpu_axi=800MHz&lt;BR /&gt;gpu_ahb=400MHz&lt;/P&gt;&lt;P&gt;glmark2 output on Setup B:&lt;BR /&gt;GL_VENDOR: Vivante Corporation&lt;BR /&gt;GL_RENDERER: Vivante GC7000UL&lt;BR /&gt;GL_VERSION: OpenGL ES 3.1 V6.4.11.p2.745085&lt;/P&gt;&lt;P&gt;[build] use-vbo=false: FPS: 831&lt;BR /&gt;[build] use-vbo=true: FPS: 1243&lt;BR /&gt;[texture] nearest: FPS: 942&lt;BR /&gt;[texture] linear: FPS: 901&lt;BR /&gt;[texture] mipmap: FPS: 797&lt;BR /&gt;[shading] gouraud: FPS: 662&lt;BR /&gt;[shading] blinn-phong: FPS: 597&lt;BR /&gt;[shading] phong: FPS: 404&lt;BR /&gt;[shading] cel: FPS: 353&lt;BR /&gt;[bump] high-poly: FPS: 392&lt;BR /&gt;[bump] normals: FPS: 781&lt;BR /&gt;[bump] height: FPS: 512&lt;BR /&gt;[effect2d] 3x3 kernel: FPS: 263&lt;BR /&gt;[effect2d] 5x5 kernel: FPS: 113&lt;BR /&gt;[pulsar] &amp;lt;default&amp;gt;: FPS: 628&lt;BR /&gt;[desktop] blur: FPS: 128&lt;BR /&gt;[desktop] shadow: FPS: 282&lt;BR /&gt;[buffer] map: FPS: 135&lt;BR /&gt;[buffer] subdata: FPS: 134&lt;BR /&gt;[buffer] interleave: FPS: 185&lt;BR /&gt;[ideas] &amp;lt;default&amp;gt;: FPS: 175&lt;BR /&gt;[jellyfish] &amp;lt;default&amp;gt;: FPS: 188&lt;BR /&gt;[terrain] &amp;lt;default&amp;gt;: FPS: 19&lt;BR /&gt;[shadow] &amp;lt;default&amp;gt;: FPS: 390&lt;BR /&gt;[refract] &amp;lt;default&amp;gt;: FPS: 56&lt;BR /&gt;[conditionals] v=0,f=0: FPS: 733&lt;BR /&gt;[conditionals] v=0,f=5: FPS: 184&lt;BR /&gt;[conditionals] v=5,f=0: FPS: 696&lt;BR /&gt;[function] low,5: FPS: 334&lt;BR /&gt;[function] medium,5: FPS: 195&lt;BR /&gt;[loop] no-uniform: FPS: 327&lt;BR /&gt;[loop] non-uniform: FPS: 325&lt;BR /&gt;[loop] uniform: FPS: 203&lt;/P&gt;&lt;P&gt;glmark2 Score: 426&lt;/P&gt;&lt;P&gt;========================================&lt;BR /&gt;What we have ruled out (all tested, no improvement):&lt;BR /&gt;========================================&lt;/P&gt;&lt;P&gt;1. powerManagement=0 galcore module param -&amp;gt; no change&lt;BR /&gt;2. gcdPOWEROFF_TIMEOUT=0 (kernel patch) -&amp;gt; no change&lt;BR /&gt;3. gcdSHARED_PAGETABLE=0 (kernel patch) -&amp;gt; no change&lt;BR /&gt;4. GPU clock stuck (devfreq) -&amp;gt; no devfreq present,&lt;BR /&gt;clock confirmed 1 GHz&lt;/P&gt;&lt;P&gt;Note on gcdWAIT_LINK_FE_MODE: this define does not exist in&lt;BR /&gt;gc_hal_options.h in imx-gpu-viv 6.2.4. The V3.0 gc_hal_kernel.c&lt;BR /&gt;hardcodes gcvHW_FE_WAIT_LINK unconditionally anyway, so there is no&lt;BR /&gt;FE mode difference between the two setups. Setting&lt;BR /&gt;gcdWAIT_LINK_FE_MODE=0 in 6.4.11 forces gcvHW_FE_END mode which&lt;BR /&gt;results in a black screen and is not functional.&lt;/P&gt;&lt;P&gt;========================================&lt;BR /&gt;Root cause hypothesis:&lt;BR /&gt;========================================&lt;/P&gt;&lt;P&gt;Since imx-gpu-viv is a closed-source binary package and all&lt;BR /&gt;kernel-level tunables show no effect, we believe the regression is&lt;BR /&gt;inside the user-space shader compiler or command buffer generator in&lt;BR /&gt;imx-gpu-viv 6.4.11 vs 6.2.4. Fragment-shader-heavy scenes (phong,&lt;BR /&gt;cel, terrain, refract) show the largest relative drop, which is&lt;BR /&gt;consistent with a shader compiler quality regression.&lt;/P&gt;&lt;P&gt;========================================&lt;BR /&gt;Questions:&lt;BR /&gt;========================================&lt;/P&gt;&lt;P&gt;1. Is there a known performance regression in imx-gpu-viv 6.4.11 on&lt;BR /&gt;GC7000UL compared to 6.2.4?&lt;/P&gt;&lt;P&gt;2. Is there a newer imx-gpu-viv release (6.4.11.p3 or later) that&lt;BR /&gt;addresses this?&lt;/P&gt;&lt;P&gt;3. Are there any runtime environment variables (e.g. VIV_*) or Yocto&lt;BR /&gt;recipe options for imx-gpu-viv 6.4.11 that can improve OpenGL ES&lt;BR /&gt;fragment shader performance on i.MX8MP?&lt;/P&gt;</description>
      <pubDate>Thu, 21 May 2026 09:08:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX8MP-40-OpenGL-ES-performance-regression-between-imx-gpu-viv/m-p/2369369#M245309</guid>
      <dc:creator>djordje_nod</dc:creator>
      <dc:date>2026-05-21T09:08:02Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX8MP: ~40% OpenGL ES performance regression between imx-gpu-viv 6.2.4 (Yocto 3.0 / kernel 6.6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8MP-40-OpenGL-ES-performance-regression-between-imx-gpu-viv/m-p/2374584#M245447</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/221973"&gt;@djordje_nod&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope you are doing very well.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;1. Is there a known performance regression in imx-gpu-viv 6.4.11 on&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;GC7000UL compared to 6.2.4?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;There are not known issues related to the&amp;nbsp;performance regression.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;2. Is there a newer imx-gpu-viv release (6.4.11.p3 or later) that&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;addresses this?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Ac moment, the last one is&amp;nbsp;6.4.11.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;3. Are there any runtime environment variables (e.g. VIV_*) or Yocto&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;recipe options for imx-gpu-viv 6.4.11 that can improve OpenGL ES&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;fragment shader performance on i.MX8MP?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;You can take a look to the chapter&amp;nbsp;13.5.4.1 Setting vProfiler property options for OpenGL ES of the&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/user-guide/i.MX_AA_Graphics_User's_Guide.pdf" target="_self"&gt;IMXGRAPHICUG&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;/P&gt;
&lt;P&gt;Salas.&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jun 2026 20:38:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX8MP-40-OpenGL-ES-performance-regression-between-imx-gpu-viv/m-p/2374584#M245447</guid>
      <dc:creator>Manuel_Salas</dc:creator>
      <dc:date>2026-06-01T20:38:17Z</dc:date>
    </item>
  </channel>
</rss>

