I typically see a 30% speed improvement for compute-intensive code on x86-64 compared to x86. This is most likely due to the fact that we have 16 x 64 bit general purpose registers and 16 x SSE registers instead of 8 x 32 bit general purpose registers and 8 x SSE registers. As to the practical benefits of 64-bit... the most obvious is that you get a bigger address space, so if you map a file, you can address more of it at once (and load larger files into memory). Another benefit is that, assuming the compiler does a good job of optimizing, many of your arithmetic operations can be parallelized (for example, placing two pairs of 32-bit numbers in two registers and performing two adds in single add operation), and big number computations will run more quickly. A more accurate benefit, aside from the larger address space, is that there are more general purpose registers, which means more local variables can be maintained in the CPU register file, which is much faster to access, than if you place the variables in the program stack (which usually means going out to the L1 cache).
some basic info:
32-bit systems are limited to 3.2 Gigabytes of RAM.
64-bit systems allow for faster processing and up to 17 Billion gigabytes of RAM.
The move to a 64bit engine should also work server side. If the servers use a 64bit engine instance, the ability of a server to meet the plans for 100+ slot servers would increase as well as the overall performance of said servers.