UMDH Visualizer helps you read the user memory heap dump reports more easily. (NOTE: UMDH is a memory profiler tool provided by Microsoft.)
UMDH(User-mode Dump Heap) is a nice tool for capturing and analyzing memory status of Windows process. Example usage is:
- Download and install UMDH. You can get it by installing Debugging Tools for Windows or Windows SDK.
- Run
MyApp.exe
. - Run
gflags -i MyApp.exe +ust
for start memory allocation tracing. - Set symbol path variable. UMDH needs it. Specify both Windows symbol download location, symbol cache and the symbol path of your program where pdb files reside. For example,
set _NT_SYMBOL_PATH=C:\Users\imays\works\MyApp\Release;srv*c:\symbols*https://msdl.microsoft.com/download/symbols
- Run
umdh -pn:MyApp.exe -f:A.txt
for storing memory status into a text file A. - Run
umdh -pn:MyApp.exe -f:B.txt
again for storing another memory status into a text file B afterMyApp.exe
takes more memory. - Run
umdh -d A.txt B.txt > Diff.txt
for creating a diff file between A and B. It is successful if nothing is printed when this execution is finished.
After opening the diff file, you might be frustrated because it cannot tell you where hotspot of memory allocation lies concisely, because UMDH diff text does not accumulate same call stacks. UMDH Visualizer does it, so you can find the hot spot easily.
Download and Run UmdhViz.exe. Latest version of .Net Framework may be needed if you are using old version of Windows.
Click File => Open and select your UMDH Diff file.
Select the hot spot allocation at left pane and enjoy seeing its call stack at right pane!
Don't forget to click "Do you know ProudNet?" if you are interested to developing a game where a cutting edge networking and server technology is needed. :)
Copyright Nettention Co., Ltd.
Lesser GPL.