.Net memory profiling - .Net Memory Validator
.Net Memory Validator is a memory profiler, memoryleak detection and memory analysis software tool for use bysoftware developers, software quality assurancetesters and customer support staff.
- J#, F#, etc...
- 32 bit and 64 bit
- All .Net Frameworks.
- All CLR Runtimes.
- .Net and mixed mode.
- Windows 8
- Windows 7
- Windows Vista
- Windows XP
- Windows 2000
- Windows Server 2003
- Windows Server 2008
- Windows Server 2012
Use .Net Memory Validator to:
- Detect memory leaks and handle leaks.
- Make memory usage snapshots and snapshot comparisons to detect objectsthat were not garbage collected.
- Run regression tests to find memory leaks in your overnightbuilds.
- Monitor billions of allocations in your application.
- Analyse memory allocation trends.
Easy to use
To use .Net Memory Validator all you need is debugging information foryour application and .Net Memory Validator can get to work.
You do not need to modify your software, recompileor relink your software to use .Net Memory Validator.
- Launch your application with .Net Memory Validator.
.Net Memory Validator will launch and attach to your application inseconds.
- Run your application as normal.
- Close your application.
- Examine the memory leaks that .Net Memory Validator finds in yoursoftware.
Easy to read data displays show you all the errors in the order theyoccurred. The displays can be filtered to showyou only the information that you want to work with.
Drill down to the data in the displays by expanding an entry in thedisplay to display information about the memory leak: Whattype of object was allocated, whatsize, where (address, filename, line number<),thread id, allocation timestamp, lifetime and sequence id. Alsodisplayed is a comprehensive callstack showing each class and method name,filename and line number. Each entry can be expanded to display the sourcecode for that line.
.Net Memory Validator can be configured to collect all data or just thedata you need. Powerful filters for collecting data and for displayingcollected data give you maximum flexibility and control over how much CPUtime is spent and how much memory is used collecting data allowing you tochoose how much effort is put into a given task.
.Net Memory Validator provides an API forcontrolling .Net Memory Validator from your application. Start and stopdata collection from within your application. Makememory snapshots exactly where you want themand create snapshot comparisons from withinyour code allowing you unparalleled precision when detecting objects thatdidn′t get garbage collected that you expected to be garbagecollected.
The default options of .Net Memory Validator concentrate collectingdata about .Net memory allocation, Handle allocations and COM VTablecreation. These options allow you to determine which objects may beleaking and which may be in memory for longer than expected.
Additional capabilities include Object ActivityMonitoring which allows you to determine which objects have existedfor a long time but which have not been used by the software for a longtime. Such objects may be leaking objects or objects that are in memoryfor longer than necessary.
Combined with Object Activity Monitoring isa facility for Stale Object Detection whichtakes various parameters and applies them to the object activity data todetermine which objects may be no longer required so that you caninvestigate how to dispose of those objects.
.Net Memory Validator provides powerful HTML andXML reporting capabilities, allowing you to produce overnight leakreports if you use .Net Memory Validator as part of regression testingstrategy.
Unlike some of our competitors that struggle to handle even one millionallocations, you can process tens of millions of allocations with easeusing .Net Memory Validator.
.Net Memory Validator works with any .Net application, .Net service,ASP.Net application or WPF application that outputs debug information inPDB format.
.Net Memory Validator works with all versions of the.Net Common Language Runtime (CLR 1.0, 1.1, 2.0, 3.0,4.0) and all versions of the .Net Framework(1.0, 1.1, 2.0, 3.0, 3.5, 4.0) in 32 bit and64 bit configurations.
All 32 bit Windows operating systems from Windows7 to Windows 2000 are supported.
All 64 bit Windows operating systems from Windows7 64 to Windows XP 64 are supported.
.Net Memory Validator works with applications and services, bothpure .Net and mixed-mode.Net.
As well as the traditional interactive memory leak debugging role that.Net Memory Validator performs, .Net Memory Validator can be used tocompare two recorded sessions to show the difference between the sessions.This allows you to determine if changes to your code have resulted inimprovements (less memory leaks, less errors) or regressions (more memoryleaks, more errors).
.Net Memory Validator also allows you to automate this process bylaunching .Net Memory Validator from the command line. A full range ofcommand line options allow you to perform unattended runs of .Net MemoryValidator, complete with HTML export and XMLexport, to facilitate regressiontesting as part of your overnight builds.