BreakPoint

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW Minutiae (that may bite you someday)

Here's a newbie mistake:

 

When wiring to a sequence structure with multiple frames in order to create data dependency, be careful which frame you wire to.....

 

Following code shows a construct which lead to a deadlock in my code because the first frame of the sequence does NOT wait for the dequeue primitive......  This is actually something I never knew.  If I place an "Acquire semaphore" in here.... 😞

 

newbie sequence mistake.png

 

Shane.

Message 91 of 131
(11,139 Views)

@Intaris wrote:

 

When wiring to a sequence structure with multiple frames in order to create data dependency, be careful which frame you wire to.....


I talked about this weirdness long, long ago in this nugget.

Message 92 of 131
(11,125 Views)

Duly kudo'd.  After programming LV for so long and dealing with forcing data dependency between structures, I never thought of even looking up the help on this because it was so obvious to me that it would work as I *thought" it should.

 

So another day, another thing learned.

 

Spoiler
As long as the rate of learning still exceeds the rate of forgetting, things are fine.

 

Message 93 of 131
(11,093 Views)

It helps to imagine a multiframe flat sequence as a sequence of individual single frame sequences, connected in the right order by by a data depedency.

0 Kudos
Message 94 of 131
(11,087 Views)

I was originally joking when I thought this should be a CLAD question:

 

http://forums.ni.com/t5/LabVIEW/Sequence-Structure-versus-SubVI/m-p/1677610#M597358

 

 

Maybe it is not such a joke after all.

 

 

Message 95 of 131
(11,083 Views)

(LabVIEW Minutea that might bite you some day:  Float to int retains sign) seen here

1!.PNG


"Should be" isn't "Is" -Jay
Message 96 of 131
(11,008 Views)

When working with FPGA nodes on a RT system where the FPGA card is installed locally (no network access required) make sure you wire a local Alias for the "Open FPGA Reference" primitive otherwise you'll see large differences in performance as the network stack will be involved for no reason.

 

Spotted HERE.

 

FPGa node open reference lunacy.png

 

I was testing DMA speeds when I cama cross this.  Testing speed of a U32 DMA to a local FPGA card was nearly 4 times (!!!) slower with the first option than the second.  For a single element insert, the first one took a whopping 26 microseconds whereas the second took 7.1 microseconds.

 

Apparently the Reference used for FPGA nodes is not checked to see if it is really a local reference when opened.

 

Shane.

Message 97 of 131
(10,945 Views)

@JÞB wrote:

(LabVIEW Minutea that might bite you some day:  Float to int retains sign) seen here

1!.PNG


On a related note:

I'm pretty sure I looked through the help.... I did not find a suitable explaination for this Right Click option ....

It seems like minutia that will bite visciously if angered.

Has anyone trained this dog to do tricks?

Capture.PNG


"Should be" isn't "Is" -Jay
0 Kudos
Message 98 of 131
(10,877 Views)

There are threads upon threads of what to do when an application build fails due to "error 8." Not a single solution I found on here worked for me, none of the knowledge base articles etc. Found this post here, and a simple control+shift+run arrow fixed all my problems. I understand this is not functionality related, but it seemed reasonable to post here. Hopefully it saves someone from the hours that I spent trying to figure this out...

Message 99 of 131
(10,792 Views)

Why did my config keep trying to load even when an empty path was wired up to the input? Oh, because file or folder exists returns TRUE on an empty path. Is there some computing reason for this?

0 Kudos
Message 100 of 131
(10,699 Views)