I am developing an application for WEC7/imx6q using C++/MFC/VisualStudio 2008.
In my application I quite often use BitBlt and TransparentBlt.
How can these APIs be hardware accelerated ?
In my OS image libGALcore.dll is included, in HKLM\drivers\BuiltIn\GCHAL the entries are the default values (e.g. GC2DAcceleratorEnable 0x1f) are set so I would expect that hardware acceleration is active.
But the times for the Blt-commands are quite long (for TransparentBlt with 800*600*16 about 40ms).
If I change registry settings in GCHAL to disable hardware acceleration the times do not get longer, which shows me that acceleration was not active before.
Can anyone give me a hint where the problem is sitting ?
Solved! Go to Solution.
Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.
Under WEC7 there are additional entries in GCHAL.REG that are used to indicate whether a Blt operation should be handled by the GPU hardware. The values associated with the following entries are thresholds that you can modify to optimize your application:
GC2DAcceleratorMinSize -> set the min pixel number for hardware to render
GC2DAcceleratorMinPixelForSimpleSrcCopy -> set the min pixel number for simple src copy
GC2DAcceleratorMinPixelForSimpleBrushFill -> set the min pixel number for simple brush fill
GC2DAcceleratorMinPixelForMask -> set the min pixel number for masked blit
Please note that enabling hardware acceleration in the registry will have no effect if the number of pixels in a Blt operation is less than the applicable pixel size threshold specified in the registry. So you should check the values associated with the registry entries listed above to determine if hardware acceleration is engaged in your case.
If you have confirmed that hardware acceleration is configured correctly, and overall graphics performance remains an issue, we encourage you to work with your BSP provider to determine the best path for optimizing your application under WEC7.
We are sorry for getting back to you so late. Are you still stuck with the issue? If you have somehow resolved the issue, can we close the discussion? If you still need help, please feel free to reply with an update to this discussion.
we are designing i.MX6 products, to refresh our product catalog with newer devices.
The mandatory point is that they must have better CPU and 2D graphics performance, compared with our current i.MX53 products (AMD Z160 2D engine, we have optimized by ourself).
Graphics performance for bitmap rendering is crucial, so GC320 2D Composition must be enabled and optimized (perticularly for a good switch between hardware acceleration and software emulation).
The resulting 2D performance has to be visibly better than the one we currently face on our current products.
This is not true, with two different binary demo I've evaluated so far and it is putting on hold our i.MX6 development.
So, can you please give me a reference to a version of the Vivante code that has to be used for getting the best GC320 performance?
Have you additional information about how to get the maximum performance under WEC7?
How can I put the BSP maker in contact with Vivante, to be sure they will use the latest technology?
Thank you in advance