Introduction
It seems like we’ve been hearing about AMD’s 64-bit computing initiative for years now. And indeed, we have. I first remember hearing about the K8 architecture in 1999, though at that time it was all speculation surrounding the performance implications of x86-64 and a multi-core processor die. AMD has come a long way since then, proving itself worthy to go head-to-head with Intel’s highly scalable Pentium 4. The K7 has, and will continue to serve AMD, but the time has come for a successor.
The much-anticipated K8 is here, and we recently had the opportunity to spend some time working with the processor. But before you reach for the nearest credit card, understand that the products we dealt with are server chips aimed at dual processor machines, none of which are to be equipped with AGP slots. At least for the time being, the 64-bit processor we’ve come to know as Opteron is all about the server scene.
But don’t worry. In a couple of month’s time, we’ll begin seeing single-processor versions (as well as Opteron chips designed for higher-end eight-way servers), which will be suited for workstation use alongside NVIDIA’s nForce3 Professional chipset. We’ll certainly revisit Opteron when that happens, but for now, let’s focus on the processor that AMD hopes will help resuscitate its bottom line.
Architecture
Opteron’s architecture has been public domain since late in 2001, yet it is still entirely relevant since the eighth-generation processor architecture does deviate somewhat from the Athlon XP (K7) design we’re used to. Of course, the most touted addition is support for the x86-64 technology that allows a processor to utilize 64-bit addressing and 32-bit operands with a compatible operating system and similarly compiled applications. Tim Sweeny, one of the most influential game developers, says, “We expect to support 32-bit and 64-bit clients and servers for game play, but might require 64-bit for content creation, because of the significant requirements of our new content development tools,” exemplifying the importance of 64-bit virtual addressing for those who can take advantage of the memory and addressability benefits.
So for now, powerful servers and workstations stand to benefit most from the transition to 64-bit computing, while the mainstream advantages are few. Will we ever see a time when average home users will enjoy the fruits of a 64-bit setup? Tim seems to think so.
“Because of our new content tools, we're already feeling a very strong need for 64-bit internally right now, and by year's end I expect we'll look at 64-bit as something that we couldn't possibly do our jobs without. We expect this sentiment to carry over to other game developers in the next 12 months, to high-end consumers over the next 24 months, and the wide mainstream all the way down to the lowest end of the market within 36 months.”
Tim goes on to say, “In our next-generation technology, we are building 2,000,000-polygon meshes, and running them through a preprocessing program that analyzes the geometry and self-shadowing potential of the mesh based on thousands of incident lighting direction using per-pixel floating point math, and compresses all of this data down to texture maps, bump maps, and 16-component spherical harmonic maps at as high a resolution as possible.
This process uses many gigabytes of memory, and implementing it on 32-bit CPU's places a lot of constraints on the size of meshes we can preprocess and the resolution of maps we can generate. With onerous programmer gymnastics, this kind of algorithm could be made disk-based or Address Windowing Extensions aware, but these approaches require an order of magnitude more development effort, and aren't practical given the frequency with which we change and improve our algorithms.”