Jump to content

LabVIEW 2017 What's new


Recommended Posts

  • 3 weeks later...
3 hours ago, smithd said:

it also has a false and continue if true for the while loop, also odd. I would guess its based on old code written in an older style (i think openg or some similar package has that same function). feedback nodes are great.

Most, if not all, "statefull" VIs in vi.lib use while loops with continue if true option (examples: whole Point-by-Point pallete, filters in Signal Processing). OpenG follows the same convention. There is an old thread here: http://forums.ni.com/t5/LabVIEW/Execution-speed-feedback-node-vs-shift-register/td-p/295536 which points out that shift registers are faster than feedback nodes (the benchmark VI attached in second post there still shows that in LV2015 SP1). I don't have LV2017 installed, but it would be interesting to see which implementation of "Is Value Changed" is faster.

Link to comment

Well then there is the fact that I didn't see any feedback nodes in NXG (unless I missed it) so it is possible it is going away.  Or maybe it just hasn't been implemented yet.  One point about the Value Changed function that someone at NI mentioned is a bug, is it doesn't work correctly for all values of doubles.  For instance a NaN is never equal to anything, including NaN by definition.  So if you used the Value Changed on a NaN and wanted to know if the value had changed from the previous NaN this function would return true, even though the value of NaN never changed.  Just be aware of this functions limitation.

Link to comment
3 hours ago, hooovahh said:

... For instance a NaN is never equal to anything, including NaN by definition.  So if you used the Value Changed on a NaN and wanted to know if the value had changed from the previous NaN this function would return true, even though the value of NaN never changed.  Just be aware of this functions limitation.

Kinda like asking if infinity is equal to infinity.... yes?... and no... no it's not.

Link to comment
7 hours ago, PiDi said:

Most, if not all, "statefull" VIs in vi.lib use while loops with continue if true option (examples: whole Point-by-Point pallete, filters in Signal Processing). OpenG follows the same convention. There is an old thread here: http://forums.ni.com/t5/LabVIEW/Execution-speed-feedback-node-vs-shift-register/td-p/295536 which points out that shift registers are faster than feedback nodes (the benchmark VI attached in second post there still shows that in LV2015 SP1). I don't have LV2017 installed, but it would be interesting to see which implementation of "Is Value Changed" is faster.

Thats fine, I just don't see a reason for it (continue if true)


I think the feedback vs while loop performance changes based on the surrounding code, and it fluctuates from version to version. For example my test in 2012 for a specific use showed feedback nodes as faster, The difference is so minor as to be unimportant.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.