From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Report Generation Performance

Hi!

 

I am currently implementing a report generation module because I have to add some features (for example: 'Additional results'). Especially I want it to be fast(!). Apart from my new implementation which is done in LabVIEW I have an implementation in C++ (cosed source) and an implementation in VB.NET (self written). All three implementation produce the same output format (one text line per measurement)

 

For 500 steps to process (no deep nesting) the report body generation duration takes:

Implementation A (c++ DLL; closed source): 240ms

Implementation B (VB.NET; rekursive result tree traversal): 260ms

Implementation C (LabVIEW; rekursive result tree traversal): 460ms

 

Using the LV profiler it seems to me that the Teststand API is the bottleneck - the more TS property nodes I execute per step the longer the duration.

 

My questions (to CTAs 🙂

- Can I speed up the report generation by using parallel loops to process the TS Property nodes; or does the TS API not support parallel (read) requests? (like a web server does)

- Can the recursive (reentrant VIs) approach be the reason why the performance is not so good (for performance better to process the result tree in iterative manner)? Remark: no deep nesting!

 

Versions used: TS2010 & LV2010

 

 

Remark: I know that TS2012 has implemented async report generation possibility!

 

w.

 

 

0 Kudos
Message 1 of 3
(3,855 Views)

Are you using the LabVIEW runtime or the development environment when running your VIs?

 

-Doug

0 Kudos
Message 2 of 3
(3,841 Views)

I have not yet switched to the runtime.

 

w.

0 Kudos
Message 3 of 3
(3,836 Views)