Thursday, October 21, 2010

Hey 32 nanometer, where's my 16 cores?

Four score and seven years ago... no wait... Four years and two tech nodes ago, Intel bestowed upon us the first quad-core x86 processor, the QX6800.   (Well, ok three-and-a-half years ago, but that doesn't really roll off the tongue the same does it?)  It was a beast at 2.93 ghz, capable of issuing four instructions per cycle.

Fast forward two Moore's Law cycles (4x increase in transistors, even faster than before) and we should have 16-cores of at least the same performance right?  Or maybe 4-cores that are four times as fast?  Or 8-cores that are twice as fast?  Hell we could even settle for four cores that issue a max 16 instructions per clock.  That is the life to which we have grown accustomed.

Well, it turns out we've been spoiled, the chickens have come home to roost, and Intel is only to blame if you think they should be able to tweak the laws of physics (well, maybe for getting our hopes up, but do you really want them not to be optimists?).  The best x86 processor today is a 6-core Gulftown (Westmere) with the same 4-issue rate, and a measly 13% increase in clock rate.  There are some feature improvements, like extra threads, better branch prediction, and an increased likelihood of actually issuing all four instructions, but dammit, I want my cores, clocks and issue rate ;-)

We were promised and actually got 8-cores at 45nm, called the Nehalem-EX, but that was way too hot to function at 3ghz (a speed originally introduced back in 2002) - so it was underclocked to 2.26ghz.  It also arrived _after_ Westmere and costs about 2x-3x as much :-(

None of this is Intel's fault.  They are hitting the memory wall, ILP wall, power wall, and all sorts of walls.  In the past, when Intel ran into walls, like having to shrink an insulating layer that was already 5 atoms thick, they steamrolled right over them, laughing all the way to the bank.  Here's hoping they bust out that steamroller again.

No comments:

Post a Comment