My processor is 64-bit – does that mean I need the amd64 image?
My processor is an Intel Core 2 Duo P8600 (2.40GHz). As far as I know that’s a 64-bit processor – I’m a bit confused as the architecture is called AMD 64, is this a generic name given to 64-bit architectures? I’ve heard of x64 but can’t see a release labelled with this.
You can use both the x86 and the amd64 images. And yes the initial generic name for the architecture was amd64 because it was developed, well, by AMD. Anyway, today is usually know as x86-64 or even x64.
Intel licensed the AMD64 instruction set for their non-Itanium 64 Bit CPUs. That means, yes, AMD64 is one of the generic names for the x86 64 bit architecture.
Of course your CPU can run 32 bit x86 kernels as well – but this is not recommended since you lose all the benefits of the x86-64 architecture (mainly bigger address space and more registers).
X64, amd64 and x86-64 are names for the same processor type. It’s often called amd64 because AMD came up with it initially. All current general-public 64-bit desktops and servers have an amd64 processor.
There is a processor type called IA-64 or Itanium. It’s only found in supercomputers and a few high-end servers.
A 64-bit processor can run a 32-bit system, so you have a choice of installing the amd64 version or the i386 version. Here are a few points of comparison:
A few years ago, some programs had bugs when compiled for 64-bit processors, but that’s mostly a thing of the past.
You can run 32-bit programs on a 64-bit system; the converse is not true.
A 32-bit kernel can access more than 4GB of RAM, so having more than 4GB of RAM is not a compelling reason to run a 64-bit kernel. On the other hand, a 32-bit program can only access less about 3GB of memory.
Which one is faster depends on the application (number crunching can be more than twice as fast in 64-bit mode, while symbolic manipulation can be more than twice as slow).
If in doubt, on an amd64-capable processor, use an amd64 distribution.