I would say that unless you have a specific reason not to then install a 64 bit (x86_64 or AMD64, which are different names for the same thing) version on a 64 bit machine.
i686 code is intended to be executed on processors which are compatible
with the 32 bit Intel x86 platform, which includes all Intel 32bit x86
processors up to and including the Pentium 4, etc. as well as processors
from AMD and other vendors which make compatible 32bit chips.
x86_64 code is intended to be executed on processors which are
compatible with the AMD64 64bit platform, including the AMD Athlon 64,
AMD Opteron and related AMD chip families, and the Intel EM64T based
These 64bit processors are fully backward compatible with their 32bit
predecessors. So if you have a 64bit AMD Athlon 64 or Intel EM64T
processor, it is up to you whether to install the 64bit x86_64 OS or
the 32bit i386/i686 OS.