View Single Post
  #3   Spotlight this post!  
Unread 04-04-2013, 11:53
MaxMax161's Avatar
MaxMax161 MaxMax161 is offline
Allegedly Useful
AKA: Max Llewellyn
FRC #2791 (Shaker Robotics), FRC #1676 (Pascack π-oneers)
Team Role: Mentor
 
Join Date: Nov 2009
Rookie Year: 2008
Location: Montvale NJ\Troy NY
Posts: 174
MaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond reputeMaxMax161 has a reputation beyond repute
Re: Deploying code in debug vs run as startup

First of all thank you all for your responses to my myriad questions. Although I have a few follow up questions.


Quote:
Originally Posted by Rusttree View Post
A good optimizer should not change the effect of your code one iota. It should only make changes that speed up execution without changing any functionality at all.
I wasn't worried about the compiler changing the function of the code as much as how much faster does it make it run. Say I were trying to run a PID loop at 400 hz (needless and impractical yes but for sake of example) could the difference in execution time between the compiled version and the debug deployment version ever be noticeable?


Quote:
In typical Labview development, yes, you could run just the VI you're in. But the FRC Labview code has a lot of interdependencies between VIs and I doubt very many VIs could run completely on their own without causing lots of confusion and errors. It's probably depends on which VI you're talking about.
Assuming there's already a fully functional robot project on the robot would all the interdependent VIs already be there? For example could I run a VI with changed constants without issue? (yes, this is easy for me to test and I should, but I'm not near a robot atm)


Quote:
Originally Posted by Doug Norman View Post
The reason there is such a difference is actually a bug in LabVIEW RT. Here is a work around. When your robot is in "Run as startup" mode (like right after a match) try this:
...
This seemed to make things faster, thanks! Although in our last work session we only needed to load code once and didn't even close to strictly follow your instructions so I really have terrible data so my "seemed to make things faster" isn't worth anything.


Quote:
Originally Posted by Greg McKaskle View Post
A slightly faster way of working around the bug is to leave the VIs open, then connect, say OK in the dialog, close the VIs, open RobotMain, and then run it.
The method you describe seems to be very similar to the method Doug described in the post above. Could you explain the differences some more?
__________________
2791 Shaker Robotics (2013-present)
--Control Systems Mentor 2013-present
--Drive coach 2015-present

1676 The Pascack π-oneers (2010-2013)
--Drive coach 2011-2013
--Lead Programmer 2011-2013
Reply With Quote