Improving Efficiency by Disabling File Buffering for Binary File I/O Functions

During each file I/O operation, LabVIEW takes a few milliseconds to call the operating system (OS) and request a data transfer to and from a file on a disk. These milliseconds accumulate every time LabVIEW calls the OS. To avoid these timely repetitions, most OS file systems provide a buffer to temporarily hold each piece of data waiting to be read or written to a file. When the buffer is full, the OS performs a single file I/O operation.

The process described in the previous paragraph is known as buffering, and LabVIEW enables it by default. Buffering reduces the number of times the OS must access the disk and expend processing time.

When to Disable Buffering

In some cases, you can achieve faster data streaming rates if you disable buffering. For example, you may use a Redundant Array of Independent Disks (RAID) to increase processing speed. A RAID is a set of hard disks acting as a single disk that the OS can simultaneously access, taking less time to read or write data. If you access a RAID with buffering enabled, LabVIEW can take more time to copy data to the OS than the OS takes to actually write the data to the disk. You can disable buffering with the disable buffering input of the Open/Create/Replace File function to avoid these data copies and force the OS to send data directly to disk.

However, if you disable buffering, make sure the following conditions are true:

Related Information

Buffering Data