none
why is x64 c++ win32 app slow to start from visual studio?

    Question

  • The wizard created c++ win32 app is very slow to start when I switch its platform to x64.  Is there an explanation for the slowness?

    Using VS11 on a windows 64 bit system. Use the wizard to create a win32 app. press F6 to build. Then F5 to run.  App starts quickly.

    Then switch the platform of the project to x64. F6 to build. F5 to run. The window appears quickly, but there is a doughnut for about 7 seconds. Why the doughnut?

    ( when I start the .exe from file explorer, outside of VS11, the app starts quickly. no doughnut. )

    thanks,

    here is the output from the output window. All the message show up right away. The doughnut lingers for 5 seconds. )

    'HookDllTester.exe' (Win32): Loaded 'C:\srcpp\HookDllTester\x64\Debug\HookDllTester.exe'. Symbols loaded.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\lpk.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\usp10.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\msvcp110d.dll'. Symbols loaded.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\msvcr110d.dll'. Symbols loaded.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\imm32.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\msctf.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\uxtheme.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\dwmapi.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\advapi32.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\sechost.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\rpcrt4.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\ole32.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\cryptbase.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\clbcatq.dll'. Cannot find or open the PDB file.
    'HookDllTester.exe' (Win32): Loaded 'C:\Windows\System32\oleaut32.dll'. Cannot find or open the PDB file.
    The program '[5956] HookDllTester.exe' has exited with code 0 (0x0).
    



    Tuesday, April 17, 2012 5:54 PM

Answers

All replies

  • Perform Clean and rebuild in both the cases then perform comparision . Second thing there can be a chance in optimization of code may be it is differn in 32 and 64

    Thanks


    Rupesh Shukla

    Tuesday, April 17, 2012 6:12 PM
  • Perform Clean and rebuild in both the cases then perform comparision .

     

    no difference.  thanks.

    -Steve

    Tuesday, April 17, 2012 8:23 PM
  • The only thing i can say that 64 bit access more memory than a 32 bit app. That's the only thing i can say and only one reason. Have a look for 64 bit computing

    http://www.soundonsound.com/sos/nov10/articles/64-bit.htm

    Thanks


    Rupesh Shukla





    Tuesday, April 17, 2012 9:05 PM
  • Since Visual Studio is 32bit, it switches to the remote debugger when debugging 64bit code. All limitation that apply to remote debugging apply to WOW64 debugging.


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    • Marked as answer by Steve Richter Wednesday, April 18, 2012 1:38 PM
    Tuesday, April 17, 2012 10:27 PM
  • just change your configuration to release and this should work as quickly as it would launch outside...

    i would say the delay is in the loading of the debugger configuration.. not quite sure... but changing the configuration to release should help you :)

    Tuesday, July 03, 2012 7:43 PM