If you're looking to create a low-cost, high-end workstation or entertainment PC, it’s time to get up to snuff on dual-core processing technology.
The benefits of dual-core will be obvious to builders who love to multitask. With a dual-processor system installed, it means there’s a second processor core to share the load. For instance, if one processor is busy burning a DVD, the second is available to use for Web surfing or working on a PowerPoint presentation.
And while dual-core doesn’t mean your system’s chip itself is any faster, it does mean the capability exists for one chip to “talk” to another chip or device at a faster speed and with greater data throughput.
It may seem funny, but chip manufacturers such as AMD, Intel and Motorola are now touting their dual-core solutions at the same time many in the industry are wondering why the vendors hadn’t thought of it a long time ago. But let’s leave that debate to the “double-E's,” roll up our sleeves, look at what dual-core technology actually is, and examine how this technology will affect the construction of a white-box system.
Explaining Dual-Core Technology
Dual-core technology consists of placing two processors on a single die. That defines the manufacturing process, and it offers chip companies several advantages over single-core processor construction. First, manufacturers can build dual-core solutions without greatly increasing prices. Second, while dual-core processing doesn’t double performance, it does offer a significant performance increase. It also lets manufacturers scale back clock rates, reduce heat generation, and lower power requirements.
The secret lies in how the two independent processors communicate with each other. To understand that, you need to know about the underlying systems in a pipeline, cache and CPU.
Pipeline, as the name implies, is the avenue the processor uses to move instructions back and forth. The cache is the area on the die that can store the most frequently used instructions. Most dual-core processors share the pipeline, but each processor has its own cache. Pipeline sharing can help to further increase speed for applications that can leverage multiple processors, but unshared caching forces each processor to invalidate the other processors’ cache when accessing the memory controller. Another downside with a shared pipeline is that each processor must wait for the other to finish before starting its own tasks.
On traditional dual-processor systems, each CPU is treated as an independent unit with its own subsystems. With that in mind, it’s easy to see why true dual-processor systems can outperform dual-core based solutions, though at a significant increase in price. What’s more, some multiprocessor systems share a single memory controller, which can introduce inefficiencies.
But what system builders need to focus on is the application of the technology, not on whether a dual-core system should replace a traditional dual-processor system. The best way to decide that is to look at when dual-core solutions offer an advantage over single core technology. To discern that, hone in on how the processor will actually be used.
Can Windows Handle Dual Core?
The primary element to focus on is Symmetric Multi-Processing (SMP). That is where multiple processors can perform concurrent tasks. SMP capabilities are software-driven, which means applications must be SMP-aware to benefit from multiple-processor systems such as dual-core.
Herein lies the biggest obstacle, as many operating systems, such as Windows XP Home, are not SMP-capable and will not make use of the second physical processor. Also, most modern programs are single-threaded, meaning there’s only a single current set of linked instructions. As a result, only one processor can effectively work with those single-threaded applications.
So does this mean that the typical system builder should abandon dual-core processors? No! The key is to use dual-core based systems to build lower-cost, high-end workstations and entertainment PCs.
Why those particular systems? Because applications exist in those environments that can leverage SMP functionality. Graphics applications such as Photoshop, and CAD applications such as AutoCAD, thrive in multiprocessor environments. Also, OSes including Windows XP Professional can benefit from SMP-compatible systems, as well as Windows XP Media Center Edition. Finally, several high-end games can benefit from SMP, especially when it comes to rendering graphics and maintaining frame rates.
As they say, the proof of the pudding is in the eating. So let’s build a dual-core system and run some benchmarks to determine what improvements a system builder can expect.