This could be from memory leak(s), where your program loses pointers to
memory objects. It could also be memory accumulation without any "leak"
(according to Dr. Memory's definition, because you still have pointers to
all your memory). If Dr. Memory doesn't find enough leaks to explain it,
you may want to investigate the accumulation scenario with a heap profiling
tool. (I am developing one that shares the Dr. Memory infrastructure
called Dr. Heapstat. It has a feature called "staleness detection" where
it tells you how long it's been since your program accessed each memory
object. But, it's not fully polished, mainly in visualizing the data.)
> My question is how can I read the these lines e.g.
> ----------------------------------------
> 0x03aec976 <libmiximbase.dll+0x1c976> libmiximbase.dll!
> ZN12MappingUtils13createMappingEdRK12DimensionSetN7Mapping19InterpolationMethodE
> ??:0
> ----------------------------------------
The regular Windows Dr. Memory (front-end "drmemory.exe") currently only
understands the Microsoft PDB symbol format, so the problem here is that
the tool is not resolving symbols for you, resulting in mangled C++ names
and no line numbers.
For mingw or cygwin my solution in the past was to use a separate
Dr. Memory build that runs addr2line (front-end "drmemory.pl") but I have
not had time to fully support it so I did not include it in the official
release package. There is an older build here that may work:
http://drmemory.googlecode.com/files/DrMemory-Cygwin-1.3.0-2.zip
The other option is to run the raw addresses through addr2line (from mingw)
manually or via a script. Let us know if you're not sure how to do this.
Eventually Dr. Memory will fully support mingw and cygwin apps.
- Derek