Jump to content

Gary Rubin

Members
  • Posts

    633
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by Gary Rubin

  1. QUOTE (jdunham @ Mar 20 2009, 02:39 PM)

    Sure, but if your queue size is not changing (why would it change if you are using it like a functional global) then there should be no reallocation. In general the queues have great performance, but I don't know whether 8.x brought any performance improvement.

    Queue size changes because the rate at which data is coming in is not constant, and we don't have the luxury of waiting until a queue (buffer) reaches a certain size.

  2. QUOTE (jdunham @ Mar 20 2009, 01:43 PM)

    That assumption was based on the following from the Obtain Queue help:

    Note max queue size only limits the number of elements in the queue. It does not preallocate memory. Therefore, resizable data types such as paths, strings, arrays, and so on can still increase and decrease the overall queue size

    QUOTE (jdunham @ Mar 20 2009, 01:43 PM)

    So is there a performance problem? You probably shouldn't be worrying about performance unless there is a real problem.

    This is a system that has to keep up with real-time data flow. The faster the code is, the higher a data rate it can keep up with. There's always need for more performance.

    QUOTE (jdunham @ Mar 20 2009, 01:43 PM)

    Now the cost of LabVIEW is a few thousand dollars, which is just a couple percent of the yearly cost of employing an engineer in the US. It's hard to have sympathy for a company that doesn't want to spend an appropriate amount of money on LabVIEW. You'll have to forgive me if I made assumptions about the situation at your workplace, I realize I may be off-base, and there could be real reasons for not wanting to spend money to keep the tools current.

    This is a project that's been going on for the past 6 years or so. It is in LV7.1.1 because that was the latest and greatest when we started (we might have even transitioned the project from 6, I don't remember). There has been a lot of time spent on code development and fine-tuning, and everyone is finally pretty convinced that it's doing what it's supposed to. Our prime doesn't understand why they should have to fork over several additional $k just for the latest version of the development environment when it won't change the code, operation, or anything else a user might care about. Furthermore, the end-user customer might want to be re-convinced that everything still works after the configuration change (i.e. upgrade from 7.1.1 to 8.6). That is both a time-consuming and expensive endeavor.

  3. I'm sure I've read something related to this, but struck out using the lavag search. I apologize if this is a rehash of something that's already been covered.

    We have an application in LabVIEW 7.1 in which we're using queues to pass data between parallel loops. Because there are memory allocations associated with enqueueing (and presumably deallocations for flushing?), would it be better from a performance standpoint to use an LV2 Global containing a preallocated array?

    Also, I seem to recall that there had been some improvement in how queues are implemented in LabVIEW 8.x. I've been trying to get us to upgrade, but nobody seems to want to spend the $$. Are there queue (or other) performance issues that I might be able to point to?

    Thanks,

    Gary

  4. QUOTE (zmarcoz @ Mar 17 2009, 10:48 AM)

    I received an email about a software engineer position an hour ago...

    Speaking as a non-software engineer, my feeling is that Software Engineering is a discipline, just like mechanical or electrical engineering. It shouldn't be confused with software development, any more than a carpenter should be confused with an architect, or an electrician confused with an EE.

    As EEs, physicists, MEs, or whatever else most of the people on this board are, we all have lots of experience doing software development. We might even be really good at coding, algorithm development and implementation, etc., but that doesn't make us qualified to act as a Software Engineer.

  5. QUOTE (Darren @ Mar 5 2009, 11:43 AM)

    My Zs have a distinct angular upper corner...my 2s have a curved upper corner. They look pretty much exactly like 'Z' and '2'.

    Then you have better penmanship than I do.

    Is it really a hijack if I'm helping hijack my own thread?

  6. QUOTE (dannyt @ Mar 5 2009, 08:23 AM)

    I'v never seen a Z with a line through it, I feel I may be missing something

    If I had a scanner handy, I could show you.

    Think of a 'Z' with a strikethrough, like this: Z

  7. QUOTE (HOLY @ Mar 5 2009, 04:17 AM)

    ChARLIE

    Member No.: 14927... GOD Line resonations of "I am GOD" are found in my Member No.: through the fact that

    I=9

    am= 14

    GOD= 26... total 49.... also notice the 27 resonating all Things through ALn.

    1+4+9+27= 23.. and starting in "14" connects "n" to OURTRInITY GOD Line as "n" is not just an EVERLASTInG symbol but is also the 14th letter in our alphabet.

    He's baa-aack.

  8. QUOTE (Darren @ Mar 5 2009, 12:47 AM)

    I say 'zee', and I don't draw lines through the middle of my Zs or 7s either.

    You don't? How do you differentiate between z's and 2's? I started putting lines through my z's in college, when I started to have trouble interpreting my physics equations.

  9. Since bsvingen brought up Matlab and LabVIEW, I thought I'd add my two cents.

    Lately, I've found that I've been quicker to open Matlab than LabVIEW for a lot of my tasks. I still prefer LabVIEW for anything that has to interface with hardware (whether NI or third-party). For other things I find Matlab much easier to deal with. This thread has caused me to try to take a step back and think about what has led me to that preference.

    1) Data presentation: I find that Matlab's plotting capabilities are much stronger and easier to use than LabVIEW's.

    2) Expandability/feature creep: Lately, I've been primarily writing code to assist me in performing data analysis. In those cases, my product is not the code or the GUI, but the analysis and conclusions I can generate using the code as a tool. For this reason, it can be very difficult to define a priori exactly what the code has to accomplish. My processing/code-development effort might sound something like this: "Show me A vs. Time, B vs. Time, and A vs. B. Hmm.... That's interesting - now what if I perform operation X on A, then plot A vs. C", etc. A text-based language like Matlab makes it very quick and easy to throw an extra operation in between two existing steps. Attempting to do the same thing quickly in LabVIEW tends to cause spaghetti.

    3) Toolboxes, etc.: I occasionally do georeferencing of data to match it up with terrain or overhead pictures. Matlab has a Mapping Toolbox, LabVIEW does not. Matlab also has a large community of people who share their code. I have not yet found a Matlab forum or community that is as strong as LAVA in terms of answering questions or having the type of discussion we're having now, but there do seem to be a lot more people sharing their work (~9000 files in Matlab Central's file exchange vs. 74 in the CR here). A lot of that is probably cultural and is quite understandable - if LabVIEW is more heavily used in industry or by consultants/contractors, then of course people aren't going to be quite so willing to give away their work for free.

    4) Backward compatibility: This is related to my previous item, and to the "openness" that others have discussed. Because I'm still using LabVIEW 7.1.1, I can't even open a lot of the files that people have posted here. At least with Matlab and other text-based languages, I can still look at the code.

    Let the flames begin...

    Gary

    P.S. bsvingen, good to see you back here. Occasionally I've stumbled across our conversations about execution speed from a couple years ago and wondered if you'd disappeared.

  10. QUOTE (george seifert @ Jan 14 2009, 09:32 AM)

    I have three rows of tabs in my tab control. When I select a tab the row that it's on moves to the bottom row. That seems to be pretty standard behavior. I think I'd like it better if the rows stayed put.

    I agree with George. I don't like the fact that the tabs move around.

  11. QUOTE (VoltVision @ Jan 7 2009, 04:57 PM)

    Is there a way to make it "come into" and "out of" the target zone quickly, but filter the heck out of it when it is in the zone? I am thinking of making my own function that would look @ the slope. If the slope is less than a certain threshold, then the "Mean PtbyPt" sample length is long, but if the slope is greater than a certain threshold, then the "Mean PtbyPt" sample length is short. Since I am just learning labview now and I have never used any of the filters or signal processing functions before, I feel like I might be recreating something that already exists? Would any of these help me? FIR, IIR, Chebyshev, Butterworth? I am glad to learn all of these things, but to accomplish my task efficiently without chasing my tail, can anyone point me in a helpful direction?

    Not certain, but I think you're describing a Kalman filter.

  12. QUOTE (Yair @ Jan 7 2009, 02:37 PM)

    P.S. I never really used the WF data type either (or the dynamic data type, for that matter).

    I'm still using version 7.1. I don't know if this has changed with later versions or not, but a "waveform graph" in 7.1 does not imply the use of a waveform data type. I never use dynamic or waveform data types either. I figure those both represent a layer of overhead that is totally unnecessary.

×
×
  • Create New...

Important Information

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