| Contents | Index |
When data is acquired from an analog input subsystem or output to an analog output subsystem, it must be temporarily stored in computer memory.
Data Acquisition Toolbox software allocates memory in terms of data blocks. A data block is defined as the smallest "slice" of memory that the data acquisition engine can usefully manipulate. For example, acquired data is logged to a disk file using an integral number of data blocks. A representation of allocated memory using n data blocks is shown below.
![]()
Data Acquisition Toolbox software strives to make memory allocation as simple as possible. For this reason, the data block size and number of blocks are automatically calculated by the engine. This calculation is based on the parameters of your acquisition such as the sampling rate, and is meant to apply to most common data acquisition applications. Additionally, as data is acquired, the number of blocks dynamically increases up to a predetermined limit. However, the engine cannot guarantee that the appropriate block size, number of blocks, or total memory is allocated under these conditions:
You select certain property values. For example, if the samples to acquire per trigger are significantly less than the FIFO buffer of your hardware.
You acquire data at the limits of your hardware, your computer, or the toolbox. In particular, if you are acquiring data at very high sampling rates, then the allocated memory must be carefully evaluated to guarantee that samples are not lost.
You are free to override the memory allocation rules used by the engine and manually change the block size and number of blocks, provided the device object is not running. However, you should do so only after careful consideration, as system performance might be adversely affected, which can result in lost data.
You can manage memory resources using the BufferingConfig property and the daqmem function. With BufferingConfig, you can configure and return the block size and number of blocks used by a device object. With daqmem, you can return the current state of the memory resources used by a device object, and configure the maximum memory that one or more device objects can use.
![]() | Managing Your Memory Resources | How Much Memory Do You Need? | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |