Duel of the Titans: Opteron vs. Xeon

64 Bit - What We Need To Know

In order to process data, store interim results or do indirect addressing, each processor has a number of internal memory cells that can be accessed without any latency, called registers. Each register has a fixed width.

A 32 bit processor such as the Intel Pentium 4 or the AMD Athlon XP can, for example, add 32 bit wide numbers in one step, while the older 16 bit processor (e.g. Intel 80286 CPU) would require two steps for the same job.

It goes without saying that every processor comes with registers that are at least the size of its arithmetic units (ALUs), which is why 32 bit x86 processors come with 32 bit wide registers. It's not only important that a processor has registers that are wide enough, it should also have a lot of them, as it allows to keep a lot of data 'in flight'.

AMD64 offers not just 8, but 16 64 bit wide registers, which speeds up applications (that are properly compiled), because data does not need to be written to main memory as often.

Floating point and SIMD operations (SSE, SSE2) profit from 64 bit processing. A 64 bit processor can natively calculate the important 64 bit floating point format ("double precision" - precise up to 15 decimal places) and is therefore faster - this is the main reason why 64 bit processors take the lead in the floating point benchmarks.