About imx6qp IPU prefetch and GPU

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

About imx6qp IPU prefetch and GPU

1,452 Views
宗標廖
Contributor V

Hello Community

I did the following tests with Yocto3.14.52_1.1.0.

1) used the original BSP(with IPU prefetch enabled for fb1)

Run /opt/viv_samples/vdk/tutorial1~tutorial7 (do GPU benchmark test).

2)modified the imx6qp-sabreauto.dts as bellow(disable IPU prefetch for fb1).

The original code:

&mxcfb1 {

  prefetch;

};

modified code:

#if 0

&mxcfb1 {

  prefetch;

};

#endif

then compiled imx6qp-sabreauto.dtb and run /opt/viv_samples/vdk/tutorial1~tutorial7 (do GPU benchmark test).

the results is as bellow:

pastedImage_0.png

The LCD display I used is 800 * 480@58Hz.

It seems that when IPU prefetch is enabled, the output fps of GPU demos is fixed to 57.54(the Vsync of LCD).

And when IPU prefetch is disabled, the output fps of GPU demos became reasonable for i.MX6QP.

Could you explain why does the IPU prefetch feature have effects on GPU benchmark test?

Thank you!

ZongbiaoLiao

Labels (3)
1 Reply

641 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hi Zongbiao

Currently IPU prefetch,  Resolve is introduced on top of  the current IPU-based display subsystem. The concept of Prefetch and Resolve is comprised of two primary functions:

Prefetch: Use Prefetch and Resolve Engine (PRE) to read the display frame buffer ahead of time and store it into double buffer in OCRAM. When IPU needs the pixels for display, it can fetch directly from the double buffer. This helps to avoid a potential IPU display under-run in high loading applications, making the system more robust.

Resolve: When the frame buffer is a GC2000 GPU render target buffer (unresolved tiled buffer format from GC2000), the PRE will resolve it from a tiled to linear buffer format and store into OCRAM, so that the IPU can display the resolved buffer directly. This helps to avoid an additional resolve operation in the GC2000, saving DRAM bandwidth

Please check section 9 and 10 of the following document for complete information about how prefetch affects the gpu perfomance:

http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB810.pdf

Regards