Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

How long does it take DAQmxReadAnalogF64 to read 64 channels (1 sample/chn) from PXI6225

I am trying to time the execution time of DAQmxReadAnalogF64() running on a PXI8196 RT controller and a PXI6225 card using LabWindows/CVI 8.0.1 and CVI RT module. The best time I ever achieved from reading 64 channels ( 1 sample/chn ) was about 900 uSecs. Is it normal? The current loop rate (data sample rate) was 2 ms and I used DAQmx_Val_HWTimedSinglePoint as my sample mode in real-time application. Will it make any different if I use DAQmxReadBinaryI16() and do my own scaling?
0 Kudos
Message 1 of 4
(3,650 Views)

Hi Acqiris,

The time that it takes a function to execute is system dependant. Since it is system dependant, there is no specification document that will give an expected time. You can change the type of read performed and it will improve time slightly because the driver does not have to do the scaling. I will look for benchmarks about DAQmx reads and post any I find.

David L.
Systems Engineering
National Instruments
0 Kudos
Message 2 of 4
(3,631 Views)
Hello David,
Thanks for the reply. I am just wondering if the DAQ was operating in DMA mode.  I may have missed it but I just don't know which DAQmx C function would let me set the transfer mode.


0 Kudos
Message 3 of 4
(3,615 Views)
Acqiris,

Your M series card has 6 independent DMA channels (KB 3G9E7C4H), and uses DMA by default (DMA is recommended and faster). You can find a list of functions to change this in the DAQmx C Reference Help (NI-DAQmx C Properties >> List of Channel Properties). If you would like to read more about the different types modes, you can search the C Referenc Help >> Index Search >> Data Transfer Mechanisms.
David L.
Systems Engineering
National Instruments
0 Kudos
Message 4 of 4
(3,596 Views)