开发者

verify if largeAddressAware is in effect?

I followed the steps in:

http://lennybacon.com/2010/10/18/UltimateGuideToSpeedUpVisualStudio.aspx

to make my Visual Studio 2010 faster, including the advice toward the bottom labeled "64 bit support" about running edit开发者_如何学JAVAbin /largeaddressaware deveenv.exe . Is there any way I can verify that this command "worked"?


Yes there is, and the necessary tool is included with VS.

Open the "Visual Studio Command Prompt (2010)" console from the start menu, and CD into C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE (adjust for your own system if you have changed the installation directory or run 64-bit Windows).

Then do:

dumpbin /headers devenv.exe | more

The start of the output on my machine is:

Dump of file devenv.exe

PE signature found

File Type: EXECUTABLE IMAGE

FILE HEADER VALUES
             14C machine (x86)
               4 number of sections
        4BA1FAB3 time date stamp Thu Mar 18 12:04:35 2010
               0 file pointer to symbol table
               0 number of symbols
              E0 size of optional header
             122 characteristics
                   Executable
                   Application can handle large (>2GB) addresses
                   32 bit word machine

The second to last line is what you are looking for -- if it's there, your executable is large address aware.


Since I didn't want to install a 1.6 GB heavy add-on to visual studio, I figured an alternative way.

You can upload the .exe onto www.virustotal.com, then under details you can see this near the bottom

ImageFileCharacteristicsExecutable, Large address aware


As the article below states, Open Task Manager and verify the the memory in use by the devenv is more than 2 GB.

Hacking Visual Studio to Use More Than 2Gigabytes of Memory


VMMap shows the effect of this, especially useful if your running program isn't necessarily using very much memory yet.

Just select the running process in VMMap and it will show a breakdown of the memory being used. There is an overall summary which includes the total memory used and free memory available, the latter of which is directly affected by the largeaddressaware setting.

For an EXE that I tried this on recently...

Here's the unmodified EXE (see the FREE line):

verify if largeAddressAware is in effect?

And after turning the flag on:

verify if largeAddressAware is in effect?

That seems to confirm that at least its being recognized by Windows.


That text is at the roughly middle left in the screenshot from the VMMap site:

verify if largeAddressAware is in effect?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜