Importing raw memory dumps in dotMemory 2017.2

Support for raw memory dumps was probably the most voted and long-awaited dotMemory feature. Finally, it’s available in dotMemory 2017.2!

Indeed, there are cases when it’s impossible to profile a problematic application locally or remotely and take a regular dotMemory snapshot for analysis (e.g., because of security policies). Your last resort in such a case is typically a raw Windows memory dump. It can be taken with a number of tools, with the two most popular being Task Manager (comes with the operating system) and Process Explorer. Now, all you have to do is simply copy the dump to your computer and open it in dotMemory using the Import Dump command.

Importing memory dumps in dotMemory

That’s it! The dump is converted to an ordinary dotMemory snapshot, so you can analyze it using all of the sophisticated dotMemory features like automatic inspections, retention path diagrams, etc.

Important notes

  • The feature is currently in Beta status. While it’s 100% functional, the number of possible combinations of Windows and .NET Framework versions is really huge! This means it’s possible that for some combinations, dotMemory won’t show you all of the expected data in the resulting snapshot. Please send us your process dumps should you face this issue!
  • When creating a dump of a 32-bit application with Task Manager, make sure you use a 32-bit version of the tool. You can find it in C:\Windows\SysWOW64\taskmgr.exe.
  • We have tons of ideas on how to improve the feature (dumps contain much more data that we’re currently able to analyze), so this is still work in progress.

If you feel like trying importing dumps right now, download and install ReSharper Ultimate. Please ask your questions by posting comments to this post.

This entry was posted in How-To's and tagged , , . Bookmark the permalink.

20 Responses to Importing raw memory dumps in dotMemory 2017.2

  1. Pingback: Dew Drop - August 29, 2017 (#2550) - Morning Dew

  2. Kevin Gosse says:

    Hopefully the feature will get faster? Currently it takes about one hour to open a 15 GB dumps, making the app near unusable. That said, it’s very reactive once the memory dump has been loaded.

  3. Ruslan Isakiev says:

    Thank you for the feedback! Performance of the import procedure will certainly be improved.
    Can we ask you to share your dump in the meantime?

    • Kevin Gosse says:

      Sure, I’ve just gotta make sure there isn’t any business critical information in it. Assuming it’s ok, where could I upload it?

  4. Vladimir Kozlov (ai_enabled) says:

    Thank you for this live-saving feature, guys!
    I was puzzled for a long time about the accumulating memory leaks in our server applications, but there were no easy for to make a snapshot of the process for analyzing in the memory profiler.
    Yesterday I tried this new feature and quickly located all the memory leaks. Absolutely amazing tool!

    By the way, please consider including this information right into the dotMemory when trying to open a dump of a 32-bit application made with the 64-bit Task manager:
    “When creating a dump of a 32-bit application with Task Manager, make sure you use a 32-bit version of the tool. You can find it in C:\Windows\SysWOW64\taskmgr.exe.”
    I was required to search online (and it took some time as it’s a rarely discussed issue) to find where I can locate a 32-bit version of Task Manager.


    • Ruslan Isakiev says:

      Hi Vladimir! Thank you for the feedback!
      It’s great to hear that dotMemory helped you to solve memory issues)
      As for the notification message: we’ll see how to improve this, as Task Manager is not the only tool capable of taking memory dumps.

  5. Pingback: The Morning Brew - Chris Alcock » The Morning Brew #2415

  6. Pingback: Dew Drop - August 30, 2017 (#2551) - Morning Dew

  7. Jaile Sebes says:

    Not able to see stack trace , is it a limitation or am i missing something

  8. Brett Mason says:

    Awesome feature, thank you very much!
    We were able to track down a memory leak that had been causing huge issues in production for many months.
    It may be a little slow to load up a massive memdump, but well worth the wait!

  9. Dave East says:

    Cool feature! I’m hoping to use it to track down a leak in unmanaged memory. Is there any way to do this? I can’t find a relevant option myself.

  10. Grigory Perepechko says:

    Do you have plans to support .net core linux dumps made via gcore/createdump ?
    Right now we have to use lldb+libsos for analysis, but it will never be as productive as with dotMemory

  11. Shubhankar Sanyal says:

    I’m trying to import a large (20GB) dump. However after going for a while this just silently fails. Are there any error logs anywhere I can look at to see what may be wrong ? it was initially actually giving a short lived error dialog (no disk space) but I have since changed the workspace folder to be on a larger drive with a lot of space.

Leave a Reply to Vladimir Kozlov (ai_enabled) Cancel reply

Your email address will not be published. Required fields are marked *