If you've read our previous article detailing Intel's dual-core performance and its fundamental architectural setbacks, we bet your views on dual-core technology would change once you're through with this article today. AMD's Athlon 64 X2 was introduced not long ago during Computex Taipei 2005 and it was promised to be more than just another desktop processor. What AMD offers is a processor that took many years in the making, a product of a grand plan that was on the drawing board since the Athlon 64 architecture was first conceptualized.
According to AMD, the idea to introduce a built-in Northbridge in the processor was to solve the potential performance bottlenecks in traditional SMP systems. The ingenious use of HyperTransport links within the processor to connect to another processor allowed system designers to build two-, four- and even eight-way SMP systems with great flexibility - which of course is scalable far beyond eight. In addition to that, the vast amount of HyperTransport chipset solutions available meant that system designers could take advantage of these building blocks to truly design a system with features that they want.
However, that's not all there is to AMD's K8 series of processors. They've also built a memory controller within the processor, so as to take away the processor's dependency on the memory controller hub (normally located in the Northbridge). This meant quicker access to memory, lower latency and independent memory pool for each processor. With this scheme, each processor can take anywhere between 4-8GB of memory, making a typical dual processor system with a total of about 16GB of memory. This bodes well for AMD's 64-bit architecture since most high performance applications would require more than the standard 4GB of memory (which is the maximum memory size addressable by yesterday's 32-bit processors).
With these features already in place, you can see that it's really not difficult to design a dual-core processor. Both the cores in the same silicon die can be connected with HyperTransport, using what is known to us as AMD's Direct Connect Architecture which enables dual-core CPUs to perform symmetrical multiprocessing in a more linear fashion. The Direct Connect Architecture is not only limited to CPUs communicating with one another, but it involves the connection between the memory and I/O too. Since a lot of these bandwidth dependent subsystems have direct access to the CPU, it's not difficult to see that a dual-core Athlon 64 X2 processor is almost similar to a dual processor Opteron system, only with smaller real estate requirements on the logic board.
However, unlike a true dual processor system, the memory and HyperTransport interface on the dual-core processor is shared between the two processors. Still, we don't expect much of a performance hit arising from such an arrangement, as memory and I/O are independent controllers on the processor. Compared with Intel's dual-core scheme, you can see that the Pentium's dependency on the front side bus is really causing some serious performance issues, not forgetting its performance degrading Hyper Threading Technology taking a serious toll in certain lightly threaded applications.
AMD's dual-core processor die plot.
The Athlon 64 X2 processor block diagram.