Improve TestStand Performance When Loading Modules

Updated Mar 19, 2020

Reported In

Software

  • TestStand

Issue Details

  • I am using TestStand to run test sequences. It came to my attention that every time a new LabVIEW module is being called the VI needs to be loaded. This happens repeatedly and even if I call the same VI multiple times it loads every time. This is causing my sequence to run for significantly more time which results in a higher cycle time when testing products.
  • How can I avoid loading the same module in TestStand every time it is called? Is there a way to make all modules stay in the memory when the sequence is running? Can I set TestStand to load all modules at the beginning of execution and keep it in memory until the sequence is done?

Solution

TestStand allows you to configure when code modules are loaded into and unloaded from memory, which can have a significant impact on the memory usage and execution speed of a test sequence. Configuring modules to stay in memory longer will improve execution time since the modules will not need to be reloaded on subsequence executions.  However, if too many modules are kept in memory, you can exceed the application memory limits or physical memory available, which can also slow execution.

If memory usage is still an issue, you can set the Load/Unload options at step level or at sequence file level. In most test systems, you can combine the Preload when opening sequence file or Preload when execution begins options with the Unload when sequence file is closed option for the best performance.

To set when to load and unload modules in TestStand:
  1. Select a Step
  2. Click on the Properties tab on the Step Settings window
  3. Select Run Options
  4. Set Load Option and Unload Option for the step

Additional Information

Ideally, you can make improvements to your test system to increase memory limitations, rather than unloading code modules to conserve memory. For example:
  • Using the 64-bit version of TestStand to increase memory limits of the application.
  • Adding additional physical memory to test systems.
  • Using Solid State hard drives to improve virtual memory performance.