Show Buffer Allocations Window

Requires: Base Development System

Select Tools»Profile»Show Buffer Allocations to display this window.

Use this window to identify specific areas on the block diagram where LabVIEW allocates memory space in the form of a buffer.

Place a checkmark next to the data type you want to see buffers for and click the Refresh button. The black squares that appear on the block diagram indicate where LabVIEW creates buffers to allocate space for data.

The amount of memory LabVIEW allocates for each buffer is the same size as the top-level data size of the object for which LabVIEW allocates the buffer. For a 32-bit integer, the top-level data size is 4 bytes. For an array, the top-level data size is the size of a single pointer, which is 4 bytes on 32-bit platforms and 8 bytes on 64-bit platforms, regardless of the type of array. For clusters, the top-level data size is equal to the sum of the top-level data sizes for all the elements inside the cluster. When you run a VI, LabVIEW might or might not use the allocated buffers to store data. You cannot know whether LabVIEW makes a copy of the data because LabVIEW makes that decision at run time or the VI might depend on dynamic data.

If the VI needs memory for a buffer allocation, LabVIEW makes a data copy for the buffer. If LabVIEW is not sure whether the buffer needs a data copy, LabVIEW sometimes still makes a copy for the buffer.

If your VI is broken, no black squares appear.

Once you know where LabVIEW creates buffers, you might be able to optimize the performance of the VI by editing it to reduce the amount of memory LabVIEW requires to run the VI.

This window includes the following components: