32 64 bit confusion RRS feed

  • Question

  • Hi 

    I have developed a .net application(32 bit) for analytics. I am just curious to know how should I determine whether 32 bit hardware is good for my application or I should create a 64 bit application and then buy 64 bit hardware to run it ?

    In short, I want to do a cost vs performance analysis for my application before moving it to 64 bit hardware/os?

    Monday, September 2, 2013 5:48 PM


  • Pure managed code can run as 32-bit or 64-bit. By default, on an x64 system it will run as a 64-bit native application unless you explicitly built the application with /platform:x86.

    The main reason for forcing 32-bit only for such an application is because it makes use of DLLs that are not available in a 64-bit native version, or because you are using legacy portions of the Windows OS that are not supported for x64 native through interop.

    The primary difference is accessible memory. A 32-bit application is stuck at 2 GB of virtual address space.

    As a developer, you should absolutely be testing your application on a x64 OS. 32-bit (x86) is legacy and will only be more so in the future. You are wasting resources if you run a 32-bit OS on a system that has than 3 GB of physical RAM. The Windows x64 OS does not support 16-bit (MS-DOS) applications or POSIX, but hosting these kind of legacy applications can be easy done in a 32-bit Virtual Machine running on a x64 system.

    Monday, September 2, 2013 5:54 PM