Skip to main content

Gaming In 64-Bit: Tom's Tests, Microsoft Weighs In

Tell Me More About Hacking LAA

During our brief discussion with Chuck, he mentioned enthusiasts modifying game executables by adding the /LARGEADDRESSAWARE flag, thereby improving the stability of a 32-bit application that might have otherwise been prone to crashing. This is something we saw mentioned several times in support forums and we wanted to address it as a possible solution for those running 32-bit games without large address support on a 64-bit version of Windows. Some of the games that reportedly benefit include Stalker, Battlefield 2, Battlefield 2142, Supreme Commander, Company of Heroes, and Gothic 3. If you’re running a 32-bit operating system, you’ll encounter other issues allocating virtual address space, so this page is specifically for those in 64-bit environments. Fret not, though--workarounds are possible using the /3GB switch for those reluctant to give up their 32-bit OS.

This isn’t guaranteed to fix stability issues you might be encountering and should only be attempted by advanced users.

Further, Microsoft had chimed in to remind enthusiasts that it does recommend 'editbin' hacking 32-bit .exes to enable /LAA. Potential risks include corrupted save games, random crashes, or detection as a cheat by some anti-cheat technologies. It certainly invalidates Authenticode signatures on the .exe.

With that said, we’ve seen enough success stories to comfortably elaborate on what Chuck alluded to by hacking existing games to add LAA, especially when running large mods.

Start by downloading Visual C++ 2005 Express Edition from here. Why didn’t we use the 2008 release? Simply, it wouldn’t install on our 64-bit build of Vista Ultimate. And whereas the 2005 Express Edition threw up compatibility errors, it did the job just fine.

Next, you’ll want to fire up the Visual Studio command prompt (make sure you’re logged in to an administrator account), under the Visual Studio Tools start menu item.

Navigate to the folder of the game you’re attempting to modify. In the pictured example, we’ve patched World in Conflict. Basically, you need to be in whichever directory houses the file using up all of your memory and causing crashes over the 2 GB virtual address space limit.

But before you make any permanent changes to the file, create a copy of the file you’ll be modifying and save it somewhere else, just in case there's a problem. Since you’re only altering one file, copying the original back should undo any changes made.

The syntax is as follows:

Editbin.exe /LARGEADDRESSAWARE xxx.xxx, where xxx.xxx is the file name you’re attempting to patch (wic.exe in the pictured example). Hit enter, and you should see a two-line command prompt readout, indicating that the operation was a success.

  • salsoolo
    i went 64-bit from last year. i hope that game devs go 64-bit. and every programmer too.

    with Windows 7 around the corner, m$ already said that they expect the majority of windows installations will be 64.
    Reply
  • curnel_D
    "Given the very known nature of these virtual address space limitations, you’d think that game developers would be taking a more hurried approach to making the transition."

    This mainly has to do with resources. Most developers use the same engine they've built or bought for a span of many years. Take bioware, for instance, who used the Auroa engine for 9+ years, knowing that it was limited to single threads and low memory.
    To switch to 64-bit, these developers would have to take the time not just to modify their existing engines, but more likely rewrite the entire engine because of the changes involved. Something that some developers just cant afford.
    Reply
  • curnel_D
    Oh, and deffinately drop GTA. None of the GTA or games that use the GTA engine have ever been any good on PC, and have never been consistant in indicating graphics performance due to their poorly developed and optimized code. It's a waste of time.
    Reply
  • amdfangirl
    I say the benefit of having full access to 8GB of DDR2 is enough to make me switch to 64 bit. Not using a Page File and being able to use native 64 bit programs like those found in CS4, is worth it enough. The advantage of being able to execute native 64 bit instructions is absolutely heavenly powerful speed boost(CS3 vs CS4).
    Reply
  • spearhead
    indeed 64-bit is good and you can see that in games and applications which take advantage from it. it might require a bit more ram but then 64-bit can handle more applications running at the same time and execution of those applications seems to be alot faster that is what i can tell from my experience with 64-bit vista
    Reply
  • nathanlh
    One of the reasons that x64 games might run slower on 3GB of system memory than their x86 counterpart is that x64 code should be somewhat larger due to the 64 bit addressing itself. If the x86 code is already feeling the squeeze on 3GB, the x64 code will be even more so - resulting in more memory swapping to disk. Also, one of the benefits of x64 code is the use of more general purpose registers which the x64 games tested here might not have made use of.
    Reply
  • Chris - could you check the same thing on AMD platform? AFAIK there are some performance differencies between AMD and Intel @ 64bit
    Reply
  • amdfangirl
    ^ There were some on Linux with the Athlon 64 and Pentium 4. Gap has really closed tho, I'd say.
    Reply
  • apache_lives
    heh we forget the main concepts here with 64-bit:

    NO ONE uses a system with nothing bar windows a single game installed - they have a few security apps, torrent apps, messenger, keyboard/mouse apps etc - they all sap up resources, so 64 bit gives all apps all the memory they need - for example 8gb is useless to a 32-bit app, but when you got that hungry game ASWELL as a hungry background app etc they both get the full amount of memory!

    Also lessens the "thrashing" effect on HDD's and helps there lifespan etc


    As for why there arnt any benifits for 64 bit games etc - there all still native 32-bit because all those morons still think there 2gb and XP is "sufficent and up to date" - move to 64-bit so we can all benifit!
    Reply
  • amdfangirl
    ^ +1

    We should all be 64 bit.

    Those who play hardcore games should have at least a x64 proc.

    So, devs should make 64bit games simply.

    The world will transition in due time.

    We just are at the frontier.
    Reply