Dual-core is cheap. While it doesn't have a high level of penetration currently, it is spreading much faster than 64-bit computing is and is the most significant leap in desktop technology in many years. Aside from being readily available and very backwards-compatible with existing software, dual-core is cheap. Cheap enough that in many circumstances, it's going to cost you the same or only marginally more to build a dual-core rig over a single core rig. While just about anyone can benefit from having multiple CPUs under the hood, the truth is that the majority of software that takes advantage of such technology is designed for servers and high-end workstations. Databases, graphing programs, compilers, et cetera – all things the typical desktop user doesn't see.
Most desktop software doesn't take advantage of SMP. Intel wants that to change. With Intel estimating that they will have 70% of their CPUs be multi-core by the end of this year, software developers have more incentive to design around multicore. To assist them, Intel has released “Threading Building Blocks”, a C++ extension designed specifically to help create threaded software. Some companies have already begun working on making sure newer software can take advantage of newer machines:
"If you take any particular application, something like photo editing, none of it is taking advantage of parallelism," he said. "But photo and especially video editing is a pretty obvious place." He said that Adobe has optimized its video-editing application Premier 2.0 for dual-core systems now on the market.
The most important area of desktop computing, which of course is games, stands to benefit greatly from tools like the one Intel is providing. There are less than a handful of games that are threaded, and most of them don't do much better with multiple CPUs. A huge area of improvement, for sure. I for one look forward to the day when most of my software is able to use every last ounce of power my machine has. After all, in five years we may have desktops that have 4, 8 or even 16 cores each.