VAPS XT: Improve Your HMI Embedded Performance

Wed, October 29, 2008 - 12:46.

Posted by Yannick Lefebvre.  

When running HMI displays on an embedded computer system, runtime performance is often the primary concern of system integrators since the hardware that they are running on does not have the processor speeds or high-performance video cards that are common-place in desktop systems.

To address these needs, version 2.3 of VAPS XT introduced many improvement techniques that can greatly help optimize application performance.
 
  • Partial Redraw: By analyzing the display and identifying regions that have changed, VAPS XT executables can reduce draw time by only rendering regions that have been "damaged" by object movements and leaving the rest intact. While this may sound similar to QuickDraw to users of the legacy VAPS software, an interesting point is that this new optimization method does not require any special application setup or organization to work.
  • Load images to texture memory: By taking a new approach to image loading, raster graphics can be loaded directly in the video card's texture memory, while the executable only retains a pointer to that memory space. This avoids having images taking up space in both RAM and texture memory.
  • Dynamic Instantiation: This new loading mechanism allows objects in VAPS XT applications to be loaded and unloaded from memory based on user input or external data sources. For multi-page applications where only one or some of the pages are visible at a time, this helps reduce global memory usage.

Beyond these features, other improvements throughout the VAPS XT generated code and runtime libraries have been made to reduce the application size both in terms of ROM and RAM usage. As for future releases, we are currently looking at adding support for texture fonts and other optimization methods to speed up rendering time.

For more information on embedded display creation and performance using VAPS XT, you can read the white paper that I wrote entitled "A Flexible Solution to Deploy Avionics Displays to Multiple Embedded Platforms" which can be found on the Presagis website.