Large Address Mode

Enabling Large Address Mode under Windows XP Professional

Intended Purpose

Improving the ability of World Machine to build highest-resolution networks (8192x8192). You will benefit even if you have less than 2GB of RAM, as the problem is independant of the amount of physical RAM.

Requirements:
  • Windows XP *Professional Edition ONLY*
  • World Machine v1.2 or higher

Summary

When building a network at high resolution (2048+), available memory is a precious commodity. Due to the limitations of Windows, WM 1.2 will be unable to have more than approximately 4 highest-resolution heightfields (8192x8192) in memory at once. In the case of devices with multiple ports (Erosion, for example) this may mean that only one device can be active at once! Following these instructions will grant an additional 3 to 4 heightfields worth of capacity, enough to be able to build more complicated worlds.

More Information about the Problem

World Machine can demand a lot in terms of memory from your system.

But most people don't know that it's not the actual total amount of physical memory that governs what WM can or can't build -- it's instead the available address space. A 32bit machine can address up to 4GB of RAM, and each running program has its own address space that allows it to interact with both your physical and virtual memory.

However, by default Windows allows user applications only 2GB of address space, allocating the other 2GB to the kernel. Combined with memory fragmentation and WM's memory footprint, 2GB of address space can cause WM to run out of memory after creating as few as 3 or 4 high resolution (8192x8192) heightfields.

More Information about the Solution

Windows XP Professional edition has a special flag that allows the OS to allocate more space to the application and less to the kernel. If the program has been created to take advantage of this flag, that program can allocate up to 3GB of space rather than 2GB. This extra gigabyte of RAM is enough to allow much more flexibility and complexity in high res WM networks. However, the OS initialization file must be modified to allow this.

Procedure

!!!WARNING: THIS PROCEDURE COULD RESULT IN YOUR OPERATING SYSTEM BECOMING UNSTABLE OR INOPERABLE!!!
PROCEED WITH CAUTION AND ONLY AFTER BACKING UP ALL YOUR DATA.
FOLLOW THESE DIRECTIONS AT YOUR OWN RISK!

  1. Go to the Control Panel.
  2. Choose the "System" dialog (it might be under the category "Performance and Maintanence".
  3. Click the "Advanced" tab
  4. Click the button in the "Startup and Recovery" section entitled "Settings"

    This will open up your boot.ini file.

  5. Under the section [operating systems], you will have an entry that looks something like this:

    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

    you need to add the text /3GB at the end of the string. For safeties sake, we will make a copy of the the current contents and add the string to the copy, causing Windows to prompt you on bootup if you want to run in standard or 3GB mode.

    The section will then look something like:

    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional 3GB" /noexecute=optin /fastdetect /3GB
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

    Please note that all you are doing is adding the string /3GB to the current contents. If any of the text differs from the above, do NOT blindly replace it with the entire above string. Doing so will cause your Operating System to most likely cease functioning.

    Save the file and exit the notepad window.

  6. Reboot your computer
  7. On reboot, choose the "Microsoft Windows XP Professional 3GB" option, and World Machine will be able to use up to 3GB of RAM for the build process!