Actor Framework Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

Distribute Actors over execution systems

Solved!
Go to solution

Hi,

just had an idea... probably somebody else has contemplated about this also:

is there a possiblity to distribute Actors all over the execution systems? E.g. to have DAQ Actors running on a Data Acquisition and the UI Actors in the UI system...

Does this make sense at all?

Cheers

Oli

0 Kudos
Message 1 of 6
(4,286 Views)
Solution
Accepted by topic author Oli_Wachno

This thread might be what you're looking for, Oli:

https://decibel.ni.com/content/message/82921#82921

Cheers,

Matt Pollock
National Instruments
0 Kudos
Message 2 of 6
(3,570 Views)

Cheers

0 Kudos
Message 3 of 6
(3,570 Views)

It is possible. I would advise against it. I never updated that other thread, but I did have a long discussion with one of LabVIEW's senior architects, the guy who implemented the execution systems. The architect expressed regret for adding execution systems to LabVIEW. Conceptually it sounds like a good idea. The vast vast vast majority of the time, people who set their VIs to particular execution systems just hurt themselves because they limit the flexibility of LabVIEW's far-smarter-than-most-of-us scheduling system and the operating system's far-smarter-than-LabVIEW thread contention system. Yes, they solve some cases, but those cases are very very limited, far more limited than most people imagine. Basically, don't play with the execution system settings ever unless you are forced into it because you have actually tracked performance problems specifically to thread contention issues, and then make sure you're somewhat of an expert in the OS threading models and CPU usage because you can actually make the problem worse by dividing actors into execution systems -- the divisions that are often intuitive from a programming standpoint (these are related so they go together) aren't necessarily good from an operations standpoint (you may want unrelated actors to be in the same execution system because then they aren't operational at the same time).

Message 4 of 6
(3,570 Views)

AQ,

thanks for the details.

I guess, I'll just leave everything set to default, unless I encounter issues.

0 Kudos
Message 5 of 6
(3,570 Views)

Definitely what I would advise. Once you get everything working, if you adjust the execution systems and see a marked increase in performance, that would be interesting to hear about. But it should be an experiment at the end, not something you do up front.

0 Kudos
Message 6 of 6
(3,570 Views)