DQMH Consortium Toolkits Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

singleton or cloneable - which is better for execution performance

Solved!
Go to solution

Requesting your suggestion/experience story here;

 

This is a big size application, which needs to run on a Windows OS target machine for 24x7. The application includes multiple channel highspeed data acquisition, process, presentation in multiple Graphs and storage. In parallel the application should be highly interactive with with user events.

My key gaols in the design are;

  • high performance(efficient resource utilization and UI responsiveness) in long run
  • Robust operation and fail safe - Application crash and freeze are not acceptable.

With the above requirement, which is the better approach, using sigleton or clonable DQMH modules provided, I can compromise on reusability?

 

Please pitch in your opinion from your experience/learning.

 

Thank you

Adarsh

LabVIEW from 2006

CLA from 2014

 

0 Kudos
Message 1 of 2
(1,095 Views)
Solution
Accepted by topic author AdarshaPakala

Hello Adarsh,

I can see 2 points that could add overhead when using cloneable modules instead of singleton:

 

#1 star and stop functions have to handle the instantiation.

 

#2 when you send a request to a specific instance of a cloneable module, all instances receive the message, and each instance checks if the message is addressed to it.

 

I can't see other differences.

 

That being said, performance is always a complex and sensitive topic.

From my own experience with DQMH, I never came across performance issues directly related to DQMH itself. DQMH can't prevent all mistakes a developer can make.

 

Whatever framework (and whatever languages) you are going to use to build your application, obtaining a robust and performant behavior begins with a reliable architecture and experienced developers.


Olivier Jourdan

Wovalab founder | DQMH Consortium board member | LinkedIn |

Stop writing your LabVIEW code documentation, use Antidoc!
Message 2 of 2
(1,052 Views)