Intel pushes on
New four core chips launched -- but does it really matter?
With Intel and AMD both about to release their quarterly earnings statements in the next few days, neither is talking about money. What they are talking about however is processing power -- and it could mean that the world is about to become a slightly nicer place.
How come? As we've reported, Intel plastered last week's consumer electronics show CES with banners to push its new four-core chips, whose launch coincided with the show. Dubbed Core 2 Quad, the new chips are aimed at high-performance desktop and gaming PC users, and those who run chip-intensive applications like high-definition video entertainment and other multimedia.
This is the second time that Intel has stolen a PR march on arch-rival AMD, as it did so with the dual-core Core Duo chips, which have been benchmarked as either beating or equalling AMD's products' performance.
AMD isn't sitting back of course, but has embarked on a round of dis-Intelisation, arguing that its rival's new chips aren't four integrated processors but a pair of dual-core devices that happen to sit on the same die, and that its products will -- naturally -- run applications faster. Intel has not countered this argument, which the pugilistic Santa Clara company would otherwise normally do, lending credence to AMD's arguments. In fact, we know that it's two dual-core products in a multi-chip package, and that the integrated product, with four cores on a single die, won't ship until the second half of 2007, once the company has moved its production to 45nm processes.
But does it really matter? Some would say so. It's not just the larger physical packaging that disadvantages the twin dual-core approach. Without tight integration, the two pairs of chips will use more power, and won't communicate as fast as if they were on the same die, according to Insight 64 analyst Nathan Brookwood.
But all this looks more like it's to do with PR than with real-world performance for most people.
Talk to any software developer and they'll tell you -- sometimes after some persuasion, late in the evening at the bar -- that writing code for multiple processors is probably the biggest challenge the software industry faces. Microsoft software architect Herb Sutter, speaking at the In-Stat/MDR Processor Forum just over a year ago noted that "The free lunch is over", and software engineers can't just rely on processor clock speed improvements for extra performance.
As we've noted on these pages before, in a multi-core world, programmers have to behave differently, as do compilers, languages and operating systems. If application software is to reap the benefits of the new chips, new skills, techniques and tools for designing, coding and debugging will be needed.
While concurrent or parallel programming has been, if not commonplace at least reasonably common, in the world of server applications, that's not true of the desktop, where, with few exceptions, sequential programming paradigms hold sway. It's partly because server-side applications are inherently easier to program with concurrent threads, because they often involve multiple access to the same data store. Client-side applications are more difficult to predict, according to Sutter.
Referring to desktop software, Sutter and Microsoft colleague James Larus said: "The software industry needs to get back into the state where existing applications run faster on new hardware. To do that, we must begin writing concurrent applications containing at least dozens, and preferably hundreds, of separable tasks. Concurrency also opens the possibility of new, richer computer interfaces and far more robust and functional software."
However, little is likely to change between now and the time that Intel launches its more integrated, 45nm geometry four-core product later this year. Most applications will continue to be single-threaded, and most users wouldn't notice the improvement they might get were they to wait for the newest, latest and greatest.
So why will the world be a nicer place? Simply because the very existence of multiple cores means that there's an opportunity for software vendors to differentiate themselves from their rivals in myriad ways. And that should mean better software for the rest of us.
Meanwhile, there's always the entertainment from the bulked-up financial statements we're due to hear in the next few days.