Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Process memory increases much faster with gflags +ust

7 views
Skip to first unread message

David A. G.

unread,
Dec 3, 2009, 8:51:14 AM12/3/09
to
Hello all! I've got stuck in a problem with gflags when trying to find
some memory leaks in a windows app.

When I turn on the ust flag (in order to collect memory allocations
stack traces) the memory of my application increases much faster than
it does when the flag is off (it reaches to 800MB in 10 min aprox.
which is far from the 50-100MB/day I get when the flag is off).

I've read that there is a maximum for stack traces of 32MB, so I
suppose this shouldn't be a problem.

The computer is a 4x Intel(R) Xeon(R) CPU E5410 @ 2.33GHz.

If someone could give me some hint I'd really appreciate it.

Thank you!

John Lan

unread,
Dec 4, 2009, 7:53:00 AM12/4/09
to
try <debug diagnostics tool>, it cause less memory overhead

"David A. G." <dakko...@gmail.com> 写入消息
news:b631680f-8728-489e...@b2g2000yqi.googlegroups.com...

Ivan Brugiolo [MSFT]

unread,
Dec 7, 2009, 12:54:03 PM12/7/09
to
Which OS are you experiencing this in ?
If you are in Vista, WS08[-R2], Win7, then, the stack capture
infrastructure for heap-allocations has changed.
It is not always a fixed region in the process address space, but, it is
dynamic.
This is an excerpt of one of my extension to dump that structure

0:000> !ivanbrugexts.heapstacktrace
ntdll!_HEAP_STACK_TRACE_LOG 0000000000060070
ntdll!_RTL_MEMORY_BLOCK_LOOKASIDE 0000000000050040
ntdll!_RTL_MEMORY_ZONE 0000000000060000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 00000000026f0000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 00000000026e0000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010b40000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000002270000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010b30000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010b20000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010b10000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010b00000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010af0000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010a30000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010a20000 00010000
ntdll!_RTL_MEMORY_ZONE_SEGMENT 0000000010a10000 00010000

You should be able to discern that with something like
0:000> !address -f:VAR,MEM_COMMIT,MEM_PRIVATE,PAGE_READWRITE
then looking for 0x10000-sized allocations with a header that looks like
list-linked.

--
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of any included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm


"David A. G." <dakko...@gmail.com> wrote in message
news:b631680f-8728-489e...@b2g2000yqi.googlegroups.com...

0 new messages