Advantages of NI-DAQmx
Overview
This document highlights a few of the advantages of the new NI-DAQmx driver (part of NI-DAQ 7) over Traditional NI-DAQ. A list of operating systems, software, and hardware that NI-DAQ 7 supports is found in the link at the bottom of this document.
Table of Contents
Improved State Model
NI-DAQmx defines and enforces a state model, which eliminates unnecessary reconfigurations of input limits, timing, triggering, and accessories. This improvement significantly increases overall performance, but is most noticeable in single-point software-timed analog input. The link below contains examples that illustrate the significant single-point software-timed speed improvement in NI-DAQmx over Traditional NI-DAQ. Another key part of the performance improvement of single-point software-timed I/O is memory-mapped registers. For more information on memory-mapped registers, see the Waveform and Single-Point I/O in NI-DAQ 7 Application Note below.
See Also:
NI-DAQ 7 vs. Traditional NI-DAQ Performance Improvements
Waveform and Single-Point I/O in NI-DAQ 7
Multithreaded Driver
Because NI-DAQmx is a multithreaded driver, programming concurrent I/O operations is much easier. Two operations that do not use the same functional subsection (counters, analog input, analog output, digital I/O) of a device can execute simultaneously. The link below contains examples that illustrate how the multithreaded NI-DAQmx driver improves the performance of concurrent operations.
See Also:
NI-DAQ 7 vs. Traditional NI-DAQ Performance Improvements
Robustness in Exceptional Conditions
Traditional NI-DAQ can have difficulty handling exceptional conditions like abnormal process termination. NI-DAQmx defines and enforces policies for such conditions and is much more robust than Traditional NI-DAQ.
Simplified Synchronization
Synchronizing devices and operations in Traditional NI-DAQ can be fairly complex. Typically, you must explicitly route signals over the RTSI bus or through PFI lines. NI-DAQmx eliminates the need to route signals. You simply choose the signal upon which you would like to synchronize and NI-DAQmx does all the routing for you.
Decreased LabVIEW Diagram Clutter
With NI-DAQmx, the diagram does not contain configuration information. Instead of putting configuration information in the program, you use the DAQ Assistant to configure your measurement tasks and channels. This results in:
- Increased development productivity
- Less expensive code, debug, and test cycles
- Ability to get started quickly with difficult tasks
- Cleaner, less cluttered diagrams.
To illustrate the last point, compare the code required for an operation to acquire N scans with an external scan clock and a digital trigger. In Traditional NI-DAQ, the code required looks like this:

[+] Enlarge Image
The code for the same operation in NI-DAQmx could look like this:

For more information on the DAQ Assistant, refer to the DAQ Assistant Help and the links below.
See Also:
DAQ Assistant
Using the DAQ Assistant to Automatically Generate LabVIEW Code
NI-DAQ 7 Measurement-Ready Virtual Channels and Configuration Services
Smooth Transition from Easy to Advanced Programming
The NI-DAQmx API exposes increasing power and complexity through interoperable layers. This means that if you decide at the last minute to include an advanced feature in your operation (like a trigger), you don't have to start over. Notice how much easier it is to change an internally clocked acquisition to externally clocked in NI-DAQmx:
Traditional NI-DAQ - Internally Clocked

[+] Enlarge Image
Traditional NI-DAQ - Externally Clocked

[+] Enlarge Image
NI-DAQmx - Internally Clocked

NI-DAQmx - Externally Clocked

[+] Enlarge Image
See Also:
KnowledgeBase 2XDHH7BG: Overview of Hardware and Software Support in DAQmx
Reader Comments | Submit a comment »
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
