A 64-bit architecture is usually a system where addresses (pointers) are 64 bits wide
X86 is an architecture derived from the Intel 8086 CPU
X86_64 platform width
"64bit amd and later intel machines run faster than 32-bit x86 machines because when amd designed the new instruction set they added more cpu registers and made sse math the default"
from question "How to programatically detect a 64 bit or 32 bit machine?"
|Platform much more||
"The x86_64 64bit platform is much more than twice the width of the x86 32-bit"
from question "Why the time taken by my program in MS Visual Studio 2013 in RELEASE mode in 64-bit mode is one-third of the time taken in 32-bit mode"
Slower 32bits faster
"64bit code is not actually faster it is usually a bit slower than x86 code"
from question "Writing performance critical C# code in C++"
"Faster than on x86 32bits but slower than x64 64bit"
from question "64 bits integer operation on 64 bits processor with x86 OS"
"In addition x86 is furhter complicated because there are generally separate documentation manuals for 32 bit and 64bit processors i m not familiar enough with arm to comment here"
from question "What are the documents of reference for the X86 and ARM assembly?"
"The difference is in the first number which shows the rounding of the intermediate calculation so the problem happens because x86 has a higher internal precision 80 bit than the arm 64bit"
from question "Rounding error with TDateTime on iOS"
"X86 allows easier debugging - edit and continue is not supported when running in 64bit mode"
from question "Recommendations for Visual Studio 2010 solutions that contain both 'Any CPU' and 'x86' projects"
|Also more visually||
"To me the path without x86 is also more visually appealing and indicates that it s a modern application - adapted for 64bit operation where necessary"
from question "Where to install mixed 32 and 64 bit application packages"
"No intel or amd x86 manuals ever guarantee atomicity of anything wider than 64bit except for lock cmpxchg16b so this talk of sse vector loads stores being atomic on some cpus isn t something that you can reliably take advantage of or detect when it s supported"
from question "Is it possible to read a value from memory being written by another thread, so that it's neither the original nor final?"
"On arm it is not or rather 32-bit os on 64bit uefi is technically possible only would still require the operating system loader to be 64bit but even fiddlier than on x86"
from question "Do UEFI BIOS and OS have to be of the same 32bit or 64bit?"
|Machines much stronger||
"Pax s aslr implementation for 64bit x86 machines is much stronger than linux s default 64bit aslr implementation"
from question "PaX ASLR vs. Linux default ASLR (64 bit)"
"X86 is considerably slower a few clocks plus a clock or so per function argument while 64bit is much less because most function arguments are passed in registers instead of on the stack"
from question "What is the cost of a function call?"
"However if you don t have specific reasons to use anycpu then you could still use x86 because in some cases the performances are better than 64bit code"
from question "How to run a 32-bit vb.net program in a 64-bit Windows 7?"
"Reason why double can t be declared volatile it s 64bit which makes it more than the word size on x86 which prevents it from being declared volatile in the cli if i remember correctly"
from question "C# volatile double"
"X86 doesn t support higher precision than 80 bits but if you really need more than 64bit for a fp algorithm most likely you should check your numerics instead of solving the problem with brute force"
from question "X86-64 long double precision"
"However my tests have shown that on a 64bit system an anycpu prefer 32-bit application which i confirm runs 32-bit can allocate more memory than an x86 one"
from question "Why does 'Any CPU (prefer 32-bit)' allow me to allocate more memory than x86 under .NET 4.5?"