0 items - $0.00

The fastest way to monitor billions of memory allocations

Download Eval
Buy

Single user: $449

C++ Memory Validator C++ Memory Validator CD Picture

Memory Validator - Hotspot

Your program may not leak memory but you may have parts of your program that allocate more memory than you realize.

By identifying such areas you can focus on managing these allocations in a more structured way. By doing this you can reduce the amount of time your program spends in the heap manager, reduce memory fragmentation, and increase the speed at which your program executes.

Expanded hotspot showing source code

How the display works

The allocations are displayed in a tree format, which can be expanded to show where sub-allocations in the hotspot occur.

Each branch expands to a source code fragment.

As with the other views, the stack trace can be viewed in a tree format and the source code can be viewed as a fragment or edited as appropriate.

Filtering

This view provides that ability to specify which type of allocation you are interested in:- CRT (new/delete/malloc/free etc), HeapAlloc, LocalAlloc, GlobalAlloc, VirtualAlloc, Handles and User Managed memory.

Individual tabs are provided for memory and handles and native and .Net to keep the hotspots unique to each type of allocation.

Watermarks

Watermarks allow you to place markers in the allocation sequence, before and after an event (for example: opening a database, doing some work, then closing the database).

The watermarks can then be used to isolate a range of data for display. Examples:

  • Show me everything before open-database.
  • Show me everything between the open-database and close-database.
  • Show me everything after close-database.

Tag trackers

Tag trackers allow you to associate a tag with all allocation events that happen during the lifetime of the tag. An example use of tag trackers would be in a game, where certain object types would be associated with warriors and other objects may be associated with weaponary.

Go to Top ^^