Using 3ds Max Generated Minidump Files
 
 
 

What is a Minidump File

A minidump file is a snapshot of the memory of a process, including the registers, the stack and possibly the heap memory. The size and the information within a minidump file depends on the machine architecture as well as specific OS settings.

When an application crashes for any reason, a minidump file is created. The Minidump file provides information for debugging the program. It is most useful in the cases that the crash happens on a machine on which there is no access to the source code, and local debugging is not an option. The Microsoft Visual Studio Debugger open minidump files and allow developers to investigate the reasons for the crash.

3ds Max and Minidump Files

For each crash, 3ds Max can create two separate minidump files and with different information in each. The basic minidump is sent to the Autodesk servers for analysis, and the second file (which often includes the full program heap memory and is in the order of gigabytes in size) is stored locally. The filename for the second minidump is the same for the first basic minidump, except it has an additional "_big" at the end of the filename. Users can define the information in each minidump file through the Registry settings, Environment variables or the Command line switches. This article does not discuss the Registry settings.

Environment Variables

There are two environmental variables defined to control both minidump files:

  • AMED_MAX_MINIDUMP Customizes the standard minidump that is sent to Autodesk.
  • AMED_MAX_BIGMINIDUMP Customizes the second minidump that is kept locally on the computer. Parameters for this can be specified separately from the standard minidump. This second minidump will be created immediately after the standard minidump only if the environment variable is specified, or if the appropriate command line parameter is passed in.

Both of these environment variables can be set with one of the following options:

  • default - The default setting. Currently this is set to medium.
  • bas or basic - A basic minidump, including no heap memory. Usually used only for AMED_MAX_MINIDUMP.
  • med or medium - A basic minidump plus 1024 bytes of heap information for each pointer on the stack. This is the same as default. Usually used only for AMED_MAX_MINIDUMP.
  • full - Generates a full heap minidump. For 3dsmax, this file size can be up to a few Gigs in file size. Usually used only for AMED_MAX_BIGMINIDUMP.
  • none - Used for AMED_MAX_BIGMINIDUMP only. It turns off the second, alternate minidump.

Command Line Switches

  • -tm Controls the behavior for the standard minidump file. You can pass in one of the options specified above after the switch. For example the command 3dsmax -tm basic will generate a basic minidump file.
  • -tbm Turns on the second or additional minidump. Pass in one of the options specified above after the switch. For example, the command 3dsmax -tbm full will generate an additional full heap snapshot called 3dsmax_minidump_big.dmp and will place it in the user’s local temp directory.