smatter
smatter

Reputation: 29178

Which is the best tool to test for Memory leak in Win32/COM application?

I'm looking for a tool which can monitor a running application (Win32/COM) for a long duration (1-3 days) and detect memory leaks if any. Any suggestions? It is a .NET Windows application calling lots of unmanaged code.

Upvotes: 1

Views: 1894

Answers (6)

Matt Schuetze
Matt Schuetze

Reputation: 1112

iJeeves, the combination of BoundsChecker and .NET memory profiling should help you with your memory analysis. DevPartner Studio 10.5 ships February 4, 2011 with 64-bit application support. Depending on your application raw memory footprint, you may run x86 build configurations with the error dectection memory tracking analysis as long as you keep below the 2gb overall process virtual address limit, 3gb if you link the exe with LARGE_ADDRESS_AWARE and run on an x64 OS with extra RAM. The x64 build configuration will let you go up as high as your system RAM allows, at least until you start paging and performance grinds to a standstill. You can run BC error dection for your native code under the .NET process, but object leaks or held references in managed code require a second pass using the .NET memory profiler. We do not yet have a single pass analysis that can handle the mixed C++ and .NET code with full mixed stack traces but we can handle managed code above the line, any PInvokes that cross the line, and all native activity below the line in two passes. Shameless plug: I work on the DevPartner team. The links above pointing to microfocus.com acurately resolve to DevPartner pages. Look for DPS 10.5 when it ships and pull down the eval to see if it meets your needs.

Upvotes: 1

Maurice Flanagan
Maurice Flanagan

Reputation: 5289

Application Verifier is free and from Microsoft. It detects memory leaks, double frees, overwrites and many other things. I use it all the time and it has helped me track down some nasty issues.

Upvotes: 0

Aussie Craig
Aussie Craig

Reputation: 772

If your looking for a pay$'s tool then DevPartner is well worth using. It has memory leak detection for managed, and unmanaged code.

Upvotes: 0

Shane Powell
Shane Powell

Reputation: 14148

I used to use Bounds Checker but nowadays I either use the Micrsoft inbuilt CRT library or build my own.

Upvotes: 0

grapkulec
grapkulec

Reputation: 1020

AQTime is nice, I used it several times and it helped me with some tricky bugs.

Upvotes: 0

aJ.
aJ.

Reputation: 35450

You can try Memory Validator

Upvotes: 1

Related Questions