Operations

Operations list

Operations list contains all the memory operations performed during a capture. MTuner has internal mechanisms to allow for a list with a very large number of elements (millions). The list is sortable by any column and by default it’s sorted by time – the order of occurance in the capture.

Below you can find the description of all columns in the list:

  • Thread ID
    The ID of a thread on which the memory operation occurred.

  • Address
    The address of memory block operation was performed on. For allocations this is the returned memory block and for reallocations and frees this is the block being reallocated/released.

  • Type
    Type of the memory operation. One of the following: Alloc, Aligned alloc, realloc, Aligned realloc, Free.

  • Size
    The size of the memory block the operation was performed on. Free operations will display a size of the memory block being released.

  • Alignment
    Specifies the alignment, in bytes, of the memory block. Valid only for aligned memory operations.

  • Time
    Time at which the memory operation occurred.

Selecting a memory operation will briefly display it’s position in the memory timeline, assuming it falls within the range that is currently visible. Once the operation is selected ‘Prev’ and ‘Next’ buttons can be used to locate memory operations that are linked to the currently selected one. For example, if a ‘Free’ operation is selected pressing a ‘Prev’ button will move the selection to the operation that preceded it for the same memory block.

The search box can be used to find operations of either specific size or address. Search always begins with currently selected operation.

Navigation with ‘Prev’ and ‘Next’ buttons together with a search option may be used as a debugging tool. As MTuner is trying to be tolerant with partially corrupt captures, particularly at the end of the capture, if an invalid memory operation is performed that caused the application to crash this may be a way to locate the source of the problem.