Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Using 7 cDAQ-9188 has speed issues in my code, but using 2 cDAQ's works fine, how can I adapt this speed to the 7 cDAQ's?

Hey guys, I am having problems with a speed issue concerning 7 cDAQ chassis, I am recording 800 thermocouples once a second for a set amount of time, but for some reason the code runs unbearably slow, we have tried using just 2 cDAQ's and the speed is perfect, but when more chassis are added the speed drops each time.

 

We have tried using simulated tasks and this issue is still there, has anyone had this situation or know of a likely reason why this is happening and how to counteract it?

 

Cheers,

0 Kudos
Message 1 of 11
(4,031 Views)

Hi SheEti,

 

Would it be possible for you to clarify a few points to enable me to better investigate the matter:

  1. Which modules are you using for the thermocouple measurements?
  2. Are you logging these measurements to file? If so, are these measurements not logging at 1Hz, or is it only the front panel that appears to be updating slowly?

 

If you could post the relevant section of your code, that would be helpful as I could try to replicate the issue.

Regards,
Chris (CLED, CLA, CTA)
Applications Engineering Specialist
0 Kudos
Message 2 of 11
(3,989 Views)

The modules for the thermocouples are 9213 and yes we are logging these to a tdms file, it is logging at 1 sample per second.

 

In the attachment is a snippet of our code, using the boolean ok increments the indicator by 1, but it takes longer than it should do, this is replicated through our code.

 

If you could let us know if you have any idea why it is running so slow then that would be much appreciated.

 

Cheers,

 

Jason

0 Kudos
Message 3 of 11
(3,984 Views)

Hi Jason,

 

I've looked at your code and I see that you're dynamically loading VIs and using notifiers. Is there a particular reason for this?

 

It may be useful to check your CPU usage in task manager to ensure that the CPU is not overloaded.

How many cores do you have on your CPU, and is one of the cores being overloaded? 

 

Regards,
Chris (CLED, CLA, CTA)
Applications Engineering Specialist
0 Kudos
Message 4 of 11
(3,977 Views)

Yea I have 2 cores on my pc, and it seems to be running at around 10% of the CPU.

 

We are using notifiers to transfer data and it shouldn't matter if we miss points. Like i said this is just a quick mock up of our whole code, this is just demonstrating the speed of the code.

 

When running the actual whole code we are reaching peaks of around 60%, but me and a few of the guys from my office have been scratching our heads over what the speed issue is.

 

Cheers,

 

Jason

0 Kudos
Message 5 of 11
(3,974 Views)

Hi Jason,

 

Unfortunately I'm not able to replicate the issue due to the amount of devices you are using.

 

A few more pieces of information which may be useful:

  1. Is the VI slowing down gradually or is the speed consistently slow?
  2. When simulating the cDAQ hardware, does the CPU overload?
  3. Do you at any point run out of RAM?

 

It may also be useful to check your network traffic usage.

 

Regards,
Chris (CLED, CLA, CTA)
Applications Engineering Specialist
0 Kudos
Message 6 of 11
(3,964 Views)

In addition to what Chris has said.

Open Tools>>Profile>>Performance and memory

This is an often overlooked LabVIEW feature that will help isolate these kinds of issues and will definately identify the vi responsible for the slow performance.

 

As a side note: 

R-G.png

I caught this snippet in one of your sub-vis.  WWYT? (Yes there is just a "F" constant in the false case) wire the conditional terminal directly to the comparision and the case can be safely disposed of.


"Should be" isn't "Is" -Jay
0 Kudos
Message 7 of 11
(3,960 Views)

The speed seems to be consistently slow, but if I were to run the separate Vi's outside of the main program they run smoothly. It all seems to happen from the start of the program which is more or less the code that I have included before hand.

No when simulating the speed is actually better than using the actual physical devices.

No the RAM seems to be at a constant set, no where near maximum.

 

I have also looked over the performance and memory profile and nothing seems to be out of place.

 

Just so you know its not just my pc, this problem occurs on my colleagues who I am working on this project with.

 

cheers,

 

Jason

 

 

0 Kudos
Message 8 of 11
(3,941 Views)

Hi Jason,

 

Apologies for the delay in getting back to you. Here are a couple more things that could affect your program:

  • Within VI Properties, navigate to the Execution category and select 'Shared clone reentrant execution'
  • In your DAQ.vi, where you use Open VI Reference, set the 'option' as 40 (Enable simultaneous calls on reentrant VIs) rather than 8 (Prepare for reentrant run).

If you could let me know if these have any effect. Based on this we will attempt to further investigate to resolve the issue.

Regards,
Chris (CLED, CLA, CTA)
Applications Engineering Specialist
0 Kudos
Message 9 of 11
(3,932 Views)

@ChrisJones wrote:

Hi Jason,

 

Apologies for the delay in getting back to you. Here are a couple more things that could affect your program:

  • Within VI Properties, navigate to the Execution category and select 'Shared clone reentrant execution'
  • In your DAQ.vi, where you use Open VI Reference, set the 'option' as 40 (Enable simultaneous calls on reentrant VIs) rather than 8 (Prepare for reentrant run).

If you could let me know if these have any effect. Based on this we will attempt to further investigate to resolve the issue.


MAKE SURE yoo set the display mode to HEX first  0x40 or 0x08


"Should be" isn't "Is" -Jay
0 Kudos
Message 10 of 11
(3,927 Views)