Clockspeed Is Dead. Long Live Parallelism

The programmer's Pandora's Box has been opened, and boy oh boy is it full of cores.  It started out small and manageable with Intel's popular Core 2 and the Athlon 64, but it's getting out of hand quickly with chips with dozens and dozens of cores on the horizon now. The problem is that all that firepower is going to go to waste because nobody knows how to program software to take advantage of it. Wired took a good look at the challenges facing the multicore software programmer, and the chipmakers who want to love them.

Typical 9-to-5 programmers, who are used to programming single-thread apps, are ill-equipped to handle things such as memory locks or calculation delays. What's more, there are added complications like scalability: Code written for eight-, 16- or 32-core systems won't necessarily scale up to work on systems with 64 cores -- like Tilera's recently announced Tile64 -- or even more.

Now the two largest chipmakers in the world are redoubling their efforts to help programmers catch up with the hardware.

To date, the measures by AMD and Intel involve everything from hybrid software-hardware solutions to developing new tools, benchmarks and compilers that programmers can use to scale and troubleshoot the code they produce for multicore systems. For instance, AMD's "Hardware Extensions for Software Parallelism" initiative aims to better integrate software and hardware to take advantage of software parallelism.

It used to be that the hardware providers didn't care too much about what OS developers did with the ever-increasing clockspeed horsepower they provided to them. It was all good and useful. They'll care a great deal if they throw a 64 core party, and no one comes -- and brings a credit card. 
Tags:  Speed, Lock, clock, live, parallelism, dead, Ive, EA, Ara, AR, K