07-07-2011 04:42 PM
I ran across this page which basically states that when setting a VI to background priority (lowest) it is deferred to running in normal priority:
http://digital.ni.com/public.nsf/allkb/D6F5480F7F3E9CAD8625778F00652246
It states this as "known behaviour"? I must say I didn't know that, especially not since several other pages recommending priority level setup explains about background priority without mentioning this "fact". For instance;
http://digital.ni.com/public.nsf/allkb/84081F249CEF7AB7862569450074168C
http://zone.ni.com/reference/en-XX/help/370622E-01/lvrtconcepts/deterministic_apps_vi_priorities/
Does setting a VI to background priority have the same effect as setting it to normal? On all targets including Real-Time?
Cheers,
Steen
07-18-2011 03:37 AM
Hi Steen,
This is as you mention known behaviour, so the effect will be the same as setting it to normal.
This is also the case in Real-Time.
I would recommend using the solution from the Knowledge Base you posted when programming Real-Time applications.
07-18-2011 04:19 AM
Hi Kristoffer.
I must say that this shocks me quite alot, on two accounts;
1) The background priority setting in VI Properties has no mention of it being depricated.
2) Every other piece of documentation I have seen (on ni.com and even LabVIEW help) explains that you can use background priority to lower VI priority below normal.
This information definetely needs to be updated, for that to be "known behaviour". We have just been through a tough project were our customer needed different processes in an application prioritized. We used VI execution priorities among other optimizations. I feel quite ridiculous having wasted time on benchmarking the application after making changes that are "known" to have no effect.
/Steen